Где-то пропадают данные по дороге из TX в RX

Dim_K
Offline
Зарегистрирован: 07.06.2017

Пришла с поднебесной Arduino Nano 3. Драйвера под CH340 встали без проблем, но скетчи нивкакую не заливаются, хотя после ресета LED13 исправно 4 раза моргает (то есть там есть загрузчик и он ждет данные). Открываю монитор порта, шлю символы - светодиод RX на плате моргает. Дальше начинается самое интересное (см. схему).



Закорачиваю RX и TX прям на чипе CH340 - шлю символы в монитор порта и те возвращаются, при этом моргает только RX, TX так и не моргает.

Закорачиваю RX и TX на чипе ATMEGA328P - шлю символы в монитор порта и те уже не возвращаются, при этом перестает моргать и RX, TX так и не моргает. То же самое, если закорачиваю TX и RX на выводах платы.

Прозвонил все дорожки от CH340 до ATMEGA и дальше к выводам платы - проблем не нашел.

Собственно вопрос, из-за чего такое может быть?

ЗЫ: осциллографа нет :(

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

На данной плате замыкание пинов rx/tx не даст прозвонку из-за pullup светодиодов. Очевидно, что дело не в другом.  Нужно перешивать бут. 

Dim_K
Offline
Зарегистрирован: 07.06.2017

Логично. Сейчас попробую их другой ардуинки ISP соорудить.

Спасибо.

Dim_K
Offline
Зарегистрирован: 07.06.2017

Собрал ISP из MEGA2560, пытаюсь прошить напрямую через разъем ICSP, но походу не отвечает там никто.

Вот лог процесса прошивки:

Arduino: 1.6.11 (Windows 7), Плата:"Arduino Nano, ATmega328"

Скетч использует 928 байт (3%) памяти устройства. Всего доступно 30 720 байт.
Глобальные переменные используют 9 байт (0%) динамической памяти, оставляя 2 039 байт для локальных переменных. Максимум: 2 048 байт.
C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM7 -b19200 -Uflash:w:C:\Users\User\AppData\Local\Temp\build9c9ef3bdfe2fccb480bc6e4bac749e41.tmp/Blink.ino.hex:i 

avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"

         Using Port                    : COM7
         Using Programmer              : stk500v1
         Overriding Baud Rate          : 19200
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x03
         AVR Part                      : ATmega328P
         Chip Erase delay              : 9000 us
         PAGEL                         : PD7
         BS2                           : PC2
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom        65    20     4    0 no       1024    4      0  3600  3600 0xff 0xff
           flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
           lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

         Programmer Type : STK500
         Description     : Atmel STK500 Version 1.x firmware
         Hardware Version: 2
         Firmware Version: 1.18
         Topcard         : Unknown
         Vtarget         : 0.0 V
         Varef           : 0.0 V
         Oscillator      : Off
         SCK period      : 0.1 us

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x000000 (retrying)

Reading | ################################################## | 100% 0.03s

avrdude: Device signature = 0x000000 (retrying)

Проблема загрузки в плату. Помощь по загрузке: http://www.arduino.cc/en/Guide/Troubleshooting#upload .
Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

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