完善资料让更多小伙伴认识你,还能领取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个回答
|
|
快来人额
|
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
飞凌嵌入式-ELFBOARD 解决PCB布线时无法捕捉到焊盘中心的问题
176 浏览 0 评论
Openharmony软件评估指南-米尔瑞芯微RK3568开发板
700 浏览 0 评论
STM32CUBEMX(7)--移植雅特力AT32F403AVGT(兼容STM32F103VGT6),DAC输出电压
1097 浏览 0 评论
【RA-Eco-RA0E1-32PIN-V1.0开发板试用】开发板简介与上电测试
1004 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-shell脚本编写之传参
555 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11048 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-11 07:36 , Processed in 1.351862 second(s), Total 74, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191