跑马灯的效果
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
void main()
{
while(1) { Disp_led(); } }
4 .案例程序的运行效果
{ //做准备工作 qw=0; bw=0; sw=0; gw=0; /*开通千位(左边第一位)上的数码管显示*/ // 开通百位上的数码管显示 // 开通十位上的数码管显示 // 开通个位上的数码管显示
//第一场 P0 = 0xfe;
Delay(); // 把笔划'a'码赋给P0口 // 延时
//第二场 P0 = 0xfd; // 把单笔划'b'码赋给P0口 Delay(); // 延时 // 把单笔划'c'码赋给P0口 // 延时 //第三场 P0 = 0xfb; Delay();
2.案例程序的流程图
Disp_led() Delay()
main()
开始 1
n
开 始
qw=0;bw=0;sw=0;gw=0; (开通四位数码管)
开始
i=1;
P0=0xfe;(显示a笔画) Delay();(实行延时)
n
i<25000;
y
Disp_led();(调用数码管显示函数)
P0=0xfd;(显示b笔画) Delay();(实行延时) P0=0xfb;(显示c笔画) Delay();(实行延时) P0=0xf7;(显示d笔画) Delay();(实行延时) P0=0xef;(显示e笔画) Delay();(实行延时) P0=0xdf;(显示f笔画) Delay();(实行延 时)
•/*-----------延时子函数-----------*/ Delay() { unsigned int i; for( i =1;i < 25000;i++ ) { ; }
}
/*----------------------数码管显示函数--------------------*/
Disp_led( )
//第四场 P0 = 0xf7; // 把单笔划'd'码赋给P0口
Delay(); P0 = 0xef; Delay(); P0 = 0xdf; Delay(); } // 延时 //第五场 // 把单笔划'e'码赋给P0口 // 延时 //第六场 // 把单笔划'f'码赋给P0口 //延时
/*------------------------------------------------主函数 重复调用显示函数来实现程序功能 -------------------------------------------------*/
课题:并驾齐驱的跑马灯
1. 案例效果说明: 并驾齐驱的跑马灯显示效果由六场显 示组成,并字的含义是四个数码管同步显 示同名笔画,即并驾齐驱的跑马灯第一场 四个数码管都显示笔画a,第二场四个数 码管都显示笔画b,第三场四个数码管都 显示笔画c,第四场都显示笔画d、第五场 都显示笔画e,第六场都显示笔画f。程序 整个运行过程如下图。
y
;(空操作) i++;
结束
返回
返回
3 .案例源程序
/* -------------------案例Hale Waihona Puke Baidu并驾齐驱的跑马灯 ------------*/
#include “reg51.h” sbit qw = P2^0; //定义MCU管脚P2.0位寻址变量名 sbit bw = P2^1; //定义MCU管脚P2.1位寻址变量名 sbit sw = P2^2; //定义MCU管脚P2.2位寻址变量名 sbit gw = P2^3; //定义MCU管脚P2.3位寻址变量名
{
while(1) { Disp_led(); } }
4 .案例程序的运行效果
{ //做准备工作 qw=0; bw=0; sw=0; gw=0; /*开通千位(左边第一位)上的数码管显示*/ // 开通百位上的数码管显示 // 开通十位上的数码管显示 // 开通个位上的数码管显示
//第一场 P0 = 0xfe;
Delay(); // 把笔划'a'码赋给P0口 // 延时
//第二场 P0 = 0xfd; // 把单笔划'b'码赋给P0口 Delay(); // 延时 // 把单笔划'c'码赋给P0口 // 延时 //第三场 P0 = 0xfb; Delay();
2.案例程序的流程图
Disp_led() Delay()
main()
开始 1
n
开 始
qw=0;bw=0;sw=0;gw=0; (开通四位数码管)
开始
i=1;
P0=0xfe;(显示a笔画) Delay();(实行延时)
n
i<25000;
y
Disp_led();(调用数码管显示函数)
P0=0xfd;(显示b笔画) Delay();(实行延时) P0=0xfb;(显示c笔画) Delay();(实行延时) P0=0xf7;(显示d笔画) Delay();(实行延时) P0=0xef;(显示e笔画) Delay();(实行延时) P0=0xdf;(显示f笔画) Delay();(实行延 时)
•/*-----------延时子函数-----------*/ Delay() { unsigned int i; for( i =1;i < 25000;i++ ) { ; }
}
/*----------------------数码管显示函数--------------------*/
Disp_led( )
//第四场 P0 = 0xf7; // 把单笔划'd'码赋给P0口
Delay(); P0 = 0xef; Delay(); P0 = 0xdf; Delay(); } // 延时 //第五场 // 把单笔划'e'码赋给P0口 // 延时 //第六场 // 把单笔划'f'码赋给P0口 //延时
/*------------------------------------------------主函数 重复调用显示函数来实现程序功能 -------------------------------------------------*/
课题:并驾齐驱的跑马灯
1. 案例效果说明: 并驾齐驱的跑马灯显示效果由六场显 示组成,并字的含义是四个数码管同步显 示同名笔画,即并驾齐驱的跑马灯第一场 四个数码管都显示笔画a,第二场四个数 码管都显示笔画b,第三场四个数码管都 显示笔画c,第四场都显示笔画d、第五场 都显示笔画e,第六场都显示笔画f。程序 整个运行过程如下图。
y
;(空操作) i++;
结束
返回
返回
3 .案例源程序
/* -------------------案例Hale Waihona Puke Baidu并驾齐驱的跑马灯 ------------*/
#include “reg51.h” sbit qw = P2^0; //定义MCU管脚P2.0位寻址变量名 sbit bw = P2^1; //定义MCU管脚P2.1位寻址变量名 sbit sw = P2^2; //定义MCU管脚P2.2位寻址变量名 sbit gw = P2^3; //定义MCU管脚P2.3位寻址变量名