I.MX6UL裸机开发(一) —— 如何将IO作为GPIO使用

1、使能GPIO对应的时钟
   CCM(Clock Controller Module)有CCM_CCGR0~CCM_CCGR6这7个寄存器,这7个寄存器控制着I.MX6U的所有外设时钟开关。

2、设置寄存器IOMUXC_SW_MUX_CTL_PAD_XX_XX,设置IO的复用功能,使其复用为GPIO功能。
   寄存器IOMUXC_SW_MUX_CTL_PAD_XX_XX只用到最低5位,其中bit0~bit3(MUX_MODE)用于设置复用功能。

3、设置寄存器IOMUXC_SW_PAD_CTL_PAD_XX_XX,设置IO的上下拉、速度等等
   寄存器IOMUXC_SW_PAD_CTL_PAD_XX_XX用来配置IO口的,包括速度设置、驱动能力设置、压摆率设置等等。

4、第2步已经将IO复用为GPIO功能,所以需要配置GPIO,设置输入/输出、是否使用中断、默认输出电平等
   当IO用作GPIO的时候需要设置寄存器,一共有8个:
   (1)DR:数据寄存器
   (2)GDIR:方向寄存器
   (3)PSR:GPIO状态寄存器
   (4)ICR1/ICR2:中断控制寄存器
   (5)IMR:中断屏蔽寄存器
   (6)ISR:中断状态寄存器
   (7)EDGE_SEL:边沿选择寄存器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值