Есть проблема с Proteus и ATMega8. Запускал программу и заметил, что протеус пишет очень много сообщений (внизу, возле кнопок симулятора) типа такого:
!PC=0x0016. [AVR MEMORY] Writing to memory location 0x04FF outside of memory size 0x0460
!PC=0x0016. [AVR MEMORY] Writing to memory location 0x04FE outside of memory size 0x0460
!PC=0x004A. [AVR MEMORY] Writing to memory location 0x04FD outside of memory size 0x0460
!PC=0x004A. [AVR MEMORY] Writing to memory location 0x04FC outside of memory size 0x0460
!PC=0x0000. [AVR CPU] RET address = 0x0000.
За 2-3 минуты набегало несколько тысяч. К тому же программа не правильно работает. При симуляции периодически комп тормозил, когда просчитывал, писал несколько сот сообщений и дальше работал. Долго разбирался, выяснил, что ошибка там, где идет команда обращения к подпрограмме RCALL и RET. При замене RCALL и RET на RJMP, все работает хорошо. Получается вся проблема в работе со стеком, причем данная программа на старых версиях протеуса (там, где окно свойств ATmega8 маленькое, а не такое как в последних версиях) работает отлично. Получается, что не правильная симуляция ATmega8 в последних версиях протеуса. В поиске ни чего такого не попалось.
Если кто-то сталкивался и знает об этом, напишите. Если ни кто не знает, то расскажу мои дальнейшие эксперименты.
Карма: 4
Рейтинг сообщений: 6
Зарегистрирован: Пн сен 08, 2008 11:21:11 Сообщений: 201 Откуда: Пермь
Рейтинг сообщения:0
Проект прикрепи, посмотрели бы. А какая версия? Делал проекты в протеусах последних версий на этой меге, ничего подобного не наблюдал, всё корректно симулировалось (в рамках того, что я в этом камне использовал).
После долгих мучений, решил написать маленькую программу.
Используется:
-контроллер ATmega8
-две кнопки
-два светодиода. (третий светодиод просто как индикация.)
Алгоритм такой:
- при нажатии на кнопку «RJMP» на время загорается зеленый светодиод и гаснет, работа с командой RJMP
- при нажатии на кнопку «RCALL» 5 раз моргает красный светодиод, используется команда RCALL.
В архиве находится
- файл .asm и проект AVR Studio 4
- файл .hex данной программы
- файл test – проект Proteus с использованием нового контроллера ATmega8
- файл test2 – проект Proteus с использованием старого контроллера ATmega8
В обоих файлах протеуса используется один и тот же файл hex.
В AVR Studio в проекте отмечено место где можно поменять местами команды RJMP и RCALL, разница в протеусе новой версии заметна.
У меня установлен Proteus 7.5 SP3. Файлы протеуса отличаются разницей в контроллере, которая видна сразу после открывания свойств. Оба проекта работают с данной версией протеуса, только не нужно в протеусе выбирать контроллер, потому, что программа заменит старый контроллер на новый.
Думаю разберётесь и увидите разницу. Чем больше используется стек контроллера (чем больше нажимать кнопку "RCALL"), тем больше пишется сообщений. Может нужно просто что-то изменить, а может и сам контроллер как-то не так работает. На железе не пробовал.
Завтра уезжаю в отпуск, так что приеду появлюсь. Спасибо.
Привет форумчане!
Столкнулся с проблемой: после руссификации версии 7.2 (непомню уже откуда качал ) появились "краказябры" в свойствах некоторых компонентов (например генератор SINE) например вместо надписи выбора режима (чего там было незнаю) стоят такие символы: "!8=СА>840;L=K9" и прочее... Откатываться обратно на англ нехочу - придётся заново ставить, а у меня работает с флешки.
Вопрос: как подправить шрифты? Может кто сталкивался?
Можно попробовать изменить кодовую страницу в Windows.
В Windows XP делаем так:
1. Пуск->Выполнить->regedit
2. Заходим в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage.
3. Находим параметры 1252, 1253 и меняем их значения на c_1251.nls.
Можно попробовать изменить кодовую страницу в Windows. В Windows XP делаем так: 1. Пуск->Выполнить->regedit 2. Заходим в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage. 3. Находим параметры 1252, 1253 и меняем их значения на c_1251.nls.
Для протеуса так не получится. Переходите на версии 7.4 или 7.5 протеуса. Там уже этого нет.
Привет форумчане! Столкнулся с проблемой: после руссификации версии 7.2 (непомню уже откуда качал ) появились "краказябры" в свойствах некоторых компонентов (например генератор SINE) например вместо надписи выбора режима (чего там было незнаю) стоят такие символы: "!8=СА>840;L=K9" и прочее... Откатываться обратно на англ нехочу - придётся заново ставить, а у меня работает с флешки. Вопрос: как подправить шрифты? Может кто сталкивался?
Сколка раз было сказано для 7.2 не было нормального русификатора.
_________________ "...ОПЫТ, СЫН ОШИБОК ТРУДНЫХ..."
Можно попробовать изменить кодовую страницу в Windows. В Windows XP делаем так: 1. Пуск->Выполнить->regedit 2. Заходим в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage. 3. Находим параметры 1252, 1253 и меня...
Спасибо, попробовал - непроканало - видать судьба такая
to SABA:
А "Сколка" раз? В ЭТОЙ ветке ничего не было про "отсутствие нормального руссификатора"... (может я пропустил?)
Последний раз редактировалось Chettuser Пн авг 17, 2009 17:33:17, всего редактировалось 1 раз.
Можно попробовать изменить кодовую страницу в Windows. В Windows XP делаем так: 1. Пуск->Выполнить->regedit 2. Заходим в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage. 3. Находим параметры 1252, 1253 и меняем их значения на c_1251.nls.
Для протеуса так не получится. Переходите на версии 7.4 или 7.5 протеуса. Там уже этого нет.
Проверил работу с AVR (ATmega162), ARM (LPC2138) - моделировал в течении 15 мин. + пошаговая отладка.
Проверил несколько своих проектов для PCB.
Пока полёт нормальный. Спасибо Nemo78.
Тестирую дальше.
p.s. (пробегала кстати модель самописная и LPTPIM)
Привет уважаемые Коты!
У меня 2 вопрса,
1 где можно скачать LPTPIM для протеуса?
2 где скачать библиотеку под TDA7330 для протеуса?
если у кого есть, пишите.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения