/**************************************************************
 实验名称:串口通信演示实验
 晶振:内部 8M
 接线方法:
1.PD0接RXD,PD1接TXD
 2.打开串口调试助手
 使用说明:
 1.本程序能够测试串口数据发送与接收。发送采用
 查询方式,接收采用中断方式,通信波特率为19200。
 2.当上位机软件发送一串数据时,单片机收到后回送相同
 的数据。
*****************************************************************/
#include 
#include 
#pragma interrupt_handler uart_getchar:12//开启串口接收中断
void uart_init(void)
{
 UCSRB|=(1<
 UBRRH=0x00;
 UCSRC|=(1<
}
void uart_putchar(char x)
{
 while (!(UCSRA&0x20))//查询发送区是否为空
 ;
 UDR=x; //发送数据
}
void uart_getchar(void)//接收数据
{
 char y;
 y=UDR;
 uart_putchar(y);//把接收到的数据返回给上位机
}
void main()
{
 DDRD=0x03;//打开串口端口
 uart_init();//串口初始化
}
