完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本人菜鸟,
程序如下: #include unsigned char t0,t1,msec,sec,r; void delay(unsigned char i) { unsigned char j,k; for(k=0;k for(j=0;j<25;j++); } void delay0_5s1() { for(t0=0;t0<0x0a;t0++) { TH1=0x3c; TL1=0xb0; TR1=1; while(!TF1); TF1=0; } } void delay_t1(unsigned char t) { for(t1=0;t1 } void T0_INT(void) interrupt 1 { TH0=0x3c; TL0=0xb0; msec++; if(msec==20) { msec=0; sec++; if(sec==30) { sec=0; } } } void main() { unsigned char led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; TMOD=0x10; TH0=0x3c; TL0=0xb0; TR0=1; EA=1; ET0=1; while(1) { P3=0x80; P1=led[sec%10]; delay(1); P3=0x40; P1=led[sec/10]; delay(1); P0=0xf3; delay_t1(5); for(r=0;r<4;r++) { P0=0xeb; delay0_5s1(); P0=0xfb; delay0_5s1(); } P0=0xde; delay_t1(5); for(r=0;r<4;r++) { P0=0xdd; delay0_5s1(); P0=0xdf; delay0_5s1(); } } } 请问数码管怎么会只亮一个呢,问题出在哪里?
|
|
相关推荐
3个回答
|
|
本帖最后由 HARRY007 于 2013-1-9 18:52 编辑
这个给你参考一下,数码管显示就是人眼的视觉暂留,我看你的程序,WHILE里面执行以后刚开始的P3=0X80之后很快位选就改变了,而且了P0口数据变化也花费了很长时间,那这个时候你的0X80早已经过去很久了,已经灭了。
|
|
|
|
很好的资料
|
|
|
|
{:1:}{:1:}{:1:}{:1:}
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
使用Keil建立完整的工程,并使用外部中断0触发数码管显示903
418 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-使用AHT20进行环境监测之AHT20传感器介绍
1083 浏览 0 评论
846 浏览 0 评论
886 浏览 1 评论
基于瑞萨FPB-RA4E2智能床头灯项目——1编译环境搭建与点亮驱动ws2812全彩LED
882 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11832 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-30 23:16 , Processed in 0.574215 second(s), Total 78, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号