关注
码龄
粉丝数
原力等级 --
被采纳
被点赞
采纳率
立目标,踏实学,拼实力
2021-03-31 20:07
采纳率: 0%
浏览 5
首页
其他
volatile 在有操作系统的工程中修饰会被多个任务修改的变量 在嵌入式开发中,不仅仅有单片机裸
其他
volatile 在有操作系统的工程中修饰会被多个任务修改的变量 在嵌入式开发中,不仅仅有单片机裸机开发,也有带有操作系统的开发,通常两者使用C语言开发的较多。在有操作系统(比如RTOS、UCOS-II、Linux等)的设计中,如果有多个任务在对同一个变量进行赋值或取值,那么这一类变量也应使用volatile来修饰保证其可见性。所谓可见即:当前任务修改了这一变量的值,同一时刻,其它任务此变量的值也发生了变化。
收起
写回答
好问题
0
提建议
关注问题
微信扫一扫
点击复制链接
分享
邀请回答
编辑
收藏
删除
结题
收藏
举报
1
条回答
默认
最新
关注
码龄
粉丝数
原力等级 --
被采纳
被点赞
采纳率
立目标,踏实学,拼实力
2021-04-04 02:48
关注
1
本回答被题主选为最佳回答
, 对您是否有帮助呢?
本回答被专家选为最佳回答
, 对您是否有帮助呢?
本回答被题主和专家选为最佳回答
, 对您是否有帮助呢?
解决
无用
评论
打赏
微信扫一扫
点击复制链接
分享
举报
评论
按下Enter换行,Ctrl+Enter发表内容
查看更多回答(0条)
向“C知道”追问
报告相同问题?
提交
关注问题
volatile
变量
的的概念和使用
2020-08-04 09:24
在C语言编程
中
,`
volatile
`是一个非常重要的关键字,它用于
修饰
变量
,向编译器传达特殊的指示。本文将深入探讨`
volatile
`
变量
的概念、作用以及如何在实际编程
中
使用。 `
volatile
`
变量
的主要概念是它表明该
变量
的值...
volatile
关键字在嵌入式
中
的作用
2025-03-02 14:30
ABCDEFG716的博客
在 GPIO 结构体
中
使用
volatile
关键字是为了确保程序能够正确地与硬件交互,保证每次对 GPIO 寄存器的读写操作都是直接针对硬件寄存器的,避免编译器优化带来的潜在问题,从而提高程序的可靠性和稳定性。
单片机
C语言
中
volatile
的作用
2020-07-25 21:22
`
volatile
`是一个用于声明
变量
的关键字,在C语言
中
,使用`
volatile
`
修饰
的
变量
表明其值可能
会
在没有程序控制的情况下发生改变。这意味着编译器在处理这类
变量
时不能做任何优化,每次使用时都需要从内存
中
重新读取其...
C语言与嵌入式
中
的
volatile
:理解与应用技巧
2025-03-02 14:03
大厂_码农的博客
volatile
是C语言和
嵌入式开发
中
一个重要的工具,它帮助我们避免编译器优化导致的潜在问题。通过合理使用
volatile
,可以确保对硬件寄存器、
中
断标志
变量
和多线程共享数据的正确访问。尽管如此,
volatile
并不...
嵌入式开发
中
volatile
的应用
2022-08-27 18:34
makin.liu的博客
volatile
是
嵌入式开发
中
比较重要的关键字,然而网上的相关资料五花八门,基本都没有将其讲全,本人就花点时间,权当为社
会
做做贡献!
单片机
与DSP
中
的ADS下C语言
中
局部
变量
的存储位置分配
2020-11-18 15:40
在
单片机
与DSP开发
中
,使用ADS(ARM Development Studio)进行C语言编程时,局部
变量
的存储位置分配是一个关键的细节。虽然教科书上通常将C语言的局部
变量
视为存储在“栈”
中
,但实际实现可能有所不同,这取决于...
volatile
关键字在
嵌入式开发
中
的重要作用,STM32,8051,ARM,32位
单片机
2025-07-11 19:11
19y_的博客
volatile
一个“聪明”的编译器可能
会
这样想:“嗯,p_addr指向的地址在这两次读取之间没有被我的代码
修改
过。为了提高效率,我没必要去访问两次慢速的Flash内存。我可以在第一次读取*p_addr后,把它的值存到一个高速...
单片机
开发
中
的
volatile
2024-08-20 16:07
硬核科技的博客
特别是在
多个
线程或
中
断
中
共享的全局
变量
,由于其可能在不确定的时间被
修改
,如果没有
volatile
修饰
,编译器可能
会
假设这些
变量
在某一段时间内不
会
发生改变,从而进行不合理的优化,最终导致代码无法按照预期运行。...
面试题:
单片机
裸
机和RTOS开发过程
中
,如何保证全局
变量
在
中
断和主循环
中
读写的正确性
2021-04-28 15:41
king110108的博客
关键字
volatile
时告诉编译器,被关键字
volatile
修饰
的
变量
可能
会
被意外的改变,防止编译器对代码进行优化。举个具体的例子说明这个问题: 比如在某个
任务
中
设置了一个
变量
g_counter用于计数。 g_counter = 0x...
volatile
C语言
变量
,
volatile
关键字在嵌入式C语言
中
的使用
2021-05-20 07:42
ianva的博客
volatile
修饰
符在C语言
中
的用法本文章将讨论
volatile
这个
修饰
符在C语言
中
的使用。了解这个
修饰
符的程序员都知道,最为一个指令关键字,其作用是确保指令本身不
会
受到编译器的优化而产生未知的程序bug。对此,本文将...
没有解决我的问题,
去提问
向专家提问
向AI提问
付费问答(悬赏)服务下线公告
◇ 用户帮助中心
◇ 新手如何提问
◇ 奖惩公告