主页 > 电脑硬件  > 

HC32F460_GPIO驱动库

HC32F460_GPIO驱动库

注意: Mcu的在线调试接口有JTAG、SW两类,如采用SW接口,则JTAG对应的TDI、TDO_SWO、TRST管脚则可作为普通IO使用。配置代码如下:

PORT_DebugPortSetting(TDI,Disable); PORT_DebugPortSetting(TDO_SWO,Disable); PORT_DebugPortSetting(TRST,Disable); 0. 测试环境

测试Mcu:HC32F460PETB| 底层库版本:hc32f460_ddl_Rev2.1.0 库名:DrvMcu

1. 设计说明

建立驱动库GPIO配置表,定义该驱动库对外输出的常规IO口以及相应初始配置。

#define DRVMIO_DIR_IN 0 //定义IO口初始化进出方向 #define DRVMIO_DIR_OUT 1 #define DRVMIO_STATE_L 0 //定义IO口初始化高低状态 #define DRVMIO_STATE_H 1 #define DRVMIO_STATE_IDLE 0xFF typedef struct _STDRVMIOMAP {//IO口配置信息 unsigned short usMcuPinNo; //Mcu的全局IO编号 unsigned char ucDir; //IO的方向,输入/输出 unsigned char ucInitState; //IO的初始状态,高/低 }STDRVMIOMAP;

注: usMcuPinNo : 为Mcu的GPIO定义了一个全局编号,即:0~15对应PortA的0~15;16~31对应PortB的0~15,以此类推。可通过宏定义:

const en_port_t m_pstAryPort[]={ PortA, PortB, PortC, PortD, PortE, }; #define DRVM_GETPIN(pin) (1UL<<(pin&0x0F)) #define DRVM_GETPORT(pin) (m_pstAryPort[pin>>4])

m_stIOMap数组的数组序号,即是在DrvM库中该IO口对外输出IO口号,命名为DrvMPinNo,此处定义了DrvMPinNo与McuPinNo之间的对应关系。

2. 全局变量 unsigned short m_usDrvMIONum
标签:

HC32F460_GPIO驱动库由讯客互联电脑硬件栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“HC32F460_GPIO驱动库