完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
#include
#define uchar unsigned char #define DY_PORT P1 //设置LED连接的I/O组 #define DY_SPEED 1000 //设置每一个明亮级的停留时间(值域:0~65535) ***it led1=P3^0; ***it led2=P3^1; ***it led3=P3^2; ***it led4=P3^3; //共阳极四位数码管 #define dig1 led1=0; led2=1; led3=1; led4=1; //P3^0选择第一个八 #define dig2 led1=1; led2=0; led3=1; led4=1; //P3^1选择第二个八 #define dig3 led1=1; led2=1; led3=0; led4=1; #define dig4 led1=1; led2=1; led3=1; led4=0; void delay (unsigned int a){ // 1ms延时程序 unsigned int i; while( --a != 0){ for(i = 0; i < 600; i++);//STC单片机在外部晶振为12MHz时i值上限为600 } //AT89C51单片机在外部晶振为12MHz时i值上限为125 } main() { uchar number[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x98}; uchar i; while(1) { dig1 for (i=1;i<11;i++) { DY_PORT=number[i]; delay (DY_SPEED); } dig2 for(i=1;i<11;i++) { DY_PORT=number[i]; delay (DY_SPEED); } dig3 for(i=1;i<11;i++) { DY_PORT=number[i]; delay (DY_SPEED); } dig4 for(i=1;i<11;i++) { DY_PORT=number[i]; delay (DY_SPEED); } } } |
|
相关推荐
3个回答
|
|
数组下标是从0开始的,“number[0]~number[9]”对应“0xc0~0x98”
|
|
|
|
第一次发帖,求轻拍!~~~~
数码管上有个编号:MTO05643DR,按理说共阳极是给控制口高电平,显示口给低电平。 改了程序之后还是不行,全乱的,我的数码管是中间带冒号的,不知道是不是原理图与一般的四个八的不一样!!~~~~ 改过的程序是把控制口的低电平改成了高电平,显示很不规律性,有时还有两个灯一起亮!~~~ 单片机是stc12c4052ad |
|
|
|
#include #define uchar unsigned char #define DY_PORT P1 //设置LED连接的I/O组 #define DY_SPEED 1000 //设置每一个明亮级的停留时间(值域:0~65535) ***it led1=P3^0; ***it led2=P3^1; ***it led3=P3^2; ***it led4=P3^3; //共阳极四位数码管 #define dig1 led1=1; led2=0; led3=0; led4=0; //P3^0选择第一个八 #define dig2 led1=0; led2=1; led3=0; led4=0; //P3^1选择第二个八 #define dig3 led1=0; led2=0; led3=1; led4=0; #define dig4 led1=0; led2=0; led3=0; led4=1; void delay (unsigned int a){ // 1ms延时程序 unsigned int i; while( --a != 0){ for(i = 0; i < 600; i++);//STC单片机在外部晶振为12MHz时i值上限为600 } //AT89C51单片机在外部晶振为12MHz时i值上限为125 } main() { uchar number[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x98}; uchar i; while(1) { dig1 for (i=0;i<10;i++) { DY_PORT=number; delay (DY_SPEED); } dig2 for(i=0;i<10;i++) { DY_PORT=number; delay (DY_SPEED); } dig3 for(i=0;i<10;i++) { DY_PORT=number; delay (DY_SPEED); } dig4 for(i=0;i<10;i++) { DY_PORT=number; delay (DY_SPEED); } } } 好像跟没改之前现象一样 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
644 浏览 0 评论
求助一下关于51系列单片机的Timer0的计时问题,TH0、TL0+1的时间是怎么算的?
1819 浏览 1 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】开箱+Keil环境搭建+点灯+点亮OLED
1262 浏览 0 评论
【敏矽微ME32G070开发板免费体验】使用coremark测试敏矽微ME32G070 跑分
1136 浏览 0 评论
【敏矽微ME32G070开发板免费体验】开箱+点灯+点亮OLED
1357 浏览 2 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12023 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 01:05 , Processed in 0.510261 second(s), Total 46, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号