欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
單片機串口通信(2)通過串口助手發送數據點LED
[打印本頁]
作者:
12233344421
時間:
2019-12-12 10:07
標題:
單片機串口通信(2)通過串口助手發送數據點LED
#include <reg52.h>
#define jingzhen 12000000UL /*使用12.0M晶體*/ //
#define botelv 4800UL /*波特率定義為4800*/
typedef unsigned char uchar;
typedef unsigned int uint;
uchar buf;
sbit beep=P1^5;
void main(void)
{
EA=0; //暫時關閉中斷
TMOD&=0x0F; //定時器1模式控制在高4位
TMOD|=0x20; //定時器1工作在模式2,自動重裝模式
SCON=0x50; //串口工作在模式1
TH1=256-jingzhen/(botelv*12*16); //計算定時器重裝值
TL1=256-jingzhen/(botelv*12*16);
PCON|=0x80; //串口波特率加倍
ES=1; //串行中斷允許
TR1=1; //啟動定時器1
REN=1; //允許接收
EA=1; //允許中斷
while(1);
}
/*********************************************************
串行中斷服務函數
*********************************************************/
void serial() interrupt 4
{
ES = 0; //關閉串行中斷
RI = 0; //清除串行接受標志位
buf = SBUF; //從串口緩沖區取得數據
switch(buf)
{
case 0x31: P2=0xfe;beep=1;break; //接受到1,第一個LED亮
case 0x32: P2=0xfd;beep=1;break; //接受到2,第二個LED亮
case 0x33: P2=0xfb;beep=1;break; //接受到3,第三個LED亮
case 0x34: P2=0xf7;beep=1;break; //接受到4,第四個LED亮
case 0x35: P2=0xef;beep=1;break; //接受到5,第五個LED亮
case 0x36: P2=0xdf;beep=1;break; //接受到5,第六個LED亮
case 0x37: P2=0xbf;beep=1;break; //接受到5,第七個LED亮
case 0x38: P2=0x7f;beep=1;break; //接受到5,第八個LED亮
default: beep=0;P2=0xff;break; //接受到其它數據,蜂鳴器響
}
ES = 1; //允許串口中斷
}
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1