问答

汇集网友智慧,解决技术难题

191050674

TA的家园币:12  

  • GD32E230用捕获及485通讯,开启捕获就通讯卡死且初始化失败

    GD32E230C8T6用TIMER2_CH3进行频率捕获,同时用USART0进行485通讯,一开启捕获就通讯不了,且一点仿真DEBUG按钮就直接全速运行,然后就卡死在LDRR0,=SystemInit位置,无法初始化。具体代码如下:intmain(void){systick_config();//滴答定时器初始化Led_Gpio_Init();//数码管引脚初始化Key_Init();//按键引脚初始化Relay_GPIO_Init();//继电器引脚初始化Capture_Gpio_config();//捕获引脚初始化usart_config(9600);//串口配置Para_Read();//读取参数LedPower=1;//电源灯亮Adc_gpio_config();//ADC采样引脚初始化Adc_Config();//ADC参数配置初始化Nvic_config();//捕获中断Timer2_config();//Timer2配置Timer5_Init(3600,40);//定时10ms=3600/72M*200Timer14_Init(36,625);//定时312.5uswhile(1){Adc_Cal();//ADC采样计算fre_capture_cal();KeyMake();//按键动作Protect();Display();//显示UartDriver();}}voidCapture_Gpio_config(void){/*使能GPIOB时钟*/rcu_periph_clock_enable(RCU_GPIOB);/*配置PB1(TIMER2_CH3)为复用功能*/gpio_mode_set(GPIOB,GPIO_MODE_AF,GPIO_PUPD_NONE,GPIO_PIN_1);gpio_output_options_set(GPIOB,GPIO_OTYPE_PP,GPIO_OSPEED_50MHZ,GPIO_PIN_1);gpio_af_set(GPIOB,GPIO_AF_1,GPIO_PIN_1);//根据数据手册选择正确的AF}/***********************************************************************************************************函数名:nvic_config*功能说明:配置中断优先级*形参:无*返回值:无**********************************************************************************************************/voidNvic_config(void){nvic_irq_enable(TIMER2_IRQn,0);}/***********************************************************************************************************函数名:timer2_config*功能说明:定时器配置--捕获*形参:无*返回值:无**********************************

    失败 485 通讯 GD32E230 TI ar

    2025-07-05 0