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

 
 
> STM8L UART
-AZ-
сообщение Oct 24 2015, 14:54
Сообщение #1


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

Группа: Участник
Сообщений: 85
Регистрация: 20-09-15
Пользователь №: 88 488



Уважаемые специалисты, кому то удалось от HSI завести UART выше 2400, все перепробовал, на 9600 уже ошибки проскакивают, может что то упускаю?

CLK_CKDIVR=0x00; //делитель частоты 1
CLK_ICKCR_bit. HSION = 1;
CLK_PCKENR1_bit.PCKEN15 = 1; //Включаем тактирование модуля USART1

PC_DDR &= ~(1 << 2);//PC2 RX USART1 receive (вход)
PC_DDR &= ~(1 << 3); //PC3 TX USART1 transmit (выход)

USART1_BRR2 = 0x03; //скорость 9600bps
USART1_BRR1 = 0x68;

USART1_CR2_bit.REN=1; //прием
USART1_CR2_bit.TEN=1; //передача

USART1_CR2_RIEN=1; //Прерывание по приему
__enable_interrupt (); // Разрешаем прерывания.

while(!(USART1_SR_bit.TXE)); //Ожидаем освобождения буферного регистра TDR
USART1_DR='F'; // Отправляем символ "F".

while (1){} //беск. цикл

}

#pragma vector=USART_R_OR_vector
__interrupt void USART1_RXE(void)
{
USART1_DR=USART1_DR; //Отправляем тоже, что и приняли (эхо)
}
Go to the top of the page
 
+Quote Post



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

 


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


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