4590|21

28

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

如何通过串口通信发送“K+22”,而在数码管上只显示22? [复制链接]

 
如何通过串口通信发送“K+22”,而在数码管上只显示22?
此帖出自51单片机论坛

最新回复

十六进制就是hex发送,因为发的是字符,当然要用文本发送。你也可用hex发送,不过要对应ASCII码表。  详情 回复 发表于 2017-4-7 12:42
点赞 关注
 

回复
举报

2万

帖子

0

TA的资源

超级版主

沙发
 
串口接收到的数据,总是放到一个数组之类的地方吧?
需要显示的内容,也是放在另一个数组之类的地方吧?
串口接收完毕,把数据移动一下不就齐了?
此帖出自51单片机论坛
 
 
 

回复

2774

帖子

8

TA的资源

版主

板凳
 
不知所云,问题要写清楚,软件,硬件,否则谁少有人能猜出你说的几个意思。你是要显示 K+22 这个数,还是K+22 这串字符,还有你的程序怎么读取串口数据进行处理后 发送到数码管显示,都是问题。没有这些基础,你的问题就毫无意义了。
此帖出自51单片机论坛

点评

是发送“K+22”这个字符串,但是只接收22这个数,另外22这个数在串口助手发送数据时是可以随便改的,你发送23,数码管显示23,你发送44,数码管上显示44,也就是说通过串口可以控制数码管上显示的具体内容。 “K+22  详情 回复 发表于 2017-4-5 13:10
 
 
 

回复

994

帖子

3

TA的资源

一粒金砂(高级)

4
 
将K+去掉,显示22
此帖出自51单片机论坛
 
 
 

回复

28

帖子

0

TA的资源

一粒金砂(中级)

5
 

恩恩  对
但是当我用字符串做的时候,数码管上并不显示正确的实验现象
此帖出自51单片机论坛
 
 
 

回复

28

帖子

0

TA的资源

一粒金砂(中级)

6
 
strong161 发表于 2017-4-4 20:57
不知所云,问题要写清楚,软件,硬件,否则谁少有人能猜出你说的几个意思。你是要显示 K+22 这个数,还是K+ ...

是发送“K+22”这个字符串,但是只接收22这个数,另外22这个数在串口助手发送数据时是可以随便改的,你发送23,数码管显示23,你发送44,数码管上显示44,也就是说通过串口可以控制数码管上显示的具体内容。
“K+22”中的22只是一个随便的例子,程序中还是要写“k+22”这个字符串的,但是只接收22这个数。
此帖出自51单片机论坛
 
 
 

回复

2774

帖子

8

TA的资源

版主

7
 
你单片机接只接到 数?没有收到字符串,还是接收到了,但是只能显示数字?另外你的数码管 是什么数码管?能不能显示字母?程序处理过程也是很重要,你得把程序列出来吧!让大家看一下吧!
此帖出自51单片机论坛

点评

数码管是共阴极的  详情 回复 发表于 2017-4-5 13:25
“K+22”这个字符串,我通过for语句已经控制了只显示22这个数字,不让他显示字符K和+。 这道题的目的是“程序中写K+22这个字符串,但是只接收22”’ ,  详情 回复 发表于 2017-4-5 13:25
 
 
 

回复

28

帖子

0

TA的资源

一粒金砂(中级)

8
 
strong161 发表于 2017-4-5 13:16
你单片机接只接到 数?没有收到字符串,还是接收到了,但是只能显示数字?另外你的数码管 是什么数 ...

“K+22”这个字符串,我通过for语句已经控制了只显示22这个数字,不让他显示字符K和+。
这道题的目的是“程序中写K+22这个字符串,但是只接收22”’ ,
此帖出自51单片机论坛

点评

好吧!前面没有太看懂, 就是提取串口字符串中的数字并通过数码管显示吧!  详情 回复 发表于 2017-4-5 13:26
 
 
 

回复

28

帖子

0

TA的资源

一粒金砂(中级)

9
 
strong161 发表于 2017-4-5 13:16
你单片机接只接到 数?没有收到字符串,还是接收到了,但是只能显示数字?另外你的数码管 是什么数 ...

数码管是共阴极的
此帖出自51单片机论坛
 
 
 

回复

2774

帖子

8

TA的资源

版主

10
 
本帖最后由 strong161 于 2017-4-5 13:27 编辑
FENFAXIANGSHANG 发表于 2017-4-5 13:25
“K+22”这个字符串,我通过for语句已经控制了只显示22这个数字,不让他显示字符K和+。
这道题的目的是 ...

