помогите перекомпилировать программу с attiny85 под attiny45

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
newcheb
Родился
Сообщения: 6
Зарегистрирован: Пн окт 07, 2013 19:42:27

помогите перекомпилировать программу с attiny85 под attiny45

Сообщение newcheb »

Хотел сделать usb адаптер для денди(nes) джойстика.
вот статья, которой я руководствовался - http://www.bidouille.org/elec/usbnesadapter
В статье написано, что можно использовать attiny45, хотя сам автор, по-видимому, использовал attiny85, у которого 8кб флеша(в отличии от 4кб attiny45) и makefile делал под него. При его компиляции размер hex файла = 8192бита. При изменении строки о типе контроллера в makefile на:"MCU = attiny45" никаких изменений в размере hex файла не произошло. Соответственно такой прошивкой tiny45 не прошился.
Вот исходники из статьи:
http://www.bidouille.org/files/elec/usb ... 20code.zip
Помогите...
Реклама
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: помогите перекомпилировать программу с attiny85 под atti

Сообщение Engineer_Keen »

1) Размер HEX и размер прошивки - разные вещи (читать что такое HEX).
2) Если автор сказал, что можно использовать 45 вместо 85, это не значит, что после перекомпиляции размер прошивки (и тем более HEX) будет в 2 раза меньше, это лишь значит, что прошивка для 85 заведомо занимает менее 4кБ
Почему контроллер не прошился - другой вопрос.
Реклама
Аватара пользователя
Jack_A
Друг Кота
Сообщения: 6312
Зарегистрирован: Вт апр 24, 2007 07:45:40
Откуда: Minsk

Re: помогите перекомпилировать программу с attiny85 под atti

Сообщение Jack_A »

newcheb писал(а):размер hex файла = 8192бита
байта ....
Посмотреть этот хекс -- мож. быть, б'ольшая часть его FF-ками заполнена, т.е. пуста.
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: помогите перекомпилировать программу с attiny85 под atti

Сообщение Engineer_Keen »

Судя по дизассемблеру, код кончается на 2381-ом байте флеш-пямати...
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Re: помогите перекомпилировать программу с attiny85 под atti

Сообщение oleg110592 »

собрал под тини45, не нравится предупреждение
main.c:186: warning: passing argument 1 of 'usbSetInterrupt' from incompatible pointer type
может заработает
Вложения
main.zip
(2.81 КБ) 209 скачиваний
Реклама
newcheb
Родился
Сообщения: 6
Зарегистрирован: Пн окт 07, 2013 19:42:27

Re: помогите перекомпилировать программу с attiny85 под atti

Сообщение newcheb »

oleg110592 на ваш hex ругается также.
Может что-то с программатором?Вот что выдает avrdude(gui avrdude_prog):
Спойлерavrdude.exe: Device signature = 0x1e9206
avrdude.exe: NOTE: FLASH memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude.exe: erasing chip
avrdude.exe: reading input file "D:\Install\USBASP\USB NES adapter code\main.hex"
avrdude.exe: input file D:\Install\USBASP\USB NES adapter code\main.hex auto detected as Intel Hex
avrdude.exe: writing flash (2354 bytes):

Writing | ################################################## | 100% 1.25s

avrdude.exe: 2354 bytes of flash written
avrdude.exe: verifying flash memory against D:\Install\USBASP\USB NES adapter code\main.hex:
avrdude.exe: load data flash data from input file D:\Install\USBASP\USB NES adapter code\main.hex:
avrdude.exe: input file D:\Install\USBASP\USB NES adapter code\main.hex auto detected as Intel Hex
avrdude.exe: input file D:\Install\USBASP\USB NES adapter code\main.hex contains 2354 bytes
avrdude.exe: reading on-chip flash data:

Reading | ################################################## | 100% 0.63s

avrdude.exe: verifying ...
avrdude.exe: verification error, first mismatch at byte 0x0000
0x5e != 0x00
avrdude.exe: verification error; content mismatch

avrdude.exe: safemode: lfuse changed! Was 62, and is now 0
Would you like this fuse to be changed back? [y/n]
Когда через gui khazama пытаюсь пишет error setting USBASP USP Clock и выдает
Изображение
Я выводы программатора(китайский USBASP) напрямую соединил с контроллером miso->miso, mosi->mosi(Кварца с конденсаторами не подпаивал). Калибровочные ячейки генератора считывает(52 2С). Может что-то сделал не так?
Реклама
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: помогите перекомпилировать программу с attiny85 под atti

Сообщение Engineer_Keen »

newcheb писал(а):Я выводы программатора(китайский USBASP) напрямую соединил с контроллером miso->miso, mosi->mosi(Кварца с конденсаторами не подпаивал).
А CLK, а RESET, а питание с контроллера на программатор?
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Re: помогите перекомпилировать программу с attiny85 под atti

