Proteus не прошивается реальный Attiny13

Обсуждаем контроллеры компании Atmel.
dds7sdd
Прорезались зубы
Сообщения: 207
Зарегистрирован: Чт дек 07, 2017 13:48:44

Proteus не прошивается реальный Attiny13

Сообщение dds7sdd »

Приветствую!

Создал проект в Proteus 8.13 на ATtiny13 и хочу, штатными средствами Proteus, заливать прошивку напрямую в голый ATtiny по SPI.

В качестве программатора - Arduino nano (Arduino as ISP).
Проект компилируется и без проблем работает в симуляторе.
Полученный debug.hex опять же без проблем заливается через Arduino nano (Arduino as ISP) программами AVRDUDE Prog и SinaProg.
Но вот из самого Proteusa прошиваться никак не хочет.
Вернее прошивка заливается, индикация на ардуине индицирует передачу данных,
AVRDUDE пишет: "avrdude.exe done. Thank you.Firmware upload COMPLETE." То есть весь процесс прошивки проходит успешно, но прошиваемый контроллер не работает.

Курил мануал, а именно: visualDesigner help(74 страница). Но там ничего по существу нет. Настройки для новичков.
В гугле ничего найти не удалось на эту тему.
Полагаю что настроены неправильно fuse и некорректный набор команд AVRDUDE. Уже день потратил на эту херабору.
Может кто сталкивался подскажите как решить.
Ниже приведу свои настройки проекта и вывод AVRDUDE.

Меню "Настройки проекта":

Изображение

Вывод AVRDUDE при компиляции и прошивке:

Компиляция:
Спойлерavr-gcc.exe -Wall -gdwarf-2 -fsigned-char -MD -MP -DF_CPU=9600000 -O1 -mmcu=attiny13 -o "main.o" -c "../main.c"
avr-gcc.exe -mmcu=attiny13 -o "./Debug.elf" "main.o"
avr-objcopy -O ihex -R .eeprom "./Debug.elf" "./Debug.hex"
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 --no-change-warnings -O ihex "./Debug.elf" "./Debug.eep" || exit 0
Compiled successfully.
Прошивка:
СпойлерFirmware is already compiled.

Uploading firmware 'Debug.elf'


avrdude.exe: AVR device initialized and ready to accept instructions
avrdude.exe: Device signature = 0x1e9007 (probably t13)
avrdude.exe: reading input file "C:/Users/DYDUS~1/AppData/Local/Temp/VSM Studio/642938b1af024983babf0b4bc6600470/ATTINY13_1/Debug/Debug.elf"
avrdude.exe: writing flash (970 bytes):
avrdude.exe: 970 bytes of flash written

avrdude.exe done. Thank you.
Firmware upload COMPLETE.
Есть еще вкладка "Options" в меню свойств проекта и там как раз можно прописать команды AVRDUDE, но я так и не разобрался как это сделать. В туториалах о ней ни слова...

Изображение

В общем просьба подсказать куда копать и вообще работает ли корректно эта опция.
Реклама
veso74
Поставщик валерьянки для Кота
Сообщения: 1907
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: Proteus не прошивается реальный Attiny13

Сообщение veso74 »

На какой частоте должен работать проектный МК? По умолчанию фюзов ATtiny13A установлены на 9,6/8 = 1,2 MHz.
Реклама
dds7sdd
Прорезались зубы
Сообщения: 207
Зарегистрирован: Чт дек 07, 2017 13:48:44

Re: Proteus не прошивается реальный Attiny13

Сообщение dds7sdd »

Проектная - 9.6MHz. В симуляторе выставлен делитель на 8 в fuse бит CLKDIV8. Но в настройках проекта в пункте "Clock for delays" установлено 9.6MHz. Именно из этого пункта берётся значение частоты при прошивке реального МК. Об этом написано в мануале, ссылку на который я приводил выше (стр. 72).
veso74
Поставщик валерьянки для Кота
Сообщения: 1907
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: Proteus не прошивается реальный Attiny13

