![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
嵌入式
lucky
YYxin0314
这个作者很懒,什么都没留下…
展开
-
关键字volatile的作用,并且至少说出3种应用场合
/ 指向某个硬件定时器寄存器。关键字用于标识那些在程序执行期间可能会被外部因素更改的变量,以确保编译器生成的代码不会对这些变量进行不必要的优化,从而保持程序的正确性。主要用于告诉编译器,某个变量的值可能会在程序执行过程中被外部因素更改,因此不应该对这个变量进行一些优化操作。// 多线程共享的变量。// 防止编译器优化 flag 变量。// 设置硬件定时器的值。原创 2024-03-08 00:33:48 · 689 阅读 · 1 评论 -
Thumb指令集与THumb-2指令集的区别
在实践中,Thumb指令集通常用于嵌入式系统中,特别是对于资源有限的设备,而Thumb-2指令集则更适合性能要求较高的应用场景。在处理器架构中,支持Thumb和Thumb-2的ARM处理器可以根据需求在这两种指令集之间进行切换。Thumb 和 Thumb-2 都是ARM处理器架构中的指令集,旨在提供更高的代码密度和更好的性能。原创 2024-03-08 00:31:03 · 794 阅读 · 1 评论 -
CM3和CM4内核中的寄存器组R0-R15的作用,尽量详细+举例
这些寄存器在汇编语言中使用,程序员可以直接访问它们以实现对底层硬件的控制。在嵌入式系统中,特别是对于Cortex-M系列,程序员通常使用这些寄存器来编写底层的驱动程序和中断服务程序。将 R2 和 R3 中的值相加,并将结果存储到 R1。将栈中的值弹出到 R6 和 R7。调用函数,返回地址将存储在 LR 中。将 R4 和 R5 的值压入栈。原创 2024-03-08 00:19:43 · 581 阅读 · 1 评论