Приветствую. После сборки и прошивки контроллера так и не удалось заставить нормально работать serial (будь то 2 и 3 ноги или software serial на других ногах) — сыплет мусор и принимает такой-же мусор. Собрано по этой схеме: тестировал с разными резонаторами (все на 16MHz)/конденсаторами/мк — характер проблемы системный. Прошивал через arduino ide. Спойлер: Блок файла boards.txt для Arduino IDE: a328p_16MHz.name=atmega328p (16 MHz) a328p_16MHz.upload.protocol=arduino a328p_16MHz.upload.maximum_size=32256 a328p_16MHz.upload.speed=115200 a328p_16MHz.bootloader.low_fuses=0xff a328p_16MHz.bootloader.high_fuses=0xde a328p_16MHz.bootloader.extended_fuses=0x5 a328p_16MHz.bootloader.path=optiboot a328p_16MHz.bootloader.file=a328p_16MHz_ff_de_5.hex a328p_16MHz.build.mcu=atmega328p a328p_16MHz.build.f_cpu=16000000L a328p_16MHz.build.core=arduino a328p_16MHz.build.variant=standard Мусор летит на всех возможных скоростях: от 300 бод и до 115200 включительно. Иногда нужные строки проскакивают, если удается их отличить от мусора. Питается мк через 7805 либо от питания ардуины — результаты не меняются. В остальном, все рабоет предсказуемо. Куда копать?
А, та (аналоговая) земля и aVCC подключены соотв. образом. Это было последнее, что пришло в голову, но никак не отразилось на проблеме.
На uart и правда нет земли. Где она быть-то должна? Посмотрел на ардуину, там от rx/tx на МК дорожки идут напрямую к стойке.