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

 
 
> uart не передает 0x00, LPC 213x Keil RV
Spb_Alex
сообщение Nov 28 2007, 07:55
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 22
Регистрация: 26-10-07
Пользователь №: 31 745



LPC 213x Keil RV,

проблема, выставил прерывание на UART, пишу по RX, отсылаю по THRE

void Uart0_irq (void) __irq
{

if (!((U0IIR&IIR_THRE)))
{
if (U0LSR & LSR_RX)
{
AMI1.CApuLibAMI::Get2Buf();
}
}
else{
AMI1.Write_from_bufer();
}



VICVectAddr = NULL_REG; //Dummy write to signal end of interrupt


};



пишу в Uart -

U8 CApuLibUART0::putchar(U8 ch) // ïåðåäàòü ñèìâîë â ïåðåäàþùèé áóôåð
{

while (!(U0LSR & LSR_THRE));
return (U0THR = ch);
}


вопрос, почему putchar(0x00) - не работает

putchar(0x01) - работает на ура?

если убрать
else{
AMI1.Write_from_bufer();
}


да,
#define LSR_RX 0x01 // RX
#define LSR_THRE 0x20 // THRE

то 0x00 в порт пишутся, но пререывание - на запись не работает (((
Помогите новичку

Сообщение отредактировал Spb_Alex - Nov 28 2007, 08:29
Go to the top of the page
 
+Quote Post



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

 


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


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