Сообщение veso74 »

Я не уверен, что Proteus поменяет фюзов МК. С Arduino в качестве программатора и, напр. AVRDUDESS запишите LF в 0x7A (9,6 MHz) и затем повторит попытку. Для эксперимента можно заранее прочитать LF в ATtiny13A?
Реклама
Эиком - электронные компоненты и радиодетали
dds7sdd
Прорезались зубы
Сообщения: 207
Зарегистрирован: Чт дек 07, 2017 13:48:44

Re: Proteus не прошивается реальный Attiny13

Сообщение dds7sdd »

А причем здесь частота? Ну пусть даже выставлен делитель на 8 в фьюзах и частота будет 1.2, но тот же блинк бы запустился и я увидел бы его работу.
Почти уже разобрался с этой вкладкой "Options"... Попробую прописать там команды из AVRDUDE Prog (хоть и через задницу там все это делается).
Реклама
dds7sdd
Прорезались зубы
Сообщения: 207
Зарегистрирован: Чт дек 07, 2017 13:48:44

Re: Proteus не прошивается реальный Attiny13

Сообщение dds7sdd »

Проверил на ATmega8 и ATmega328 - то же самое. Процес прошивки удачно завершается но МК не работают.
Реклама
veso74
Поставщик валерьянки для Кота
Сообщения: 1907
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: Proteus не прошивается реальный Attiny13

Сообщение veso74 »

Попробуйте внешнюю программу записи (известную вам), чтобы записать hex скомпилированный из Proteus. По методу выключения узнаете, правильно ли Proteus компилирует или записывает некорректно (напр. нужны дополнительные настройки).
dds7sdd
Прорезались зубы
Сообщения: 207
Зарегистрирован: Чт дек 07, 2017 13:48:44

Re: Proteus не прошивается реальный Attiny13

Сообщение dds7sdd »

Странно... То ли я спутанно пишу или недоходчиво объясняю... То ли... Скорее да, не правильно построил предложение.
Вот здесь я написал что скомпилированную Proteus прошивку в debug.hex файл успешно прошиваю в микроконтроллер с помощью AVRDUDE Prog и SinaProg.
[uquote="dds7sdd",url="/forum/viewtopic.php?p=4585823#p4585823"]Полученный debug.hex опять же без проблем заливается через Arduino nano (Arduino as ISP) программами AVRDUDE Prog и SinaProg.[/uquote]
То есть Proteus генерит hex файл, я его прошиваю SinaProg с фьюзами по умолчанию и всё работает.
Неработает когда я пытаюсь это же hex файл прошить самим Proteus-ом.
OKF
Это не хвост, это антенна
Сообщения: 1393
Зарегистрирован: Вт июн 07, 2011 08:03:18

Re: Proteus не прошивается реальный Attiny13

Сообщение OKF »

Только запускаемый из Протеуса Avrdude использует elf, а не hex.
avrdude.exe: reading input file "C:/Users/DYDUS~1/AppData/Local/Temp/VSM Studio/642938b1af024983babf0b4bc6600470/ATTINY13_1/Debug/Debug.elf
dds7sdd
Прорезались зубы
Сообщения: 207
Зарегистрирован: Чт дек 07, 2017 13:48:44

Re: Proteus не прошивается реальный Attiny13

Сообщение dds7sdd »

Согласен! Не выбрал пункт Release, но это всеравно не решает проблему.
Вот лог Proteus при режиме Release. Здесь уже в контроллер льется hex файл.
Микроконтроллер не работает.
Спойлерavr-gcc.exe -Wall -gdwarf-2 -fsigned-char -MD -MP -DF_CPU=9600000 -Os -mmcu=attiny13 -o "main.o" -c "../main.c"
avr-gcc.exe -mmcu=attiny13 -o "./Release.elf" "main.o"
avr-objcopy -O ihex -R .eeprom "./Release.elf" "./Release.hex"
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 --no-change-warnings -O ihex "./Release.elf" "./Release.eep" || exit 0
cp "Release.hex" "C:/Users/Dyud/Documents/ATTINY13_1.hex"
Compiled successfully.

