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

 
 
> Вопрос по WinAVR, как разбить int на два char
sergeus
сообщение Feb 3 2008, 16:04
Сообщение #1


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

Группа: Участник
Сообщений: 157
Регистрация: 11-12-07
Из: Москва
Пользователь №: 33 174



Здравствуйте! Не смог разобраться, как сделать чтобы функция принимаящая int-овое значение записала младший байт в один регист, а старший в другой?

void pwm_out(int level){


OCR1AH = ??
OCR1AL = ??

return 0;
}

С уважением, Сергей

P.S. посоветуйте пожалуйста какой-нибудь help по WinAVR
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
zltigo
сообщение Mar 2 2008, 10:57
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(prottoss @ Mar 2 2008, 13:24) *
Арифметические операции выше по приоритету, чем логические (побитовые в том числе), Так что я не вижу криминала.

Вы на верном пути smile.gif просто я совершенно неподумав sad.gif "+" в примере поствил, но сути это не меняет - смотрим другие, которые ниже по приоритету, чем ">>":
с = HIBYTE( a | b );
Как эффект?


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 5th August 2025 - 18:36
Рейтинг@Mail.ru


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