nfreebird 2023-03-19 21:15 采纳率: 0%
浏览 19

STM32 HAL库中Tick中断的问题

STM32 HAL库中Tick中断的问题:在Tick中断时,调用HAL_IncTick()对uwTick加1。外部程序通过GetTick()得到uwTick的值来使用。并没有考虑变量的访问保护问题。是否说32位的arm,在访问uwTick时,因为一条指令就能完成,因此不用考虑uwTick的保护问题呢?

  • 写回答

4条回答 默认 最新

  • 追cium 2023-03-19 21:28
    关注

    参考GPT和自己的思路:

    在访问 uwTick 变量时,实际上并不能保证一定只有一条指令,因此在多线程情况下,需要考虑对 uwTick 变量的访问保护问题。可以使用互斥量(Mutex)或者自旋锁(Spin lock)等机制来防止 uwTick 变量被多个线程同时访问和修改。因此,在 STM32 HAL 库中,为了确保 uwTick 变量的可靠性,需要考虑变量的访问保护问题。

    评论

报告相同问题?

问题事件

  • 创建了问题 3月19日

悬赏问题

  • ¥15 github上的这个C语言项目如何跑起来
  • ¥15 java 判断某个数 区间是否存在
  • ¥15 appium控制多个雷电模拟器问题
  • ¥15 C# iMobileDevice
  • ¥15 谁会做这个啊#ensp#Boson NetSim
  • ¥15 如何编写针对TPS6503320FRGE型号的电源管理芯片的编程代码?
  • ¥15 设计简单目录管理系统,要满足以下内容
  • ¥15 关于九十度混合耦合器信号分析问题
  • ¥15 Cesm如何关闭不用的模块呢
  • ¥15 vue2两层数据导出为excle