欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標(biāo)題:
單片機串口通信程序(串口發(fā)送和接受一個數(shù)組)
[打印本頁]
作者:
九年空間
時間:
2020-6-12 20:17
標(biāo)題:
單片機串口通信程序(串口發(fā)送和接受一個數(shù)組)
#include<reg51.h>
#define uchar flag1,flag2,flag3
sbit key1=P1^0;
sbit key2=P2^1;
sbit key3=P2^2;
flag1=1,flag2=1,flag3=1;
unsigned char i;
unsigned char n;
unsigned char code Tab[ ]={0xA5,0X20}; //開始掃描命令
unsigned char a[4]; //接收數(shù)據(jù)數(shù)組
float b[1]; //提取后的數(shù)據(jù)數(shù)組
void delay(unsigned int time);
void Send(unsigned char dat) //發(fā)送命令
{
SBUF=dat;
while(TI==0);
TI=0;
}
void UsartInit()
{TMOD=0x20; //定時器T1工作方式2
SCON=0x50; //串口工作方式1允許接收(REN=1)
PCON=0x00; //正常波特率9600
TH1=0xfd; //初值設(shè)定,波特率9600
TL1=0xfd;
TR1=1; //打開計數(shù)器
EA=1; //打開總中斷
ES=1;} //打開中斷允許中的串口中斷允許
void key_scan() //按鍵掃描
{if(!key1){delay(10);if(!key1)flag1=0;}
if(!key2){delay(10);if(!key2)flag2=0;}
if(!key3){delay(10);if(!key3)flag3=0;}
}
void delay(unsigned int time) //延時
{ unsigned int j = 0;
for(;time>0;time--)
for(j=0;j<110;j++);}
void main()
{
UsartInit(); //串口初始化
key_scan(); //按鍵掃描
if(flag1==0&flag2==1&flag3==1) //判斷是否開始掃描
{ flag1=1; //清零按鍵標(biāo)志
for (i=0;i<2;i++) //串口發(fā)送
{
Send(Tab[i]);
delay(20);
}
delay(300);
n=0;
while(n<5) //串口接收
while(RI==0);
{a[n]=SBUF;
RI=0;
n++;}}
}
復(fù)制代碼
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1