[an error occurred while processing this directive]
Эстетско-чайницкий вопрос по Си (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено EagleB3 31 марта 2006 г. 10:26

Делаю на CV AVR C программный SPI (только передаю наружу).
Надо передать 8-битное слово начиная со старшего бита.
Сделал вот так. Оно работает.
Но, наверное, есть и более оптимальный алгоритм? Не подскажете какой?
Или пошлите к рульной книжке, ежели знаете таковую.
Заранее спасибо!

#define TransPin PORTA.0
char SData, SMask;
int i;

SMask=0b10000000;

//Выталкиваем в TransPin старший бит из SData
if (SData&SMask) TransPin=1;
else TransPin=0;
//здесь хлопнет CLK

//Выталкиваем в TransPin оставшиеся 7 бит из SData
for (i=0; i<7; i++)
{
SMask=SMask>>1;
if (SData&SMask) TransPin=1;
else TransPin=0;
//здесь хлопнет CLK
}

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 
NoIX ключ Запомнить

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Rambler's Top100 Рейтинг@Mail.ru
Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание

E-mail: info@telesys.ru