roboforum.ru

Технический форум по робототехнике.

WinAVR и Proteus

WinAVR и Proteus

Rikenbacker » 30 сен 2010, 20:50

Как подружить код полученный компилятором WinAVR с моделью в Proteus, чтобы последний не выдавал ошибку Invalid Opcode?
Как я понял это какой-то стандартный глюк протеуса который тянется чуть ли не с 2006 года. Но решения я не нашел, но оно вообще есть?

Re: WinAVR и Proteus

=DeaD= » 30 сен 2010, 20:59

МК не перепутан?

Re: WinAVR и Proteus

avr123.nm.ru » 30 сен 2010, 22:52

Приложите архив с проектом.

Re: WinAVR и Proteus

Rikenbacker » 01 окт 2010, 09:14

Проект в протеусе - проще некуда. Просто сам микроконтролллер AT90S2313.
Код программы тоже не блещет сложностью:

Код: Выделить всёРазвернуть
#include <avr/io.h>

#define BLINK_D_BIT(BIT)   PORTD |= _BV(BIT);\
                     PORTD &= ~_BV(BIT);

void outSymbol(short Symbol, bool dot, short position)
{
   // Установка бита записи в 0
   PORTD &= ~_BV(0);
   // Установка защелки в 0
[color=#FF0000]   PORTD &= ~_BV(2);[/color]

   //BLINK_D_BIT(0);
   //BLINK_D_BIT(2);

};

void init_scheme()
{
   DDRB = 0xFF;
   DDRD = 0xFF;
   outSymbol(0, 0, 0);
};

int main()
{
   init_scheme();
   while(1)
   {

   };
}


Причем строка выделенная красным - критическая. Если её нет - всё работает. Стоит её поставить - не работает.

Re: WinAVR и Proteus

galex1981 » 01 окт 2010, 10:10

Проблема может еще быть с настройками, потому если хотите помощи - выложите проект

Re: WinAVR и Proteus

Romikgy » 01 окт 2010, 13:44

а как должно работать ?


Rambler\'s Top100 Mail.ru counter