完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
问题:在切换数字的一瞬间有明显的余辉现象之后再显示后面的一个数字,想了2天了还是没结果,望大佬们不吝赐教;
#include #include typedef unsigned char u8; **it SRCLK=P3^6; **it RCLK=P3^5; **it SER=P3^4; **it key=P3^2; code char LEDduan[]={ 0x00,0x00,0x7e,0x42,0x42,0x7e,0x00,0x00, 0x00,0x00,0x00,0xFF,0xFF,0x00,0x00,0x00}; code char LEDwei[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe}; u8 count=0,k=0; void delay(u8 t) { u8 i,j; for(i=t;i>0;i--) for(j=110;j>0;j--); } void LED74HC595(u8 dat) { u8 i; SRCLK=0; RCLK=0; for(i=0;i<8;i++) { SER=dat&0x80; //取出最高位; dat<<=1; //取出次高位; SRCLK=1; //数据向高位移动; _nop_(); SRCLK=0; } RCLK=1; _nop_(); RCLK=0; //保存数据; } void LEDdisplay() { u8 i,j=0; for(i=k;i<8+k;i++) //显示数据 { P0=LEDwei[j++]; //位选; LED74HC595(LEDduan[i]); //段选; delay(5); LED74HC595(0x00); //消影; } } void zd() { TMOD|=0x01; TH0=0x3c; TL0=0xb0; //定时函数; ET0=1; EA=1; TR0=1; } void main() { zd(); while(1) { LEDdisplay(); } } void time()interrupt 1 { TH0=0x3c; TL0=0xb0; count++; if(count==20)//定时1S; { count=0; k=k+8; } if(k>8)k=0; } |
|
相关推荐
2个回答
|
|
快来人额
|
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
使用Keil建立完整的工程,并使用外部中断0触发数码管显示903
151 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-使用AHT20进行环境监测之AHT20传感器介绍
1043 浏览 0 评论
836 浏览 0 评论
874 浏览 1 评论
基于瑞萨FPB-RA4E2智能床头灯项目——1编译环境搭建与点亮驱动ws2812全彩LED
869 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11824 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-29 22:01 , Processed in 0.637991 second(s), Total 71, Slave 56 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号