打印

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

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

使用特权

评论回复
沙发
llia| | 2021-4-12 21:34 | 只看该作者
每太看懂你要干嘛

使用特权

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

使用特权

评论回复
地板
bqyj| | 2021-4-12 21:38 | 只看该作者
你是要参考程序吗

使用特权

评论回复
5
langgq| | 2021-4-12 21:43 | 只看该作者
对,尤其是浮点数处理这块!

使用特权

评论回复
6
wangzsa| | 2021-4-12 21:45 | 只看该作者
正负符号位得注意

使用特权

评论回复
7
xxrs| | 2021-4-12 21:47 | 只看该作者

(unsigned long)(i * 100.0)

使用特权

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

使用特权

评论回复
9
wangzsa| | 2021-4-12 21:51 | 只看该作者
转换为10进制并放大100倍后在数码管上显示

使用特权

评论回复
10
wyjie| | 2021-4-12 21:53 | 只看该作者
是不是先得转换呢?

使用特权

评论回复
11
lium| | 2021-4-12 21:55 | 只看该作者

U32 out;

out = i * 100;

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

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

使用特权

评论回复
12
guoyt| | 2021-4-12 21:57 | 只看该作者

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

使用特权

评论回复
13
hanwe| | 2021-4-12 21:59 | 只看该作者

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

不是浮点数,是长整型数

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

使用特权

评论回复
14
yufe|  楼主 | 2021-4-12 22:01 | 只看该作者
嗯,我看下,多谢哈

使用特权

评论回复
15
单片小菜| | 2021-4-12 22:19 | 只看该作者
没看明白,究竟咋回事?为什么?

使用特权

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

本版积分规则

983

主题

10170

帖子

1

粉丝