Линии ввода-вывода общего назначения
У EM1000 есть 54 линии ввода-вывода общего назначения (GPIO) (GPIO0 ~ GPIO53). Все линии работают на уровне 3.3V, CMOS и допускают 5V. Максимальный ток нагрузки каждой линии ввода-вывода - 10mA. Сорок девять линий доступны всегда. Остальные пять находятся на разъёме беспроводного модуля расширения. Этот разъём «доступен» для основной платы только у устройств EM1000 с опцией «-A».
Всего 40 линий ввода-вывода объединены в пять 8-битных портов.
Упрощённая структура одной линии ввода-вывода EM1000 показана на схеме ниже. У каждой линии независимое управление выходным буфером. При включении питания EM1000 выходные буферы всех линий ввода-вывода находятся в третьем состоянии (иными словами, все линии настроены как входы). Чтобы линия стала выходом, нужно явно включить её выходной буфер.
Многие линии ввода-вывода EM1000 одновременно служат входами или выходами специальных функциональных модулей, например последовательных портов. Большинство таких линий нужно правильно настроить как входы или выходы - автоматически это не произойдёт. Некоторые линии, например TX и RX последовательного порта в режиме UART, настраиваются как выходы и входы автоматически при включении последовательного порта (или другого аппаратного блока). Подробности см. в документации по платформе EM1000.
У каждой линии ввода-вывода есть слабый подтягивающий резистор к питанию, который не даёт линии «висеть в воздухе», когда выходной буфер находится в третьем состоянии.

Управление линиями ввода-вывода описано в документации по объекту io.