欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > IT业 > 单片机常用外设开发流程(1)(IMX6ULL为例)

单片机常用外设开发流程(1)(IMX6ULL为例)

2025/2/13 1:39:05 来源:https://blog.csdn.net/qq_54933168/article/details/144814676  浏览:    关键词:单片机常用外设开发流程(1)(IMX6ULL为例)

1.通过GPIO引脚控制led灯和key按钮

(1)设置多路复用的引脚(SW_MUX_CTL)也可以说是选择让引脚以哪种工作模式工作

(2)设置电器属性(SW_PAD_CTL)上拉、等等...

  (3)设置GPIO的方向(GDIR),输入 和 输出 

(4)设置时钟(CCM)

2.定仪器(GPT)实现延时 (始终源+2个输入捕获+3个比较通道)

(1)选择定时器时钟源寄存器进行配置

          时钟源分很多种,在IMX6ULL中有2部分5种分别是

                   第一部分包括2种:外部时钟(GPT_CLK)和晶体管震荡时钟(ipg_clk_24M)

                   第二部分包括3种:高频时钟(ipg_clk_highfreq)、低频时钟(ipg_clk_32K)、

                                                  外围时钟(ipg_clk)

(2)对预分频寄存器进行设置(GPTx_PR)

-----------------------------------------------------------------------------------

  (3)对GPT的工作模式进行设置(GPT_CR)同时启用GPT     

        工作模式分为2种Restart mode 和Free-Run mode

        Restart mode

        当计数器值达到比较值时重新开始计数 只和比较通道1相关,通道2和通道3不相关

        Free-Run mod 

        计数器的值不会被重置计数器的值会一直走,直到0xffffffff 再加回到0x00000000

       

        EN位 等于0 主计数器和预分频器被冻结 等于1 启用他们

        ENMOD 等于1 主计数器和预分频器的值重置为0

        ENMOD 等于0再启动(EN=1)计数器从冻结的值开始计数

        硬件复位也可以重置计数器的值,但是GPT的输出比较寄存器除外(OCR1-3)

        软件复位(SWR)也可以重置计数器的值,除下面寄存器的对应位(ENMOD EN STOPEN         WAITEN DBGEN)

        SWR=1在复位状态 -》复位完 -》自动变成SWR =0复位结束了 

------------------------------------------------------------------------------------------

(4)读取当前计数器的值(GPTx_CNT)

------------------------------------------------------------------------------------------

(5)设置输入捕获通道(GPT1_CAPTURE1/GPT1_CAPTURE2),每个捕获通道有一个关联标志位

设置捕获引脚(GPTx_ICR),当发生电平转换的时候捕获寄存器从GPT_CNT里读值,并且中断标志被设置

(6)设置输出比较寄存器(GPT1_COMPARE1/COMPARE2/COMPARE3)

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com