找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2488|回复: 1
收起左侧

数码管可以显示的数据类型

[复制链接]
ID:308979 发表于 2018-5-25 10:49 | 显示全部楼层 |阅读模式
1黑币
我有一个char类型的count和一个char类型的time,这两个类型的数可以作除法得到一个正确的rs吗 ?
然后假设得到了rs,这个数是个小数,因为是共阳数码管所以我试着在要显示的数字加0x7f或者0x80,比如 buf[2] = 3 | 0x7f,期望显示"3."最后得到的是"8."
目前程序如下,buf[]数组是数码管的四个位,rs传进去后显示不出来。传常量测试就可以。
请问是数据类型的问题吗?
        rs = count/time;
        buf[3] = rs/1000 ;
        buf[2] = rs%1000/100;
        buf[1] = rs%100/10 ;
        buf[0] = rs%10;
        display();


回复

使用道具 举报

ID:277550 发表于 2018-5-25 15:30 | 显示全部楼层
如果结果是带有整数位的小数,程序是显示整数位的。。。如果是只有小数程序就全显示0了




       char count, time; //char是整数
...........................

        // 显示小数的情况,如下处理

        rs = 100.0*count/time; ////放大100倍,即2位小数

        buf[3] = rs/1000 ;        
        buf[2] = rs%1000/100;//这增加显示小数点-------------------------------------
        buf[1] = rs%100/10 ;   //第1位小数
        buf[0] = rs%10;           //第2位小数
        display();
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表