一、实验说明:
信号量是操作系统中的一类事件,是实现任务间通信的一个中间环节。当系统中的多个任务
在运行时,经常需要互相无冲突地访问同一个资源,或者需要互相支持的依赖,甚至有时还要互
相加以必要的限制的制约才保证任务的顺利进行。信号量就像是一种上锁机制,一旦执行至上锁
代码段则一直等待,直到获得相应的钥匙才能进入被锁部分的代码。使用信号量的最初目的是为了
给共享资源设立一个标志,该标志表示共享资源的占用情况。当一个任务在访问共享资源之前,就
可以先对这个标志进行查询,从而在了解资源被占用的情况之后,再来准定自己的行为。
二、实验截图:
三、源代码下载链接:
链接:https://pan.baidu.com/s/1eSQ6IXW 密码:vg2c
四、核心代码:
/* * Name : main * Description : --- * Author : liu. * * History * -------------------- * Rev : 0.00 * Date : 07/12/2017 * * create. * -------------------- */ /*实验现象: 红灯和绿灯同时以固定频率闪烁,打开串口工具,可以看到有数据显示。 */ int main(void) { system_clock.initialize(); //系统时钟初始化 led.initialize(); //LED初始化 usart6.initialize(115200); //串口初始化 usart6.printf("x0c"); //清屏 usart6.printf("