1. 程式人生 > >ucos學習資料收集

ucos學習資料收集

亮點嵌入式平臺_書籍/UCOS/UCGUI視訊教程/亮點STM32開發板(盧有亮開源)

http://blog.sina.com.cn/s/blog_9cc4819101014du8.html
《嵌入式實時作業系統μC/OS原理與實踐》是2010、2011年編寫,2012年1月出版,這本書內容翔實,有大量的程式碼解析,有VC下的例程。《基於STM32的嵌入式系統原理與設計》是2012、2013年編寫,2013年12月出版,這本書內容適合STM32初學者,有原理、硬體設計、軟體程式設計(裸奔)、工程例項。筆者所寫圖書是傾力而為的,是有工程背景的,絕不能和CtrlC+CtrlV的圖書相比較,有自己的觀點和例項,絕對都適合初學者和一般的技術人員,開卷有益!也希望更多的老師引為教材。

《嵌入式實時作業系統μC/OS原理與實踐》的程式碼、PPT、勘誤下載、實驗教程下載地址:

http://pan.baidu.com/share/link?shareid=350025&uk=2284230610

STM32書資料(含有PPT,實驗指導書,實驗教學大綱等)
連結: http://pan.baidu.com/s/1bwBwgm 密碼: gn42

亮點 開發板:

在這裡插入圖片描述
開發板是非常重要的環節,有了這個硬體環境,才能跑uCOS\uCGUI,也是實驗教學平臺。《基於STM32的嵌入式系統原理與設計》是在這個開發板設計和製造,程式碼編寫的同時寫作的,是實踐的結晶!

亮點STM32開發板的地址只在:

http://brightpoint.taobao.com

技術交流和開原始碼釋出地址:http://www.eeboard.com/bp。

目前所有0警告0錯誤原始碼在:2013年底亮點STM32開源無警告程式碼釋出STM32/UCOS/UCGUI
http://www.eeboard.com/bbs/forum.php?mod=viewthread&tid=24041&fromuid=2912
目前所有例程為:

視訊地址:

3.視訊教程
優酷網上觀看地址:http://www.soku.com/search_video/q_盧有亮

視訊播放土豆豆單:http://www.tudou.com/plcover/vFBTg5rTaRM/

目前淘寶http://brightpoint.taobao.com提供的高清UCOS和UCGUI教程為:

嵌入式實時作業系統μCOS-II原理及應用 任哲編著

1.(比較難買)嵌入式實時作業系統uc/os-II教程

西安電子科技大學出版 -----這本書對UCOS的原始碼分析的非常清楚 比作者原著

在某種程度上要好,這本書對關鍵的程式碼都給出了流程圖!

2.(比較好買)嵌入式實時作業系統uc/os-II原理與應用(第二版)

任哲 北航出版的。這本書告訴你UCOS怎麼用 對原始碼分析的比較少 看完這本書你可以簡單應用UCOS

3.(比較難買) 基於嵌入式實時作業系統的程式設計

周慈航 北航。 這本書是絕對重量級的這本書教你UCOS的高階程式設計 是你邁向UCOS高手的必經之路!!

別人推薦的書

第一步.《嵌入式實時作業系統μCOS-II原理及應用》 任哲編著
首選任哲的這本書。我建議先把這本書看一遍,弄清楚ucos是怎麼回事,至於作業系統裡面的具體程式碼實現,大概瞭解就行,可以暫且不去細究。先會用,然後慢慢才能談上精通。
第二步.《基於嵌入式實時作業系統的程式設計技術 》周慈航
這本書是針對電子工程師,對ucosII的程式設計思路進行了介紹。通過這本書,大家就可以明白系統如果移植了ucos的話,程式設計就和之前的裸機程式設計有何區別。
第三步.實踐!!
通過上述的兩本書,基本就可以對ucos有初步的認識。然後我建議可以在PC機上進行模擬實驗。通過這些實驗就可以加深對於ucOS的認識。 實際上,任哲老師的書中就有很多例子,我們的實驗最好也基於這些例子,把這些例子跑一遍,應該就差不多了。
但是任哲書中是基於BC編譯器的,個人覺得操作很麻煩。。。除錯起來還是太麻煩。。。
所以 我建議使用移植到VC6.0的工程進行實驗,當然我個人認為vc6還是有點古老,於是就將ucosII移植到了VS2010中,這樣我們可以在VS2010中進行程式設計實驗,這樣就方便極了。
至於如何移植的問題,需要對內部程式碼有一定的瞭解。我建議 有興趣的同學可以稍微研究一下,只是為了使用的同學,可以在基本瞭解作業系統的操作以後,再去了解。
第四步,高階階段。
《嵌入式實時作業系統uCOS-II》(第二版) 邵貝貝
官方的ucos使用者手冊的中文譯本。由於這是官方的指南,因此對這個要是有較為深刻的瞭解和體會的話,就會對ucos會有更為深刻的瞭解,對內部程式碼的實現,對於移植、介面等都會有新的認識。所以通過這本書,可以對整個系統會有更深刻的認識。

UCOS_II學習筆記—訊號量管理之訊號量的使用

https://blog.csdn.net/weixin_41349989/article/details/78881036

#include <includes.h>
 
#define  TEST_SEM_EN  0 //test switch, 0: off 1:on
#define  TASK_STK_SIZE 128
 
OS_STK        Task01Stk[TASK_STK_SIZE];
OS_STK        Task02Stk[TASK_STK_SIZE];
 
static OS_EVENT *sem_p;
static OS_EVENT *sem_v;
 
static void task_01(void *p_arg);
static void task_02(void *p_arg);
 
 
void main(int argc, char *argv[])
{
 OSInit();   
 
 //create P V semaphore
 sem_p = OSSemCreate(1);
 sem_v = OSSemCreate(1);
 
 OSTaskCreate(task_01, NULL, (OS_STK *)&Task01Stk[TASK_STK_SIZE-1], (INT8U)10);
 OSTaskCreate(task_02, NULL, (OS_STK *)&Task02Stk[TASK_STK_SIZE-1], (INT8U)11);
 
 OSStart();                            
}
 
 
void task_01(void *p_arg)
{
 INT8U err;
 p_arg = p_arg;
    while (TRUE)                            
 {    
#if TEST_SEM_EN
  OSSemPend(sem_p, 0, &err);
#endif
 
  OS_Printf("A"); 
  OSTimeDlyHMSM(0, 0, 1, 0); 
 
#if TEST_SEM_EN
  OSSemPost(sem_v);
#endif
    }
}
 
 
void task_02(void *p_arg)
{
 INT8U err;
 p_arg = p_arg;
 
    while (TRUE)                            
 {    
#if TEST_SEM_EN
  OSSemPend(sem_v, 0, &err);
#endif
 
  OS_Printf("B"); 
  OSTimeDlyHMSM(0, 0, 3, 0); 
  
#if TEST_SEM_EN
  OSSemPost(sem_p);
#endif
    }
}

別人介紹的書

正點原子MiniSTM32開發板配套資料
秉火ISO_V2開發板配套資料
《Cortex-M3權威指南.pdf》
《嵌入式實時作業系統μC\OS-Ⅱ原理及應用(第4版)》(任哲、房紅徵)

(稍後補充)