|
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar a;
void init()
{
TMOD=0X20; //設(shè)置定時(shí)器1為方式2
TH1=0xfd ;
TL1=0xfd ; //裝初值
TR1=1; //啟動(dòng)定時(shí)器1
REN=1; // 使能接收
SM0=0;
SM1=1; //設(shè)置串口為工作方式1
EA=1; // 打開總中斷開關(guān)
ES=1; // 打開串口中斷開關(guān)
}
void main()
{
init();
while(1);
}
void ser() interrupt 4
{
ES=0;
RI=0; //將接受中斷標(biāo)志位清0;
a=SBUF; //將接受到的數(shù)據(jù)賦值給a
switch(a)
{
case 65: P1=0Xa5; break; // 發(fā)送的是A 前進(jìn)指令
case 66: P1=0X55; break; // 發(fā)送的是B 右轉(zhuǎn)指令
case 67: P1=0Xaa; break; // 發(fā)送的是C 左轉(zhuǎn)指令
case 68: P1=0X5a; break; // 發(fā)送的是D 后退指令
case 97: P1=0X00; break; //發(fā)送的是a 停止指令
case 98: P1=0X00; break; //發(fā)送的是b 停止指令
case 99: P1=0X00; break; //發(fā)送的是c 停止指令
case 100: P1=0X00; break; //發(fā)送的是d 停止指令
//P2口是我的電機(jī)驅(qū)動(dòng)的控制端
default: break;
}
ES=1;
}
|
|