4000336002

中公优就业it培训学校天津校区

天津本地出名的嵌入式开发培训机构名单榜首一览

来源:中公优就业it培训学校天津校区 发布时间:2023/9/22 15:35:07

   天津本地出名的嵌入式开发培训机构名单榜首一览 ,小编推荐中公优就业.中公优就业是中公教育IT培训品牌,致力于培养面向电商及互联网领域的人才,以学员就业为目的,优质就业为宗旨,是一家集互联网营销师,UI设计培训,?SEO优化师,SEM竞价师,社会化媒体运营师,电商运营师,互联网产品经理,网页设计师,Web前端工程师,PHP工程师,Android工程师,iOS工程师,Java工程师,C/C++工程师,软件测试工程师等课程为一体的IT培训机构.

  中斷級任務切換

  OSIntExit()通過調用OSIntSw(),在ISR中執行任務切換函數。因為OSIntCtxSw()是在ISR中被調用的,所以假定所有的處理器寄存器都被正確地保存到了被中斷任務的堆棧中。OSIntSw()函數的絕大多數代碼與OSCtxSw()函數是一樣的,區別只是:因為ISR已經保存了CPU的寄存器,而不再需要在OSIntSw()函數中保存CPU的寄存器。在進行操作系統移植時,該段程序的代碼如下:

  移植中的問題

  ARM處理器的軟件調試通過JTAG口直接在系統的外部SRAM運行,因此在程序調試之前,ARM處理器的開發環境軟件首先調用初始化文件(*.ini),用戶可以根據自己系統的外部存儲器和設備的地址來修改文件。如果該文件有誤,開發環境軟件將無法通過JTAG與處理器通信。系統調試過程中,經常會出現程序跑飛的現象,經過測試與分析,主要有4個方面原因:

  (1)中斷處理程序的中斷矢量地址沒有正確賦值,從而導致發生中斷後CPU無法運行到中斷處理程序位置;

  (2)在OsctxSw和OSIntctxSw中的任務切換語句後加人幾條NOP空語句,確保任務切換的相應指令執行結束,如果在這些位置沒有加相應的空操作指令,也會導致程序跑飛;

  (3)由於堆棧的空間分配不夠,以及沒有給CPU的各個工作模式分配空間,導致任務切換時,堆棧溢出;

  (4)μC/OS-Ⅱ要求用戶提供一個時鍾資源來實現時鍾節拍,時鍾節拍應該每秒鍾發生10~100次,用戶必須在開始多任務調度後(即調用OSStart後)允許時鍾節拍中斷。通常的錯誤是在調用OSlnit()和OSStart()之間允許時鍾節拍中斷,同時用戶不要單純地追求實時性,而將系統的時鍾節拍頻率增加太高。以上幾個方面的問題解決後,系統的工作非常穩定。

  4 系統測試

  移植完成後的系統包括4個部分:自啟動程序、μC/OS-Ⅱ系統文件、移植代碼、應用程序。開發環境是ARM公司提供的ADSl.2(ARM Dev-eloper Suite)。該系統創建了以下3個任務來驗證μC/OS-Ⅱ的移植成功:

  在為自己的微處理器做完μC/OS-Ⅱ的移植後,首先建立3個任務,之後不加任何其他應用代碼來測試移植好的μC/OS-Ⅱ,也就是說應該先測試內核自身的運行狀況。這樣做有2個原因:不希望將事情複雜化;如果有些地方沒有工作可以明白是移植本身的問題,而不是應用代碼產生的問題。經過測試和修改,無相關錯誤產生,說明移植成功。

  5 結語

  μC/OS-Ⅱ具有很強的移植性,具有多任務實時可剝奪型內核,而且代碼量較小,源代碼開放,可被廣泛移植到8位、16位等許多微處理器上。國外諸如APC,ROTEK等企業都在產品中成功地使用了μC/OS-Ⅱ內核,不僅開發成本低,而且系統精簡,因此將μC/OS-Ⅱ移植到LPC-2378這種工業級的芯片上,具有相當的商業價值。

领取试听课
每天限量名额,先到先得
温馨提示:为不影响您的学业,来校区前请先电话或QQ咨询,方便我校安排相关的专业老师为您解答
  • 详情请进入 中公优就业it培训学...

关于我们 | 招生信息 | 新闻中心 | 学校动态

版权所有:搜学搜课(www.soxsok.com)