引脚PA8,触摸模块中断引脚,外部下拉
代码:
static void gsl_gpio_config(void)
{
rcu_periph_clock_enable(RCU_GPIOA);
rcu_periph_clock_enable(RCU_AF);
gpio_pin_remap_config(GPIO_SWJ_SWDPENABLE_REMAP,ENABLE);
gpio_init(GPIOA,GPIO_MODE_IN_FLOATING,GPIO_OSPEED_10MHZ,GPIO_PIN_8);//PA8 INTÒý½Å
gpio_init(GPIOA,GPIO_MODE_OUT_PP,GPIO_OSPEED_10MHZ,GPIO_PIN_15);//PA15 RESETÒý½Å
gpio_bit_set(GPIOA,GPIO_PIN_15);
}
static void gsl_interrupt_config(void)
{
nvic_priority_group_set(NVIC_PRIGROUP_PRE1_SUB3);
nvic_irq_enable(EXTI5_9_IRQn,2U,0U);
gpio_exti_source_select(GPIO_PORT_SOURCE_GPIOA,GPIO_PIN_SOURCE_8);
//exti_init(EXTI_8,EXTI_INTERRUPT,EXTI_TRIG_RISING);//×¢Êʹ˾äÅäÖóõʼ»¯¿ÉÒÔͨ¹ý
exti_interrupt_flag_clear(EXTI_8);
}
void touch_config(void)
{
gsl_gpio_config();
gsl_interrupt_config();
gsl_i2c_init();
gpio_bit_reset(GPIOA,GPIO_PIN_15);
SCI_Sleep(20);
gpio_bit_set(GPIOA,GPIO_PIN_15);
SCI_Sleep(20);//未注释中断初始化exti_init配置代码,程序卡死在此
_GSLX680_clr_reg();
_GSLX680_reset_chip();
_GSLX680_load_fw();
_GSLX680_startup_chip();
_GSLX680_reset_chip();
_GSLX680_startup_chip();
_GSLX680_check_mem_data();
}
考虑到STM32单片机价格上涨,且采购周期长,想更换GD单片机,各种坑不说,网上资料又少,官方例程又少,本来一周时间更换,结果这个问题卡了一天 找硬件问题 找其它问题 找触摸模块问题 都没解决,求大佬帮忙解答下 第一次接触GD芯片 好郁闷 |