Вот.ikarab писал(а):А прожект где ?
Proteus 7.4 затыкается на команде call (tiny2313)
- Сообщения: 828
- Зарегистрирован: Пн мар 16, 2009 21:40:57
- Реклама
- Сообщения: 46
- Зарегистрирован: Ср янв 14, 2009 10:07:41
- Сообщения: 4077
- Зарегистрирован: Вс мар 22, 2009 17:31:41
Вы еще уточните тот момент, какая у Вас библиотека AVR.DLL или AVR2.DLLWandererSc писал(а):Да Proteus 7.4 глючит.
У меня на Mega16 отключенный Watchdog всё время срабатывает.![]()
Хотя в 7.1 и в железе работает как надо.
у меня Proteus 7.4 SP3, библиотека AVR2.DLL полет нормальный, никаких проблем с ATmega16 нет.
Из всего разнообразия проектов лично проверена работа ATtiny2313, ATmega8/16/32/128 и все замечательно работает. Бывают только ошибки связанные с моими явными "косяками".
Для всех: Хватит тут заявлять о глючности, для начала повысьте свой уровень программирования до "проф" уровня. Proteus это программа, она не может знать и симулировать все что Вам в голову взбредет. Ведь если Вы написали программу для вольтметра, то она же не будет измерять емкости конденсаторов, без дополнительных доработок, так и Proteus, он знает что и как работает, это заложено в его алгоритме симуляции, а вы пытаетесь задать кривой режим работы симулятора, понятное дело что он будет выдавать ошибки.
Между прочим - читать на что ругается программа очень полезно и позволяет исправить баги в коде прошивки.
Да, и еще, если говорите об ошибках - предьявите проект, без него это пустая болтовня. Если показать нечего - молчите лучше, "Слово - серебро, молчанье - золото". Это форум, он для решения конкретных вопросов, а не книга жалоб.
PS. Если манера написания поста или его содержание Вас в чем то обидело или задело - приношу свои извинения.
mr.Kirill, не нужно эмоций. протеус, если он заявлен как средство, симулирующее аппаратуру МК, обязан как минимум верно симулировать внутреннюю периферию МК, либо документировать несоответствия. не скажу за все версии, но я лично сталкивался и сталкиваюсь с разными серьезными несоответствиями поведения протеуса с тем, что написано в даташите на AVR. эти несоответствия недокументированы, следовательно - это баги. баги очень серьезные, делающие порой невозможной отладку в принципе правильных программ. часть примеров есть на моем сайте, с частью пока разбираюсь...
последнее, что обнаружил и что сильно мешает: протеус не выполняет "маскирование программного счетчика". в AVR программный счетчик аппаратно не содержит старших битов, т.е. может вести счет адресов только в пределах объема FLASH. таким образом, для МК с объемом памяти в 2К переход к адресу 2К+2 приведет к попаданию в ячейку с адресом 2. протеус же при этом выдает ошибку недопустимого кода команды... в частности, WinAVR очень любит использовать такой "переворот адресов" - абсолютно законный с точки зрения архитектуры AVR!!! - а протеус такие программы не симулирует.
так что прежде чем рвать на себе волосы "какой я плохой программист" убедитесь сначала, что это не протеус вам козни строит
последнее, что обнаружил и что сильно мешает: протеус не выполняет "маскирование программного счетчика". в AVR программный счетчик аппаратно не содержит старших битов, т.е. может вести счет адресов только в пределах объема FLASH. таким образом, для МК с объемом памяти в 2К переход к адресу 2К+2 приведет к попаданию в ячейку с адресом 2. протеус же при этом выдает ошибку недопустимого кода команды... в частности, WinAVR очень любит использовать такой "переворот адресов" - абсолютно законный с точки зрения архитектуры AVR!!! - а протеус такие программы не симулирует.
так что прежде чем рвать на себе волосы "какой я плохой программист" убедитесь сначала, что это не протеус вам козни строит
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- Реклама
- Сообщения: 13796
- Зарегистрирован: Чт сен 20, 2007 14:08:00
в новой либе добавили новых фич
размер вырос с 400к до 2.5мб
добавились и глюки и нет ничего плохого, в том, чтобы написать о них
кстати, какой смысл в выставлении битов конфигурации?
зачем бит последовательного программирования ввели? как он влияет на работу кода?
зачем делители тактовго генератора? достаточно было свою частоту ввести и все
зато глюков столько, что пришлось ставить 7.2, а он не держит elf
размер вырос с 400к до 2.5мб
добавились и глюки и нет ничего плохого, в том, чтобы написать о них
кстати, какой смысл в выставлении битов конфигурации?
зачем бит последовательного программирования ввели? как он влияет на работу кода?
зачем делители тактовго генератора? достаточно было свою частоту ввести и все
зато глюков столько, что пришлось ставить 7.2, а он не держит elf
- Сообщения: 46
- Зарегистрирован: Ср янв 14, 2009 10:07:41
Что касается моего примера с LCD. Реальный LCD имеет знакоместо 5x8, в реальном железе все работает. Змулируемый протеусом дисплэй имеет почему-то знакоместо 5x7, соответственно режет низ символа, хотя если из самого протеуса запросить datasheet на дисплэй - там четко сказано, что знакоместо 5x8. Протеус не соответствует своей-же документации.
предполагаю, это все для поддержки bootloader-ов, т.к. в этих режимах предусмотрено программное считывание битов конфигурации и защиты.kalobyte писал(а):кстати, какой смысл в выставлении битов конфигурации?
зачем бит последовательного программирования ввели? как он влияет на работу кода?
зачем делители тактовго генератора? достаточно было свою частоту ввести и все
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!


