数码管系统测试程序.doc

上传人:scccc 文档编号:12218750 上传时间:2021-12-02 格式:DOC 页数:6 大小:67KB
返回 下载 相关 举报
数码管系统测试程序.doc_第1页
第1页 / 共6页
数码管系统测试程序.doc_第2页
第2页 / 共6页
数码管系统测试程序.doc_第3页
第3页 / 共6页
数码管系统测试程序.doc_第4页
第4页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《数码管系统测试程序.doc》由会员分享,可在线阅读,更多相关《数码管系统测试程序.doc(6页珍藏版)》请在三一文库上搜索。

1、#include<reg52.h>#include<intrins.h>sbit S1=P10;/ 流水灯顺时针流水sbit S2=P11;/ 流水灯逆时针sbit S3=P12;/ 数码管显示数字0-7sbit S4=P13;/ 显示数字钟sbit S5=P14;/ 显示八个 8.和流水灯流水sbit S6=P15;/ 数码管各段循环sbit S7=P16;/ 位控从 p2.0- p2.7 循环sbit S8=P17;/#define uint unsigned int#define uchar unsigned charuchar code discode=0xC0

2、,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xBF;/送段码0-9和 "-"uchar disbitcode=0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe;/ 送位码uchar table=0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe;uchar disbuf8=0,0,10,0,0,10,0,0;/显示缓冲区uchar cent,second,minite,hour,i,a;/* 函数申明*/void display(void);void ini(void

3、);void t0(void);/延时 /void delay(uint m)while(-m);/ 初始化 /void ini(void)/TMOD=0x01;TH0=(65536-46082)/256;TL0=(65536-46082)%256;TR0=1;ET0=1;EA=1;/ 显示函数void display(void)uchar i;for(i=0;i<8;i+)P0=discodedisbufi;P2=disbitcodei;delay(100);/ 中断 /void t0(void) interrupt 1 using 0/用第 0 组寄存器cent+;if(cent=2

4、0)P3=P3;cent=0;second+;if(second=60)second=0;minite+;if(minite=60)minite=0;hour+;if(hour=24)hour=0;disbuf7=second%10;/* 更新显示缓冲区*/disbuf6=second/10;disbuf4=minite%10;disbuf3=minite/10;disbuf1=hour%10;disbuf0=hour/10;TH0=(65536-46082)/256;TL0=(65536-46082)%256;void main(void)uchar i;uint ii;ini();whil

5、e(1)/if(S1=0)delay(50);if(S1=0)while(1)uchar temp;temp=0xfe;for(i=0;i<200;i+)delay(15000);temp=_crol_(temp,1);P3=temp;if(i=200)break;P3=0xff;while(S1=0);/ 判释放/if(S2=0)delay(50);if(S2=0)while(1)for(ii=0;ii<100;ii+)for(i=0;i<8;i+)delay(15000);P3=tablei;if(ii=100)break;P3=0xff;while(S2=0); / 判

6、释放/if(S3=0)delay(50);if(S3=0)while(1)P3=0x00;for(ii=0;ii<10000;ii+)for(i=0;i<8;i+)P0=discodei;/ 取显示数据P2=disbitcodei;/ 取段码delay(100); / 扫描间隙延时if(ii=10000)break;P0=0xff;P3=0xff;while(S3=0); / 判释放/if(S4=0)delay(50);if(S4=0)P3=0xff;TR0=1;while(1)for(ii=0;ii<3;ii+)display();if(ii=3)break;while(S

7、4=0); / 判释放/if(S5=0)delay(50); if(S5=0)uchar temp=0xfe; P0=0x00;/"8." 段码 P2=0x00;/ 静态显示 for(i=0;i<200;i+)P3=temp;delay(60000);temp=_crol_(temp,1); if(i=200)break;while(S5=0); / 判释放/if(S6=0)delay(50); if(S6=0)uchar temp=0xfe; P3=0xff; P2=0x00; for(ii=0;ii<200;ii+)P0=temp;delay(50000);temp=_crol_(temp,1); if(ii=200)break;P0=0xff;while(S6=0); / 判释放/if(S7=0)delay(50); if(S7=0)uchar temp=0xfe;P3=0xff;P0=0xff;for(ii=0;ii<200;ii+)for(i=0;i<=7;i+)P2=temp;P0=discodei;delay(55000);temp=_crol_(temp,1);if(ii=200)break;P0=0xff;while(S7=0); / 判释放

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1