[an error occurred while processing this directive]
|
Правильнее по прерываниям)
volatile unsigned char RX1_Buffer[RD1_BUF_MAX], TX1_Buffer[TD1_BUF_MAX];
const char *DeviceID = "Moi DEvais:)";
volatile unsigned char *pTX1_Buffer ;
// UART_1 initialization
// UART_1 mode: asynchronous, normal mode
// UART_1 : Receiver and Transmitter are enabled
// Rx Complete and Tx Complete Interrupts are enabled
// UART_1 Baud rate: 115200 @ 7.3728 Mhz
UCSR1A =0;
UCSR1B =0xD8;
UCSR1C =0x06;
UBRR1L =0x03;
UBRR1H =0;
#pragma vector = USART1_TXC_vect
__interrupt void Uart_TX()
{
if(*pTX1_Buffer)
UDR1 =*pTX1_Buffer++;
}
// Вызов
void SendAnswer(void)
{
strcpy(( char*)(TX1_Buffer),DeviceID);
pTX1_Buffer = TX1_Buffer;
UDR1 = 0x00;
}
E-mail: info@telesys.ru