main.c
来自「很实用的单片机例程」· C语言 代码 · 共 72 行
C
72 行
/**********************HJ-C52实验开发板例程************************
* 名称:不同频率闪烁 1个 LED
* 公司:慧净电子科技有限公司
* 网站:http://shop37031453.taobao.com/ www.hlmcu.com
* 编写:慧净电子会员
* 日期:2008-8-08
* QQ : 121350852 398115088
* 晶振:11.0594MHZ
* 内容:连接在 P1.0口 LED先短闪烁 10次,然后长闪烁 10次,再到短
* 闪 10次,反复循环,其他 LED熄灭
通过程序了解如何控制端口的高低电平
* 硬件事项:LED边上的,J1要用短路帽短接
******************************************************************/
/*---------------------------------------------------------------*/
#include<reg52.h> //包含头文件,一般情况不需要改动,
//头文件包含特殊功能寄存器的定义
sbit LED0=P1^0;// 用sbit 关键字 定义 LED到P1.0端口,
//LED是自己任意定义且容易记忆的符号
sbit P20 = P2^0;//这是为了关闭开发板上的数码管实际应用去掉
sbit P21 = P2^1;//这是为了关闭开发板上的数码管实际应用去掉
sbit CS88 = P2^2;//这是为了关闭开发板上的点阵实际应用去掉
void Delay(unsigned int t); //函数声明
/*------------------------------------------------
主函数
------------------------------------------------*/
void main (void)
{
//此方法使用bit位对单个端口赋值
unsigned char i; //定义一个无符号字符型局部变量 i 取值范围 0~255
P1=0x00;//这是为了关闭开发板上的数码管实际应用去掉
P20=0; //这是为了关闭开发板上的数码管实际应用去掉
P21=0; //这是为了关闭开发板上的数码管实际应用去掉
CS88=0; //这是为了关闭开发板上的点阵实际应用去掉
P1=0xFF;//P1口置1
while (1) //主循环
{
for(i=0;i<10;i++) //加入 for循环,表明for循环大括号中的程序循环执行10次
{
LED0=0; //将P1.0口赋值 0,对外输出低电平
Delay(5000); //调用延时程序;更改延时数字可以更改延时长度;
//用于改变闪烁频率
LED0=1; //将P1.0口赋值 1,对外输出高电平
Delay(5000);
}
for(i=0;i<10;i++)
{
LED0=0; //将P1.0口赋值 0,对外输出低电平
Delay(60000); //调用延时程序;更改延时数字可以更改延时长度;
//用于改变闪烁频率
LED0=1; //将P1.0口赋值 1,对外输出高电平
Delay(60000);
}
//主循环中添加其他需要一直工作的程序
}
}
/*------------------------------------------------
延时函数,含有输入参数 unsigned int t,无返回值
unsigned int 是定义无符号整形变量,其值的范围是
0~65535
------------------------------------------------*/
void Delay(unsigned int t)
{
while(--t);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?