Crumbuino-128 своими руками

Joiner
Offline
Зарегистрирован: 04.09.2014

Green пишет:

Красивенько. Где такие платки продают?

https://ru.aliexpress.com/item/32960898512.html?spm=a2g0s.9042311.0.0.274233edaw0CAs   но почему-то сейчас в два раза дороже.....     Мне досталось вместе с доставкой за 130 рублей.

Jaeger
Jaeger аватар
Offline
Зарегистрирован: 23.03.2018

Есть тоже не плохие платы, но гораздо дешевле: https://ru.aliexpress.com/item/32810626493.html?spm=a2g0o.cart.0.0.54473...

Заказывал 3 шт за 290 руб.

Joiner
Offline
Зарегистрирован: 04.09.2014

А я думал. что мне повезло взять подешевке :) , а оказывается еще дешевле есть.

Китаец подогнал схему для платы, которая у меня. Не пойму зачем на ней к пинам PA0, PA1, PA2, PA3 подключены 4 светодиода?

P.S. Нашел в описании про 4 светодиода. Они подключаются и отключаются одним джампером, и служат, как написано, для быстрой отладки.

 

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

Та даже 1 светодиод, иной раз, очень здорово помогает. Особенно если запускаешь удалённо с нуля. С ним же сразу видно стартует МК или нет и на какой частоте.

Joiner
Offline
Зарегистрирован: 04.09.2014

Опять паял целый день.....старался. Но плата не завелась. Та же самая ошибка, будто бы МК не подключен. Проверил весь монтаж, все напряжения. Оказалось что нет напряжения на ногах 64 (AVCC), и на ноге 52 (VCC). Эти ноги просто выведены на разъем. На ноге 21(VCC) напряжение есть. В этом причина, или подключение этих ног необязательно?

Jaeger
Jaeger аватар
Offline
Зарегистрирован: 23.03.2018
Способ прошивки загрузчика в ATmega128a без программаторов и ардуин.
 
Исходные данные:
Hardware:
1. Макетная плата с контроллером ATmega128A, например:
 
2. USB/UART FTDI232 конвертер  
Software:
1. Win7;
2. Arduino IDE 1.8.9 с установленным MegaCore;
3. Драйвер для FTDI232 конвертера: https://www.ftdichip.com/Drivers/D2XX.htm 
4. Набор файлов: https://cloud.mail.ru/public/Gpxh/29urpaW6W
 
Действия:
1. Соединяем конвертер с макеткой по схеме:
2. Копипастим файлы из набора (старые сохраняем под другим именем):
avrdude.conf --> C:\Users\....\AppData\Local\Arduino15\packages\MegaCore\hardware\avr\2.0.2
avrdude.exe --> disk:\...\arduino-1.8.9\hardware\tools\avr\bin
programmers.txt --> disk:\...\arduino-1.8.9\hardware\arduino\avr (или содержимое этого файла вставить в одноименный).
 
3. Открываем Arduino IDE, в меню "Инстументы" выбираем программатор "FTDI232" и плату, соответствующую вашей макетке.
4. Подключаем USB и жмем "Записать загрузчик", через пару сек "загрузчик" запишется. Передернем шнурок USB и снимаем
перемычку. 
5. Грузим скетчи обычным способом кнопкой "Загрузка". (Не забываем выбрать порт).
Joiner
Offline
Зарегистрирован: 04.09.2014

Jaeger пишет:

Способ прошивки загрузчика в ATmega128a без программаторов и ардуин.
 
..........................................
3. Открываем Arduino IDE, в меню "Инстументы" выбираем программатор "FTDI232" и плату, соответствующую вашей макетке.
4. Подключаем USB и жмем "Записать загрузчик", через пару сек "загрузчик" запишется. Передернем шнурок USB и снимаем
перемычку. 
..........................................

Что значит "выбираем ......... и плату, соответствующую вашей макетке."? Т.Е. надо знать, что там зашито в микроконтроллере?

Jaeger
Jaeger аватар
Offline
Зарегистрирован: 23.03.2018

Имеется ввиду, какой кварц установлен на макетке.

Oleg Smirnoff
Offline
Зарегистрирован: 06.01.2018

Хе-хе...

Подкинули мне тут плату от какого то девайса мультимедийного -"на детали" :)

- и не с первого - но со второго взгляда  - обнаружилась на плате Atmega64L.

ну не удержался...  сдул феном Атмегу, купил платку-переходник с QTF на 2,5 мм , и на макетке спаял проволочками.... Типо - ардуино - светодиоды, конденсаторы, кнопка, раз]емы для программатора, конвертера USB/UART, пины для A0-A7  и  D2-D22 (решил что этого хватит), отдельно  пины I2C -  все вместилось в 5х7 см.

И стал через Uno грузить в 64-ю бутлодер что от MegaCore...  И не грузится....

Послушал рекомендацию "проверьте соединения дважды".... :)

И обнаружил что кварц 8 Мгц - не припаян. На макетку припаял, конденсаторы, все как положено... А к чипу - не припаял.. :)

