IfoR писал(а):alexmillon, этот код где-то уже видел. Откуда вы его берёте?
А на счёт кода: у меня вообще ступор.
У вас символ ";" стоит везде, где не надо, и не стоит нигде где надо! Как так можно?
Почему некоторые новоприбывшие пытаются писать предоложения на неизвестном ему языке, даже не выучив ещё Азбуку (данного языка, всмысле)? Ну выучите хоть базовые понятия языка, а потом уже лезьте копировать откуда-то код (при чем сомнительный) и что-то в нем делать.
Изначальный код который я написал на CVAVR работает прекрасно,никакаих ошибок.И я этот же код запихнул в AVR Studio.В AVR Studio эта же прошивка показывает куча всяких ошибок.Вот я и решил разобраться в чем проблема.Вот архив вместе с исходником и прошивкой сделанной в CVAVR!И проект протеуса.И здесь все прекрасно работает.А в AVR Studio нехочет!Код написан лично мною.А встречаеться этот код везде,так как это распространенная мигалка на светодиодах!
Ну так вы покажите, что он там вам говорит.
Могу догадываться, что у вас неправильно прописаны пути к заголовочным файлам. Надо поискать их в среде.
Мне, конечно интересно, как получилось так, что код вы написали сами и потом вдруг решили поудалять все ; , чтобы было поменьше ошибок (и это странная конструкция, единственный while, с характерным наличием ";" на конце, внутри while, у вас тоже как-то оказалась в коде), ну да не суть дело.
IfoR писал(а):Ну так вы покажите, что он там вам говорит.
Могу догадываться, что у вас неправильно прописаны пути к заголовочным файлам. Надо поискать их в среде.
Мне, конечно интересно, как получилось так, что код вы написали сами и потом вдруг решили поудалять все ; , чтобы было поменьше ошибок (и это странная конструкция, единственный while, с характерным наличием ";" на конце, внутри while, у вас тоже как-то оказалась в коде), ну да не суть дело.
Так как их найти в среде?Подскажите!Направьте на путь истинный
Программирую и отлаживаю свою железку через AVR MiniICE чья схема свободно гуляет по просторам интернета. Так вот, проблема конечно не в ICE, а в Студии(Version4.18). Когда я нажимаю старт дебуггера, то в таргет загружается объектный файл с точками останова. Все бы хорошо, но загружается только программа. А как насчет EEPROM? Пока нашел только выход вручную через Debug->Up/Download Memory, далее выбор файла EEPROM. Неудобство связано с тем, что по ходу отладки мне часто приходится менять и перекомпилировать исходники. А еепром постоянно забываю залить, отчего тратится много времени на ловлю "непонятных" глюков. Как бы автоматизировать заливку еепром вместе с программой?
uk8amk писал(а): Как бы автоматизировать заливку еепром вместе с программой?
Нет ничего проще. Содержимое EEPROM поместить в свободном месте программной флеши. В программе сразу после инициализации стека поставить вызов подпрограммы переписи ROM в EEPROM. Корректируя программу, при необходимости там же корректируем EEPROM. Теперь каждый раз при загрузке программы для отладки в Студию в EEPROM будет самая свежая версия.
А когда программа отлажена, вызов "копировщика" можно удалить.
Можно выделить одну лишнюю ячейку в EEPROM и завести массив во флеши с образом данных EEPROM, учитывая и эту ячейку (байт). В массиве во флеши, записать в эту ячейку 0x00.
при чистом МК, в EEPROMe записаны 0xFF. При старте программы, после инициализации стека, загрузить эту ячейку по её адресу и проверить её содержимое. Если там НЕ 0x00, то записать массив в EEPROM, иначе пропустить и приступить к программе. После копирования данных в EEPROM, в эту ячейку запишется 0x00 из массива и при сбросе МК, повторное копирование массива в EEPROM не произойдёт. Это хорошо подходит для сброса данных EEPROM на данные по умолчанию. Для этого достаточно затереть эту ячейку (записать что-то отличное от нуля) и ребутнуть МК. При редактировании программы, МК всё равно надо очистить. EEPROM тоже почистится, если только не запрограммирован фьюз EESAVE. В итоге тоже будем иметь свежие данные в EEPROM. Довольно часто я применял это на практике.
I am DX168B and this is my favourite forum on internet!
Хочу понять как работать с AVR studio 4, пишут даже отказываются от протеуса. Не могу найти, мало мальское объяснение
всех примочек. И вообще какие существуют. Поделитесь пожалуйста.
В авр студии вот такой вот режим отображения фьюз битов есть?
А то имеется только неудоообный
Ужас...
Как представить верхний рисунок нижним?
Не могу т.е. по верхней картинке установить их, поскольку у меня студия, а в студии (по второй картинке) готовые поля - BOOTSZ например, жутко неудобно...
Не умеешь - не берись, но не взявшись не научишься...
Arlleex писал(а):В авр студии вот такой вот режим отображения фьюз битов есть?
А то имеется только неудоообный
Ужас...
Это ваши галки полный... абзац. Если у вас нет нужной установки фьюзов в НЕХ-формате, возпользуйтесь, например, фьюз-калькулятором: http://www.engbedded.com/fusecalc/
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Ребят, меня глючит или в какой-то версии 4рки в окне processor во вкладке register можно было включить отображение двоичного кода (вида 0bxxxxxxxx)? В 4.18 такой возможности нет, только 10ный или 16ричный вид
Здравствуйте. Решил написать (переписать) программу бегущие огоньки в AVR Studio 4.18, где используется
таймер. Подскажите пожалуйста, а работает ли в AVR Studio счетный регистр TCNTxL (TCNTxH)
при запуске таймера? Потому что при запуске симуляции и пошаговой отладки не происходит изменении
и увеличении TCNTxL. Может в этой программе значение TCNTxL надо устанавливать вручную .
Gron писал(а):работает ли в AVR Studio счетный регистр TCNTxL (TCNTxH) при запуске таймера?
Не знаю как в 4.18, но в 4.17 точно работает. Ошибка может быть в коде (например не установлен прескалер или установлен такой, что значение меняется очень медленно).