GD32(STM32)因为中断问题,导致不能进行程序 正常运行

这篇具有很好参考价值的文章主要介绍了GD32(STM32)因为中断问题,导致不能进行程序 正常运行。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

项目中,之前定时器中断就用了个TIM2,但后来程序优化需要再加一个计数定时器TIM6,

    TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;        
    
        // 开启定时器时钟,即内部时钟CK_INT=72M
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM6, ENABLE);    
        // 自动重装载寄存器的值,累计TIM_Period+1个频率后产生一个更新或者中断
    TIM_TimeBaseStructure.TIM_Period=(1000-1);   //GENERAL_TIM_Period   (1000-1)  设置为5ms一次中断
      // 时钟预分频数
    TIM_TimeBaseStructure.TIM_Prescaler= 71;    
        // 时钟分频因子 ,没用到不用管
    TIM_TimeBaseStructure.TIM_ClockDivision=TIM_CKD_DIV1;        
        // 计数器计数模式,设置为向上计数
    TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterMode_Up;         
        // 重复计数器的值,没用到不用管
        TIM_TimeBaseStructure.TIM_RepetitionCounter=0;    
      // 初始化定时器
    TIM_TimeBaseInit(TIM6, &TIM_TimeBaseStructure);
        //    NVIC_TIM6_Configuration();
    
        // 清除计数器中断标志位
    TIM_ClearFlag(TIM6, TIM_FLAG_Update);
      
        // 开启计数器中断
    TIM_ITConfig(TIM6,TIM_IT_Update,ENABLE);
        
        // 使能计数器
    TIM_Cmd(TIM6, ENABLE);
            NVIC_TIM6_Configuration();

常规配置,不可能会有出错。但是发现初始化上面的代码后,程序连main主函数都进不了。

因为我的程序 是STM32移值到GD32的,所以一直认为是配置上有差异,但结果并不是这样。

而是我在置置void TIM6_IRQHandler(void){//定时器1ms 中断函数的时候,没有加

        if(TIM_GetFlagStatus(TIM6, TIM_FLAG_Update)==SET)

和        TIM_ClearITPendingBit(TIM6 , TIM_FLAG_Update);  

中断并不是说进入主函数才触 发,单片机一旦运行,配置完成就开始工作。文章来源地址https://www.toymoban.com/news/detail-467096.html

到了这里,关于GD32(STM32)因为中断问题,导致不能进行程序 正常运行的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • STM32串口溢出中断问题

    STM32单片机与传感器通过串口通信,单片机串口采用中断方式接收传感器数据,同时单片机控制传感器上电。 在一批设备中,有些设备开机能够正常读取传感器数据,有一小部分读取不到传感器的数据,出现了异常情况。 示波器测量传感器的TX,波形正常。 在线调试模式下,

    2024年02月07日
    浏览(71)
  • 解决keil-5中stm32f103系列使用ST-Link下载程序时不能连接的问题。“flash download failed ”

    出现的问题如下: 解决方法如下: 因为新版的Keil 加入了下载器的校验机制,所以我们需要替换掉新版编译器下的原文件 需要这个文件的评论下方留言记得留言哦。 一、解压后得到 STlink 文件夹,整个文件夹替换到 软件安装目录下 /ARM 处即可 二、更新下载器固件(更新一次

    2024年02月12日
    浏览(77)
  • STM32无法正常进入外部中断的问题

           本人在使用外部中断读取键值的时候遇见了无法进入外部中断的问题,我的问题是这样的:一开始想用STM32F103C8T6的PB12和PB14读取两个按键的状态,并且是使用外部中断读取,但是总是遇到一个按键的状态可以读取(即按键按下,GPIO口的电平发生跳变,然后进入对应

    2024年02月11日
    浏览(35)
  • 【STM32】HAL库中的SPI传输(可利用中断或DMA进行连续传输)

    【STM32】HAL库中的SPI传输(可利用中断或DMA进行连续传输) SPI 是英语Serial Peripheral interface的缩写,顾名思义就是串行外围设备接口。是Motorola(摩托罗拉)首先在其MC68HCXX系列处理器上定义的。 SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,

    2024年02月08日
    浏览(41)
  • GD32实现串口空闲(IDLE)中断 + DMA机制接收数据

    前言 串口功能在单片机开发中,是比较常用的外设,熟练使用串口功能也是驱动开发必备的技能之一。 DMA 是一种CPU辅助手段,可以在CPU不参与的情况下,是做一些辅助CPU的事情,如通常的数据搬运。 在没有DMA之前,数据读取时,需要CPU的处理,在多任务处理时,增加资源紧

    2023年04月13日
    浏览(42)
  • 小程序canvas画画板签字版,touchmove时卡顿的问题(根本原因是因为vue语法中page.data导致视图层和逻辑层的频繁通讯导致)

    因为要做一个画画板的功能,所以使用了canvas组件,一开始好多人说小程序canvas性能特别差,也没太注意,做出来之后确实有点卡,而且每一笔touchmove时间越长越卡,最终导致页面卡到无法使用,起初我也以为是canvas卡。 第一步肯定是先找一下canvas的问题,网上搜到一些材料

    2024年02月10日
    浏览(42)
  • STM32 Uart中断发送打印乱码问题记录

    这里需要解决2个问题; 1. print 和scanf重定向 编写对应的内部函数 2. 编译器兼容MDK和GCC 参考内容 基于 VsCode + GCC + STM32 环境下的串口输入输出重定向_gcc libc 重定向-CSDN博客 修改后的参考代码,亲自用VSCODE GCC和MDK测试 ok 总结几个内容: 1.不同编译环境下的输入/输出重定向 在

    2024年01月16日
    浏览(32)
  • GD32F103串口DMA收发(空闲中断 + DMA)

    GD32F103串口DMA收发(空闲中断 + DMA) 代码如下:

    2024年02月12日
    浏览(47)
  • 解决STM32在延时时无法进入中断的问题

    问题: 在使用zigbee模块时,使用串口作为无线收发的载体,与stm32通信,使用DHT11作为简单的受控源,出现了bug: 当在while(1)里使用delay函数,或者使用DHT11_Read_Data函数时,程序无法进入串口接收中断,无法使用远程控制 其中的while函数为: 解决思路: 检查接线之后,我首

    2024年02月12日
    浏览(38)
  • STM32用FreeRTOS串口中断接收卡死问题

    现在意法半导体的配套软件做得很全面了,简直可以说是保姆式的服务。从芯片选型,引脚定义,到代码模板生成,一条龙服务,很方便。但是方便也有方便的坏处,那就是有些细节的规则会造成天然的bug。 比如,在stm32cubeIDE里新建工程的时候,如果勾选了FREERTOS 那么,程序

    2024年02月15日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包