NXP M0+ 的LPC824-GPIO基本配置

  • 汉云
  • LV6工程师
  • |      2017-03-25 14:36:32
  • 浏览量 1452
  • 回复:0
本帖最后由 汉云 于 2017-3-25 14:37 编辑 GPIO是芯片使用过程中最基本的一个模块。从我们上次使用的例程中看一下。首先对GPIO模块的复位,时钟使用。使用如下函数。GPIOInit();此函数是在peripherals_lib中,若是以库的形式进行添加的,是找不到源码的,要去目录中打开lpc8xx_gpio.c文件进行查看。源码如下:
void GPIOInit( void )

{

     /* Enable AHB clock to the GPIO domain. */

     LPC_SYSCON->SYSAHBCLKCTRL |= GPIO;

        

     /* Peripheral reset to the GPIO module. '0' asserts, '1' deasserts reset. */

     LPC_SYSCON->PRESETCTRL &= GPIO_RST_N;

     LPC_SYSCON->PRESETCTRL |= ~GPIO_RST_N;

     return;

}

GPIO是一个宏定义。 其基本含义,在SYSAHBCLKCTRL寄存器中,即是使能是GPIO的时钟。 对于GPIO_RST_N宏定义。 PRESETCTRL寄存器中第10位,对GPIO模块进行复位操作。 Config_LEDs 函数是在utilities_lib中的utilities_lib.c中的函数。
void Config_LEDs(uint32_t bits) {

  LPC_GPIO_PORT->SET0  = bits;           // Write '1's to bits corresponding to requested LEDs

  LPC_GPIO_PORT->DIR0 |= bits;           // Make those bits outputs

}

置位寄存器 GPIO口输入输出寄存器配置 此函数在调用时传递的参数宏定义为: 这个与我们的开发板是不同的,后续要更改为与我们的开发板一样的。
  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:0
x
收藏成功!点击 我的收藏 查看收藏的全部帖子