好吧!前面没有太看懂, 就是提取串口字符串中的数字并通过数码管显示吧!  
此帖出自51单片机论坛

点评

恩恩 对  详情 回复 发表于 2017-4-5 20:09
但是那个数字在串口发送时还是可以随便改的,你发送多少,数码管上就会显示多少  详情 回复 发表于 2017-4-5 13:28
恩恩 对的 就是这个意思  详情 回复 发表于 2017-4-5 13:27
 
 
 

回复

28

帖子

0

TA的资源

一粒金砂(中级)

11
 
strong161 发表于 2017-4-5 13:26
好吧!前面没有太看懂, 就是提取串口字符串中的数字并通过数码管显示吧!

恩恩 对的 就是这个意思
此帖出自51单片机论坛

点评

不好意思,前面来搅局了……  详情 回复 发表于 2017-4-5 13:29
 
 
 

回复

28

帖子

0

TA的资源

一粒金砂(中级)

12
 
strong161 发表于 2017-4-5 13:26
好吧!前面没有太看懂, 就是提取串口字符串中的数字并通过数码管显示吧!

但是那个数字在串口发送时还是可以随便改的,你发送多少,数码管上就会显示多少
此帖出自51单片机论坛
 
 
 

回复

2774

帖子

8

TA的资源

版主

13
 
FENFAXIANGSHANG 发表于 2017-4-5 13:27
恩恩 对的 就是这个意思

不好意思,前面来搅局了……
此帖出自51单片机论坛

点评

哦哦  详情 回复 发表于 2017-4-5 20:07
 
 
 

回复

52

帖子

0

TA的资源

一粒金砂(中级)

14
 
首先“K+22”是一个字符串对吧。
第一点:这个字符串是由四个字符组成的对吧,那你接受的时候一定要定义一个字符数组,必须是char array[4],而不能是unsigned char
第二点:你是字符串,字符串在内存中是以ASCII码存在的,你接受过来的是'2',而不是2,如果你想变成2的话用‘2’-'0'。
第三点:使用串口调试助手的,数据形式一定得是文本,不能是16进制,另外波特率还要对应好。
此帖出自51单片机论坛

点评

为什么不能是16进制呢?串口助手里边有16进制这个功能,难道也不可以用16进制吗  详情 回复 发表于 2017-4-5 20:18
恩恩 好的 谢了  详情 回复 发表于 2017-4-5 20:10
 
 
 

回复

3471

帖子

13

TA的资源

五彩晶圆(高级)

15
 
问题现在解决了吗,串口通信,最好有开始和结束标志,便于判断,减少错误可能。
此帖出自51单片机论坛

点评

恩恩,正在调试  详情 回复 发表于 2017-4-5 20:10
 
 
 

回复

28

帖子

0

TA的资源

一粒金砂(中级)

16
 
strong161 发表于 2017-4-5 13:29
不好意思,前面来搅局了……

哦哦
此帖出自51单片机论坛
 
 
 

回复

28

帖子

0

TA的资源

一粒金砂(中级)

17
 
strong161 发表于 2017-4-5 13:26
好吧!前面没有太看懂, 就是提取串口字符串中的数字并通过数码管显示吧!

恩恩 对
此帖出自51单片机论坛
 
 
 

回复

28

帖子

0

TA的资源

一粒金砂(中级)

18
 
徐建庆 发表于 2017-4-5 15:27
首先“K+22”是一个字符串对吧。
第一点:这个字符串是由四个字符组成的对吧,那你接受的时候一定要定义一 ...

恩恩 好的 谢了
此帖出自51单片机论坛
 
 
 

回复

28

帖子

0

TA的资源

一粒金砂(中级)

19
 
ienglgge 发表于 2017-4-5 19:18
问题现在解决了吗,串口通信,最好有开始和结束标志,便于判断,减少错误可能。

恩恩,正在调试
此帖出自51单片机论坛
 
 
 

回复

28

帖子

0

TA的资源

一粒金砂(中级)

20
 
徐建庆 发表于 2017-4-5 15:27
首先“K+22”是一个字符串对吧。
第一点:这个字符串是由四个字符组成的对吧,那你接受的时候一定要定义一 ...

为什么不能是16进制呢?串口助手里边有16进制这个功能,难道也不可以用16进制吗
此帖出自51单片机论坛

点评

十六进制就是hex发送,因为发的是字符,当然要用文本发送。你也可用hex发送,不过要对应ASCII码表。  详情 回复 发表于 2017-4-7 12:42
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表