关于蓝牙转串口通信的问题,

2019-07-15 20:28发布

void ser() interrupt 4
{
        RI=0;
        k=SBUF+0x30;//变为字符型
}

为什么SBUF+0x30之后就变成字符型,不加上0x30可以吗



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
低调~小营长
1楼-- · 2019-07-16 02:14
ntmusic 发表于 2014-3-26 08:53
你直接发送字符型数据就可以不用加0x30啦!并不是所有数据+0x30都变成字符数据,你应该多了解一下ASCII码 ...

哦。。。void main(){
        led1=0;
        led2=1;
        TMOD=0x21;
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        ET0=1;
        TR0=1;
        TH1=0xfd;
        TL1=0xfd;
        TR1=1;
        REN=1;
        SM0=0;
        SM1=1;
        EA=1;
        ES=1;
        P0=0x00;
        while(1)
        {
                switch(k)
                {
                        case 'q' :
                                        forward();
                        break;
                       
                        case 't' :
                                        back();
                        break;

                        case 's' :
                                        left();       
                        break;

                        case 'r':
                                        right();
                        break;

                        default :
                                        zero();
                        break;
                }
        }       
}
难道SBUF不是发送的字符型吗?我是一个新手,不太懂,麻烦大虾再讲一下,
ntmusic
2楼-- · 2019-07-16 06:15
你直接发送字符型数据就可以不用加0x30啦!并不是所有数据+0x30都变成字符数据,你应该多了解一下ASCII码
A670521546
3楼-- · 2019-07-16 12:00
 精彩回答 2  元偷偷看……

一周热门 更多>