Распиновка raspberry pi 4 gpio

Мощные устройства

Самым простым и распространенным способом управления мощными устройствами, питающимися от источника переменного или постоянного тока (но не от сети), является использование реле с транзисторным ключом (Рисунок 8). Подойдут практически любые n-p-n транзисторы, в частности, популярные BC547B, 2N3904 и BC549. При этом, если внешнее устройство может работать от 5 В, подать питание на реле можно с вывода 2 разъема GPIO. Но и в этом случае не следует забывать о токе потребления

В противном случае реле может быть подключено к внешнему источнику питания с соблюдением мер предосторожности, исключающих попадание внешнего напряжения на RPi

Рисунок 8. Схема подключения реле к плате RPi для
управления внешними устройствами.

Принципы работы интерфейса последовательной связи RS-485

RS-485 представляет собой асинхронный интерфейс последовательной связи, не требующий для своей работы импульсов синхронизации. Для передачи двоичных данных от одного устройства к другому протокол использует дифференциальный сигнал.

Если следовать определению из википедии, дифференциальный сигнал представляет собой способ электрической передачи информации с помощью двух противофазных сигналов. В данном методе один электрический сигнал передаётся в виде дифференциальной пары сигналов, каждый по своему проводнику, но один представляет инвертированный сигнал другого, противоположный по знаку. Пара проводников может представлять собой витую пару, твинаксиальный кабель или разводиться по печатной плате. Приёмник дифференциального сигнала реагирует на разницу между двумя сигналами, а не на различие между одним проводом и потенциалом земли.

В нашем случае дифференциальный сигнал образуется при помощи использования положительного и отрицательного напряжения 5V. Интерфейс RS-485 обеспечивает полудуплексную связь (Half-Duplex) при использовании 2-х линий (проводов) и полноценную дуплексную связь (Full-Duplex) при использовании 4-х линий (проводов).

Основные особенности данного интерфейса:

  1. Максимальная скорость передачи данных в интерфейсе RS-485 – 30 Мбит/с.
  2. Максимальная дистанция связи – 1200 метров, что значительно больше чем в интерфейсе RS-232.
  3. Основным достоинством интерфейса RS-485 по сравнению с RS-232 является использование нескольких ведомых (multiple slave) при одном ведущем (single master) в то время как RS-232 поддерживает только одного ведомого.
  4. Максимальное число устройств, которое можно подключить по интерфейсу RS-485 – 32.
  5. Также к достоинствам интерфейса RS-485 относится хорошая помехоустойчивость вследствие использования дифференциального сигнала.
  6. RS-485 обеспечивает более высокую скорость передачи по сравнению с интерфейсом I2C.

Сборка схемы транзисторного драйвера двигателя

Следующий этап сборки проекта – это подключение электронной схемы, которая будет управлять небольшим двигателем постоянного тока. Для этой цели можно использовать один биполярный транзистор с соответствующим коэффициентом усиления (бета). Вы можете легко собрать транзисторный драйвер двигателя постоянного тока, собрав схему на беспаечной макетной плате, как показано на рисунке 7. На рисунке 8 приведена принципиальная схема драйвера. После сборки схемы на беспаечной макетной плате нажатие кнопочного выключателя включает небольшой двигатель постоянного тока, подключенный к коллектору транзистора. Если двигатель не вращается, уберите из схемы батарейный отсек и перепроверьте соединения и подключение диода 1N4001 и NPN транзистора 2N2222. После того, как все ошибки будут исправлены, подключите батарейный отсек и снова проверьте схему в действии. Поздравляю со сборкой действующего транзисторного драйвера двигателя. Теперь давайте посмотрим, как работает схема драйвера двигателя, вспомнив основы теории транзисторов.

Рисунок 7 – Схема соединений транзисторного драйвера двигателя на беспаечной макетной платеРисунок 8 – Принципиальная схема типового транзисторного драйвера двигателя постоянного тока

Объяснение программы для Raspberry Pi

Полный код программы приведен в конце статьи, здесь же мы кратко рассмотрим его основные фрагменты.

После того, как все необходимые соединения в схеме сделаны, мы можем подать питание на Raspberry Pi и после загрузки ее операционной системы можно начать писать программу в ней на Python. Подробнее о том, как это можно сделать, можно прочитать в статье про мигание светодиода с помощью Raspberry Pi.

