
简单的数码管计数显示
外加代码。。。
可以根据此来修改一下,以便更好地读懂代码。
#include <stc12c5a60s2.h> //头文件
#define uchar unsigned char
#define uint unsigned int
sbit ls138_a=P2^0;
sbit ls138_b=P2^1;
sbit ls138_c=P2^2;
char seg_dis[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //0~9
void delay(uchar m);
void main()
{
long seg_data;
char seg_tab[8];
char count=0;
uchar i;
seg_data=0;
while(1)
{
if(++count)
{
if(count==1)
{
seg_data++;
count=0;
}
}
/*seg_tab[0]=seg_dis[seg_data%10000/1000];
seg_tab[1]=seg_dis[seg_data%1000/100];
seg_tab[2]=seg_dis[seg_data%100/10];
seg_tab[3]=seg_dis[seg_data%10];*/
seg_tab[0]=seg_dis[seg_data%100000000/10000000]; // 千万
seg_tab[1]=seg_dis[seg_data%10000000/1000000]; // 百万
seg_tab[2]=seg_dis[seg_data%1000000/100000]; // 十万
seg_tab[3]=seg_dis[seg_data%100000/10000]; // 万位
seg_tab[4]=seg_dis[seg_data%10000/1000]; // 千位
seg_tab[5]=seg_dis[seg_data%1000/100]; // 百位
seg_tab[6]=seg_dis[seg_data%100/10]; // 十位
seg_tab[7]=seg_dis[seg_data%10]; // 个位
for(i=0;i<8;i++)
{
P0 = seg_tab[i];
switch(i)
{
case 0: ls138_c=0; ls138_b=0; ls138_a=0;break;
case 1: ls138_c=0; ls138_b=0; ls138_a=1;break;
case 2: ls138_c=0; ls138_b=1; ls138_a=0;break;
case 3: ls138_c=0; ls138_b=1; ls138_a=1;break;
case 4: ls138_c=1; ls138_b=0; ls138_a=0;break;
case 5: ls138_c=1; ls138_b=0; ls138_a=1;break;
case 6: ls138_c=1; ls138_b=1; ls138_a=0;break;
case 7: ls138_c=1; ls138_b=1; ls138_a=1;break;
default : break;
}
delay(10);
}
}
}
void delay(uchar m)//延时函数
{
uchar i,j;
for(i=0;i<m;i++)
{
for(j=0;j<200;j++)
{
;
}
}
}

回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
基于MSPM0L1306的MODBUS-RTU协议通讯实验被打赏50分 | |
每周了解几个硬件知识+485硬件知识分享被打赏10分 | |
【换取手持示波器】树莓派PICOW网页烟花被打赏18分 | |
【换取手持示波器】树莓派PICO逻辑分析仪被打赏16分 | |
【分享评测,赢取加热台】教你五分钟本地部署蒸馏版本的DeepSeekR1-7B被打赏12分 | |
【换取手持示波器】蓝牙音箱更换电池被打赏8分 | |
【换取手持示波器】鼠标更换微动开关被打赏10分 | |
【我要开发板】4.传感器移植被打赏50分 | |
【换取手持数字示波器】RISC-VGCC使用-fno-omit-frame-pointer编译选项实现栈回溯被打赏29分 | |
【分享评测,赢取加热台】+开关电源简述被打赏7分 |