Припаял.  И всё с лету прошилось - и заблымкало светодиодом на D13.

Имею теперь "Ардуину64" -  очень компактную и с удвоенной памятью на борту, по сравнению с 328-ми...

Так что - смелее коллеги если подвернется чип с помойки.... Может еще и заработает. :)

 

lopata v ruke
Offline
Зарегистрирован: 29.10.2015

Здравствуйте. Собрал плату на МК Atmega128 и CH340G с внешним кварцем 16мГц.
http://i-fotki.info/26/36e752874528a9e00fe8ae7903856a14551aeb371095951.j...
http://i-fotki.info/26/6fe0d68c3bf18184068f8fee1c89763a551aeb371095949.j...
http://i-fotki.info/26/e656358ce3306316b2ac2ea1e76a6e29551aeb371095952.g...

Печатка в Lay6 
http://wdfiles.ru/ngcZ

Устанавливал разные IDE   1.6.9   1.8.7    1.8.5    1.6.10. Скачал bootloader ATmegaBOOT_168_atmega128.hex с сайта www.chip45.com Crumbuino-128. Редактировал файл boards для Atmega128. Но загрузчик прошить так и не удалось. Так-же пробовал прошить Мегу128 через Ардуино Уно (китай), безрезультатно. UNO прекрасно работает во всех IDE.  Решил шить ЮСБ программатором USB-ISP в среде ProgISP 1.72.
http://i-fotki.info/26/920b3abd4114dc966953c023916129df551aeb371095952.j...
В файле boards (для Atmega128) указаны фьюзы: FF  DA FF , прошивка ATmegaBOOT_168_atmega128.hex
Прошил.

скрин фьюзов для bootloader
http://i-fotki.info/26/5d758dfe20721b2ae8833bcbdc939f5e551aeb371095957.p...

а это скрин заводских фьюзов
http://i-fotki.info/26/f54b63cec0a745b8a68145b0ea9ab0f7551aeb371095957.p...

МК перестал определяться в программаторе, заменил кварц с 16мГц на 12мГц и МК стал определяться в ProgISP.

Запустил IDE, выбрал в списке Мегу128, выбрал blink и "посыпались" множественные ошибки (во всех версиях IDE 1.6.9   1.8.7    1.8.5    1.6.10). Остановился я на версии 1.6.9 Portable (без установки), так как там уже есть все файлы (boards, bootloder и.т.д) уже добавлены в IDE. Скачал отсюда http://arduino.ru/forum/obshchii/atmega-128a-au-vneshnyaya-sram-62256-74hc753-proboval-li-kto-sobirat#comment-198137

При загрузке blink возникают ошибки такого плана

 

Arduino: 1.6.9 (Windows 7), Плата:"ATmega128 16Mhz"
 
Скетч использует 1 224 байт (0%) памяти устройства. Всего доступно 126 976 байт.
Глобальные переменные используют 9 байт (0%) динамической памяти, оставляя 4 087 байт для локальных переменных. Максимум: 4 096 байт.
C:\Program Files\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega128 -carduino -PCOM4 -b57600 -D -Uflash:w:C:\Users\ALEXAN~1\AppData\Local\Temp\build08e4957f02c018eb579e11ddc64f9701.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\Arduino\hardware\tools\avr/etc/avrdude.conf"
 
         Using Port                    : COM4
         Using Programmer              : arduino
         Overriding Baud Rate          : 57600
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x2a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x2a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x2a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x2a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x2a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x2a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x2a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x2a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x2a
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x2a
 
Проблема загрузки в плату. Помощь по загрузке: http://www.arduino.cc/en/Guide/Troubleshooting#upload .
avrdude done.  Thank you.
 
Этот отчёт будет иметь больше информации с
включенной опцией Файл -> Настройки ->
"Показать подробный вывод во время компиляции"
---------------------------------------------------------------------------------------------------------------------------

Скетч использует 1 224 байт (0%) памяти устройства. Всего доступно 126 976 байт.
Глобальные переменные используют 9 байт (0%) динамической памяти, оставляя 4 087 байт для локальных переменных. Максимум: 4 096 байт.
C:\Program Files\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega128 -carduino -PCOM4 -b57600 -D -Uflash:w:C:\Users\ALEXAN~1\AppData\Local\Temp\build08e4957f02c018eb579e11ddc64f9701.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\Arduino\hardware\tools\avr/etc/avrdude.conf"
 
         Using Port                    : COM4
         Using Programmer              : arduino
         Overriding Baud Rate          : 57600
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x93
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x93
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x93
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x93
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x93
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x93
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x93
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x93
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x93
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x93
 
avrdude done.  Thank you.
 
Проблема загрузки в плату. Помощь по загрузке: http://www.arduino.cc/en/Guide/Troubleshooting#upload .

"Залипов" ,  КЗ , обрывов, на плате нет (прозванивал дорожки тестером).

Подскажите пожалуйста, в чем проблема?