В программе нам первым делом необходимо подключить (импортировать) библиотеку для работы с контактами ввода/вывода. Также мы импортируем эту библиотеку RPi.GPIO под именем “IO” (то есть переименовываем ее для использования в программе), то есть далее в программе всегда, когда мы захотим обратиться к контактам ввода/вывода, мы будем использовать слово ‘IO’.

Python

import RPi.GPIO as IO

1 importRPi.GPIO asIO

Иногда контакты ввода/вывода (GPIO pins), которые мы собираемся использовать в программе, могут выполнять другие функции. В этом случае во время исполнения программы мы будем получать предупреждения (warnings). Следующей командой мы укажем плате Raspberry Pi на то, чтобы она игнорировала эти предупреждения и продолжала исполнение программы.

Python

IO.setwarnings(False)

1 IO.setwarnings(False)

Мы можем обращаться к контактам ввода/вывода (GPIO pins) платы Raspberry Pi используя либо номер контакта на плате, либо его функциональный номер. Например, если смотреть распиновку контактов ввода/вывода платы Raspberry Pi, то можно увидеть, что в ней обозначение GPIO5 соответствует контакту PIN 29. То есть в зависимости от того, какой способ обращения к контактам мы выбрали, мы можем обращаться к рассмотренному контакту либо по номеру ‘29’, либо по номеру ‘5’. В данном проекте мы выберем способ обращения к контактам по их функциональным номерам, поэтому используем следующую команду:

Python

IO.setmode (IO.BCM)

1 IO.setmode(IO.BCM)

В качестве цифрового выхода, с которого будет осуществляться управление сервомотором, мы будем использовать контакт PIN39 (GPIO19). На этом контакте мы будем производить формирование ШИМ сигнала.

Python

IO.setup(19,IO.OUT)

1 IO.setup(19,IO.OUT)

После конфигурации контакта в качестве цифрового выхода нам необходимо настроить его как выходной контакт формирования ШИМ.

Python

p = IO.PWM(output channel , frequency of PWM signal)

1 p=IO.PWM(output channel,frequency of PWM signal)

Представленная команда определяет канал для формирования ШИМ и устанавливает частоту формируемого ШИМ сигнала. В качестве канала ШИМ в нашем проекте мы будем использовать контакт GPIO19, а в качестве частоты ШИМ сигнала мы зададим значение 50 – именно такая частота необходима для управления сервомотором SG90.

Но ШИМ-контакт не начнет работать, пока не будет вызвана функция start(). Ее параметр – это исходное значение коэффициента заполнения (duty cycle).

Python

p.start(DUTYCYCLE)

1 p.start(DUTYCYCLE)

Следующей командой будет формироваться бесконечный цикл, внутри него все команды будут выполняться непрерывно.

Python

While 1:

1 While1

Далее в программе мы будем изменять значение коэффициента заполнения 3 раза в течение 3-х секунд. То есть каждую секунду сервомотор будет поворачиваться в одно из следующих положений: 0º, 90º и 180º.

Pi Zero

Это первый мини-компьютер данной серии, появившийся в 2015 году. От других «малинок» его отличают размеры: инженеры компании сумели без потери производительности поместить весь функционал на плату размерами 65×30×5 мм.

Основные характеристики Raspberry Zero:

  • процессор — однокристальный чип Broadcom BCM2835. SoC несет в себе поддерживающее OpenGL видеоядро;
  • встроенная оперативная память — 512 Мб LPDDR2 SDRAM;
  • порты USB (один OTG, один для питания);
  • порт мини- HDMI, способный выводить изображение в формате FullHD;
  • разъем для карт памяти MicroSD (с карты загружается операционная система);
  • 40-контактная «гребенка» GPIO;
  • разъем для камеры (добавлен в версии 1.3);
  • контактные площадки для распайки композитного видеовыхода.

Поддержки сети изначально нет, но для покупки доступны разнообразные аксессуары, расширяющие функционал системы с помощью плат расширения и переходников. Некоторое время предлагался даже комплект Pi Zero и набора аксессуаров за 59 USD.

Стоимость одноплатника на старте продаж составляла всего 5 USD. Интересно, что покупатели журнала MagPI могли бесплатно получить Zero вместе с выпуском от декабря 2015 года. Из-за малой цены компьютер на письме иногда называют «Raspberry Pi 0», интерпретируя «зеро» как «нулевую цену».

