单片机学习笔记 2. LED灯闪烁

更多单片机学习笔记:
单片机学习笔记 1. 点亮一个LED灯


目录

0、实现的功能

1、Keil工程

2、代码实现


0、实现的功能

        LED灯闪烁

1、Keil工程

        闪烁原理:需要进行软件延时达到人眼能分辨出来的效果。常用的延时方法有软件延时和定时器延时。此次先进行软件延时

        具体操作步骤和之前的笔记一致。此次主要利用无符号整型的范围进行延时,点亮----延时----关闭----延时----点亮。。。。这样很耗资源,因为延时的时候净做一些无用功

2、代码实现

#include <reg52.h>

unsigned int i;	//i = 0~65535

void main()
{
	while(1)
	{
		P1 = 0;	   //点亮P1口8个LED
		i = 65535;
		while(i--);
		P1 = 0xff;// 1111 1111	熄灭P1口8个LED
		i = 65535;
		while(i--);
	}
}

实现效果展示:

### 51单片机学习资料与笔记 以下是关于51单片机学习的相关资源和笔记,结合了理论与实践的学习理念,适合零基础学习者,并且强调了原理图分析及代码编写的重要性。 #### 一、学习资源概述 51单片机是一种集成化的微控制器系统[^3],它将中央处理器(CPU)、随机存储器(RAM)、只读存储器(ROM)、输入输出端口(I/O口)、中断系统以及定时/计数器等功能部件集成到一块芯片上。这种设计使得51单片机成为嵌入式开发中非常重要的学习工具之一。对于初学者而言,选择合适的教程和笔记尤为重要。 #### 二、推荐的学习笔记 一份由江科大51单片机教学视频衍生的笔记被广泛推荐[^1]。该笔记不仅提供了详细的理论讲解,还鼓励学习者在观看视频的同时撰写个人笔记,以便更好地理解课程内容。此外,这份笔记还邀请学习者在发现错误或不清晰之处时进行讨论,从而促进共同进步。 另一份零基础版的51单片机学习笔记同样值得关注[^2]。这份笔记基于B站上的经典课程,针对零基础学习者进行了细化处理,注重理论与实践相结合。通过发现问题、解决问题的过程,学习者可以逐步掌握嵌入式开发工程师所需的技能。 #### 三、硬件系统详解 单片机硬件系统是学习的核心部分之一[^3]。为了更好地理解51单片机的工作原理,建议从以下几个方面入手: - **中央处理器(CPU)**:了解其基本结构和功能。 - **存储器**:包括随机存储器(RAM)和只读存储器(ROM),熟悉它们的作用及区别。 - **输入输出端口(I/O口)**:掌握如何配置和使用这些端口。 - **中断系统**:学习中断的概念及其在程序中的应用。 - **定时/计数器**:理解定时器和计数器的工作机制。 #### 四、代码编写示例 以下是一个简单的51单片机代码示例,用于控制一个LED闪烁: ```c #include <reg52.h> sbit LED = P1^0; // 定义P1.0引脚为LED void delay(unsigned int time) { unsigned int i, j; for (i = 0; i < time; i++) { for (j = 0; j < 120; j++); } } void main() { while (1) { LED = 0; // 点亮LED delay(500); // 延时500ms LED = 1; // 熄灭LED delay(500); // 延时500ms } } ``` 此代码展示了如何通过设置P1.0引脚来控制LED的亮灭,并利用延时函数实现闪烁效果。 #### 五、学习目标 学习51单片机的目标不仅仅是掌握其基本操作,更重要的是培养解决实际问题的能力。通过深入研究原理图和编写高效代码,学习者可以逐步成长为一名合格的嵌入式开发工程师。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值