单片机led灯闪烁实验总结_项目二 LED灯闪烁设计实现

3aa85b334dc48843f7234aae5b06ae4a.png

(一)项目任务

ü 任务1:点亮LED

n 子任务1.1 LED电路认识

n 子任务1.2 C语言编程框架认识

n 子任务1.3 实现点亮LED功能

ü 任务2:LED流水灯功能实现

n 子任务2.1 C语言---for等基本语句认识

n 子任务2.2 实现流水灯功能

(二)相关知识点

2.1、位的概念

51单片机为8位单片机,一次性能处理一个字节(Byte),一个字节由8个bit位组成,例如P0.0,P0.1...P0.6,P0.7这8个位组成P0口,单片机可以分别处理P0.0,P0.1...P0.6,P0.7口引脚数据,也可以同时处理P0口8个位数据。

2.2、进制的概念

常用的进制有二进制、十进制和十六进制。十进制,逢十进位,一个位有十个值:0~9。二进制就是逢二进位,它的一个位只有两个值:0和1,但它却是实现计算机系统的最基本的理论基础,计算机(包括单片机)芯片是基于成万上亿个的开关管组合而成,他们每一个都只能有开和关两种状态,理解二进制对于理解计算机的本质很有帮助。书写二进制数据时需加前缀0b,每一位的值只能是0或1。十六进制就是把4个二进制位组合为一位来表示,它的每一位有0b0000~0b1111共16个值,用0~9再加上A~F(或a~f)表示,本质上同二进制一样,是程序编写中常用的形式。书写十六进制数据时需加前缀0x,表1是三种进制之间的对应关系。

7decfb5b4bd8974ad4d8dd7f9a41fd06.png

对于二进制来说,8位二进制称之为一个字节,二进制的表达范围值是从0b00000000~0b11111111,而在程序中用十六进制表示的时候就是从0x00到0xFF,这里教大家一个二进制转换十进制和十六进制的方法,二进制4位一组,遵循8/4/2/1的规律比如0b1010,那么从最高位开始算,数字大小是8*1+4*0+2*1+1*0 = 10,那么十进制就是10,十六进制就是0xA。尤其二进制转十六进制的时候,十六进制一位和二进制的4位相对应。

对于进制来说,只是数据的表现形式,而数据的大小不会因为进制表现形式不同而不同,比如二进制的0b1、十进制的1、十六进制的0x01,他们本质上是数值大小相等的同一个数据。在进行C语言编程的时候,只写十进制和十六进制,那么不带0x的就是十进制,带了0x符号的就是十六进制。

2.3、发光二极管LED简介

发光二极管,是一种固态的半导体器件,它可以直接把电转化为光。LED的心脏是一个半导体的晶片,晶片的一端附在一个支架上,一端是负极,另一端连接电源的正极,整个晶片被环氧树脂封装起来。半导体晶片由两部分组成,一部分是P型半导体,在它里面空穴占主导地位,另一端是N型半导体,电子占主导地位。两种半导体连接起来的时候,它们之间形成一个“PN结”。当电流通过导线作用于这个晶片的时候,电子就会被推向P区,在P区里电子跟空穴复合,然后就会以光子的形式发出能量,这就是LED发光的原理。光的波长也就是光的颜色,是由形成P结的材料决定。

LED二极管通常的正向导通电压是1.8V到2.2V之间,工作电流一般在1mA~20mA之间。其中,当电流在1mA~5mA之间变化时,随着通过LED的电流越来越大,会明显感觉到这个小灯越来越亮,而当电流从5mA~20mA 之间变化时,发光二极管的亮度变化不是太明显了。当电流超过20mA时,LED就会有烧坏的危险,电流越大,烧坏的也就越快。所以在使用过程中应该特别注意它在电流参数上的设计要求,设计LED电路中要添加适当大小的电阻。VCC电压是5V,发光二极管自身压降大概是2V,那么在电阻上承受的电压就是3V。那么现在要求电流范围是1~20mA,可以根据欧姆定律R=U/I,把这个电阻的上限和下限值求出来。U=3V,当电流是1mA的时候,电阻值是3K;当电流是20mA的时候,电阻值是150欧,即R的取值范围是150~3K欧姆。这个电阻值大小的变化,直接可以限制整条通路的电流的大小,因此这个电阻通常称之为“限流电阻”。

2.4、LED点亮的两种方式

点亮LED有两种方式,以P0.0为例,图1(a)表示当P0.0为高电平时LED亮,图1(b)表示当P0.0为低电平时LED亮,常用的方式为图1(b),这是因为:

①51单片机上电复位时I/O的初始值为高电平,此时若采用

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值