#include #define uchar unsigned char #define uint unsigned intuchar code DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //数码管真值表 uchar code DSY_CODE1[]={0XBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xEF,0xDF};sbit CLK=P2^4;sbit ST=P2^5; sbit ECO=P2^6; sbit OE=P2^7; sbit LED=P3^4; float d; //读取的转换数值 void DelayMs(uint ms) //延时函数 { uchar i; while(ms--) for(i=0;i<120;i++); } void Disp_result(d) //数码管显示函数 { d=(d/255.000)*5000; P2=0xfe; //11111110 P0=DSY_CODE1[d/1000]; DelayMs(5); P2=0xfd; //11111101 P0=DSY_CODE[(d/100)%10]; DelayMs(5); P2=0xfb; //11111011 P0=DSY_CODE[(d/10)%10]; DelayMs(5); P2=0xf7; //11110111 P0=DSY_CODE[d%10]; DelayMs(5); if(d>3210) LED=0; else LED=1; } void main() //主函数 { TMOD=0x02; TH0=0x14; TL0=0x00; IE = 0X82; TR0 = 1; P3=0x3f; LED=1; while(1) //主循环 { ST=0; ST=1; ST=0; while(ECO==0); OE=1; Disp_result(P1); OE=0; } } void Timer0_INT() interrupt 1 //定时器中断服务函数 { CLK=~CLK; }
1条回答 默认 最新
悬赏问题
- ¥15 网络科学导论,网络控制
- ¥15 metadata提取的PDF元数据,如何转换为一个Excel
- ¥15 关于arduino编程toCharArray()函数的使用
- ¥100 vc++混合CEF采用CLR方式编译报错
- ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
- ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
- ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
- ¥50 如何openEuler 22.03上安装配置drbd
- ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
- ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)