zoukankan      html  css  js  c++  java
  • i.MX6ULL使用寄存器配置GPIO

    使用寄存器配置的几个步骤:

    0)确定引脚
    1)开启GPIO时钟
    2)设置引脚复用功能以及属性
    3)设置引脚方向以及输出电平。

    一 确定引脚
    有的引脚的命名不一定是GPIOX_IOX这样的,他可能默认不是GPIO外设。以野火的pro板子为例。

     怎么确定CSI_HSYNC呢?有两种方法:
    1《i.MX 6UltraLite Applications Processor Reference Manual》中搜索 CSI_HSYNC ,它会出现在第 4 章 External Signals and Pin Multiplexing 

     2 找到官方的fsl_iomuxc.h (SDK 文 件夹/devices/MCIMX6Y2/drivers/fsl_iomuxc.h),然后搜索CSI_HSYNC,很容易就知道是GPIO4_IO20.

     这样查下来,野火的imx6ullpro板子,引脚如下:

     1)gpio时钟

    跟 GPIO 相关的时钟主要有 CCM_CCGR(0~3) 寄存器。查看数据手册可以知道 GPIO 第 26-27 两位控制引脚时钟。下图为CCM_CCGR1

     2)复用功能以及属性设置

    找到IOMUXC_SW_MUX_CTL_PAD_xxx和IOMUXC_SW_PAD_CTL_PAD_xxx,在这

    *IOMUXC_SW_MUX_CTL_PAD_GPIO1_IO04 0x020E006C
    *IOMUXC_SW_PAD_CTL_PAD_GPIO1_IO04 0x020E02F8

    *IOMUXC_SW_MUX_CTL_PAD_CSI_HSYNC 0x020E01E0
    *IOMUXC_SW_PAD_CTL_PAD_CSI_HSYNC 0x020E046C

    *IOMUXC_SW_MUX_CTL_PAD_CSI_VSYNC 0x020E01DC
    *IOMUXC_SW_PAD_CTL_PAD_CSI_VSYNC 0x020E0468

    3)设置引脚方向以及输出电平
    找到对应GPIO的GD和GDTR寄存器

    *GPIO1_GD 0x0209C000
    *GPIO1_GDIR 0x0209C004

    *GPIO4_GD 0x020A8000
    *GPIO4_GDIR 0x020A8004

    *GPIO4_GD 0x020A8000
    *GPIO4_GDIR 0x020A8004

     

  • 相关阅读:
    Hibernate中日期(Date)类型 与oracle中日期的映射处理
    mssql注入经常使用的命令
    EL表达式遍历Map集合
    TomCat项目空间映射 配置
    JSP探针虚拟主机JSP环境检测工具
    什么是RSS
    大U盘容量的烦恼:copy 4G 以上单个文件时总是显示U盘已满
    Java初体验之bool
    何为Cookie
    转测试网站各项性能的31 个免费在线工具
  • 原文地址:https://www.cnblogs.com/Rainingday/p/14150865.html
Copyright © 2011-2022 走看看