嵌入式C中volatile的用法
时间:10-08
来源:互联网
点击:
(外设操作是最耗时的),效率要高很多。如果你想使用volatile但又能使能优化功能,你可以将函数作如下的修改:
void display_put(uint32_t b)
{
register uint32_t temp = IOPDATA;
temp = ~display;
temp |= b;
IOPDATA = temp;
}
这样做有点烦琐,下面的等效方法更简单:
void display_put(uint32_t b)
{
IOPDATA = (IOPDATA ~display) | b;
}
结论:从该例子看出,它并不鼓励使用volatile,即使要用也要很小心,因为volatile可能在无意中降低了代码效率,而你却无法察觉。但是,我们说,不鼓励并不是说就不能或不要用,而是要懂得何时用,怎么用好它。其所谓智用了。
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)
