打印

转换为10进制并放大100倍后在数码管上显示

[复制链接]
598|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yufe|  楼主 | 2022-5-5 22:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
数码管上显示放大100倍

使用特权

评论回复
沙发
juventus9554| | 2022-5-5 22:23 | 只看该作者
每太看懂你要干嘛

使用特权

评论回复
板凳
yufe|  楼主 | 2022-5-5 22:25 | 只看该作者
比如我单片机读过来的数据是16进制:43FA0000,换算后实际是10进制浮点数500.00,我想放大100倍后用于在数码管显示,浮点数这块如何处理呢?

使用特权

评论回复
地板
kangzj| | 2022-5-5 22:28 | 只看该作者
你是要参考程序吗

使用特权

评论回复
5
huwr| | 2022-5-5 22:31 | 只看该作者
对,尤其是浮点数处理这块!

使用特权

评论回复
6
chenho| | 2022-5-5 22:33 | 只看该作者
正负符号位得注意

使用特权

评论回复
7
stly| | 2022-5-5 22:40 | 只看该作者
(unsigned long)(i * 100.0)

使用特权

评论回复
8
yufe|  楼主 | 2022-5-5 22:42 | 只看该作者
你好,这样做恐怕不对吧?!读过来的是4个字节的IEEE754国际标准的16进制数据哦!

使用特权

评论回复
9
jiajs| | 2022-5-5 22:44 | 只看该作者
转换为10进制并放大100倍后在数码管上显示

使用特权

评论回复
10
juventus9554| | 2022-5-5 22:46 | 只看该作者
是不是先得转换呢?

使用特权

评论回复
11
xxrs| | 2022-5-5 22:49 | 只看该作者

U32 out;

out = i * 100;

U8 a = out % 10;
out /= 10;

U8 b = out % 10;
out /= 10;
...

使用特权

评论回复
12
liliang9554| | 2022-5-5 22:52 | 只看该作者

这个U32 out
是定义了一个浮点数吗?
比如我单片机接收到的数据就是43FA0000这个16进制的,
然后这里定义了一个flaot型的Out变量后,把43FA0000赋值给out后,
就会自动转换为实际真实的浮点数500.00吗?

使用特权

评论回复
13
dingy| | 2022-5-5 22:55 | 只看该作者

这个U32 out
是定义了一个浮点数吗?

不是浮点数,是长整型数

直接赋值,只得到浮点数的整数部分

使用特权

评论回复
14
yufe|  楼主 | 2022-5-5 22:58 | 只看该作者
嗯,我看下,多谢哈

使用特权

评论回复
15
tpgf| | 2022-6-2 13:36 | 只看该作者
将什么转换为十进制啊

使用特权

评论回复
16
aoyi| | 2022-6-2 13:48 | 只看该作者
哪里遇到门槛了啊

使用特权

评论回复
17
nawu| | 2022-6-2 13:59 | 只看该作者
源数据是什么类型的啊

使用特权

评论回复
18
zljiu| | 2022-6-2 14:14 | 只看该作者
这个小函数还是比较好写的

使用特权

评论回复
19
gwsan| | 2022-6-2 14:22 | 只看该作者
浮点数太耗费资源了

使用特权

评论回复
20
tfqi| | 2022-6-2 14:34 | 只看该作者
知道转换原理就不难了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

983

主题

10170

帖子

1

粉丝