完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 U哥摔过吴彦祖 于 2017-6-9 21:02 编辑
我做的是用51单片机对一个模拟电压信号进行ad转换,然后将ad转换后的数据发送到电脑上,在电脑上显示出电压值,目前用的是串口调试助手只能显示16进制的数,而且还没有经过算法处理,也不是实际的电压值;请问怎么做才可以在电脑上对51单片机发送的数据进行处理然后显示出10进制的电压值? |
|
相关推荐
5个回答
|
|
这个在电脑端可不好处理吧
在51编程处理吧 转换之后的数据要在电脑端显示十进制数 就要将数据的各位分解开来分别发送;这样就会碰到第二个问题 因为电脑端是显示字符的,所以还要将转化完的数据变成字符样才能显示啊,直接加上“0”字符(0x30)就好了
擅自给楼主加上了空格,这样就能更好的分开两个数据了 楼主试一下,如果不行的话,请留言
最佳答案
|
|
|
|
这个需要你在程序中处理之后直接发串口
|
|
|
|
两种方法,一种是在电脑上编程,对接收到的数据进行数据格式转换,第二种是单片机将数据转换成多字节的0-9的个位数,发送给电脑,可以用串口助手,这样多字节拼起来看,就是十进制数了。
转换可用简单运算,比如AD为8为的,ad_data为十六进制的AD值,temp_data[3]为转换后的十进制数,转换过程就是 temp_data[0]=ad_data/100; //百位数 temp_data[1]=(ad_data % 100) / 10; //十位数 temp_data[2]=ad_data % 10;//个位数 |
|
|
|
电脑不好转换吧,第二种显示的话,电压需要这样转换啊,比如8位AD的话,temp_data[3]/256*5V
|
|
|
|
学渣求助,求大神源代码下载
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
386 浏览 0 评论
求助一下关于51系列单片机的Timer0的计时问题,TH0、TL0+1的时间是怎么算的?
1670 浏览 1 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】开箱+Keil环境搭建+点灯+点亮OLED
1123 浏览 0 评论
【敏矽微ME32G070开发板免费体验】使用coremark测试敏矽微ME32G070 跑分
1005 浏览 0 评论
【敏矽微ME32G070开发板免费体验】开箱+点灯+点亮OLED
1229 浏览 2 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12018 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 11:02 , Processed in 0.543629 second(s), Total 48, Slave 41 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号