Uploading firmware 'Release.hex'


avrdude.exe: AVR device initialized and ready to accept instructions
avrdude.exe: Device signature = 0x1e9007 (probably t13)
avrdude.exe: reading input file "C:/Users/DYADUS~1/AppData/Local/Temp/VSM Studio/642938b1af024983babf0b4bc6600470/ATTINY13_1/Release/Release.hex"
avrdude.exe: writing flash (926 bytes):
avrdude.exe: 926 bytes of flash written

avrdude.exe done. Thank you.
Firmware upload COMPLETE.
А вот лог программы SinaProg при заливке этого же файла (Release.hex).
Микроконтроллер работает.
Спойлер$ avrdude -p t13 -c arduino -P COM3 -b 19200 -F -U flash:w:Release.hex
====================

avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny13
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e9007
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny13
avrdude: reading input file "Release.hex"
avrdude: input file Release.hex auto detected as Intel Hex
avrdude: writing flash (890 bytes):

Writing | ################################################## | 100% 1.81s

avrdude: 890 bytes of flash written
avrdude: verifying flash memory against Release.hex:
avrdude: load data flash data from input file Release.hex:
avrdude: input file Release.hex auto detected as Intel Hex
avrdude: input file Release.hex contains 890 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.73s

avrdude: verifying ...
avrdude: 890 bytes of flash verified

avrdude done. Thank you.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15570
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Proteus не прошивается реальный Attiny13

Сообщение BOB51 »

А у того протеуса есть вкладка установки программатора вида "Arduino as ISP" ?... (Это корректное название для железяки на основе ардуино нано и скотча из примеров ардуино IDE для установки в использующих его софт- оболочках).
Не всё варианты "оболочек" на базе аврдуде имеют соответствующую поддержку данного "железа".
dds7sdd
Прорезались зубы
Сообщения: 207
Зарегистрирован: Чт дек 07, 2017 13:48:44

Re: Proteus не прошивается реальный Attiny13

Сообщение dds7sdd »

BOB51 Ну а как еще интерпретировать опции программатора выбираемые в меню "Настройки проекта" (первый скрин из моего первого поста)?
Первые три пункта там это семейство и тип микроконтроллера в который заливается прошивка.
А далее пункт "Programmer" - программа для прошивки (AVRDUDE) и пункт "Interface" c возможностью выбрать только Arduino uno, nano, 328p, и USBasp как бы намекает что в этом пункте выбирается программатор. А какой еще может быть программатор на базе Arduino nano кроме Arduino as ISP? Я таких не знаю...
Короче, попробую еще найти свисток USBasp и прошиться через него для экскремента. Правда с этой приблудой на Windows 10 я еще не работал. Полагаю будут тоже грабли...
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15570
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Proteus не прошивается реальный Attiny13

Сообщение BOB51 »

С "ардуино as ISP" не так всё просто.
Насколько мне на практике известно это железо помимо самой
ардуино IDE работает только на трёх софт - оболочках
avrdudeshell(09.01.2019) ;
sinaprog 2.1;
avrdudess 2.17(avrdude version 7.3)
и то в каждом отдельном случае сначала с настройкой надо позаниматься.
Всё три софтинки и под 7кой и под десяткой работают.
8)
dds7sdd
Прорезались зубы
Сообщения: 207
Зарегистрирован: Чт дек 07, 2017 13:48:44

Re: Proteus не прошивается реальный Attiny13

Сообщение dds7sdd »

