RD8Tx 51单片机驱动LED灯

描述

点亮LED灯

GPIO驱动LED灯是入门基本功,我们先熟悉一下RD8Tx的GPIO。首先我们打开他的数据手册:https://www.rdsmcu.com//uploads/doc/RD8T37x%E7%B3%BB%E5%88%97%E6%95%B0%E6%8D%AE%E6%89%8B%E5%86%8C.pdf

RD8T37 系列提供了最多 46 个可控制的双向 GPIO 端口,输入输出控制寄存器用来控制各端口的输入输出状态当端口作为输入时,每个0 端口带有由 PXPHy 控制的内部上拉电阻。此 46个10 同其他功能复用,其中 P3 可以过设置输出 1/4VDD或 1/3VDD 的电压,可用来作为LCD 显示的 COM 驱动。I/O 端口在输入或输出状态下,从端口数据寄存器里读到的都是端口的实际状态值。

强推挽输出模式

强推挽输出模式下,能够提供持续的大电流动驱动:

  • 除 P04/P05/P06 之外的IO 驱动能力为: 大于 10mA 的输出高,大于 50mA 的输出低。

  • P04/P05/P06 驱动能可达到: 大于 20mA 的输出高,大于50mA 的输出低。
    强推挽输出模式的端口结构示意图如下:

    51单片机

开发板上的板载LED灯,我们选用P3.1来做为显示输出,我编写了有史以来最简单的main.c代码如下:

sfr   P3      = 0XB0;  //P3口数据寄存器
sfr   P3CON   = 0XB1;  //P3口输入/输出控制寄存器

void main(void)
{
	P3CON |= 0x02; //设置 P3.1 为推挽输出
	P3 = 0x02;         //点亮P31
	while(1);
}

编译后代码大小如下,是我有史以来最小的一个代码块了吧。

51单片机

下载到开发板后,板载的P31点亮:

51单片机

审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分