Платформы EM1206, EM1206W и EM1206N
Устройства, на которые распространяется платформа
- программируемый IoT-модуль EM1206 (по желанию, с беспроводным модулем расширения GA1000 или WA2000)
- другие устройства на базе EM1206
В этом разделе описаны три отдельные платформы:
- EM1206 - не поддерживает беспроводные модули
- EM1206W - поддерживает модуль расширения Wi-Fi GA1000
- EM1206N - ограниченно поддерживает модуль расширения WA2000 (только Wi-Fi; BLE не поддерживается)
Память и основные сведения
| RAM | 22,271 байт для переменных и данных приложения |
| Flash | 983,040 байт для приложения и хранения данных (общая флеш-память)* |
| EEPROM | 2,040 байт для данных приложения |
*У некоторых ранних устройств было доступно только 458,752 байт флеш-памяти
| Тип платформы | 16-разрядная платформа |
| Тактовая частота (CLOCK) и управление тактированием | PLL включена (по умолчанию): 88.4736Mhz PLL выключена: 11.0592Mhz |
| Доступные сетевые интерфейсы | EM1206: Ethernet (net.), PPP (ppp.), PPPoE (pppoe.)(1) EM1206W: Ethernet (net.), Wi-Fi (wln.) , PPP (ppp.), PPPoE (pppoe.)(1) |
| Тип GPIO | Однонаправленные(2) |
| Ограничения UART | Максимальная практическая скорость ~921,600бод |
| FIFO последовательных портов | 16 байт для TX, 16 байт для RX |
| Конфигурация линий последовательного порта | Зависит от режима последовательного порта |
| Прерывания последовательных портов и io.intenabled | Независимы |
| Переназначение RTS/CTS | Поддерживается(3) |
| ADC | НЕТ |
| Широтно-импульсная модуляция (PWM) | НЕТ |
| Поддержка GA1000 | ДА |
| Поддержка WA2000 | Поддерживается Wi-Fi, BLE не поддерживается |
| Переназначение линий GA1000 и WA2000 | Поддерживается(4) |
| Расчёт beep.divider | beep.divider = CLOCK / (2 * desired_frq) |
| Рекомендуемый делитель частоты для зуммера | Зависит от подключённого зуммера |
| Выбор типа дисплея и переназначение линий | Выбор типа и переназначение линий поддерживаются |
| Специальная секция конфигурации в EEPROM | 28 байт для хранения MAC-адреса и пароля устройства |
| Серийный номер устройства(5) | 128 байт: 64 байта OTP + 64 фиксированных байта |
| Конфигурация флеш-памяти | Общая |
| Самообновление приложений Tibbo BASIC/C | Поддерживается методами fd.copyfirmware, fd.copyfirmwarelzo и fd.copyfirmwarefromfile |
| Светодиоды состояния (линии управления светодиодами) | Зелёный светодиод состояния (SG) и линия управления Красный светодиод состояния (SR) и линия управления Жёлтый светодиод состояния Ethernet (EY) (без линии управления) Зелёный светодиод состояния Ethernet (EG) (без линии управления) |
| Связь для отладки | Ethernet / транспорт UDP Broadcast Ethernet / транспорт WinPCap |
1. Свойство sock.allowedinterfaces обозначает интерфейс Ethernet как "NET", Wi-Fi как "WLN", PPP как "PPP", а PPPoE как "PPPOE". Свойства sock.targetinterface и sock.currentinterface используют перечисление pl_sock_interfaces, состав которого зависит от платформы.
2. Окружающее оборудование может определять, какие линии GPIO должны быть входами, а какие - выходами.
3. Назначение CTS/RTS по умолчанию для каждого последовательного порта своё. Обратите внимание, что линии CTS и RTS при назначении по умолчанию мешают друг другу. Не забудьте выбрать для этих линий осмысленное назначение!
4. Назначение управляющих линий GA1000 и WA2000 на EM1206W полностью гибкое. Однако при использовании платы EM1206EV нужно применять следующее назначение:
| CS | 15 - PL_IO_NUM_15 |
| CLK | 14 - PL_IO_NUM_14 |
| DI | 12 - PL_IO_NUM_12 |
| DO | 13 - PL_IO_NUM_13 |
| RST | 11 - PL_IO_NUM_11 |
5. Старые устройства EM1206 и EM1206W не содержали серийного номера. Чтобы узнать, есть ли серийный номер в вашем EM1206(W), попробуйте прочитать его через свойство sys.serialnum (только чтение). Если свойство возвращает пустую строку, серийного номера нет. Свойство возвращает все 128 байт серийного номера. Первые 64 байта однократно программируются (OTP) методом sys.setserialnum.
Поддерживаемые объекты, типы переменных и функции
- beep - формирует сигналы зуммера
- button - отслеживает линию MD (кнопка настройки)
- fd - управляет файловой системой флеш-памяти и прямым доступом к секторам
- io - работает с линиями ввода-вывода, портами и прерываниями
- kp - сканирует клавиатуры матричного и "двоичного" типов
- lcd - управляет графическими дисплейными панелями (поддерживается несколько типов)
- net - управляет интерфейсом Ethernet
- pat - "проигрывает" шаблоны на пяти парах светодиодов
- ppp - обеспечивает доступ в Интернет через последовательный модем (GPRS, POTS и т.д.)
- pppoe - обеспечивает доступ в Интернет через ADSL-модем
- romfile - упрощает доступ к файлам ресурсов (неизменяемым данным)
- rtc - ведёт учёт даты и времени
- ser - отвечает за последовательные порты (режимы UART, Wiegand и clock/data)
- sock - сетевое взаимодействие через сокеты (до 16 сеансов UDP, TCP и HTTP)
- ssi - реализует до четырёх каналов синхронного последовательного интерфейса (SSI), поддерживает SPI, I²C, clock/data и др.
- stor - предоставляет доступ к EEPROM
- sys - отвечает за общие функции устройства
- wln - работает с интерфейсом Wi-Fi (доступен только на платформах EM1206W и EM1206N, требует GA1000 или WA2000 соответственно)
Эти платформы поддерживают стандартный набор типов переменных и функций (они же системные функции, "syscalls").
Константы платформы
- Перечисление pl_redir - список констант, задающих перенаправление (закорачивание) буферов для этой платформы
- Перечисление pl_io_num - список констант, задающих доступные линии ввода-вывода
- Перечисление pl_io_port_num - список констант, задающих доступные 8-битные порты ввода-вывода
- Перечисление pl_int_num - список констант, задающих доступные линии прерывания
- Перечисление pl_sock_interfaces - список доступных сетевых интерфейсов