第一次用AVR的单片机,没弄懂串口发送数据怎么写。谢谢大家帮忙看看程序
编译出来没错,但是收不到数据
编译器 CodeVisionAVR V2.03.4(附带下载)
下面是我写的程序串口部分
晶振用的是11.0592的
使用的是PD0、PD1只做输出,不接收数据
void USART0_send( char data) // USART发送子程序
{
while (!(UCSR0A & (1<<5))); // 等待发送寄存器空
UDR0 = data; // 发送数据
}
void SEND_str(unsigned char *p,unsigned char s) //USART发送一串数据
{
unsigned char i;
for(i=0;i<s;i++)
{
USART0_send(*p);
p++;
}
}
void USART0_init(void) //初始化串口
{
UCSR0B = 0x00;
UCSR0A = 0x00;
UBRR0L = 0x05;
UBRR0H = 0X00;
UCSR0C = 0X86;
UCSR0B = 0X18;
}