普中51单片机——LED流水灯模块

1、GPIO概念

GPIO(general purpose intput output)是通用输入输出端口的简称,可以通过软件来控制其输入和输出。51 单片机芯片的 GPIO 引脚与外部设备连接起来,从而实现与外部通讯、 控制以及数据采集的功能。

1.1、GPIO分类

(1)电源引脚:引脚图中的 VCC、 GND 都属于电源引脚。

(2)晶振引脚:引脚图中的 XTAL1、XTAL2 都属于晶振引脚。

(3)复位引脚:引脚图中的 RST/VPD 属于复位引脚,不做其他功能使用。

(4)下载引脚:51 单片机的串口功能引脚(TXD、RXD)可以作为下载引脚使用。

(5) GPIO 引脚:引脚图中带有 Px.x 等字样的均属于GPIO 引脚。从引脚图可以看出,GPIO 占用了芯片大部分的引脚,共达 32 个,分为了4 组,P0、P1、P2、P3,每组为 8 个 IO,而且在 P3 组中每个 IO 都具备额外功能,只要通过相应的寄存器设置即可配置对应的附加功能,同一时刻,每个引脚只能使用该引脚的一个功能。

2、LED简介

LED 即发光二极管。它具有单向导电性,通过 5mA 左右电流即可发光,电流越大,其亮度越强,但若电流过大, 会烧毁二极管,一般我们控制在3 mA-20mA之间,通常我们会在 LED 管脚上串联一个电阻,目的就是为了限制通过发光二极管的电流不要太大,因此这些电阻又可以称为"限流电阻"。当发光二极管发光时,测量它两端电压约为 1.7V,这个电压又叫做发光二极管的"导通压降"。

3、LED模块电路

4、点亮LED灯

4.1、点亮D1灯代码

c 复制代码
#include <Atmel/REGX52.H>

void main()
{
    // 点亮D1灯
    P2_0 = 0;
    // 点亮D1灯
    //P2 = 0xFE;
    while (1);
}

4.2 D1灯1秒闪烁

c 复制代码
#include <Atmel/REGX52.H>
#include <INTRINS.H>

void Delay1000ms() //@11.0592MHz
{
    unsigned char data i, j, k;

    _nop_();
    _nop_();
    i = 43;
    j = 6;
    k = 203;
    do {
        do {
            while (--k);
        } while (--j);
    } while (--i);
}

void main()
{
    while (1) {
        P2_0 = ~P2_0;
        Delay1000ms();
    }
}

4.3、LED流水灯

c 复制代码
#include <Atmel/REGX52.H>
#include <INTRINS.H>

void Delay1000ms() //@11.0592MHz
{
    unsigned char data i, j, k;

    _nop_();
    _nop_();
    i = 43;
    j = 6;
    k = 203;
    do {
        do {
            while (--k);
        } while (--j);
    } while (--i);
}

void main()
{
    while (1) {
        for (int i = 0; i < 8; i++)
        {
            // 驱动LED灯
            P2=~(0x01<<0);
            // 延时1s
            Delay1000ms();
        }
    }
}
相关推荐
Aczone281 小时前
硬件(六)arm指令
开发语言·汇编·arm开发·嵌入式硬件·算法
EkihzniY7 小时前
OCR 证件识别:驱动澳门酒店自助入住智能化
嵌入式硬件·ocr
好家伙VCC8 小时前
数学建模模型 全网最全 数学建模常见算法汇总 含代码分析讲解
大数据·嵌入式硬件·算法·数学建模
伴杯猫8 小时前
【ESP32-IDF】基础外设开发2:系统中断矩阵
c语言·单片机·嵌入式硬件·mcu·物联网·github
搬砖的小码农_Sky8 小时前
常见的显示器接口技术
嵌入式硬件·计算机外设·显示器
茯苓gao8 小时前
STM32G4 速度环开环,电流环闭环 IF模式建模
笔记·stm32·单片机·嵌入式硬件·学习
点灯小铭10 小时前
基于STM32单片机的智能粮仓温湿度检测蓝牙手机APP设计
stm32·单片机·智能手机·毕业设计·课程设计
沐欣工作室_lvyiyi10 小时前
基于单片机的智能路灯(论文+源码)
单片机·嵌入式硬件·毕业设计
Yyq1302086968210 小时前
SIT1050 5V 供电,±40V 接口耐压,1Mbps 高速 CAN 总线收发器
单片机·嵌入式硬件
云伴枫轻舞10 小时前
我对 OTA 的理解随记,附GD32/STM32例程
stm32·单片机·嵌入式硬件