华大单片机 HC32F460 调试管脚 SWCLK SWDIO PA15 PB3 PB4引脚复用问题

耶稣说:施比受更为有福
直接上图
在这里插入图片描述
第一次LCD显示屏没有用PA15 ,改版把它放到PA15上,发现显示屏不显示了.管脚初始化以后变成高组态模式了.

程序

void LCD_GPIO_Init(void)
{
    stc_port_init_t stcPortInit;  
    /*配置结构初始化*/
    MEM_ZERO_STRUCT(stcPortInit);
    
    stcPortInit.enPinMode = Pin_Mode_Out;//输出模式
    stcPortInit.enExInt =  Enable;//Enable//Disable
    stcPortInit.enPullUp = Enable;//enPinDrv
    
    /* Port/Pin 初始化 */
    PORT_Init(LCD_SI_PORT,LCD_SI_PIN, &stcPortInit);
    PORT_Init(LCD_SCL_PORT,LCD_SCL_PIN, &stcPortInit);
    PORT_Init(LCD_A0_PORT,LCD_A0_PIN, &stcPortInit);
    PORT_Init(LCD_RES_PORT,LCD_RES_PIN, &stcPortInit);
    PORT_Init(LCD_CS_PORT,LCD_CS_PIN, &stcPortInit);
    
    LCD_SI_L();
    LCD_SCL_L();
    LCD_A0_L();
    LCD_RES_L();
    LCD_CS_L();
}

手册上说:
注意:
– PA13,PA14,PA15,PB3,PB4 端口复位后初始状态为 JTAG/SWD 功能有效,在配置 FSEL[5:0]
选择功能时需要先将寄存器 PSPCR 相应位写 0 无效 JTAG/SWD 功能。PC14,PC15 端口复
位后初始状态为数字功能禁止状态,在选择数字功能时需要先将相应寄存器 PCRxy 的 DDIS
位写 0 有效数字功能。

翻译:调试接口默认是打开的,初始化功能(普通IO,串口等)先把默认的调试口关闭.

需要使用的函数

在这里插入图片描述

extern en_result_t PORT_DebugPortSetting(uint8_t u8DebugPort, en_functional_state_t enFunc);

在这里插入图片描述
在这里插入图片描述

下面是重点注意

在这里插入图片描述

void LCD_GPIO_Init(void)
{
    
    
	///重点初始化
    PORT_DebugPortSetting(TDI,Disable); //关闭JTDI 调试管脚
    stc_port_init_t stcPortInit;  
    /*配置结构初始化*/
    MEM_ZERO_STRUCT(stcPortInit);
    
    stcPortInit.enPinMode = Pin_Mode_Out;//输出模式
    stcPortInit.enExInt =  Enable;//Enable//Disable
    stcPortInit.enPullUp = Enable;//enPinDrv
    
    /* Port/Pin 初始化 */
    PORT_Init(LCD_SI_PORT,LCD_SI_PIN, &stcPortInit);
    PORT_Init(LCD_SCL_PORT,LCD_SCL_PIN, &stcPortInit);
    PORT_Init(LCD_A0_PORT,LCD_A0_PIN, &stcPortInit);
    PORT_Init(LCD_RES_PORT,LCD_RES_PIN, &stcPortInit);
    PORT_Init(LCD_CS_PORT,LCD_CS_PIN, &stcPortInit);
    
    LCD_SI_L();
    LCD_SCL_L();
    LCD_A0_L();
    LCD_RES_L();
    LCD_CS_L();
}

这样就可以是用了.拜拜

猜你喜欢

转载自blog.csdn.net/weixin_42839808/article/details/120142513