问答

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

21ic问答首页 - TAG - gd32f105
  • GD32F105RCT6的can通信跑不通

    购置了一款GD32F105RCT6的最小系统版,利用板子的CAN0,CAN1两路CAN,跑通了CAN通信,然后把程序烧录到产品板上,CAN通信就跑不通了,搞了三天了,百思不得其解,有大佬指导一下吗

    最小系统 rc gd32f105 CAN通信 技术交流 单片机

    19189浏览量 17回复量 关注量
  • GD32F105进入深度睡眠后,RTC中断不能正常运行。 sos

    [i=s] 本帖最后由 地瓜土豆 于 2021-6-1 15:28 编辑 [/i] GD32F105进入深度睡眠后,RTC中断不能正常运行。常规模式下是可以产生中断的。我想深度睡眠之后定时唤醒,但是深度睡眠之后,RTC中断不能相应。一直都在深度睡眠模式,退不出来。求大佬解惑。谢谢!以下是我的代码。void rtc_conf(void) { nvic_irq_enable(RTC_IRQn,1,4); //中断优先级 rcu_periph_clock_enable(RCU_BKPI); //开启时钟 后备寄存器 rcu_periph_clock_enable(RCU_PMU); pmu_backup_write_enable(); //允许访问 后备寄存器 bkp_deinit(); //反初始化 //rcu_osci_on(RCU_LXTAL); //rcu_osci_stab_wait(RCU_LXTAL); //rcu_rtc_clock_config(RCU_RTCSRC_LXTAL); rcu_osci_on(RCU_IRC40K); //使能低速慢时钟 rcu_osci_stab_wait(RCU_IRC40K);//等待低速慢时钟稳定 rcu_rtc_clock_config(RCU_RTCSRC_IRC40K); //选择低速慢时钟源 rcu_periph_clock_enable(RCU_RTC); //使能RTC rtc_register_sync_wait(); //等待RTC寄存器同步 rtc_lwoff_wait(); //等待RTC寄存器上的最后一次写入操作完成 rtc_interrupt_enable(RTC_INT_SECOND); //使能 秒中断 rtc_lwoff_wait(); //等待RTC寄存器上的最后一次写入操作完成 rtc_prescaler_set(32767); rtc_lwoff_wait(); } void RTC_IRQHandler(void) { if(rtc_flag_get(RTC_FLAG_SECOND) != RESET) { Rtc_Time.s++; SleepS_Rtc++; rtc_flag_clear(RTC_FLAG_SECOND); } } void Sleep_Wdog(long sleep_s) { float car_v=0; SleepS_Rtc=0; Rtc_Time.s=0; while(SleepS_Rtc

    ck RTC gd32f105 rc BLE ck

    1887浏览量 0回复量 关注量