Системой обычно управляет ОС Raspbian, специально созданная под возможности «малинки». Ее можно загрузить с сайта разработчика; сам процесс установки будет рассмотрен чуть ниже. Допустимо также использовать другие ОС на основе ядра Linux, и систему Android.

Какие пины присутствуют на Raspberry Pi

У Raspberry распиновка включает в себя два ряда штырьков. Совокупное количество же пинов равняется 40, а значит в одном ряде их числов – 20.

В первую очередь человеку, который хочет подключить внешнее устройство, нужно знать, чем отличается каждый ряд. Первый (располагается слева) предназначается девайсам, для работы которых требуется напряжение в 3,3 Вольта. Второй (соответственно, размещается справа) – 5 Вольт. С этим не должно возникнуть вопросов.

Следующее, что нужно знать о распиновке GPIO Raspberry Pi – назначение всех штырьков. Всего существует три типа пинов:

  • питающие (при включении подают электричество);
  • порты (выводящие и принимающие информацию);
  • заземляющие.

Если посмотреть на схему Raspberry Pi 3 (или другой модели), то можно увидеть, что пины подписаны. Power – это питающие, Ground (иногда пишется GND) – заземляющие, а BCM – непосредственно порты.

What is GPIO and How does it work?

GPIO, short for General Purpose Input Output is a standard interface found on microcontrollers and SBCs that enables digital input and output. It allows these devices to control external components like motors & infrared transmitters (output), as well as to receive data from sensor modules and switches (input). In essence, GPIO allows our Raspberry Pi to interface with a variety of external components, which makes it suitable for a wide variety of projects ranging from a weather station to a self-driving robot.

Raspberry Pi 4 40 Pin GPIO Header

For GPIO pins to work, software configurations will be required. Fret not, for beginner-friendly Python libraries such as GPIOzero are available to make physical computing more accessible for all users. For more experienced programmers who prefer C or C++, GPIO access libraries such as wiringPI are also available!

Raspberry Pi GPIO Projects

Now that you’ve seen how easy it is to get started with Raspberry Pi GPIO using Grove, we couldn’t possibly leave you hanging without some project recommendations, could we? With a plethora of projects available thanks to the endless possibilities that GPIO pins offer, I’ll just be providing a few of my favourites today! For a comprehensive list of Raspberry Pi Projects, click here!

1. Raspberry Pi Smart Clock

Want to build a smart clock with your Raspberry Pi that shows time on an OLED display? This project not only does that but also reads out the time to you at different intervals! All software configurations are done with Python.

Hardware & Software Needed

  • Raspberry Pi 3 Model B
  • RGB Diffused Common Cathode
  • Speaker: 0.25W, 8 ohms
  • Jumper Wires (Generic)
  • Raspberry Pi OS on Raspberry Pi
  • Python GPIO Library installed on the RPi
  • Python SSD OLED Library

Interested to find out more? Visit the full tutorial with Python Code by Ashwini Kumr Sinha on Hackster!

2. Raspberry Pi Driven Robot Arm

This really cool project was developed by our Seeed R&D team. By using the 3D Gesture Tracking Shield that interfaces with the Raspberry Pi via its GPIO header, you can control a robot arm for picking up objects!

Hardware & Software Needed

  • Raspberry Pi 3B+
  • Seeed 3D Gesture & Tracking Shield for Raspberry Pi (MGC3130)
  • Seeed uArm metal
  • Raspberry Pi OS on Raspberry Pi

Want to learn more more? Check out the full tutorial by Seeed on Hackster!

3. Smart Raspberry Pi Fan Control

Worry about the thermal issues present in the Rasberry Pi 4, yet only want the fans to turn on when the processor really needs it? This project implements a Python script to adjust fan speeds based on the RPi’s CPU temperatures! Now you can cool your Raspberry Pi and learn Python at the same time!

Hardware & Software Needed

  • Raspberry Pi 4 Computer Model B 4GB
  • Seeed Armor Aluminum Metal Case with Dual Fans for Raspberry Pi
  • General Purpose Transistor NPN
  • Resistor 330 ohm
  • Breadboard
  • Jumper wires
  • ThingSpeak API

Interested to find out more? You can check out the full tutorial by Nurgaliyev Shakhizat on Hackster!

Specifications of Model 3B+ :

  • Quad-Core 1.4GHz Broadcom BCM2837B0 64bit CPU
  • 1GB LPDDR2 SDRAM
  • Dual-channel 2.4GHz and 5GHz IEEE 802.11.b/g/n/ac wireless LAN, Bluetooth 4.2, BLE
  • Gigabit Ethernet over USB 2.0 with throughput limited to 300 Mbit/s (3 times faster than model B)
  • Extended 40-pin GPIO header
  • Full-size HDMI
  • 4 USB 2.0 ports
  • Full-size HDMI CSI (Camera Serial Interface) camera port for connecting a camera
  • DSI (Display Serial Interface) display port for connecting a touchscreen display
  • 4-pole stereo output and composite video port
  • Micro SD port
  • 5V/2.5A DC power input
  • Power-over-Ethernet (PoE) support (requires separate PoE HAT)

Охлаждение и нагрев

На фотографиях видно, что у чипов не предусмотрено даже пассивного охлаждения в виде радиаторов. В связи с чем может возникнуть вопрос — не перегревается ли устройство в ходе работы?

Для оценки нагрева и проведения нагрузочного тестирования служит утилита stress. Устанавливаем и запускаем 15-минутный прогон.

Загрузка и синтаксис команды:

В среднем температура процессора при такой нагрузке поднимается примерно до 55.1 градуса и стабилизируется на этом уровне. После прекращения теста она начинает постепенно снижаться. В режиме простоя рабочая температура держится в пределах 41.2–42 градуса.

Это доказывает, что дополнительное охлаждение микрокомпьютеру не нужно. Но некоторые энтузиасты все равно дополнительно страхуются, наклеивая небольшие медные или алюминиевые радиаторы и несколько улучшая теплоотвод. Обзор внешнего вида платы с радиатором SoC:

Критическая температура процессора — 100 градусов, а в троттлинг он начинает уходить при 80.

Распиновка разъемов GPIO Raspberry Pi

Внимание! В отличие от плат Arduino, напряжение логических уровней Raspberry Pi является 3,3 В. Максимальное напряжение, которое могут выдержать вход/выходы составляет 3,3 В а не 5 В

Подав напряжение, например 5 В, можно вывести одноплатник из строя.

Таблица распиновки GPIO pin (WiringPi Pin)

WiringPi Pin Назначение Physical Pin Назначение WiringPi Pin
Питание 3.3В 1 2 Питание 5В
8 GPIO 2 (SDA1) I²C 3 4 Питание 5В
9 GPIO 3 (SCL1 ) I²C 5 6 Земля
7 GPIO 4 (GPCLK0) 7 8 GPIO 14 (TXD0) 15
Земля 9 10 GPIO 15 (RXD0) 16
GPIO 17 (GPIO_GEN0) SPI1_CE1 11 12 GPIO 18 (PWM0) SPI1_CE0 1
2 GPIO 27 (GPIO_GEN2) 13 14 Земля
3 GPIO 22 (GPIO_GEN3) 15 16 GPIO 23 4
Питание 3.3В 17 18 GPIO 24 5
12 GPIO 10 (SPI0_MOSI) 19 20 Земля
13 GPIO 9 (SPI0_MISO) 21 22 GPIO 25 6
14 GPIO 11 (SPI0_SCLK) 23 24 GPIO 8 SPI0_CE0 10
Земля 25 26 GPIO 7 SPI0_CE1 11
ID_SD 27 28 ID_SC
21 GPIO 5 (GPCLK1) 29 30 Земля
22 GPIO 6 (GPCLK2) 31 32 GPIO 12 (PWM0) 26
23 GPIO 13 (PWM1) 33 34 Земля
24 GPIO 19 (PWM1) (SPI1_MISO) 35 36 GPIO 16 SPI1_CE2 27
25 GPIO 26 37 38 GPIO 20 (SPI1_MOSI) 28
Земля 39 40 GPIO 21 (SPI1_SCLK) 29
  • Physical Pin: нумерация, отвечающая за физическое расположение контакта на гребенке.
  • GPIO: нумерация контактов процессора Broadcom. Может пригодиться при работе с пакетом .
  • WiringPi Pin: нумерация контактов для пакета Wiring Pi. Это Arduino-подобная библиотека для работы с GPIO-контактами.
  • ШИМ: плата имеет два канала ШИМ по два потока в каждом.

    • PWM0, ;
    • PWM1, .
  • I²C: SDA1, SCL1. Для общения с периферией по синхронному протоколу, через два провода.
  • SPI: К  можно подключить два ведомых устройства, а к  — три. Выбор осуществляется сигналом на пине CEx.

    • SCLK — Serial CLocK
    • CE — Chip Enable (often called Chip Select)
    • MOSI — Master Out Slave In
    • MISO — Master In Slave Out
    • MOMI — Master Out Master In
  • UART: , . Асинхронный протокол последовательной передачи данных по двум проводам  и 

