Помогите любым примером работы по прерываниям с UART ADuC845 или подобного МК.
Вот в таком виде обработчик прерывания работает, при передаче через терминалку символа f назад возвращается строка "fmessage". При передаче других символов, назад возвращаются эти же символы. Т.е. все вроде работает правильно.
void iUART () interrupt 4 { if (RI == 1) { RI = 0; uart_data = SBUF; SBUF=uart_data; if (uart_data=='f') printf("message"); } else TI=0; }
Но мне не нужно тут же назад возвращать все что принимаю, я хочу в дальнейшем сложить принятые символы в буфер и после получения признака окончания посылки разобрать их. Когда я убираю строку
SBUF=uart_data;
т.е. не передаю символ обратно сразу после приема, все перестает работать, ничего назад не передается...
|