====== HardwareSerial и SoftwareSerial ====== Статья в разработке ===== SoftwareSerial ===== На управляющих платформах Arduino с микроконтроллером ''ATmega328 / ATmega2560'', аппаратный UART выведен на контактные пины ''0'' и ''1'' и он же используется для отладки/прошивки по USB. Это означает невозможность использовать одновременно общение по USB и дальномера. Решение проблемы — программный UART, который позволяет имитировать шину на других контактах платы. Подробности читайте в описании библиотеки [[https://www.arduino.cc/en/Reference/SoftwareSerial|SoftwareSerial]]. === Список поддерживаемых плат === Все платы Arduino с ядром AVR. ===== HardwareSerial ===== На управляющих платах Arduino с микроконтроллерами ''ATmega32U4 / ATSAMD21G18'', аппаратный UART выведен на контактные пины ''0'' и ''1'', а данные по USB передаются через виртуальный COM-порт. Это даёт возможность одновременно подключить дальномер к аппаратному UART и выполнять отладку по USB. ==== HardwareSerial Mega==== На платформах форм-фактора [[amp>product/arduino-mega-2560?utm_source=man&utm_campaign=barcode-scanner&utm_medium=wiki | Arduino Mega 2560]] интерфейс UART выведен на контактные пины платы и он же используется для отладки по USB. Это означает невозможность использовать одновременно прошивку/отладку по USB и общение с Barcode-модулем. Но на платах такого форм-фактора есть ещё дополнительно три аппаратных UART: * ''Serial1:'' пины 19(RX1) и 18(TX1); * ''Serial2:'' пины 17(RX2) и 16(TX2); * ''Serial3:'' пины 15(RX3) и 14(TX3). Список поддерживаемых плат: * [[amp>product/arduino-mega-2560?utm_source=man&utm_campaign=barcode-scanner&utm_medium=wiki | Arduino Mega 2560]] * [[amp>product/iskra-mega?utm_source=man&utm_campaign=barcode-scanner&utm_medium=wiki | Iskra Mega]] * [[amp>product/arduino-adk?utm_source=man&utm_campaign=barcode-scanner&utm_medium=wiki | Arduino ADK]] * [[amp>product/arduino-due?utm_source=man&utm_campaign=barcode-scanner&utm_medium=wiki | Arduino Due]]