Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
05.04.2010, 12:23
|
|
Прохожий
Регистрация: 30.04.2009
Адрес: г.Новосибирск
Сообщений: 7
Сказал спасибо: 12
Сказали Спасибо 2 раз(а) в 1 сообщении
|
Проблема с массивами в AVR
Инструменты CodeVisionAVR V2.03.4 Standard, Proteus7.6
Кристалл ATtiny2313
Суть проблемы:
при использовании массивов типа INT(2 байта) возникают непонятные глюки, если идёт работа с числами длиной более байта.
В приложенном архиве проект калькулятора.
Он знает только + и -, управляется с виртуального терминала на пример:
300+400(enter)
если ввести эту последовательность сперва появляются сообщения в протеусе, если ещё раз её ввести то начинает в ответ писать всякую ерунду.
если сделать так, что ответ будет меньше 255 то всё работает нормально.
Помогите кто может! уже мозг сломал сэтой проблемой!!!
|
|
|
|
05.04.2010, 16:52
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.12.2004
Сообщений: 3,172
Сказал спасибо: 11
Сказали Спасибо 692 раз(а) в 504 сообщении(ях)
|
Re: Проблема с массивами в AVR
Это глюки протеуса. У Вас не очищается массив после расчета.
Если возьмете вместо 2313 другой кристалл, где ОЗУ будет больше 256 байт, эта же программа в протеусе заработает нормально. А в железе и так как есть будет работать.
|
|
|
|
05.04.2010, 19:05
|
|
Прохожий
Регистрация: 30.04.2009
Адрес: г.Новосибирск
Сообщений: 7
Сказал спасибо: 12
Сказали Спасибо 2 раз(а) в 1 сообщении
|
Re: Проблема с массивами в AVR
Спасибо большое!! я тоже подозревал, что это чейто глюк, но грешил на CVAVR.
Последний раз редактировалось Virus_555; 05.04.2010 в 19:23.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 12:37.
|
|