Ну во первых... Он исключил из кода файл oddebug.c вследсвии чего пришлось его исключить из MakeFile и опять как следствие неправильно а точнее не корректно скомпиливоранный код... Вот напимер у меня его прошивка не работала вообще никак... Во вторых... Аналоговый джой не работает даже в прошивке у Рюмика... Проверенно на 3 джоях лично...
Ну, дык, правильно, кажись, ругается avr-size выдает 2992 байта, а у контроллера их всего 2048... Вот checksize при помощи avr-size проверяет размер бинарника который получился при компиляции и выдает ошибку...
Можно в мэйк файле оптимизацию поставить s (s = optimize for size) иначе либо резать исходники (есть ли там чтонить лишнее) либо забыть про 2313
Ну, дык, правильно, кажись, ругается avr-size выдает 2992 байта, а у контроллера их всего 2048... Вот checksize при помощи avr-size проверяет размер бинарника который получился при компиляции и выдает ошибку... Можно в мэйк файле оптимизацию поставить s (s = optimize for size) иначе либо резать исходники (есть ли там чтонить лишнее) либо забыть про 2313
Попробуйте ктонить отпишитесь... Я ваще чет уже незнаю...
Вроде есть еще какой-то checksize кто нить слышал про него?
checksize это скрипт который, обычно, добавляют в MakeFile для проверки вместился ли размер кода в ограничения заданные конкретным контроллером или нет, в комплекте с WinAVR идет утилита avr-size, если в папке с прошивкой из архива tinyPSX.rar набрать в командной строке: avr-size main.hex эта утилита выдаст размер бинарных данных которые закодированы форматом iHex в файле main.hex, в данном случае это 2992 байта, а в контроллере At Tiny2313 всего 2048 байт (2к), отсюда и ошибка:
VenomXP писал(а):
Но... Блин... Не шьется... Пишет че то с памятью связанное... Вроде как привышен лимит
аналогичный результат выдалбы скрипт checksize, а именно: "*** code size 2992 exceeds limit of 2048" Поэтому необходимо уменьшать размер программы, что я и написал:
PolSerg писал(а):
Можно в мэйк файле оптимизацию поставить s (s = optimize for size) иначе либо резать исходники (есть ли там чтонить лишнее) либо забыть про 2313
т.е. для начала изменить уровень оптимизации на s (OPT = s вместо OPT = 2, как в прилагаемом примере) и если объем программы не уменьшится, тогда возможность реализации этого проекта на 2313 становится под большим вопросом... Собственно говоря, про это писалось во втором сообщении этой темы:
s_black писал(а):
Если памяти ATtiny2313 хватит, то, конечно возможна.
Так вот, сейчас именно тот случай, памяти не хватает...
Я слышал про такую штуку... Что можно гдето в настройках компиллера указать что-то... И он не будет компилить не использованные функции или переменные... Вобщем все лишнее... Как это сделать?
сейчас провел эксперимент взял исходники из архива PSX_USB_2.rar собрал, avr-size выдал 3156 байт, после чего я поменял в мэйк файле оптимизацию на s и объем программы уменьшился до 2888 байт, таким образом, есть надежда, хоть и не большая, что 2992 байта с оптимизацией s уменьшатся до 2048 байт, но что-то мне подсказывает, нужно будет код ручками оптимизировать/обрезать, чтобы он уместился в ATTiny2313
bootloadhid я привел для примера что есть проекты которые работают с USB и в 2к помещаются, сам же bootloadhid это USB бутлоадер, который один раз прошивается во флеш микроконтроллера в область бутлоадера, а потом основная программа уже грузится без программатора, просто контроллер подключается к USB, и бутлоадер грузит прошивку во флеш... одни плюсы, кроме того что 2к флеша съедаются бутлоадером, а вообще у всех этих проектов и PSX_USB в том числе ноги ростут вот откуда: http://www.obdev.at/products/avrusb/index.html Кстати, вот ссылка на архив где AVR-USB описан по русски:
http://microsin.ru/Download.cnt/avr/avr-usb-russian.rar
Если нужен бутлоадер, т.е. есть желание без лишней мороки обновлять прошивку через USB то просто прошивается бутлоадер через программатор, на плате добавляется джампер, и при сбросе контроллера первым управление получает бутлоадер он проверяет замкнут ли джампер и если замкнут начинает ожидать данные прошивки и при получении записывать их во флеш, а если не замкнут, то управление передается основной программе.
Что касается вопроса:
Цитата:
А как тогда мне связать мой проект с бутлоадером?
Если речь идет все о том же Tiny2313 то никак его связать не получится, а вот если перейти на ATMega8 или ATMega16, то для них его можно прикрутить.
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения