摘要: 作用域:一个变量或者函数起作用的范围 生命周期:一个变量什么时候被释放 static关键字:修饰局部变量、修饰全局变量、修饰函数 1.局部变量的作用域 局部变量的作用域是离他最近的一个代码块,比如函数体的大括号、if for while循环体的代码块。超出这个代码块则无法访问。 1 #include 阅读全文
posted @ 2020-06-30 20:09 薛定谔的小灯泡 阅读(869) 评论(0) 推荐(1)
摘要: 1.NVIC是什么 NVIC 是嵌套向量中断控制器,控制着整个芯片中断相关的功能,它跟内核紧密耦合,是内核里面的一个外设。但是各个芯片厂商在设计芯片的时候会对 Cortex-M3 内核里面的NVIC 进行裁剪,把不需要的部分去掉,所以说 STM32 的 NVIC 是 Cortex-M3 的NVIC 阅读全文
posted @ 2020-06-30 15:55 薛定谔的小灯泡 阅读(2068) 评论(0) 推荐(1)
摘要: C语言允许宏带有参数。在宏定义中的参数称为形式参数,在宏调用中的参数称为实际参数,这点和函数有些类似。就像把函数的实参传递给形参。 对带参数的宏,在调用中,不仅要宏展开,而且要用实参去代换形参。 带参宏定义的一般形式为: #define 宏名(形参列表) 字符串在字符串中含有各个形参。 带参宏调用的 阅读全文
posted @ 2020-06-29 17:03 薛定谔的小灯泡 阅读(539) 评论(0) 推荐(1)
摘要: 一个程序的运行是需要内存的,那么我们平常写的程序的内存都是怎么分配的呢 (1)首先我们要知道,内存是真实存在的,内存是一个物理器件。它时由操作系统管理的,我们平常只要使用它就行了,为了方便管理。操作系统提供了很多种机制来管理内存,每一种机制都有其特点。(2)三种内存来源:栈(stack)、堆(hea 阅读全文
posted @ 2020-06-29 16:56 薛定谔的小灯泡 阅读(634) 评论(0) 推荐(0)
摘要: 结合存储器映像理解stm32标准库中定义外设地址的方法。 stm32f103zet6是32位的。它所能访问的地址空间范围为2^32=4GB,把4GB分为8个block,分别为block0-block-7。把这8个block用于不同的用途。 block0-block7的用途 图1 —————————— 阅读全文
posted @ 2020-06-29 14:58 薛定谔的小灯泡 阅读(1385) 评论(0) 推荐(0)
摘要: 1.位与 & (1)位与符号是&,按照一个数的二进制位按位与。(2)位与的真值表:1&1=1,1&0=0,0&1=0,0&0=0. 举个例子:两个二进制数分别是 10101010、01111010。所谓位与就是二进制的每一位进行与,即要想把两个数(十进制、十六进制等)进行位与,必先把其转化为二进制数 阅读全文
posted @ 2020-06-28 18:50 薛定谔的小灯泡 阅读(325) 评论(0) 推荐(0)
摘要: 用宏置位、复位。 1 // 把x的第n位置一 2 #define SET_NTH_BIT(x, n) (x | ((1U)<<(n-1))) 3 4 //把x的第n位清零 5 #define CLEAR_NTH_BIT(x, n) (x & ~((1U)<<(n-1))) 6 7 //把x的n-m位 阅读全文
posted @ 2020-06-28 18:43 薛定谔的小灯泡 阅读(531) 评论(0) 推荐(0)
摘要: 1.定时器API。文件 OS_Tmr.c 1.1创建定时器 void OSTmrCreate (OS_TMR *p_tmr, CPU_CHAR *p_name, OS_TICK dly, OS_TICK period, OS_OPT opt, OS_TMR_CALLBACK_PTR p_callba 阅读全文
posted @ 2020-05-02 01:24 薛定谔的小灯泡 阅读(536) 评论(0) 推荐(0)
摘要: ucosIII_使用互斥信号量解决优先级反转问题。用于实现对临界资源的独占式处理,降低优先级反转带来的影响。 信号量的二值信号量可以作为一个标志flag,当两个任务访问同一个资源时,进行加锁解锁。如果当多个任务要访问同一个资源,使用二值信号量很容易带来优先级反转的问题,而这种问题,是操作系统极其不期 阅读全文
posted @ 2020-05-01 13:16 薛定谔的小灯泡 阅读(1501) 评论(0) 推荐(0)
摘要: 1.消息队列的作用 对比信号量和互斥信号量。信号量和互斥信号量是用来完成任务间同步或共享资源加锁的。也就是说这两种都是一种flag标志位作用。表示一种事件的发生,并不能传递数据。那比如说我想让任务A给任务B发送4个字节的数据,怎么办?所以引入了消息队列的概念。 2.消息队列的API 文件os_q.c 阅读全文
posted @ 2020-05-01 03:25 薛定谔的小灯泡 阅读(867) 评论(2) 推荐(0)