嵌入式C++与C混合编程实现精确定时工具-综合4

235 阅读1分钟

1 C++与C混合编程

image.png image.png

1.1 模板搭建

image.png

1.2 C 专区调用C++ Main函数,实现混合编程

  • 引入C++相关头文件 image.png image.png image.png
  • 涉及到定时器中断,注意中断要开,不然的话中断回调是不生效的,当时定时器不生效的原因就是中断开关未开启,中断函数TIM4_IRQHandler就没有生成,所以就无效,如下图,不开启,定时器4就是无效的,无法生成中断 image.png
  • 因此,若要使用定时器更新中断,则中断开关要开启 image.png
  • 此处定义了中断回调函数,方便自定义代码逻辑 image.png

1.3 C++专区Main函数

  • 初始化定时器对应的更新中断回调函数,若使用timer4,把对应的中断回调函数赋值给timer4,若使用timer1,把对应的中断回调函数赋值给timer1 image.png

2 C++专区精确定时工具函数

2.1 LED

  • .h image.png
  • .cpp image.png

2.2 Timer

  • .hpp image.png
  • .cpp image.png image.png image.png