欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
單片機與PC機通信
[打印本頁]
作者:
興仔
時間:
2019-6-10 18:18
標題:
單片機與PC機通信
#include<reg51.h>
#include<intrins.h>
unsigned char key_s,key_v,tmp;
unsigned char display_code[]={0xC0,0xF9,0xA4,0xB0,0x99,0x82,0xF8,0x80,0x90};
char code str[]="welcome!\n\r";/*定義向PC機發送的內容*/
void send_str();/*聲明發送字符串函數*/
bit scan_key();/*聲明按鍵函數*/
void proc_key();/*聲明按鍵處理函數*/
void send_char(unsigned char td);/*聲明發送字符函數*/
void delayms(unsigned char ms);/*聲明延時函數*/
sbit K1=P1^4;
void main()
{
TMOD=0x20;/*定時器1工作于8位自動重載模式,用于產生波特率 */
TH1=0xFD; /*波特率9600*/
TL1=0xFD;
SCON=0x50;/*設定串行口工作方式*/
PCON=0xef;/*波特率不倍增*/
TR1=1; /*啟動定時器1*/
IE=0x00;/*禁止任何中斷*/
while(1)
{
if(scan_key())
delayms(10); /*延時去抖動*/
if(scan_key())
{
key_v=key_s;
proc_key();
}
if(RI) /*是否傳來數據*/
{
RI=0;
tmp=SBUF; /*暫存接受到的數據*/
delayms(10);
P0=display_code[tmp-0x30]; /*數據傳送到PO口*/
send_char(tmp); /*回傳接受的數據*/
}
}
}
bit scan_key() /*掃描按鍵*/
{
key_s=0x00;
key_s|=K1;
return(key_s^key_v);
}
void proc_key() /*按鍵處理*/
{
if((key_v&0x01)==0) /*k1按鍵按下*/
{
send_str(); /*傳送字符串*/
}
}
void send_char(unsigned char td) /*傳送一個字符*/
{
SBUF=td;
while(!T1); /*等待數據傳送*/
T1=0; /*清除數據傳送標志*/
}
void send_str() /*傳送字符串*/
{
unsigned char i=0;
while(str[i]!='\0')
{
SBUF=str[i];
T1=0; /*清除數據傳送標志*/
i++;
}
}
void delayms(unsigned char ms) /*延時子程序*/
{
unsigned char j;
while(ms--)
{
for(j=0;j<120;j++);
}
}
復制代碼
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1