蓝牙小车程序问题

2019-07-15 21:59发布

#include<reg52.h>
#define uchar unsigned char
#define uint unsigned uint

uchar a;

void init()
{
        TMOD=0x20;                //设置定时器1为方式2
        PCON=0x00;                //设置SMOD(PCON.7)为0,波特率不加倍
        TH1=0xfd;                //设置波特率初值为9600
        TL0=0xfd;                //
        TR1=1;                        //启动定时器1
        REN=1;                        //使能接收

        SM0=0;                        //
        SM1=1;                        //设置串口为工作方式1

        EA=1;                        //打开总中断开关
        ES=1;                        //打开串口中断开关
}

void main(void)
{
        init();
        while(1);

}
       
        void ser() interrupt 4
        {
                ES=0;
                RI=0;                 //将接收中断标志位清0
                a= SBUF;         //将接收到的数据赋给a               
                switch(a)
                {
                  case 31: P2=0x17; break;                //前进
                  case 34: P2=0x1b; break;                //右转
                  case 33: P2=0x27; break;                //左转
                  case 32: P2=0x2b; break;                //后退          
                  case 37: P2=0x00; break;                //停止
                  case 35: P2=0x17; break;                //加速
                  case 36: P2=0x2b; break;                //减速          
                  
                   default: break;
                         
                }
        ES=1;
       
}
大家帮我看看那里不对,怎么会没反应
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。