Распиновка DSI разъема дисплея

Display Serial Interface (DSI) — спецификация Mobile Industry Processor Interface (MIPI) Alliance. направленная на снижение затрат на дисплейную подсистему в мобильных устройствах. В основном она ориентирована на LCD и тому подобные технологии дисплея. Спецификация определяет последовательную шину и протокол связи между хостом (источник изображения) и устройством (получателем изображения).

Pin Назначение
1 DISP_GND
2 DISP_D1_N
3 DISP_D1_P
4 DISP_GND
5 DISP_CK_N
6 DISP_CK_P
7 DISP_GND
8 DISP_D0_N
9 DISP_D0_P
10 DISP_GND
11 DISP_SCL
12 DISP_SDA
13 DISP_GND
14 DISP_3V3
15 DISP_3V3

Прошивка (чтение) памяти через Raspberry Pi 3 (Pi 2)

Интерфейс GPIO конструктора открывает широкие возможности для контроля и мониторинга периферийных устройств. Соответственно, есть возможность подключаться к электронным схемам, в частности – программировать (читать и прошивать) чипы памяти.

Детский мини компьютер через порт GPIO учит детей управлять светодиодами, запускать миниатюрные двигатели, выполнять многие другие простые действия, характерные для электроники.

Но компьютер конструктор Raspberry Pi 3 – это также реальный инструмент для прошивки BIOS, благодаря интерфейсу GPIO и поддержке технологии SPI.

Модели плат из новой серии детского конструктора  имеют 40-пиновый интерфейс GPIO. Более старые версии оснащены 26-пиновым разъёмом.

Разобранный планшет Lenovo ThinkPad X60, извлечённая материнская плата и заветный ПЗУ, который теперь нужно через подключение «прищепкой» прочитать и затем прошить новым содержимым

На материнской плате планшета Lenovo модели T60 чип памяти находится под опорной панелью и закреплён дюралюминиевой рамкой. Крепёж нужно снять, рамку демонтировать.

На следующем этапе подключение микросхемы памяти к интерфейсу GPIO мини компьютера конструктора Raspberry Pi 3.

Чип подключается, оставаясь непосредственно на плате, без выпаивания, через пружинный контактор (прищепка). Соединения проводников следует выполнять согласно раскладке:

Подключение MX25L1605 на 8 ножек: 1 ножка (CS) — 24 контакт; 2 ножка (MISO) — 21 контакт; 3 ножка — не используется; 4 ножка (GND) — 25 контакт; 5 ножка (MOSI) — 19 контакт; 6 ножка (CLK) — 23 контакт; 7 ножка — не используется; 8 ножка (3.3В) — 17 контакт

Питание на микросхему можно подать одним из двух способов:

  1. Через адаптер ноутбука, подключив низковольтный разъём адаптера к материнской плате, а его сетевой разъём в розетку 220В.
  2. От внешнего источника питания на 3.3В, плюсовой шиной на 8 ножку, минусовой на 4 ножку, соответственно.

Чтение подключенного ПЗУ MX25L1605

Рекомендуется точно определить производителя чипа BIOS, прежде чем пытаться начинать процедуру чтения содержимого.

Затем необходимо загрузить на компьютер Raspberry Pi и скомпилировать утилиту Flashrom. Делается это посредством следующего кода:

Кодовая комбинация 1

Далее для ПЗУ производства SST, выполнить команду:

Кодовая комбинация 2

Для ПЗУ производства Macronix выполнить последовательность:

Проверить контрольную сумму командой:

Кодовая комбинация 3

Повторно запустить утилиту Flashrom командой проверки контрольной суммы и следом выполнить команду на тест содержимого BIOS:

Кодовая комбинация 4Кодовая комбинация 5

Если в результате выполненных операций контрольная сумма совпадает, это свидетельствует о точном прочтении дампа утилитой Flashrom.

Прошивка микросхемы flash серии 25хх

После удачных операций чтения дампа и сверки контрольной суммы, остаётся только выполнить завершающее действие – прошить микросхему памяти – записать в чип новую информацию, необходимую пользователю.

