Не шьётся atmega328p-ua по uart с внутренним генератором

Patriot
Offline
Зарегистрирован: 25.06.2015

В общем, для экономия места и деталек на плате, выкинул из схемы кварц, в фьюзах указал использовать внутренний генератор на 8МГц. В общем-то всё работает, но с таким параметром атмега 328p-au перестает шиться через UART. Почему? Что не так? Если это не возможно (почему?), то придется все же добавлять кварц в схему, либо убирать UART и добавлять ISP выводы.

Green
Offline
Зарегистрирован: 01.10.2015

atmega328_int8.upload.speed=38400

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Покажите лог загрузки с кварцем - когда заливка успешна и без кварца - когда заливка не происходит.

Надо уменьшать скорость общения по UART или прописать загрузчик с учетом новой частоты работы платы !

Patriot
Offline
Зарегистрирован: 25.06.2015

Что-то не получилось:(( Скорость порта пробовал ставить как 38400, так и 9600

avrdude: Version 6.3-20190619
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "/Users/username/.platformio/packages/tool-avrdude/avrdude.conf"
         User configuration file is "/Users/username/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping

         Using Port                    : /dev/cu.usbserial-4
         Using Programmer              : arduino
         Overriding Baud Rate          : 38400
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00
..
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x00

avrdude done.  Thank you.

*** [upload] Error 1

 

 

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

Patriot пишет:
В общем, для экономия места и деталек на плате, выкинул из схемы кварц, в фьюзах указал использовать внутренний генератор на 8МГц.

Текущие fuses в студию..

Komandir
Komandir аватар
Offline
Зарегистрирован: 18.08.2018

Загрузчик скорее всего рассчитан на кварц 16 мГц. Вы его ополовинили - след и скорость COM порта ополовинилась, относительно той на которой успешно заливается скетч при наличии кварца на 16 мГц.

Patriot
Offline
Зарегистрирован: 25.06.2015

dimax пишет:

Текущие fuses в студию..

lfuse: 0xE2

hfuse: 0xD6

lock: 0xCF

Komandir пишет:

Загрузчик скорее всего рассчитан на кварц 16 мГц. Вы его ополовинили - след и скорость COM порта ополовинилась, относительно той на которой успешно заливается скетч при наличии кварца на 16 мГц.

Я прошивал бутлоадер со фьюзами через пакет MiniCore для Arduino IDE, думал, он автоматом согласует всё. Так как там выбираются параметры.

В общем-то, через USBAsp по ISP всё удалось прошить. Просто интересно теперь, почему через UART не заливается.

 

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

Patriot пишет:

Просто интересно теперь, почему через UART не заливается.

Тут всё просто - лоадер работал при 16МГц тактовой на скорости 115200. Вы снизили тактовую вдвое, соответственно обмен по уарт теперь должен идти на 57600.  Но IDE  про это не знает. Если вы выбираете Internal 8MHz, то IDE подставляет 38400 как вам намекнул Green в #1 . Соответссно надо поменять в строке на 57600 , или же залить новый лоадер под эти настройки.