日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 嵌入式 > 嵌入式硬件

/*************************************************************************/
#include"iom16v.h"
#include<macros.h>
#definebaud9600//波特率
#definefosc8000000//晶振8mhz
/*************************初始化函數(shù)**********************/
voidusart_init(void)
{

/*設置波特率*/
//ubrr=51;
//ubrrh=(unsignedchar)(baud>>8);
//ubrrl=(unsignedchar)(baud);
ubrrl=(fosc/16/baud-1)%256;
ubrrh=(fosc/16/baud-1)/256;
/*接收器和發(fā)送器使能*/
ucsrb=(1<<rxen)|(1<<txen);
/*設置數(shù)據(jù)幀格式*/
ucsrc="/blog/(1<";<ursel)|(1<<usbs)|(3<<ucsz0);//8個數(shù)據(jù)位,2個停止位
}
/********************數(shù)據(jù)發(fā)送函數(shù)(5~8位)*********************/

voidusart_transmit(unsignedchardata)
{
/*等待發(fā)送緩沖器為空*/
while(!(ucsra&(1<<udre)))//udre為時緩沖器為空
;
/*將數(shù)據(jù)放入緩沖器,發(fā)送數(shù)據(jù)*/
udr=data;
}
/********************數(shù)據(jù)接受函數(shù)(5~8位)*********************/
unsignedcharusart_receive(void)
{
/*等待接受數(shù)據(jù)*/
while(!(ucsra&(1<<rxc)))//接受緩沖器中有未讀出的數(shù)據(jù)時rxc置位,否則清零
;
/*從緩沖器中獲取并返回數(shù)據(jù)*/
returnudr;
}
/********************字符串發(fā)送函數(shù)(不含回車換行)***********************/
voidusart_transmit_string(unsignedchar*s)
{
while(*s)
{
usart_transmit(*s);
s++;
}
}
voidmain()
{
unsignedchari;
unsignedchar*p1,*p2;
unsignedchara[]={"thekeyis:"};
unsignedcharb[]={"pleasepressanykey"};
p1=a;
p2=b;
usart_init();
//usart_transmit_string(p2);
//usart_transmit(0x0d);//回車換行
//usart_transmit(0x0a);
while(1)
{
i=usart_receive();
if(i!=0)
{
//usart_transmit_string(p1);
usart_transmit(i);
//usart_transmit(0x0d);//回車換行
//usart_transmit(0x0a);
}

}
}
    /*************************************************************************/
#include"iom16v.h"
#include<macros.h>
#definebaud9600//波特率
#definefosc8000000//晶振8mhz
/*************************初始化函數(shù)**********************/
voidusart_init(void)
{

/*設置波特率*/
//ubrr=51;
//ubrrh=(unsignedchar)(baud>>8);
//ubrrl=(unsignedchar)(baud);
ubrrl=(fosc/16/baud-1)%256;
ubrrh=(fosc/16/baud-1)/256;
/*接收器和發(fā)送器使能*/
ucsrb=(1<<rxen)|(1<<txen);
/*設置數(shù)據(jù)幀格式*/
ucsrc="/blog/(1<";<ursel)|(1<<usbs)|(3<<ucsz0);//8個數(shù)據(jù)位,2個停止位
}
/********************數(shù)據(jù)發(fā)送函數(shù)(5~8位)*********************/

voidusart_transmit(unsignedchardata)
{
/*等待發(fā)送緩沖器為空*/
while(!(ucsra&(1<<udre)))//udre為時緩沖器為空
;
/*將數(shù)據(jù)放入緩沖器,發(fā)送數(shù)據(jù)*/
udr=data;
}
/********************數(shù)據(jù)接受函數(shù)(5~8位)*********************/
unsignedcharusart_receive(void)
{
/*等待接受數(shù)據(jù)*/
while(!(ucsra&(1<<rxc)))//接受緩沖器中有未讀出的數(shù)據(jù)時rxc置位,否則清零
;
/*從緩沖器中獲取并返回數(shù)據(jù)*/
returnudr;
}
/********************字符串發(fā)送函數(shù)(不含回車換行)***********************/
voidusart_transmit_string(unsignedchar*s)
{
while(*s)
{
usart_transmit(*s);
s++;
}
}
voidmain()
{
unsignedchari;
unsignedchar*p1,*p2;
unsignedchara[]={"thekeyis:"};
unsignedcharb[]={"pleasepressanykey"};
p1=a;
p2=b;
usart_init();
//usart_transmit_string(p2);
//usart_transmit(0x0d);//回車換行
//usart_transmit(0x0a);
while(1)
{
i=usart_receive();
if(i!=0)
{
//usart_transmit_string(p1);
usart_transmit(i);
//usart_transmit(0x0d);//回車換行
//usart_transmit(0x0a);
}

}
}
  

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關閉