【LPC824】GPIO基本配置

作者: jinyi7016
上传时间为: 2016-12-01 08:54 AM
2016-12-01
阅读:

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口输入输出寄存器配置

此函数在调用时传递的参数宏定义为:

这个与我们的开发板是不同的,后续要更改为与我们的开发板一样的。

相关经验
全部评论 ()
条评论
写评论

创建讨论帖子

登录 后参与评论
系统提示