我隻是來分享自己的UCOS學習資料的,,順便叨叨

,自己是看着任哲的書一點一點學的,,,
自己大四的時候學的UCOSii,,但是好像學了之後,就隻有一次真正使用過它,,在使用網絡子產品ENC28J60的時候.....
對于當時自己還沒學的時候,一直很納悶什麼是作業系統哈,,是什麼原因讓人們去編寫作業系統程式,,到底是為了解決什麼問題,而寫的作業系統
其實最貼近人的例子就是自己的電腦啦,,,和自己的沒有作業系統的單片機程式(俗稱"裸機")做比較
自己的電腦能一邊看視訊,一邊聽歌,一邊打字,一邊聊天,一邊下東西...........感覺是不是同時進行
而沒有作業系統的單片機程式,就是平時寫的程式,,,,算啦,,舉個例子
假設哈,,我需要寫一個處理許多事情的程式
如果在沒有作業系統的單片機上做,,也可以做,,,不過呢!有個麻煩的地方就是,,為了使各個功能都能及時(假設響應速度為1us)的響應
我們做程式的時候就要想法,把有延時的地方不能真的延時,要能立即執行下面的功能,,,,,,,,,,,就在想有沒有更好地方式來實作呢
對了單片機裡面的程式主要是根據寄存器的各項執行 ,,,,,就在想要是這樣就好了
要是有個程式哈,,我隻要把我想要的各個功能寫好,并且寫成一個函數一個函數的,然後呢這個程式有個功能,我隻要把我寫的每個函數的函數位址傳給它,,然後就不用我管了
然後整個程式就像上面那樣執行多好啊
是以作業系統就來拯救我了
先上菜
這兩個函數哈,,利用UCOS提供的OSTaskCreate()函數,使咱這兩個函數實作一開始想的那樣執行
看一下這個函數
這個數組哈有個新名字
那個數組裡面就是這樣子
多個任務就是這樣子,,,,
對于裁剪.............這個您學了就知道了.........感覺名字挺高大上,,可能對于小系統而言吧比較簡單點
我把自己學習的曆程給大家,,,我的曆程裡面一般都很簡簡單單不過我當時是
關于Proteus 與 Keil 聯調 ,,就是能夠一步一步的執行,看程式運作,,
把proteus安裝目錄下 VDM51.dll(搜一下吧)檔案複制到Keil安裝目錄的 \C51\BIN 目錄中。
如果沒有自己在網上下一個,,或者我下面有百度雲分享,裡面有
修改keil安裝目錄下 Tools.ini檔案,在C51字段加入TDRV9=BIN\VDM51.DLL ("Proteus VSM Monitor-51 Driver"),儲存 注意:不一定要用TDRV9,根據原來字段選用一個不重複的數值就可以了。引号内的名字随意
進入KEIL的project菜單option for target '工程名'。在DEBUG選項中右欄上部的下拉菜選中 Proteus VSM Monitor-51 Driver。 在進入seting,如果同一台機IP 名為127.0.0.1,如不是同一台機則填另一 台的IP位址。端口号一定為8000 注意:可以在一台機器上運作keil,另一台中運作proteus進行遠端仿真
下面是自己當年學的點點滴滴,,會發現缺一個 記憶體配置設定,,,,,,這是因為學到消息隊列的時候,自己為畢業證的事情分心了,然後堅持了一個星期想考研.........最後
還是被興趣給打敗了................對于記憶體配置設定,我看了老衲五木,關于網絡Lwip的源碼時介紹的挺好的,,親們可以百度一下,,這個人寫文章也挺有意思的,,,也是開頭先 扯一點别的