二、IMX6ULL——GPIO

  1. IMX有124个IO 。IO并非GPIO , GPIO只是IO的功能。IMX有5组GPIO。GPIO1组有32个IO,GPIO2有22个,GPIO3有29个,GPIO429个
    GPIO5有12个。

2.跟STM32一样,IMX也需要开启GPIO时钟, 寄存器CCM_CCGR0~CCM_CCGR6控制着所有外设的时钟,不只有GPIO的时钟。

3.举例:用GPIO1组的IO 00脚
IOMUXC_SW_MUX_CTL_PAD_GPIO1_IO00设置IO复用功能为GPIO
IOMUXC_SW_PAD_CTL_PAD_GPIO1_IO00设置GPIO的属性,跟STM32一样但功能比单片机多
包括上拉,下拉,速度,状态。。。

4.ICR1,ICR2寄存器分别用于配置低16个GPIO和高16个GPIO的中断,为什么是16个?因为GPIO分为5组,每组最多32个GPIO .
每个GPIO占用2位, 2位用来设置这个GPIO到底是什么触发,上升沿触发,下降沿触发,高电平触发,低电平触发。

5.IMR寄存器32位,一位对应一个GPIO当对应位置1 , 这个GPIO就上下沿即双边沿触发中断,这个设置覆盖ICR1和ICR2.

①、使能 GPIO 对应的时钟。
②、设置寄存器 IOMUXC_SW_MUX_CTL_PAD_XX_XX,设置 IO 的复用功能,使其复用
为 GPIO 功能。
③、设置寄存器 IOMUXC_SW_PAD_CTL_PAD_XX_XX,设置 IO 的上下拉、速度等等。
④、第②步已经将 IO 复用为了 GPIO 功能,所以需要配置 GPIO,设置输入/输出、是否使
用中断、默认输出电平等。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值