微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > DSP学习交流 > GPIO的使用----怎么点亮LED

GPIO的使用----怎么点亮LED

时间:10-02 整理:3721RD 点击:
一、总览
  • 使能通用输入输出外设(GPIO)
  • 配置LED所在GPIO口为普通输入输出口
  • 配置LED所在GPIO口为输出端口
  • 配置LED所在GPIO口为输出高电平

二、详细讲解
1.LED管脚原理图


可以看到底板四个LED灯都是接在GPIO0上的
2.使能通用输入输出外设(GPIO)

  1. PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE)

复制代码

3.配置LED所在GPIO口为普通输入输出口

  1.         GPIOBank0Pin0PinMuxSetup();
  2.         GPIOBank0Pin1PinMuxSetup();
  3.         GPIOBank0Pin2PinMuxSetup();
  4.         GPIOBank0Pin5PinMuxSetup();

复制代码

这四句代码分别配置4个LED管脚为普通输入输出口,函数实现在创龙提供的资料的Plantform/GPIO.c中

4.配置LED所在GPIO口为输出端口

  1. GPIODirModeSet(SOC_GPIO_0_REGS, 1, GPIO_DIR_OUTPUT);    // D7  GPIO0[0]
  2.     GPIODirModeSet(SOC_GPIO_0_REGS, 2, GPIO_DIR_OUTPUT);    // D9  GPIO0[1]
  3.     GPIODirModeSet(SOC_GPIO_0_REGS, 3, GPIO_DIR_OUTPUT);    // D10 GPIO0[2]
  4.     GPIODirModeSet(SOC_GPIO_0_REGS, 6, GPIO_DIR_OUTPUT);    // D6  GPIO0[5]

复制代码


5.输出高电平,点亮LED

  1. GPIOPinWrite(SOC_GPIO_0_REGS, 1, GPIO_PIN_HIGH);
  2. GPIOPinWrite(SOC_GPIO_0_REGS, 2, GPIO_PIN_HIGH);
  3. GPIOPinWrite(SOC_GPIO_0_REGS, 3, GPIO_PIN_HIGH);
  4. GPIOPinWrite(SOC_GPIO_0_REGS, 6, GPIO_PIN_HIGH);

复制代码



Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top