caizhiwei 发表于 2014-6-4 09:38:42

【STM32F429开发日志】5.uCOS-ii V2.91 移植OK



硬件平台:STM32F429-DISCOVERY
软件平台:MDK510
Author : http://blog.sina.com.cn/caizhiwei99
ucos-ii :Version   : V2.91


Readme:


修改说明:
1. 在stm32f4xx.h中,Uncomment the #define STM32F427_437xx ;
    Uncomment the #define USE_STDPERIPH_DRIVER ;
        modify:HSE_VALUE to 8Mhz
        #if !defined  (HSE_VALUE) 
    #define HSE_VALUE    ((uint32_t)8000000) /*!< Value of the External oscillator in Hz */
    #endif /* HSE_VALUE */
2. 在system_stm32f4xx.c中:
    #define PLL_M      8       
    #if defined (STM32F427_437xx) || defined (STM32F429_439xx)
      uint32_t SystemCoreClock = 168000000;
    #endif /* STM32F427_437x || STM32F429_439xx */
       
ucos-ii代码修改:
1.OS_CPU.H 
访问临界代码段的方法:
#define  OS_CRITICAL_METHOD   3


#if OS_CRITICAL_METHOD == 3
#define  OS_ENTER_CRITICAL()  {cpu_sr = OS_CPU_SR_Save();}
#define  OS_EXIT_CRITICAL()   {OS_CPU_SR_Restore(cpu_sr);}
#endif


以上是相关的程序片段。如果应用程序中用了这两个宏,那么要定义一个局部变量并初始化
为0 ,如OS_CPU_SR  cpu_sr  = 0; 


在中断服务函数中:
void SysTick_Handler(void)
{
#if OS_CRITICAL_METHOD == 3 /* Allocate storage for CPU status register */
    OS_CPU_SR  cpu_sr = 0;
#endif


    OS_ENTER_CRITICAL();  /* Tell uC/OS-II that we are starting an ISR */
    OSIntNesting++;
    OS_EXIT_CRITICAL();


    OSTimeTick();  /* Call uC/OS-II's OSTimeTick() */


    OSIntExit();  /* Tell uC/OS-II that we are leaving the ISR */       
}
在os_cpu_c中,systick初始化:
void  OS_CPU_SysTickInit (void)
{
    INT32U  cnts;
        RCC_ClocksTypeDef  rcc_clocks;


        RCC_GetClocksFreq(&rcc_clocks);        //获得系统时钟频率。
    cnts = rcc_clocks.HCLK_Frequency / OS_TICKS_PER_SEC;
        SysTick_Config(cnts);
}


1.本例程主要实现了二值信号量和互斥信号的优先级反转?
main.c文件里1-8注释说明了互斥执行顺序。由用户按键启动此过程。任务0、1、2。
2.加入对列的操作。其实队列Q就像是多个邮箱Mbox的组合。任务3。
加入了事件标志Flag,满足两个事件后,挂起的任务解锁。存储块的创建,获取,释放操作。任务4、5。


下载:



 

xuyejin 发表于 2016-1-8 17:15:44

你好,这个ucos楼主试过 ossempost 和ossempend么?好像不行啊,一切换就死啊

jetmin 发表于 2016-8-3 18:53:23

好东西啊,真好需要

dengyijun103 发表于 2017-9-12 16:05:38

谢谢!很感谢。

lnasdxx-79844 发表于 2014-6-4 11:08:44

回复:【STM32F429开发日志】5.uCOS-ii V2.91 移植OK

学习学习!谢谢了

yf341 发表于 2014-6-5 10:21:37

RE:【STM32F429开发日志】5.uCOS-ii V2.91 移植OK

谢谢分享,:)

飞翔-396652 发表于 2014-6-5 10:35:39

RE:【STM32F429开发日志】5.uCOS-ii V2.91 移植OK

学习学习!谢谢了:)

守望者-425038 发表于 2014-6-6 15:58:20

回复:【STM32F429开发日志】5.uCOS-ii V2.91 移植OK

xuexi:D

ddllxxrr 发表于 2014-6-15 18:19:42

RE:【STM32F429开发日志】5.uCOS-ii V2.91 移植OK

谢谢分享:)

abcdotaabc 发表于 2014-6-16 10:47:03

RE:【STM32F429开发日志】5.uCOS-ii V2.91 移植OK

楼主可以留下一个联系方式?

lanxinmhj-34912 发表于 2014-6-17 15:09:58

RE:【STM32F429开发日志】5.uCOS-ii V2.91 移植OK

挺好的,学习了。

nzhuzhu 发表于 2014-6-23 09:28:50

RE:【STM32F429开发日志】5.uCOS-ii V2.91 移植OK

多谢分享:D

友情牵绊-2046836 发表于 2014-6-24 18:03:45

回复:【STM32F429开发日志】5.uCOS-ii V2.91 移植OK

 参考参考!!!

快乐汉 发表于 2014-6-24 20:56:15

回复:【STM32F429开发日志】5.uCOS-ii V2.91 移植OK

学习中,谢谢分享!

yulin 发表于 2014-6-29 11:31:14

RE:【STM32F429开发日志】5.uCOS-ii V2.91 移植OK

学习学习!谢谢

ikxlf 发表于 2014-7-7 19:00:36

回复:【STM32F429开发日志】5.uCOS-ii V2.91 移植OK

0fffff04

漠小然 发表于 2014-7-7 19:11:33

RE:【STM32F429开发日志】5.uCOS-ii V2.91 移植OK

又要回复:lol

菜鸟的m4之路 发表于 2014-7-7 23:20:00

回复:【STM32F429开发日志】5.uCOS-ii V2.91 移植OK

 好好学习,楼主霸气
页: [1] 2 3 4
查看完整版本: 【STM32F429开发日志】5.uCOS-ii V2.91 移植OK