Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

(+)

Отправлено zlogic 15 мая 2008 г. 11:09
В ответ на: А почему Кейл не понимает названий регистров? отправлено Dikoy 15 мая 2008 г. 10:44

// Обработка прерывания от компорта
void CommPort(void) interrupt 4
{
.
.
.
.

RI = 0;
TI = 0;
}

unsigned char CommPortRXD(void)
{
while(!RI);
RI = 0;
return(SBUF);
}

void CommPortTXD(unsigned char byte)
{
while(!TI);
TI = 0;
SBUF = byte;
}

void main(void)
{
// Режим таймера 1 - 2
TMOD = 0x20;
// Одинарная скорость передачи
PCON &= 0x7f;
// режим последовательного порта:
// 8-ми битовый УАРТ,
// разрешено принимать данные.
SCON = 0x70;
// Константа для перезагрузки таймера Т1 для получения скорости
// приёма/передачи 9600 бод
TH1 = 0xfd;
// Включить таймер 1 для генерации частоты
// скорости приёма/передачи по последовательному порту
TR1 = 1;
EA = 1;
RI = 0;
TI = 1;
// если нужно работать с прерываниями...
//ES = 1;


do
{
byte = CommPortRXD();
CommPortTXD(byte);
}
while(true);
}



Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
сложите три и три:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru