51单片机系列——第二步——点亮LED

点亮一颗LED相当于学习代码时写的"Hello World",是学习单片机的第一步。

首先我们知道LED是一颗放光二极管,点亮它只需要一端接VCC,一端接地,就有电势差,即可使LED有电流通过,从而点亮LED。

我们将LED的一端接VCC电源,另一端接单片机的IO口,当IO口不输出电压,即输出0时,即可使LED两端造成电势差,LED点亮。

接下来我们看一下普中A7的原理图

简化为以下图片
(简化版为普中A2的原理图,与A7区别是,A7需要用额外的线去连接;A2是PCB主板直接连接,不需要再接线)

我们可以看到led一端接VCC,另一端接单片机的P2端口组,我们可以利用程序控制P2的8个IO口输出0,即可点了这八个LED。

首先我们先创建一个工程

在上一篇文章中创建的文件夹按住shift+ctrl+n创建一个新的子文件夹,取名点亮LED

在这个子文件夹内创建名为project的工程

选择at89c51的单片机芯片

随便选

创建.c文件

将P2端口组的8个IO口全部设置成0

生成hex文件

烧录代码
如果使用的是普中A7开发板就直接选择图片上面的芯片库;如果使用的是普中A2开发板,就选择STC89C52RC/LE52RC芯片库。


将烧写程序后的单片机于LED负极连接后,可以看到单片机驱动LED点亮了。


---------------------另一种驱动方法-------------------------------------------------------


接下来我们可以使用位定义驱动单个LED灯点亮

总结一下:

以上就是驱动单片机点亮LED的两种方法了。

首先是直接针对端口组定义,如想要让第一个led点亮,二进制表示是1111 1110,它的16进制就是0xFE,这样就实现了只让P_0端口输出0。

或者可以直接对一个端口进行定义,如P_0 = 0,也可以让第一个端口输出0。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值