學習ucos和ARM體系結構的路線圖

Step 1:學會使用開發(fā)板跑簡單程序

熟讀對應開發(fā)板上的ARM芯片的datasheet,之后就盡可能的在開發(fā)板上逐個實現(xiàn)芯片對應的每個功能褐望,像GPIO實驗姐赡,UART通訊厚柳,I2C,ADC熊杨,DAC曙旭,PWM,RTC,SPI等等晶府。當每個功能模塊都實現(xiàn)以后桂躏,再實現(xiàn)多個功能復合的編程,比如用UART打印出ADC的值什么的川陆。

Step 2:搞懂uCOS等簡單OS

建議購買《嵌入式實時操作系統(tǒng)μCOS-II(第二版)》,

1.重點搞清楚什么是任務剂习,什么是前后臺,為什么要在系統(tǒng)中加入嵌入式操作系統(tǒng);

2.詳細了解他的TCB(Task Control Block)和ECB(Event Control Block)的數(shù)據(jù)結構鳞绕,搞清楚整個uCOS的實現(xiàn)機制失仁;

3.詳細了解信號量,互斥信號量们何、消息隊列萄焦、郵箱和時間標志組。

Step 3:建立對uCOS的初步認識

下載對應你的開發(fā)板ARM芯片移植好了文件OS_CPU_C.c,OS_CPU.H冤竹,OS_CPU_A.asm(當然有的開發(fā)板已經提供了這樣的基礎實驗)

在你的開發(fā)板上跑跑uCOS拂封,建立起自己對于uCOS在開發(fā)板上的認識。在你的開發(fā)板上編寫一個自己跑uCOS的簡單任務鹦蠕。

Step 4:熟悉ARM體系結構

可參考《ARM體系結構與編程》或《ARM+Architecture+Reference+Manual(2nd+Edition)》

了解以下幾個方面的知識:

1烘苹、ARM模式下的指令集

2、Thumd模式下的指令集

3片部、異常模式及進入異常時ARM如何處理

4镣衡、一定能熟悉ARM中的匯編指令

5、熟悉CPSR档悠,R0-R7,R8-R14,R15及在各個模式下廊鸥,這些寄存器的映射。

熟悉以后辖所,再來自己做uCOS的移植了惰说。

Step 5:自己動手移植uCOS

對于uCOS的移植,我們只需要編寫關鍵的三個文件缘回,文件如下:

1吆视、OS_CPU_C.c(堆棧初始化操作OSTaskStkInit函數(shù))

2、OS_CPU.H:完成在該芯片下的數(shù)據(jù)定義酥宴,比如什么unsigned char 之類的啦吧,注意一下OS_STK和OS_CPU_SR的定義,定義下關中斷和開中斷的方式拙寡,有三個只能選擇1個授滓,ARM芯片一般是定義為第三種方式

3、OS_CPU_A.asm(這個是MDK環(huán)境下的匯編文件)或OS_CPU_A.a(這個是IAR開發(fā)環(huán)境下的匯編)肆糕,這個文件的內容就多了般堆,要做以下幾個函數(shù)的重寫:

a、OSStartHighRdy函數(shù)

b诚啃、任務級的任務切換函數(shù)OSCtxSw淮摔,

c、中斷級的任務切換OSIntCtxSw始赎,其實只要寫好了OSCtxSw和橙,OSIntCtxSw自然就copy一下就完了(copy的時候記者要把保存當前任務的寄存器去掉就可以了仔燕。

Step 6:測試自己的uCOS移植代碼

Step 7:在自己寫的uCOS移植代碼中跑跑任務。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末胃碾,一起剝皮案震驚了整個濱河市涨享,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌仆百,老刑警劉巖厕隧,帶你破解...
    沈念sama閱讀 222,807評論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異俄周,居然都是意外死亡吁讨,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,284評論 3 399
  • 文/潘曉璐 我一進店門峦朗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來建丧,“玉大人,你說我怎么就攤上這事波势◆嶂欤” “怎么了?”我有些...
    開封第一講書人閱讀 169,589評論 0 363
  • 文/不壞的土叔 我叫張陵尺铣,是天一觀的道長拴曲。 經常有香客問我,道長凛忿,這世上最難降的妖魔是什么澈灼? 我笑而不...
    開封第一講書人閱讀 60,188評論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮店溢,結果婚禮上叁熔,老公的妹妹穿的比我還像新娘。我一直安慰自己床牧,他們只是感情好荣回,可當我...
    茶點故事閱讀 69,185評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著叠赦,像睡著了一般驹马。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上除秀,一...
    開封第一講書人閱讀 52,785評論 1 314
  • 那天,我揣著相機與錄音算利,去河邊找鬼册踩。 笑死,一個胖子當著我的面吹牛效拭,可吹牛的內容都是我干的暂吉。 我是一名探鬼主播胖秒,決...
    沈念sama閱讀 41,220評論 3 423
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼慕的!你這毒婦竟也來了阎肝?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 40,167評論 0 277
  • 序言:老撾萬榮一對情侶失蹤肮街,失蹤者是張志新(化名)和其女友劉穎风题,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體嫉父,經...
    沈念sama閱讀 46,698評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡沛硅,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,767評論 3 343
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了绕辖。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片摇肌。...
    茶點故事閱讀 40,912評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖仪际,靈堂內的尸體忽然破棺而出围小,到底是詐尸還是另有隱情,我是刑警寧澤树碱,帶...
    沈念sama閱讀 36,572評論 5 351
  • 正文 年R本政府宣布肯适,位于F島的核電站,受9級特大地震影響赴恨,放射性物質發(fā)生泄漏疹娶。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,254評論 3 336
  • 文/蒙蒙 一伦连、第九天 我趴在偏房一處隱蔽的房頂上張望雨饺。 院中可真熱鬧,春花似錦惑淳、人聲如沸额港。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,746評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽移斩。三九已至,卻和暖如春绢馍,著一層夾襖步出監(jiān)牢的瞬間向瓷,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,859評論 1 274
  • 我被黑心中介騙來泰國打工舰涌, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留猖任,地道東北人。 一個月前我還...
    沈念sama閱讀 49,359評論 3 379
  • 正文 我出身青樓瓷耙,卻偏偏與公主長得像朱躺,于是被迫代替她去往敵國和親刁赖。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,922評論 2 361

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,336評論 25 707
  • 姓名:吳兆陽 學號:14020199009 轉自韋東山 嵌牛導讀:對嵌入式初學者长搀,沒有足夠的視野選擇一個合適投入方...
    吳兆陽閱讀 2,390評論 0 4
  • 姓名:屈彥維 學號:16020610026 引自:http://lw.3edu.net/qrs/lw_46749....
    懷光_ee48閱讀 1,388評論 0 0
  • 天突然變冷宇弛,中午還下起了大雪。薄衫單衣在雪里走了一遭回來竟然有點發(fā)暈源请,鼻涕直流枪芒。羽絨棉襖都已經洗好收進了柜子,懶得...
    覺夢2016閱讀 291評論 0 1
  • 腦洞大開已經進行到了第3期巢钓,每每到對練的時候病苗,群里才真的熱鬧起來,盡管就只有我和丁丁兩個人在群里講話症汹,大師兄圍觀硫朦。...
    婷下來思考閱讀 155評論 0 3