![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
OSAL
文章平均质量分 54
小白study
这个作者很懒,什么都没留下…
展开
-
typedef函数指针的用法(C++)
http://blog.sina.com.cn/s/blog_5e71ee700100fo13.html typedef函数指针的用法(C++) 代码简化, 促进跨平台开发的目的. typedef 行为有点像 #define 宏,用其实际类型替代同义字。 不同点:typedef 在编译时被解释,因此让编译器来应付超越预处理器能力的文本替换。转载 2016-11-20 20:46:27 · 247 阅读 · 0 评论 -
C/C++ typedef用法
http://www.cnblogs.com/ggjucheng/archive/2011/12/27/2303238.html 引言 typedef 声明,简称 typedef,为现有类型创建一个新的名字。比如人们常常使用 typedef 来编写更美观和可读的代码。所谓美观,意指 typedef 能隐藏笨拙的语法构造以及平台相关的数据类型,从而增强可移植性和以及未来的可维护性转载 2016-11-20 20:58:22 · 286 阅读 · 0 评论 -
谈谈#define st(x) do { x } while (__LINE__ == -1) 的理解
最近在学习TI 的BLE协议栈,其中发现了一个问题: #define HAL_ENTER_CRITICAL_SECTION(x) st( x = EA; HAL_DISABLE_INTERRUPTS(); ) #define HAL_EXIT_CRITICAL_SECTION(x) st( EA = x; ) 其中st(x)应作何解释? #define st(x) do {转载 2016-11-22 11:02:04 · 551 阅读 · 0 评论 -
SFR
#define DEFC(name, address) __no_init volatile unsigned char name @ address 比如:__no_init volatile unsigned char fuck @0x5000; 可以写作: DEFC(fuck, 0x5000 ) __no_init 不初始原创 2016-11-22 21:56:22 · 3764 阅读 · 0 评论 -
Z-Stack/ble OSAL 中OSAL按键事件的触发流程分析
转载于http://blog.chinaunix.net/uid-20788636-id-1841392.html 首先在Main函数中,因为这是整个系统的入口点。 (1)Main函数 所有程序运行首先是在主函数下开始的,这里也不例外。找到Zmain.c文件下的主函数: ZSEG int main( void ) { // 初始化时要关中断 osal_int_disa转载 2016-11-22 22:23:26 · 536 阅读 · 0 评论 -
CC2541蓝牙学习——ADC
转载于http://www.cnblogs.com/chenzhao207/p/4539197.html CC2541的ADC支持多达14位的模拟数字转换与高达12位的有效位数。它包括一个模拟多路转换器,具有多达8个各自可独立配置的通道,一个参考电压发生器。转换结果通过DMA写入存储器。还具有若干运行模式。 ADC主要特性如下: 可选的抽取率,设置了7~12位的分辨率;8个独立输转载 2017-03-12 13:41:05 · 2729 阅读 · 0 评论