找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2536|回复: 2
收起左侧

数码管DS04如何把小数点前移

[复制链接]
ID:326353 发表于 2018-5-9 21:58 | 显示全部楼层 |阅读模式
见题,我现在的程序只能显示小数点后一位,我想让他显示到小数点后三位该怎么做,

//数码管位选定义
sbit smg_we1 = P3^4;            //数码管位选定义
sbit smg_we2 = P3^5;
sbit smg_we3 = P3^6;
sbit smg_we4 = P3^7;

dis_smg[0] = smg_du[set_d % 10];                   //取小数显示
                dis_smg[1] = smg_du[set_d / 10 % 10] ;         //取个位显示
                dis_smg[2] = smg_du[set_d / 100 % 10] & 0xdf ; //取十位显示

数码显示函数*****************************/
void display()
{
        static uchar i;   
        i++;
        if(i >= smg_i)
                i = 0;        
        smg_we_switch(i);                 //位选
        P1 = dis_smg[ i];                 //段选               
}
回复

使用道具 举报

ID:326353 发表于 2018-5-9 22:13 | 显示全部楼层
基于51单片机的超声波测距的数码管显示
回复

使用道具 举报

ID:213173 发表于 2018-5-10 06:41 | 显示全部楼层
dis_smg[0] = smg_du[set_d % 10];        //取个显示
dis_smg[1] = smg_du[set_d / 10 % 10];   //取十位显示
dis_smg[2] = smg_du[set_d / 100 % 100]; //取百位显示
dis_smg[3] = smg_du[set_d / 1000] & 0xdf; //取千位显示+小数点
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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