📄 闪烁灯一.c
字号:
/********************************************************************
* 文件名 : 闪烁灯一.c
* 描述 : 该程序实现LED的闪烁,每隔一秒更替一次亮灭。
在使用某款新单片机时,经常就用类似的闪烁灯程序来判断单片机是否正常工作。
本程序通过软件延时,并且通过软件调试。
该程序相应的视频文件为“闪烁灯一.exe”。
* 创建人 : 东流,2009年4月8日
* 版本号 : 2.0
* 技术支持论坛:www.zidh.com/bbs(请进入“赞助商板块”中的“东流电子工作室”)
* 感谢“中国自动化资讯网”对本工作室的大力支持。
***********************************************************************/
#include<reg52.h>
#define uchar unsigned char //这里用"uchar"代替"unsigned char","uchar"用来定义无符号字符型数。
#define uint unsigned int //"uint"用来定义无符号整型数。
sbit Show_LED = P0^0; //用来声明P0.0口为程序所要控制的端口,"sbit"是KEIL专门用来声明某位IO口
/********************************************************************
* 名称 : Delay()
* 功能 : 延时,延时时间为 10ms * del。这是通过软件延时,有一定误差。
* 输入 : del
* 输出 : 无
***********************************************************************/
void Delay(uint del)
{
uint i,j;
for(i=0; i<del; i++)
for(j=0; j<1827; j++) //这个是通过软件仿真得出的数
;
}
/********************************************************************
* 名称 : Main()
* 功能 : 实现灯的闪烁
* 输入 : 无
* 输出 : 无
***********************************************************************/
void Main(void)
{
P0 = 0xff;
P2 = 0x00; //用于关闭数码管
while(1)
{
Show_LED = 0;
Delay(100); //Delay(del)中的数为延时的时间参数,延时时间为 10ms * del.
Show_LED = 1;
Delay(100);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -