您的位置 首页 方案

AVR的uart串口通讯程序

AVR的uart串口通信程序

//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);
}
}
}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/131792.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部