在线时间2208 小时
UID2073122
注册时间2016-1-12
NXP金币119
TA的每日心情 | 开心 2020-6-18 08:45 |
---|
签到天数: 812 天 连续签到: 1 天 [LV.10]以坛为家III
金牌会员
 
- 积分
- 6321
- 最后登录
- 2025-7-15
|
对于GPIO来说,大家都很熟悉,是MCU最基础的组成,通常大家认识MCU都是从GPIO点灯开始,类似于编写上位机软件的HelloWorld,是入门的第一步,虽然是基础,但是有句话说的对,不积跬步无以至千里,我们得打好基础,才能够更好的掌握MCU复杂的外设。对于所有 LPC82x 器件的 IOCON 模块都是一样的。对于不提供某些引脚的特定封装,其相应寄存器被保留。
每个引脚都可配置下列电气性能:
• 上拉 / 下拉电阻
• 开漏模式
• 迟滞
• 带可编程时间常数的数字干扰滤波器
• 模拟模式 (有关引脚子集,请参见 LPC82xM 数据手册)
真正的开漏引脚 PIO0_10 和 PIO0_11 可配置成不同的 I2C 总线速度。 在 SYSAHBCLKCTRL 寄存器 ( 表 35,位 18)中使能 IOCON 的时钟。一旦完成引脚配置,便可禁用 IOCON 时钟,降低功耗。注: 若封装不提供开漏引脚 PIO0_10 和 PIO0_11,则以如下方式防止引脚内部浮空:将GPIO DIR0 寄存器中的位 10 和位 11 设置为 1 可使能输出驱动器,将 1 写入 GPIO CLR0
寄存器的位 10 和位 11 可内部驱动输出至低电平。
#define BOARD_LED_CNT 8
static const uint8_t ledBits[BOARD_LED_CNT] = {7, 13, 16, 17, 19, 27, 28, 18};
Chip_GPIO_Init(LPC_GPIO_PORT);//初始化GPIO模块
Chip_GPIO_PinSetDIR(LPC_GPIO_PORT, 0, ledBits, 1);//设置单个GPIO引脚方向
Chip_GPIO_PinSetState(LPC_GPIO_PORT, 0, ledBits, true);//设置单个GPIO的状态
|
|