单片机精进之路-2led灯闪烁

led灯闪烁的代码,主要逻辑是在一个死循环中,点亮led,延时一定时间,再关闭led,延时一定时间,如此循环往复,就实现了led的闪烁。delay02s函数实现延时功能,他是以消耗cpu时间实现延时的,再这段时间,cpu只执行这几行无效代码,而无法执行其他代码。

cpp 复制代码
#include<reg51.h>
  /*************************************************************************************
     第一行是一个"文件包含"处理。
  所谓"文件包含"是指一个文件将另外一个文件的内容全部包含进来
 这里的程序虽然只有4行,但C编译器在处理的时候却要处理几十或几百行
*****************************************************************************/
sbit P1_0=P1^0;                   //定义IO口

void delay02s(void)               //延时0.2秒子程序
{
	unsigned char i,j,k;  //定义3个无符号字符型数据。
	for(i=20;i>0;i--)     //作循环延时
	for(j=20;j>0;j--)
	for(k=248;k>0;k--);
}


void main(void)   //每一个C语言程序有且只有一个主函数,
{
	while(1)   //循环条件永远为真,以下程序一直执行下去。
	{
		P1_0=0;     // I/O口P1.0输出低电平,小灯被点亮。
		delay02s();  //延时经过0.2秒。
		P1_0=1;     // I/O口P1.0输出高电平,小灯熄灭。
		delay02s();  //延时经过0.2秒。
	}
}
相关推荐
chao18984418 分钟前
基于 STM32 的 Modbus RTU 串口通讯程序
stm32·单片机·嵌入式硬件
fie888936 分钟前
基于 STC15F104E 的 T12 白光烙铁控制器方案
stm32·单片机
yuan1999744 分钟前
基于 STM32 的工程级扫地机器人方案
stm32·嵌入式硬件·机器人
绿竹-大地2 小时前
韦东山开发板imx6ull移植WS1-CBS-Kit
嵌入式硬件·wifi
qq_411262422 小时前
wifi自适应
stm32·单片机·嵌入式硬件
洋九八2 小时前
STM32 (NVIC)中断
stm32·单片机·嵌入式硬件
12.=0.3 小时前
【stm32_9.2】FreeRTOS的任务管理:任务策略,调度器启用,任务创建、删除、挂起、恢复
c语言·stm32·单片机·嵌入式硬件
国产电子元器件3 小时前
ACS712国产替代推荐:电流检测芯片选型指南
单片机·嵌入式硬件·物联网
徐怀江3 小时前
ModusToolbox for vscode使用小记
ide·vscode·单片机·mcu·infineon
洋九八4 小时前
STM32 串口(USART)配置
stm32·单片机·嵌入式硬件