Arduino as ISP еще прекрасно работает на PlatformIO в Visual Studio Code. Я на эту среду разработки перешел уже лет 5 как назад и там сижу по сей день (удобно).
Но начинал еще лет 10 назад именно с Proteus. Эта прога мне нравится как универсальная среда разработки со своими симулятором, проектировщиком печатных плат, 3D визуализацией с возможностью экспорта STEP, но самое главное с возможностью виртуальной отладки без необходимости покупать дебаггер с ценой до неба.
Короче всем она мне удобна на этапе проектирования и отладки отдельных узлов проекта. Вот только ни разу не заливал из нее прошивку напрямую.
Вот и ип..сь теперь...
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15570
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Proteus не прошивается реальный Attiny13

Сообщение BOB51 »

Так есть и другое железко...
Тот же siprog или ещё чего.
Тут уж или привычная среда разработки с соответствующими её требованиям инструментами или....
8)
dds7sdd
Прорезались зубы
Сообщения: 207
Зарегистрирован: Чт дек 07, 2017 13:48:44

Re: Proteus не прошивается реальный Attiny13

Сообщение dds7sdd »

Попробовал с помощью USBasp - то же самое..... Тут уж не приходиться грешить на ардуиновский программатор. Это америкоский институт Labcentr сделал такую систему настройки что крышу может снести...
А главное, цуко, никаких ошибок не выдает... хоть бы намёк дала куда копать... Всё Ок и всё прекрасно, только скетч не работает, с помощью SinaProg заливаешь - всё работает...

Добавлено after 27 minutes 40 seconds:
И ещё:
1. Proteus генерит hex файл №0 и прошивает его в Attiny;
2. После этого считываю SinaProg Flashe память Attiny и сохраняю в hex файл №1;
3. Прошиваю Attiny тот же hex файл №0 сгенеренный Proteus уже с помощью SinaProg;
4. После этого считываю SinaProg Flashe память Attiny и сохраняю в hex файл №2.

Так вот эти файлы разные как по содержанию так и по объему...
Файл №1=2.3Kb (Proteus)
Файл №2=2.1Kb (SinaProg)
Как прошитый в МК один и тот же файл с помощью разных программ может иметь разный объем и содержание??

Добавлено after 3 minutes 37 seconds:
Более того.
Если считать SinaProg фьюзы из Attiny после прошивки его Proteus и сравнить с теми что устанавливает при прошивке SinaProg - то они одинаковые!
То есть Proteus фьюзы не трогает...
OKF
Это не хвост, это антенна
Сообщения: 1393
Зарегистрирован: Вт июн 07, 2011 08:03:18

Re: Proteus не прошивается реальный Attiny13

Сообщение OKF »

[uquote="dds7sdd",url="/forum/viewtopic.php?p=4586703#p4586703"]Файл №1=2.3Kb (Proteus)
Файл №2=2.1Kb (SinaProg)
Как прошитый в МК один и тот же файл с помощью разных программ может иметь разный объем и содержание??[/uquote]
Ты бы посмотрел сначала, а потом спрашивал, не?
dds7sdd
Прорезались зубы
Сообщения: 207
Зарегистрирован: Чт дек 07, 2017 13:48:44

Re: Proteus не прошивается реальный Attiny13

Сообщение dds7sdd »

[uquote="dds7sdd",url="/forum/viewtopic.php?p=4586703#p4586703"]1. Proteus генерит hex файл №0 и прошивает его в Attiny;
2. После этого считываю SinaProg Flashe память Attiny и сохраняю в hex файл №1;
3. Прошиваю Attiny тот же hex файл №0 сгенеренный Proteus уже с помощью SinaProg;
4. После этого считываю SinaProg Flashe память Attiny и сохраняю в hex файл №2.[/uquote]

Ты бы прочитал вначале, подумал, а потом писал бы...
Аватара пользователя
Starichok51
Модератор
Сообщения: 19053
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Re: Proteus не прошивается реальный Attiny13

Сообщение Starichok51 »

dds7sdd, тебе правильно подсказали, что нужно посмотреть и сравнить содержимое обоих файлов, и найти, в чем разница.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15570
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Proteus не прошивается реальный Attiny13

Сообщение BOB51 »

Вроде для тини13 бутлоадер не предусматривается...
:roll:
Ответить

Вернуться в «AVR»