Wiren Board 6.1: GPIO List: различия между версиями
Метка: visualeditor |
м (A.Degtyarev переименовал страницу Wiren Board 6.1:Список GPIO в Wiren Board 6.1: GPIO List без оставления перенаправления: Часть переводимой страницы Wiren Board 6.1:Список GPIO.) |
||
(не показано 7 промежуточных версий 3 участников) | |||
Строка 1: | Строка 1: | ||
<languages/> | |||
<translate> | |||
Статья описывает подключение встроенной периферии к сигналам процессора для '''версии Wiren Board 6 (ревизии 6.1)'''. | Статья описывает подключение встроенной периферии к сигналам процессора для '''версии Wiren Board 6 (ревизии 6.1)'''. | ||
{{Wbincludes: GPIO}} | |||
=== GPIO на клеммниках === <!--T:3--> | |||
<!--T:4--> | |||
{| border="1" | {| border="1" | ||
| клеммник || функция|| GPIO | | клеммник || функция|| GPIO | ||
Строка 10: | Строка 12: | ||
|- | |- | ||
<!--T:5--> | |||
| W1 (in) || '''1-wire'''/DI ||GPIO1_IO11 | | W1 (in) || '''1-wire'''/DI ||GPIO1_IO11 | ||
|11||P14||по-умолчанию 1-wire | |11||P14||по-умолчанию 1-wire | ||
|- | |- | ||
<!--T:6--> | |||
| W2 (in) ||1-wire/'''DI''' | | W2 (in) ||1-wire/'''DI''' | ||
||GPIO4_IO12 | ||GPIO4_IO12 | ||
Строка 19: | Строка 23: | ||
|- | |- | ||
<!--T:7--> | |||
|} | |} | ||
=== GPIO для транзисторов (A1-A4) === <!--T:8--> | |||
<!--T:9--> | |||
{| border="1" | {| border="1" | ||
| клеммник || функция|| GPIO | | клеммник || функция|| GPIO | ||
Строка 28: | Строка 37: | ||
|- | |- | ||
<!--T:10--> | |||
| '''A1 (out)''' || ADC/'''FET'''/DI ||GPIO3_15 | | '''A1 (out)''' || ADC/'''FET'''/DI ||GPIO3_15 | ||
|79||||Выход "открытый коллектор"; | |79||||Выход "открытый коллектор"; | ||
Строка 33: | Строка 43: | ||
<!--T:11--> | |||
| '''A2 (out)''' || ADC/'''FET'''/DI ||GPIO3_16 | | '''A2 (out)''' || ADC/'''FET'''/DI ||GPIO3_16 | ||
|80||||Выход "открытый коллектор"; | |80||||Выход "открытый коллектор"; | ||
|- | |- | ||
<!--T:12--> | |||
| '''A3 (out)''' || ADC/'''FET'''/DI ||GPIO3_17 | | '''A3 (out)''' || ADC/'''FET'''/DI ||GPIO3_17 | ||
|81||||Выход "открытый коллектор"; | |81||||Выход "открытый коллектор"; | ||
|- | |- | ||
<!--T:13--> | |||
| '''A4 (out)''' || ADC/'''FET'''/DI ||GPIO3_18 | | '''A4 (out)''' || ADC/'''FET'''/DI ||GPIO3_18 | ||
|82||||Выход "открытый коллектор"; | |82||||Выход "открытый коллектор"; | ||
|- | |- | ||
<!--T:14--> | |||
|} | |} | ||
=== Каналы АЦП === | |||
=== Каналы АЦП === <!--T:15--> | |||
<!--T:16--> | |||
{| class="wikitable" | {| class="wikitable" | ||
!клеммник | !клеммник | ||
Строка 94: | Строка 111: | ||
|} | |} | ||
=== Ножки для внутреннего использования === | |||
=== Ножки для внутреннего использования === <!--T:17--> | |||
<!--T:18--> | |||
{| border="1" | {| border="1" | ||
| вывод sodim || GPIO | | вывод sodim || GPIO | ||
Строка 101: | Строка 121: | ||
<!--T:19--> | |||
|84||GPIO1_IO13 | |84||GPIO1_IO13 | ||
|13|||| транзисторная подтяжка 1-wire к верху | |13|||| транзисторная подтяжка 1-wire к верху | ||
Строка 230: | Строка 251: | ||
| | | | ||
|питание USB | |питание USB | ||
|- | |- | ||
|154 | |154 | ||
Строка 260: | Строка 275: | ||
|PAD_LCD_DATA18 | |PAD_LCD_DATA18 | ||
|RS-485-2 failsafe bias | |RS-485-2 failsafe bias | ||
|- | |||
|40 | |||
|GPIO1_IO23 | |||
|23 | |||
|PAD_UART2_RTS_B | |||
|CAN transciever power | |||
|} | |} | ||
=== GPIO на разъёме расширения MOD1 === | |||
=== GPIO на разъёме расширения MOD1 === <!--T:20--> | |||
<!--T:21--> | |||
{| class="wikitable" | {| class="wikitable" | ||
|вывод sodim | |вывод sodim | ||
Строка 322: | Строка 346: | ||
|} | |} | ||
=== GPIO на разъёме расширения MOD2 === | |||
=== GPIO на разъёме расширения MOD2 === <!--T:22--> | |||
<!--T:23--> | |||
{| class="wikitable" | {| class="wikitable" | ||
|вывод sodim | |вывод sodim | ||
Строка 397: | Строка 424: | ||
|} | |} | ||
=== GPIO на разъёме расширения MOD3 === | |||
=== GPIO на разъёме расширения MOD3 === <!--T:24--> | |||
<!--T:25--> | |||
{| class="wikitable" | {| class="wikitable" | ||
|вывод sodim | |вывод sodim | ||
Строка 441: | Строка 471: | ||
|112 | |112 | ||
|GPIO4_IO28 | |GPIO4_IO28 | ||
| | |124 | ||
|D1 | |D1 | ||
|CSI_DATA07 | |CSI_DATA07 | ||
Строка 451: | Строка 481: | ||
|106 | |106 | ||
|GPIO4_IO25 | |GPIO4_IO25 | ||
| | |121 | ||
|D4D | |D4D | ||
|CSI_DATA04 | |CSI_DATA04 | ||
Строка 471: | Строка 501: | ||
|150 | |150 | ||
|GPIO3_IO11 | |GPIO3_IO11 | ||
| | |75 | ||
|A10 | |A10 | ||
|LCD_DATA06 | |LCD_DATA06 | ||
Строка 491: | Строка 521: | ||
|110 | |110 | ||
|GPIO4_IO27 | |GPIO4_IO27 | ||
| | |123 | ||
|D2 | |D2 | ||
|CSI_DATA06 | |CSI_DATA06 | ||
Строка 501: | Строка 531: | ||
|108 | |108 | ||
|GPIO4_IO26 | |GPIO4_IO26 | ||
| | |122 | ||
|D3 | |D3 | ||
|CSI_DATA05 | |CSI_DATA05 | ||
Строка 509: | Строка 539: | ||
| | | | ||
|} | |} | ||
</translate> |
Текущая версия на 11:08, 6 сентября 2022
Статья описывает подключение встроенной периферии к сигналам процессора для версии Wiren Board 6 (ревизии 6.1).
Введение
Эта статья предназначена, в первую очередь, для разработчиков стороннего ПО для контроллеров 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
, или в разделе ниже.
GPIO на клеммниках
клеммник | функция | GPIO | вывод i.mx6UL | комментарии | |
W1 (in) | 1-wire/DI | GPIO1_IO11 | 11 | P14 | по-умолчанию 1-wire |
W2 (in) | 1-wire/DI | GPIO4_IO12 | 108 | A3 |
GPIO для транзисторов (A1-A4)
клеммник | функция | GPIO | GPIO number | вывод i.mx6UL | комментарии |
A1 (out) | ADC/FET/DI | GPIO3_15 | 79 | Выход "открытый коллектор"; | |
A2 (out) | ADC/FET/DI | GPIO3_16 | 80 | Выход "открытый коллектор"; | |
A3 (out) | ADC/FET/DI | GPIO3_17 | 81 | Выход "открытый коллектор"; | |
A4 (out) | ADC/FET/DI | GPIO3_18 | 82 | Выход "открытый коллектор"; |
Каналы АЦП
клеммник | Канал АЦП | Делитель | Итоговая формула (без делителя) | V макс. измеряемое | комментарии |
---|---|---|---|---|---|
A1 | 4 | 88k7, 12k | |||
A2 | 2 | ||||
A3 | 1 | ||||
A4 | 3 | ||||
Vin | 8 | 88k7, 12k | |||
5Vout | 5 | 33k, 12k |
Ножки для внутреннего использования
вывод sodim | GPIO | GPIO number | вывод i.mx6UL | функция |
84 | GPIO1_IO13 | 13 | транзисторная подтяжка 1-wire к верху | |
77 | GPIO4_IO16 | 112 | транзисторная подтяжка 1-wire к верху (W2) | |
36 | GPIO1_IO27 | 27 | 5V out | |
176 | GPIO3_IO14 | 78 | LCD_DATA09 | RFM69H IRQ |
178 | GPIO3_IO13 | LCD_DATA08 | RFM69H _DIO2 | |
180 | GPIO3_IO28 | LCD_DATA23 | RFM69 MISO | |
182 | GPIO3_IO27 | LCD_DATA22 | RFM69 MOSI | |
186 | GPIO3_IO25 | LCD_DATA20 | RFM69 SCK | |
184 | GPIO3_IO26 | LCD_DATA21 | RFM69H chip select | |
102 | GPIO4_IO23 | 119 | SIM900R power FET (RESET) | |
164 | GPIO3_IO20 | 84 | SIM900R power KEY | |
166 | GPIO3_IO19 | 83 | SIM900R power status (input) | |
188 | GPIO3_IO24 | 88 | SIM slot select (low: 1, high: 2) | |
23 | GPIO2_IO19 | 51 | SD1_DATA1 | watchdog input |
162 | PWM1_OUT | Buzzer | ||
80 | Red LED | |||
82 | Green LED | |||
69 | 2nd ethernet LED | |||
65 | GPIO1_IO18 | 18 | STAT1 (BATTERY_CHARGING) | |
67 | GPIO1_IO19 | 19 | STAT2 (BATTERY_PRESENT) | |
152 | GPIO3_IO10 | питание Wi-Fi (active low) | ||
29 | GPIO2_IO16 | i2c для RTC, SDA | ||
31 | GPIO2_IO17 | i2c для RTC, SCL | ||
144 | GPIO3_IO12 | PAD_LCD_DATA07 | i2c для EEPROM1, SDA | |
142 | GPIO3_IO03 | PAD_LCD_VSYNC | i2c для EEPROM1, SCL | |
160 | GPIO3_IO06 | PAD_LCD_DATA01 | i2c для EEPROM2, SDA | |
158 | GPIO3_IO07 | PAD_LCD_DATA02 | i2c для EEPROM2, SCL | |
75 | GPIO4_IO11 | 107 | питание USB | |
154 | GPIO3_IO09 | 73 | V_OUT_ON | |
156 | GPIO3_IO08 | 72 | V_OUT_ST | |
102 | GPIO4_IO23 | 119 | PAD_CSI_DATA02 | RS-485-1 failsafe bias |
190 | GPIO3_IO23 | 87 | PAD_LCD_DATA18 | RS-485-2 failsafe bias |
40 | GPIO1_IO23 | 23 | PAD_UART2_RTS_B | CAN transciever power |
GPIO на разъёме расширения MOD1
вывод sodim | GPIO | GPIO number | вывод imx287 | pinmux pad name | пин | функция |
- | - | - | 3.3V | - | ||
30 | GPIO1_IO24 | H17 | UART3_TX_DATA | TX | uart tx | |
32 | GPIO1_IO25 | H16 | UART3_RX_DATA | RX | uart rx | |
- | 5V | - | ||||
34 | GPIO1_IO26 | H15 | UART3_CTS_B | DE | uart de | |
- | GND | - |
GPIO на разъёме расширения MOD2
вывод sodim | GPIO | GPIO number | вывод imx6ul | pinmux pad name | пин | функция | |
- | - | - | 3.3V | - | |||
98 | GPIO4_IO21 | E4 | CSI_DATA00 | TX | uart tx | MX6UL_PAD_CSI_DATA00__UART5_DCE_TX | |
49 | JTAG_MOD | TX (muxed через 3k, 12k PD) | spdif out | ||||
100 | GPIO4_IO22 | E3 | CSI_DATA01 | RX | MX6UL_PAD_CSI_DATA01__UART5_DCE_RX | ||
- | 5V | - | |||||
52 | GPIO1_IO09 | M15 | GPIO1_IO09 | DE | uart de, pwm, spdif in | ||
- | GND | - |
GPIO на разъёме расширения MOD3
вывод sodim | GPIO | GPIO number | вывод imx6ul | pinmux pad name | пин | функция | ||
- | 3.3V | - | ||||||
194 | GPIO3_IO21 | 85 | LCD_DATA16 | TX | uart tx | |||
192 | GPIO3_IO22 | 86 | LCD_DATA17 | RX | uart rx | |||
112 | GPIO4_IO28 | 124 | D1 | CSI_DATA07 | MISO | spi miso | MX6UL_PAD_CSI_DATA07__ECSPI1_MISO | |
106 | GPIO4_IO25 | 121 | D4D | CSI_DATA04 | SCK | spi sck | MX6UL_PAD_CSI_DATA04__ECSPI1_SCLK | |
- | 5V | - | ||||||
150 | GPIO3_IO11 | 75 | A10 | LCD_DATA06 | DE | uart de | ||
- | GND | - | ||||||
110 | GPIO4_IO27 | 123 | D2 | CSI_DATA06 | MOSI | spi mosi | MX6UL_PAD_CSI_DATA06__ECSPI1_MOSI | |
108 | GPIO4_IO26 | 122 | D3 | CSI_DATA05 | SS | spi ss | MX6UL_PAD_CSI_DATA05__ECSPI1_SS0 |