Сообщение oleg110592 »

на хекс не ругается "writing flash (2354 bytes)"
avrdude сигнатуру (правильная ли не знаю) видит и вроде пишет, вот верификация не проходит на первой ячейке затыкается - читает 0
я этим программатором никогда не пользовался, другие микроконтроллеры он "шьет"?
newcheb
Родился
Сообщения: 6
Зарегистрирован: Пн окт 07, 2013 19:42:27

Re: помогите перекомпилировать программу с attiny85 под atti

Сообщение newcheb »

Engineer_Keen, SCK, Reset, VCC и GND - все подпаяно.
Шил им attiny2313. Но уж больно странно он работает, фьюзы почему-то avrdude_prog не шьет. Хотя "eXtreme Burner - AVR" шьет и фьюзы и прошивку заливает, но "eXtreme Burner" не поддерживает attiny45. При выключении фьюза CKDIV8(увеличение частоты внутр. генератора в 8 раз) на attiny2313, не удается залить прошивку, но фьюзы все же удается перешить(хоть и не с первого раза). Khazama тоже шьет 2313, но выдает при этом error setting USBASP ISP Clock...
Если в makefile указать не тот программатор прошивка может не залиться?
Последний раз редактировалось newcheb Вт окт 08, 2013 20:42:10, всего редактировалось 1 раз.
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Re: помогите перекомпилировать программу с attiny85 под atti

Сообщение oleg110592 »

что за программатор, прошивка свежая?
Нет ли возможности сделать этот http://radiokot.ru/forum/viewtopic.php?f=57&t=26417
На монтажке за вечер собрать можно, сам программатор прошивается по USB
newcheb
Родился
Сообщения: 6
Зарегистрирован: Пн окт 07, 2013 19:42:27

Re: помогите перекомпилировать программу с attiny85 под atti

Сообщение newcheb »

Программатор был куплен 2011г. Что там за прошивка и какие они бывают я не знаю. Сделан на atmega8. В диспетчере устройств определяется как USBasp(при установке дров). Похож на этот:
http://www.ebay.com/itm/USBasp-USBISP-3 ... 4176d118d3
только вот на моем нет джампера, который, как видимо, там напряжение меняет? AT90USB162 не имеется, да и магазинов где имелось бы поблизости нет. Попробую через LTP тогда, если других вариантов нету...
Аватара пользователя
oleg110592
Друг Кота
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Re: помогите перекомпилировать программу с attiny85 под atti

Сообщение oleg110592 »

почитал про USBasp http://habrahabr.ru/post/128939/
должен быть джампер для переключения скорости - может виноват он
там же полезная ссылка http://easyelectronics.ru/avr-shag-perv ... mator.html
newcheb
Родился
Сообщения: 6
Зарегистрирован: Пн окт 07, 2013 19:42:27

Re: помогите перекомпилировать программу с attiny85 под atti

Сообщение newcheb »

Проблема в том, что в моем программаторе я не нашел нужного джампера, есть вывод под джамер, который соединяет reset у atmega8 с чем-то. Но его назначение мне не понятно, ибо если этот джампер закоротить, то программатор перестает определяться компом. Если вы правы, то тогда можно выключить фьюз CKDIV8 и частота контроллера повысится с 512кГц до 4мГц, чуть позже проверю...
newcheb
Родился
Сообщения: 6
Зарегистрирован: Пн окт 07, 2013 19:42:27

Re: помогите перекомпилировать программу с attiny85 под atti

Сообщение newcheb »

Не хочет этот программатор прошивать флеш память attiny45(фьюзы прошивает), не знаю уж, что и делать. Контакт, который отвечает за скорость прошивки подпаял на землю, программатор работать стал медленней, ошибки остались прежние:
Спойлероболочка (Dudeavr)
#2: Write Flash to chip...
avrdude.exe -c usbasp -P usb -p t45 -D -q -U flash:w:dudeavr1.tmp:r
avrdude.exe: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.exe: AVR device initialized and ready to accept instructions
avrdude.exe: Device signature = 0x1e9206
avrdude.exe: reading input file "dudeavr1.tmp"
avrdude.exe: writing flash (0 bytes):
avrdude.exe: 0 bytes of flash written
avrdude.exe: verifying flash memory against dudeavr1.tmp:
avrdude.exe: load data flash data from input file dudeavr1.tmp:
avrdude.exe: input file dudeavr1.tmp contains 0 bytes
avrdude.exe: reading on-chip flash data:
avrdude.exe: verifying ...
avrdude.exe: 0 bytes of flash verified
avrdude.exe: safemode: Fuses OK
avrdude.exe done. Thank you.
Программатор из 5 проводков как я понял attiny45 не поддерживает...
Ответить

Вернуться в «Разные вопросы по МК»