完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
#include
#include #define uchar unsigned char #define uint unsigned int //共阳极,数码管,段选代码 uchar DSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff}; //共阳极的数码管; 共阴极取反; //位选 //此表为8个数码管位选控制, 共阴数码管 1-8个 - unsigned char code dispbit[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdF,0xbF,0x7F}; //位选控制 查表的方法控制 //延时函数 void DelayMS(uint x) //void ?? { uchar t; while(x--) for(t=120;t>0;t--); } void main() { uchar LedOut[10]; //变量定义 uint LedNumVal=567; uint i=0, j=0; uint DelayCNT=0; P1=0xff; //段选 ;低电平亮;最高位DP,=1, 小数点位不亮。 P0=0xff; //位选;阳极亮,高电平亮; //DSY_CODE=~DSY_CODE;//注意这样是不行的; while(1) { if(DelayCNT++>20) //此while函数循环20次 { DelayCNT=0; LedNumVal++; } LedOut[0]=DSY_CODE[LedNumVal%10]; LedOut[1]=DSY_CODE[LedNumVal%100/10]; LedOut[2]=DSY_CODE[LedNumVal/100]; for(i=0;i<3;i++) { P1=LedOut[i];//共阴极的数码管取反。 P0=~dispbit[i]; //上面的数据,显示在P0定义的位内 DelayMS(20); } } }
|
|
相关推荐
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{:20:}
|
|
|
|
|
|
1395 浏览 0 评论
1831 浏览 0 评论
Protues中自己封装的芯片元件无Program File、Clock Frequency选项怎么解决,求求大神了!
3609 浏览 1 评论
基于51单片机的车辆倒车雷达报警系统,HC-SR04超声波测距,全套资料
991 浏览 0 评论
【原创】收藏!单片机输出4种波形的函数信号发生器毕设(Proteus仿真+原理图+源码和论文)
4535 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-21 16:18 , Processed in 1.012192 second(s), Total 85, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号