[51单片机] 手机通过蓝牙和单片机通信进行中

[复制链接]
5942|26
 楼主| justsuperone 发表于 2014-8-19 15:32 | 显示全部楼层 |阅读模式
为什么我用手机发送的与单片机显示的不一样,是程序的问题吗、? 手机通过蓝牙发送后,单片机接收,并存入SBUF中,我在程序里将SBUF读出 显示不就应该是我发送的内容吗,,,请高手指点,,万分感谢
hustmingtian 发表于 2014-8-19 15:49 | 显示全部楼层
ascii字符你有转换吗,字符串的问题吧
 楼主| justsuperone 发表于 2014-8-19 15:59 | 显示全部楼层
hustmingtian 发表于 2014-8-19 15:49
ascii字符你有转换吗,字符串的问题吧

需要转换字符吗,我用手机发送数字,单片机接收到存入SBUF中应该是数字对应的二进制,读出在1602显示的也是这二进制所对应的字符啊
hustmingtian 发表于 2014-8-19 16:02 | 显示全部楼层
需要的,你换算一下就知道了
 楼主| justsuperone 发表于 2014-8-19 16:16 | 显示全部楼层
hustmingtian 发表于 2014-8-19 16:02
需要的,你换算一下就知道了

a=SBUF;
                a=a+0x30;
                LCD_Write_Char(0,0,a);       
 楼主| justsuperone 发表于 2014-8-19 16:17 | 显示全部楼层
hustmingtian 发表于 2014-8-19 16:02
需要的,你换算一下就知道了

还是不行
yklstudent 发表于 2014-8-19 16:39 | 显示全部楼层
justsuperone 发表于 2014-8-19 16:16
a=SBUF;
                a=a+0x30;
                LCD_Write_Char(0,0,a);

LCD_Write_Char(0, 0, a/10+0x30);
LCD_Write_Char(0, 1, a%10+0x30);
 楼主| justsuperone 发表于 2014-8-19 17:03 | 显示全部楼层
yklstudent 发表于 2014-8-19 16:39
LCD_Write_Char(0, 0, a/10+0x30);
LCD_Write_Char(0, 1, a%10+0x30);

a/10是什么意思
xg3469 发表于 2014-8-19 17:58 | 显示全部楼层
a/10:a除以10的商。整数部分。
 楼主| justsuperone 发表于 2014-8-20 08:12 | 显示全部楼层
xg3469 发表于 2014-8-19 17:58
a/10:a除以10的商。整数部分。

额,我觉得不需要这一步,我开始输入的都只是0-9的数不需要转换
xg3469 发表于 2014-8-20 09:12 | 显示全部楼层
如果“a"不超过10,a/10和a%10都不需要了。哈哈哈...
 楼主| justsuperone 发表于 2014-8-20 09:59 | 显示全部楼层
xg3469 发表于 2014-8-20 09:12
如果“a"不超过10,a/10和a%10都不需要了。哈哈哈...

我晕,根本没说到点上啊
lzqxs89 发表于 2014-8-20 10:29 | 显示全部楼层
做过这方面的人才清楚。  你也可以上传你测试结果给大家分析分析哎。你发0~9, 接收到的对应的都是什么啊?
 楼主| justsuperone 发表于 2014-8-20 10:40 | 显示全部楼层
我觉得程序太多,不想浪费大家太多时间,这样我发上来,有兴趣的看一下

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
花戒 发表于 2014-8-20 10:58 来自手机 | 显示全部楼层
你应该发的不是程序而是你发送了什么,单片机接收了什么。
 楼主| justsuperone 发表于 2014-8-20 11:15 | 显示全部楼层
花戒 发表于 2014-8-20 10:58
你应该发的不是程序而是你发送了什么,单片机接收了什么。

单独发送数字0——9或者一个字母   显示的都一直是一个长方形的阴影  不变  而发送向123  显示的是π
花戒 发表于 2014-8-20 12:45 来自手机 | 显示全部楼层
是不是你错把握手信号或者校验之类的给读出来了
 楼主| justsuperone 发表于 2014-8-20 13:30 | 显示全部楼层
花戒 发表于 2014-8-20 12:45
是不是你错把握手信号或者校验之类的给读出来了

握手信号?没有这个吧,他就是一个输入  读取而已  蓝牙是集成的模块  不需要怎么写程序,   
Ray______ 发表于 2014-8-21 10:04 | 显示全部楼层
你试下不是字符串,发16进制
 楼主| justsuperone 发表于 2014-8-21 12:34 | 显示全部楼层
Ray______ 发表于 2014-8-21 10:04
你试下不是字符串,发16进制

有发过,发0x30这样的 也一样  显示的乱码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:我要开始笑了,哈哈哈...

30

主题

168

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部