Wiren Board 5: GPIO List: различия между версиями
Метка: visualeditor |
м (A.Degtyarev переименовал страницу Wiren Board 5:Список GPIO в Wiren Board 5: GPIO List без оставления перенаправления: Часть переводимой страницы Wiren Board 5:Список GPIO.) |
||
(не показано 8 промежуточных версий 3 участников) | |||
Строка 1: | Строка 1: | ||
<languages/> | |||
<translate> | |||
<!--T:30--> | |||
Статья описывает подключение встроенной периферии к сигналам процессора для '''версии Wiren Board 5 (rev 5.3)'''. | |||
{{Wbincludes: GPIO}} | |||
=== | === Последовательные порты === <!--T:31--> | ||
{| class="wikitable" | |||
!Порт | |||
! | |||
|- | |||
|/dev/ttyAPP0 | |||
|GSM/EDGE | |||
|- | |||
|/dev/ttyAPP1 | |||
|порт RS-485 на клеммниках "RS-485" | |||
|- | |||
|/dev/ttyAPP2 | |||
|порт UART на первом модуле расширения | |||
|- | |||
|/dev/ttyAPP3 | |||
|порт UART на втором модуле расширения | |||
|- | |||
|/dev/ttyAPP4 | |||
|порт RS-485 на клеммниках RS-485/CAN | |||
|} | |||
=== АЦП === <!--T:32--> | |||
<!--T:33--> | |||
{| border="1" | {| border="1" | ||
| клеммник || функция|| вывод sodim || GPIO ||вывод imx287 || комментарии | | клеммник || функция|| вывод sodim || GPIO ||вывод imx287 || комментарии | ||
Строка 26: | Строка 52: | ||
|} | |} | ||
=== GPIO на клеммниках === | === GPIO на клеммниках === <!--T:34--> | ||
<!--T:35--> | |||
{| border="1" | {| border="1" | ||
| клеммник || функция|| вывод sodim || GPIO ||вывод imx287 || комментарии | | клеммник || функция|| вывод sodim || GPIO ||вывод imx287 || комментарии | ||
|- | |- | ||
<!--T:36--> | |||
| A1 (in) || FET/ADC/'''DI''' || 126 || 0-6 || U6 || | | A1 (in) || FET/ADC/'''DI''' || 126 || 0-6 || U6 || | ||
|- | |- | ||
<!--T:37--> | |||
| A2 (in) || R/ADC/'''DI''' || 124 || 0-7 || T6 || | | A2 (in) || R/ADC/'''DI''' || 124 || 0-7 || T6 || | ||
|- | |- | ||
<!--T:38--> | |||
| A3 (in) || FET/ADC/'''DI''' || 122 || 0-28 || L9 || | | A3 (in) || FET/ADC/'''DI''' || 122 || 0-28 || L9 || | ||
|- | |- | ||
<!--T:39--> | |||
| A4 (in) || R/ADC/'''DI''' || 106 || 0-27 || P7 || | | A4 (in) || R/ADC/'''DI''' || 106 || 0-27 || P7 || | ||
|- | |- | ||
<!--T:40--> | |||
| R2 (in) || FET/ADC/'''DI''' || 130 || 0-4 || T7 || | | R2 (in) || FET/ADC/'''DI''' || 130 || 0-4 || T7 || | ||
|- | |- | ||
<!--T:41--> | |||
| R1 (in) || FET/ADC/'''DI''' || 128 || 0-5 || R7 || | | R1 (in) || FET/ADC/'''DI''' || 128 || 0-5 || R7 || | ||
|- | |- | ||
<!--T:42--> | |||
|} | |} | ||
=== GPIO для транзисторов === | === GPIO для транзисторов === <!--T:43--> | ||
<!--T:44--> | |||
{| border="1" | {| border="1" | ||
| клеммник || функция|| вывод sodim || GPIO ||вывод imx287 || комментарии | | клеммник || функция|| вывод sodim || GPIO ||вывод imx287 || комментарии | ||
|- | |- | ||
<!--T:45--> | |||
| A1 (out) || ADC/'''FET'''/DI || 104 || 0-26 || P6 ||Выход "открытый коллектор"; | | A1 (out) || ADC/'''FET'''/DI || 104 || 0-26 || P6 ||Выход "открытый коллектор"; | ||
|- | |- | ||
<!--T:46--> | |||
| A2 (out) || ADC/'''FET'''/DI || 102 || 0-16 || N7 ||Выход "открытый коллектор"; | | A2 (out) || ADC/'''FET'''/DI || 102 || 0-16 || N7 ||Выход "открытый коллектор"; | ||
|- | |- | ||
<!--T:47--> | |||
| A3 (out) || ADC/'''FET'''/DI || 100 || 0-24 || R6 ||Выход "открытый коллектор"; | | A3 (out) || ADC/'''FET'''/DI || 100 || 0-24 || R6 ||Выход "открытый коллектор"; | ||
|- | |- | ||
<!--T:48--> | |||
| A4 (out) || ADC/'''FET'''/DI || 98 || 0-20 || N6 ||Выход "открытый коллектор"; | | A4 (out) || ADC/'''FET'''/DI || 98 || 0-20 || N6 ||Выход "открытый коллектор"; | ||
|- | |- | ||
<!--T:49--> | |||
|} | |} | ||
Строка 82: | Строка 122: | ||
<!--T:50--> | |||
| 86 || 3-20 | | 86 || 3-20 | ||
||| G7 || 1-wire | ||| G7 || 1-wire | ||
Строка 116: | Строка 157: | ||
|- | |- | ||
| 148 || 1-7 | | 148 || 1-7 | ||
||| P1 || SIM900R power status (input) | |39 || P1 || SIM900R power status (input) | ||
|- | |- | ||
| 37 || 2-13 | | 37 || 2-13 | ||
Строка 140: | Строка 181: | ||
|- | |- | ||
<!--T:51--> | |||
|} | |} | ||
=== GPIO на разъёме расширения MOD1 === | === GPIO на разъёме расширения MOD1 === <!--T:52--> | ||
<!--T:53--> | |||
[[Файл:Shild.png|300px|thumb|right| Распиновка разъема под модули расширения]] | [[Файл:Shild.png|300px|thumb|right| Распиновка разъема под модули расширения]] | ||
<!--T:54--> | |||
{| border="1" | {| border="1" | ||
| вывод sodim || GPIO | | вывод sodim || GPIO | ||
Строка 151: | Строка 195: | ||
|- | |- | ||
<!--T:55--> | |||
| - || - | | - || - | ||
||| -|| 3.3V || +3.3V | ||| -|| 3.3V || +3.3V | ||
|- | |- | ||
<!--T:56--> | |||
|21 || 2-21 | |21 || 2-21 | ||
|85|| K7 || SDA || GPIO, I2C (soft) | |85|| K7 || SDA || GPIO, I2C (soft) | ||
Строка 163: | Строка 209: | ||
<!--T:57--> | |||
| 13 || 2-25 | | 13 || 2-25 | ||
|89|| C2 || MOSI || GPIO, SPI3 MOSI, AUART4_RX | |89|| C2 || MOSI || GPIO, SPI3 MOSI, AUART4_RX | ||
Строка 173: | Строка 220: | ||
|- | |- | ||
<!--T:58--> | |||
| - || - | | - || - | ||
||| - || 5V || +5V | ||| - || 5V || +5V | ||
Строка 183: | Строка 231: | ||
|- | |- | ||
<!--T:59--> | |||
| 30 ||3-9 | | 30 ||3-9 | ||
|105|| F5 || TX || AUART2_TX, GPIO | |105|| F5 || TX || AUART2_TX, GPIO | ||
Строка 190: | Строка 239: | ||
|- | |- | ||
<!--T:60--> | |||
|11 || 2-27 | |11 || 2-27 | ||
|91|| D2 || CS || GPIO, SPI3 Slave Select 0 | |91|| D2 || CS || GPIO, SPI3 Slave Select 0 | ||
Строка 196: | Строка 246: | ||
<!--T:61--> | |||
|} | |} | ||
=== GPIO на разъёме расширения MOD2 === | === GPIO на разъёме расширения MOD2 === <!--T:62--> | ||
<!--T:63--> | |||
{| border="1" | {| border="1" | ||
| вывод sodim || GPIO | | вывод sodim || GPIO | ||
Строка 206: | Строка 258: | ||
|- | |- | ||
<!--T:64--> | |||
| - || - | | - || - | ||
||| -|| 3.3V || +3.3V | ||| -|| 3.3V || +3.3V | ||
Строка 243: | Строка 296: | ||
|- | |- | ||
<!--T:65--> | |||
|} | |} | ||
=== GPIO на разъёме расширения ввода-вывода === | === GPIO на разъёме расширения ввода-вывода === <!--T:66--> | ||
<!--T:67--> | |||
{| border="1" | {| border="1" | ||
| вывод sodim || GPIO ||вывод imx287 || пин || функция | | вывод sodim || GPIO ||вывод imx287 || пин || функция | ||
Строка 259: | Строка 314: | ||
|} | |} | ||
<!--T:68--> | |||
См. также [[Special:MyLanguage/Работа с GPIO|Работа с GPIO]] | См. также [[Special:MyLanguage/Работа с GPIO|Работа с GPIO]] | ||
=== Радио модуль === | === Радио модуль === <!--T:69--> | ||
<!--T:70--> | |||
Подключен по SPI1. | Подключен по SPI1. | ||
<!--T:71--> | |||
{| border="1" | {| border="1" | ||
| вывод sodim || GPIO ||вывод imx287 || пин || функция | | вывод sodim || GPIO ||вывод imx287 || пин || функция | ||
Строка 284: | Строка 342: | ||
=== FFC-разъём расширения === | === FFC-разъём расширения === <!--T:72--> | ||
<!--T:73--> | |||
'''Разъём не напаян на устройствах в стандартной комплектации''' | '''Разъём не напаян на устройствах в стандартной комплектации''' | ||
<!--T:74--> | |||
{| border="1" | {| border="1" | ||
| вывод sodim || GPIO ||вывод imx287 || пин || функция | | вывод sodim || GPIO ||вывод imx287 || пин || функция | ||
|- | |- | ||
<!--T:75--> | |||
|- || - || - || 1 || +3.3V | |- || - || - || 1 || +3.3V | ||
|- | |- | ||
Строка 325: | Строка 386: | ||
|- | |- | ||
<!--T:76--> | |||
|} | |} | ||
<!--T:77--> | |||
! | |||
Справочная информация по тестовым ревизиям: | Справочная информация по тестовым ревизиям: | ||
* [[Wiren Board 5: Список GPIO (rev 5.1)]] | * [[Wiren Board 5: Список GPIO (rev 5.1)]] | ||
</translate> |
Текущая версия на 10:37, 6 сентября 2022
Статья описывает подключение встроенной периферии к сигналам процессора для версии Wiren Board 5 (rev 5.3).
Введение
Эта статья предназначена, в первую очередь, для разработчиков стороннего ПО для контроллеров Wiren Board.
Самый простой и удобный способ работы с железом контроллера — через MQTT, связываясь с сервисами wb: wb-mqtt-gpio, wb-mqtt-adc, wb-mqtt-gpio и т.п. Сервисы wb- позволяют работать с железом через унифицированный интерфейс MQTT и скрывают аппаратные различия между аппаратными ревизиями контроллеров.
Работа в обход стандартных сервисов wb- обычно используется, когда программное обеспечение выполняется на разных Linux-контроллерах разных вендоров, и работа через соответсвующие интерфейсы ядра уже реализована в ПО. Данная статья содержит описание периферии, нужное для работы с ней через стандартные интерфейсы ядра. При работе с ядерными интерфейсами не забудьте отключить соответствующий сервис wb-.
Большая часть периферии, описанной в этой статье, описана также в ноде /wirenboard в Devicee Tree контроллера. Сервисы wb-mqtt-gpio, wb-mqtt-adc и т.д. берут описание периферии именно оттуда, считывая описание каждый раз при старте контроллера. Этот способ является предпочтительным и для стороннего ПО, чтобы сохранить совместимость с прошлыми и будущими аппаратными ревизиями оборудования.
Работа с GPIO в Linux
GPIO (General-purpose input/output — ввод/вывод общего назначения) — контакт электрической схемы, который может принимать одно из двух логических состояний — единицу или ноль. Пользователь может устанавливать и считывать состояние GPIO.
В разных устройствах высокий логический уровень может представляться разным напряжением — следите за этим. В контроллерах Wiren Board логическая единица — это 3.3 В.
ВНИМАНИЕ: не подключайте напрямую к GPIO контроллера сигналы с напряжением больше 3.3 В! Если нужно подключить устройство, которое выдает сигнал с более высоким напряжением — используйте схемы согласования. В некоторых случаях, если напряжение сигнала не больше 5 В, то можно согласовать сигналы через резистор на 20 кОм.
Подробно про работу с GPIO читайте в статье Работа с GPIO. Также рекомендуем прочитать соответствующий раздел документации к ядру Linux.
Для других версий контроллера смотрите Таблицы GPIO разных версий контроллера.
Посмотреть таблицу GPIO можно командой cat /sys/kernel/debug/gpio
, или в разделе ниже.
Последовательные порты
Порт | |
---|---|
/dev/ttyAPP0 | GSM/EDGE |
/dev/ttyAPP1 | порт RS-485 на клеммниках "RS-485" |
/dev/ttyAPP2 | порт UART на первом модуле расширения |
/dev/ttyAPP3 | порт UART на втором модуле расширения |
/dev/ttyAPP4 | порт RS-485 на клеммниках RS-485/CAN |
АЦП
клеммник | функция | вывод sodim | GPIO | вывод imx287 | комментарии |
A1 | FET/ADC/DI | 111 | LRADC1 | C9 | |
A2 | FET/ADC/DI | 109 | LRADC2 | C8 | |
A3 | FET/ADC/DI | 107 | LRADC3 | D9 | |
A4 | FET/ADC/DI | 105 | LRADC4 | D13 | |
R1 | R/ADC/DI | 101 | LRADC6 | C14 | |
R2 | R/ADC/DI | 103 | LRADC0 | D15 |
GPIO на клеммниках
клеммник | функция | вывод sodim | GPIO | вывод imx287 | комментарии |
A1 (in) | FET/ADC/DI | 126 | 0-6 | U6 | |
A2 (in) | R/ADC/DI | 124 | 0-7 | T6 | |
A3 (in) | FET/ADC/DI | 122 | 0-28 | L9 | |
A4 (in) | R/ADC/DI | 106 | 0-27 | P7 | |
R2 (in) | FET/ADC/DI | 130 | 0-4 | T7 | |
R1 (in) | FET/ADC/DI | 128 | 0-5 | R7 |
GPIO для транзисторов
клеммник | функция | вывод sodim | GPIO | вывод imx287 | комментарии |
A1 (out) | ADC/FET/DI | 104 | 0-26 | P6 | Выход "открытый коллектор"; |
A2 (out) | ADC/FET/DI | 102 | 0-16 | N7 | Выход "открытый коллектор"; |
A3 (out) | ADC/FET/DI | 100 | 0-24 | R6 | Выход "открытый коллектор"; |
A4 (out) | ADC/FET/DI | 98 | 0-20 | N6 | Выход "открытый коллектор"; |
GPIO для внутреннего использования
вывод sodim | GPIO | GPIO number | вывод imx287 | функция |
86 | 3-20 | G7 | 1-wire | |
84 | 3-22 | F7 | транзисторная подтяжка 1-wire к верху | |
52 | 3-29 (PWM4) | 125 | E10 | irda out |
61 | 3-14 | L6 | 3.3V rail shutdown irda in | |
39 | 2-14 | 78 | D1 | 5V out |
45 | 2-15 | 79 | E1 | irda in |
150 | 1-6 | N2 | RFM69H IRQ | |
132 | 0-3 | U7 | RFM69H chip select | |
152 | 1-5 | M3 | RFM69H _DIO2 | |
92 | 0-17 | N9 | SIM900R power FET (RESET) | |
134 | 0-2 | R8 | SIM900R power KEY | |
148 | 1-7 | 39 | P1 | SIM900R power status (input) |
37 | 2-13 | C1 | watchdog input | |
50 | PWM3 | E9 | Buzzer | |
80 | 3-26 | E8 | Red LED | |
82 | 3-23 | E7 | Green LED | |
197 | 3-6 | K5 | STAT1 (зарядка) | |
198 | 1-30 | N1 | STAT2 (зарядка) | |
77 | 1-27 | P5 | питание Wi-Fi (active low) |
GPIO на разъёме расширения MOD1
вывод sodim | GPIO | GPIO number | вывод imx287 | пин | функция |
- | - | - | 3.3V | +3.3V | |
21 | 2-21 | 85 | K7 | SDA | GPIO, I2C (soft) |
35 | 2-12 | 76 | B1 | SCL | GPIO, I2C (soft) |
13 | 2-25 | 89 | C2 | MOSI | GPIO, SPI3 MOSI, AUART4_RX |
15 | 2-26 | 90 | B2 | MISO | GPIO, SPI3 MISO, AUART4_RTS |
9 | 2-24 | 88 | A2 | SCK | GPIO, SPI3 SCK, AUART4_TX |
- | - | - | 5V | +5V | |
42 | 3-11 | 107 | H7 | RTS | AUART2_RTS, GPIO, I2C1_SDA, SAIF1_LRCLK |
- | - | - | GND | GND | |
30 | 3-9 | 105 | F5 | TX | AUART2_TX, GPIO |
32 | 3-8 | 104 | F6 | RX | AUART2_RX, GPIO |
11 | 2-27 | 91 | D2 | CS | GPIO, SPI3 Slave Select 0 |
GPIO на разъёме расширения MOD2
вывод sodim | GPIO | GPIO number | вывод imx287 | пин | функция |
- | - | - | 3.3V | +3.3V | |
34 | 0-22 | 22 | M8 | SDA | GPIO, I2C SDA(soft), CAN0 TX |
36 | 0-23 | 23 | L8 | SCL | GPIO, I2C SCL(soft), CAN0 RX |
14 | 2-17 | 81 | C3 | MOSI | GPIO, SPI MOSI (SSP2) |
16 | 2-18 | 82 | B3 | MISO | GPIO, SPI MISO (SSP2) |
10 | 2-16 | 80 | A3 | SCK | GPIO, SPI SCK (SSP2) |
- | - | - | 5V | +5V | |
63 | 3-15 | 111 | K6 | RTS | AUART3_RTS, GPIO, CAN1_RX |
- | - | - | GND | GND | |
53 | 3-13 | 109 | L5 | TX | AUART3_TX, GPIO, CAN0_RX |
55 | 3-12 | 108 | M5 | RX | AUART3_RX, GPIO, CAN0_TX |
12 | 2-19 | 83 | C4 | CS | GPIO, SPI Slave Select (SSP2) |
GPIO на разъёме расширения ввода-вывода
вывод sodim | GPIO | вывод imx287 | пин | функция |
44 | 3-10 | H6 | INT | Прерывание |
46 | 3-25 | D8 | I2C0_SDA | I2C0 аппаратный |
48 | 3-24 | C7 | I2C0_SCL | I2C0 аппаратный |
См. также Работа с GPIO
Радио модуль
Подключен по SPI1.
вывод sodim | GPIO | вывод imx287 | пин | функция |
94 | 0-21 | N8 | RFM69_MOSI | MOSI |
138 | 0-0 | U8 | RFM69_MISO | MISO |
96 | 0-25 | P8 | RFM69_SCK | SCK |
132 | 0-3 | U7 | RFM69_CS | CS |
150 | 1-6 | N2 | IRQ_RFM69 | Прерывание |
152 | 1-5 | M3 | RFM69_DIO2 |
FFC-разъём расширения
Разъём не напаян на устройствах в стандартной комплектации
вывод sodim | GPIO | вывод imx287 | пин | функция |
76 | 4-11 | G1 | 4 | GPIO, ENET0_TXD2 |
74 | 4-12 | G2 | 5 | GPIO, ENET0_TXD3 |
72 | 4-10 | J2 | 6 | GPIO, ENET0_RXD3 |
70 | 4-9 | J1 | 7 | GPIO, ENET0_RXD2 |
68 | 4-15 | J3 | 8 | GPIO, ENET0_CRS |
66 | 4-14 | J4 | 9 | GPIO, ENET0_COL |
64 | 4-16 | E2 | 10 | GPIO, ENET_CLK |
62 | 4-13 | F3 | 11 | GPIO, ENET0_RX_CLK |
60 | 4-5 | E3 | 12 | GPIO, ENET0_TX_CLK |
58 | 4-0 | G4 | 13 | GPIO, ENET0_MDC |
56 | 4-1 | H4 | 14 | GPIO, ENET0_MDIO |
Справочная информация по тестовым ревизиям: