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

 
 
> Pic16f628A, Не работает RS-232
БорисБН
сообщение Apr 21 2008, 11:44
Сообщение #1





Группа: Новичок
Сообщений: 5
Регистрация: 6-03-08
Пользователь №: 35 696



Добрый день!
Возникла следующая трудность:
Не работает USART по RS-232. В линию ничего не выдает

подпрограмма инициализации:

void init_comms(void)
{
RX_PIN = 1;
TX_PIN = 1;
SPBRG = DIVIDER;
RCSTA = (NINE_BITS|0x90);
TXSTA = (SPEED|NINE_BITS|0x20);
}

подпрограмма передачи:

putch(unsigned char byte)
{
/* output one byte */
while(!TXIF) /* set when register is empty */
continue;
TXREG = byte;
}
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 1)
A. Fig Lee
сообщение Apr 21 2008, 17:01
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 974
Регистрация: 4-04-08
Из: далека
Пользователь №: 36 467



Цитата(БорисБН @ Apr 21 2008, 07:44) *
Добрый день!
Возникла следующая трудность:
Не работает USART по RS-232. В линию ничего не выдает

подпрограмма инициализации:

void init_comms(void)
{
RX_PIN = 1;
TX_PIN = 1;
SPBRG = DIVIDER;
RCSTA = (NINE_BITS|0x90);
TXSTA = (SPEED|NINE_BITS|0x20);
}

подпрограмма передачи:

putch(unsigned char byte)
{
/* output one byte */
while(!TXIF) /* set when register is empty */
continue;
TXREG = byte;
}


а где инициализация?

Bit SPEN (RCSTA<7>), and bits TRISB<2:1>, have to
be set in order to configure pins RB2/TX/CK and RB1/
RX/DT as the Universal Synchronous Asynchronous
Receiver Transmitter.


--------------------
Верить нельзя никому, даже себе. Мне - можно.
Go to the top of the page
 
+Quote Post

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

 


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


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