реклама на сайте
подробности

 
 
> Перевод кода из IAR в CVAVR
Станис
сообщение Mar 17 2012, 18:18
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 128
Регистрация: 12-11-09
Из: Perm
Пользователь №: 53 565



есть строчка из IAR:

while (!(SPSR&(1<<SPIF)));

пробовал ее вставить ее в CVAVR указав регистр:

while (!(SPSR&(1<<SPSR.7)));

но контроллер виснет на этом месте... не знаю что и делать.. может кто знает пути решения?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 3)
Xenia
сообщение Mar 17 2012, 18:27
Сообщение #2


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(Станис @ Mar 17 2012, 22:18) *
while (!(SPSR&(1<<SPSR.7)));

Вот так надо записать это условие ожидания, если биты уже оформлены, как элементы структуры:
while (!SPSR.7);
Пототому что SPSR.7 это и есть тот самый бит, который вырезался из SPSR операцией AND с единицей, сдвинутой влево на 7 позиций.
Кстати, IAR тоже позволяет использовать регистры, как структуры, поэтому и там допустима подобная запись:
while (!SPSR_SPIF);
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Mar 17 2012, 18:29
Сообщение #3


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Код
while (! (SPSR & (1<<7)))
    ;

Go to the top of the page
 
+Quote Post
Станис
сообщение Mar 17 2012, 18:52
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 128
Регистрация: 12-11-09
Из: Perm
Пользователь №: 53 565



Всем спасибо! все заработало))
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 15:04
Рейтинг@Mail.ru


Страница сгенерированна за 0.01367 секунд с 7
ELECTRONIX ©2004-2016