//1、运用ICCAVR的终端调试窗口(Terminal),进行通讯调试。
//2、对ICCAVR的终端调试窗口进行设置,设置串口为com1或com2
//通讯波特率为19200(Tools->EnvironmentOptions…)。
//3、将PC屏幕光标定坐落调试窗口中。
#include
#definefosc8000000//晶振8MHZ
#definebaud19200//波特率
#defineosc_address0x1ff0
externunsignedcharread_flash(unsignedintadd);
voidputchar(unsignedcharc)
{
while(!(UCSRA(1UDR=c;
}
unsignedchargetchar(void)
{
while(!(UCSRA(1returnUDR;
}
intputs(char*s)
{
while(*s)
{
putchar(*s);
s++;
}
putchar(0x0a);//回车换行
putchar(0x0d);
return1;
}
voidputstr(char*s)
{
while(*s)
{
putchar(*s);
s++;
}
}
voiduart_init(void)
{
OSCCAL=read_flash(osc_address);
UCSRB=(1UBRRL=(fosc/16/(baud+1))%6;
UBRRH=(fosc/16/(baud+1))/256;
UCSRC=(1}
voidmain(void)
{
unsignedchari;
uart_init();
puts(广州银河双龙电子公司RS232通讯演示程序);
puts(HTTP://WWW.SL.COM.CN);
puts(MAILTsllg@sl.com.cn);
while(1)
{
i=getchar();
if(i!=0)//按PC键盘开端测验
{
putstr(当时按键是:);
putchar(i);
putchar(0x0a);
putchar(0x0d);
puts(广州银河双龙电子公司RS232通讯演示程序);
puts(HTTP://WWW.SL.COM.CN);
puts(MAILTsllg@sl.com.cn);
putchar(0x0a);
putchar(0x0d);
}
}
}