Для ПЗУ производства SST нужна команда:

Кодовая комбинация 6

Для ПЗУ производства Macronix нужна команда:

Кодовая комбинация 7

При этом путь к файлу «.rom» следует указывать по существу. То есть, если дамп прошивки лежит по пути: «/bin/x60/libreboot_usqwerty.rom», значит так и нужно указывать вместо строки: «/path/to/libreboot.rom».

После успешно завершённой операции, утилита выдаёт последовательность сообщений:

  1. Чтение старого содержимого чипа…успешно.
  2. Очистка и запись в чип…успешно.
  3. Проверка флеш…проверено.

Если операция завершилась неудачно, с частично исполненными командами, процедуру следует повторить. Иногда с первого раза чипы не прошиваются, особенно если производители памяти не относятся к фирмам, обозначенным здесь.

Аналогичным способом прошиваются ПЗУ других моделей планшетных компьютеров, а также чипы памяти из категории EEPROM и FLASH. Возможны определённые отклонения или дополнения в операциях с другими чипами в зависимости от конфигураций и требований. Однако в целом алгоритм процедуры сохраняется.

Альтернативные функции

В то время как многие проекты могут уживаться с выводами питания и ввода, иногда от Pi требуются разные способности. К счастью, некоторые выводы GPIO удваиваются как интерфейсы I2C, SPI и UART. Pi 4 расширил возможности многих выводов, поддерживая эти интерфейсы на большем количестве из них, чем в Raspberry Pi 3b+ и до неё. Ниже приведем краткое описание по каждому интерфейсу.

I2C

I2C, или протокол Inter-Integrated Circuit, позволяет вашему Raspberry Pi управлять несколькими датчиками и компонентами, известными как ведомые (slave, подчиненные). Связь осуществляется через SDA (вывод данных) и SCL (вывод тактовой частоты). Каждое ведомое устройство создается с уникальным адресом, чтобы обеспечить быструю связь со многими устройствами. Контакты ID_EEPROM также являются I2C, но используются для связи с дополнительными платами, а не подчиненными компонентами.

SPI

SPI, или последовательный периферийный интерфейс, также используется для управления компонентами с отношениями мастер-ведомый (ведущий-ведомый), хотя он не такой компактный. Для работы требуются часы (SCLK), контакты Master Out Slave In (MOSI) и Master In Slave Out. Выводы выполняют то, что подразумевают их названия, с помощью SCLK, регулирующего скорость передачи данных, MOSI используется для отправки указаний от Pi на подключенные устройства, а MISO делает наоборот.

UART

Если вы раньше работали с Arduino, возможно, вы уже слышали о UART или Serial (последовательная связь). Универсальный асинхронный приемник/передатчик используется для подключения плат Arduino к компьютерам, которые их программируют, а также для связи между другими устройствами с приемными и передающими контактами. Эти контакты могут использоваться для управления вашим Pi через другой компьютер, если последовательная консоль включена в raspi-config, или для прямого управления Arduino, если вы не можете использовать кабель USB для своего проекта.

По теме: Как подключить Raspberry Pi к Ардуино?

PWM

Наряду с другими функциями все контакты поддерживают программный ШИМ, а GPIO12, GPIO13, GPIO18, GPIO19 — аппаратную широтно-импульсную модуляцию.

Контакты ввода/вывода в плате Raspberry Pi

Внешний вид и распиновка контактов ввода/вывода (GPIO) платы Raspberry Pi показаны на следующих рисунках.

Как показано на представленном рисунке, у платы Raspberry Pi имеется 40 контактов ввода/вывода. Но однако не все эти контакты доступны для программирования. На самом деле для программирования доступны только 26 контактов ввода/вывода (GPIO), которые обозначены на представленном рисунке с GPIO2 до GPIO27.

Эти контакты вы можете программировать по своему усмотрению. Некоторые из этих контактов могут также выполнять специальные функции (последовательный порт, интерфейсы SPI и I2С и т.д.). Если не учитывать контакты, которые могут выполнять специальные функции, то остается 17 программируемых контактов общего назначения, на следующем рисунке они обозначены кружками зеленого цвета.

Каждый из этих 17 контактов может выдерживать ток до 15mA, а суммарный ток от всех контактов ввода/вывода не должен превышать 50mA. Таким образом, если мы задействуем все эти 17 контактов, то в среднем на каждый контакт должен приходиться ток не более 3mA.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector