驱动示例-基于himawari-8卫星的沙尘监测

时间:2024-06-29 20:21:04
【文件属性】:

文件名称:驱动示例-基于himawari-8卫星的沙尘监测

文件大小:7.57MB

文件格式:PDF

更新时间:2024-06-29 20:21:04

嵌入式linux 周立功

4.4 驱动示例 该示例需要为 EasyARM-i.MX283A 开发套件的 URX1 和 UTX1 实现 GPIO 功能。URX1 连接到处理器的 AUART1_RX 引脚,其 GPIO 为 GPIO3_4;UTX1 连接到处理器的 AUART1_TX 引脚,其 GPIO 为 GPIO3_5。 操作寄存器 1. 参考《MCIMX28M.pdf》文档,设置 AUART1_RX 引脚和 AUART1_TX 引脚功能的寄 存器为 HW_PINCTRL_MUXSEL6,其相应的设置位如图 4.1 所示。 图 4.1 AUART1_RX/TX 引脚的功能设置寄存器位 i.MX28 系列处理器的任何寄存器都有相应的置位寄存器和复位寄存器。若某寄存器名 为 REGISTER,那么其置位寄存器则名为 REGISTER_SET;其复位寄存器则名为 REGISTER_CLR。这些寄存器的分工为:  在 REGISTER 寄存器可以看到所有位的值;  当需要在 REGISTER 寄存器的指定位设置为 1 时,则需要在 REGISTER_SET 寄存 器的相应位设置为 1 ;  当需要在 REGISTER 寄存器的指定位设置为 0 时,则需要在 REGISTER_CLR 寄存 器的相应位设置为 1; 同样,当需要把 HW_PINCTRL_MUXSEL6 寄存器的指定位设置为 1 时,则需要在 HW_ PINCTRL_MUXSEL6_SET 寄存器的相应位设置为 1;当需要在 HW_PINCTRL_MUXSEL6 寄存器的指定位设置为 0 时,则需要在 HW_PINCTRL_MUXSEL6_CLR 寄存器的相应位置 位设置为 1。 对于任何一个 GPIO 都有输入/输出方向控制寄存器(HW_PINCTRL_DOEx)、电平输出 控制寄存器(HW_PINCTRL_DOUTx)和输入电平状态寄存器(HW_PINCTRL_DIN3x)。 以 GPIOm_n 为例,该 GPIO 是属第 m 组 GPIO,所以其输入/输出方向寄存器为 HW_PINCTRL_DOEm;其输出电平控制寄存器为 HW_PINCTRL_DOUTm;其输入电平读 取寄存器为 HW_PINCTRL_DINm。GPIOm_n 在各寄存器的控制位都在第 n 位。 由于 GPIO3_4 和 GPIO3_5 都属第 3 组 GPIO,所以其输入/输出方向控制寄存器为 HW_PINCTRL_DOE3;其输出电平控制寄存器为 HW_PINCTRL_DOUT3;其输入电平读取 寄存器为 HW_PINCTRL_DIN3。 内核对 GPIO 寄存器的定义 2. 在内核源码的文件定义了 i.MX28 系列处理器 GPIO 的所有寄存器。HW_PINCTRL_MUXSEL6 寄存器的定义如程序清单 4.2 所示。


网友评论