ucos 信号量和邮箱
所属分类:uCOS/RTOS
开发工具:C/C++
文件大小:1319KB
下载次数:2
上传日期:2017-07-19 08:37:39
上 传 者:
江上饮
说明: ucos 任务间的通讯,实现了信号量和邮箱的通讯
(UCOS communication between tasks, the realization of semaphore and mailbox communication)
文件列表:
实验60 UCOSII实验2-信号量和邮箱\CORE\cmsis_armcc.h (24423, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\CORE\core_cm4.h (114498, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\CORE\core_cmFunc.h (3620, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\CORE\core_cmInstr.h (3636, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\CORE\core_cmSimd.h (3662, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\CORE\startup_stm32f429xx.s (32818, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\Legacy\stm32_hal_legacy.h (166216, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal.h (13345, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_adc.h (36376, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_adc_ex.h (18952, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_can.h (36361, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_cec.h (30747, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_conf_template.h (17044, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_cortex.h (20217, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_crc.h (7298, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_cryp.h (23327, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_cryp_ex.h (8122, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_dac.h (16428, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_dac_ex.h (11242, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_dcmi.h (19885, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_dcmi_ex.h (10401, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_def.h (8527, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_dma.h (37305, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_dma2d.h (24927, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_dma_ex.h (4242, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_dsi.h (50920, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_eth.h (117977, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_flash.h (16319, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_flash_ex.h (57571, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_flash_ramfunc.h (3556, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_fmpi2c.h (26325, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_fmpi2c_ex.h (5643, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_gpio.h (13910, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_gpio_ex.h (69025, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_hash.h (16084, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_hash_ex.h (6782, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_hcd.h (10099, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_i2c.h (24762, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_i2c_ex.h (4967, 2016-04-15)
实验60 UCOSII实验2-信号量和邮箱\HALLIB\STM32F4xx_HAL_Driver\Inc\stm32f4xx_hal_i2s.h (19595, 2016-04-15)
... ...
实验器材:
阿波罗STM32F429开发板
实验目的:
学习UCOSII的信号量和邮箱等资源的使用.
硬件资源:
1,DS0(连接在PB1),DS1(连接在PB0)
2,按键KEY0(PH3)/KEY1(PH2)/KEY2(PC13)/KEY_UP(PA0,也称之为WK_UP)
3,PCF8574/AT8574(通过IIC接口连接,PH4/PH5,用于控制蜂鸣器)
实验现象:
本章我们在UCOSII里面创建6个任务:开始任务、LED任务、触摸屏任务、蜂鸣器任务、按键扫描任务和主任务,开
始任务用于创建信号量、创建邮箱、初始化统计任务以及其他任务的创建,之后挂起;LED任务用于DS0控制,提示
程序运行状况;蜂鸣器任务用于测试信号量,是请求信号量函数,每得到一个信号量,蜂鸣器就叫一次;触摸屏任
务用于在屏幕上画图,可以用于测试CPU使用率;按键扫描任务用于按键扫描,优先级最高,将得到的键值通过消息
邮箱发送出去;主任务则通过查询消息邮箱获得键值,并根据键值执行DS1控制、信号量发送(蜂鸣器控制)、触摸
区域清屏和触摸屏校准等控制。
通过按KEY0,可以控制DS1的亮灭;
通过按KEY1,则可以控制蜂鸣器的发声(连续按下多次后,可以看到蜂鸣每隔1秒叫一次),同时,可以在LCD上面看
到信号量的当前值;
通过按KEY2,可以清除触摸屏的输入;
通过按KEY_UP,可以进入校准程序,进行触摸屏校准(注意,电容触摸屏不需要校准,所以如果是电容屏,按KEY_UP,
就相当于清屏一次的效果,不会进行校准)
注意事项:
1,4.3寸和7寸屏需要比较大电流,USB供电可能不足,请用外部电源适配器(推荐外接12V 1A电源).
2,本例程在LCD_Init函数里面(在lcd.c),用到了printf,如果不初始化串口1,将导致液晶无法显示!!
3,本实验改自触摸屏实验。
4,本实验使用ucosii版本为V2.92。
参考资料:阿波罗STM32F429开发指南-库函数版本.pdf 第六十五章
-------------------------------------------------------------------------------------------
◆其他重要连接:
开发板光盘资料下载地址(视频+文档+源码等):http://www.openedv.com/posts/list/13912.htm
◆友情提示:如果您想以后及时免费的收到正点原子所有开发板资料更新增加通知,请关注微信公众平台:
2种添加方法:(动动手提升您的学习效率,惊喜不断哦)
(1)打开微信->添加朋友->公众号->输入“正点原子”->点击关注
(2)打开微信->添加朋友->输入“alientek_stm32"->点击关注
具体微信添加方法,请参考帖子:http://www.openedv.com/posts/list/45157.htm
淘宝店铺: http://openedv.taobao.com
http://eboard.taobao.com
公司网站:www.alientek.com
技术论坛:www.openedv.com
微信公众平台:正点原子
电话:020-38271790
传真:020-36773971
广州市星翼电子科技有限公司
正点原子@ALIENTEK
2016-6月
近期下载者:
相关文件:
收藏者: