日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]現(xiàn)在開始仔細分析,整個點燈大法是如何實現(xiàn)的。一、硬件初始化。在我這里是指對GPIO進行初始化LED_GPIO_Config();//LED端口初始化具體的配置就不多說了。二、操作系統(tǒng)的初始化OSInit();接著我們看看這里面具體做了什

現(xiàn)在開始仔細分析,整個點燈大法是如何實現(xiàn)的。

一、硬件初始化。

在我這里是指對GPIO進行初始化


LED_GPIO_Config();//LED端口初始化

具體的配置就不多說了。

二、操作系統(tǒng)的初始化

OSInit();

接著我們看看這里面具體做了什么:


voidOSInit(void)

{

OSInitHookBegin();/*Callportspecificinitializationcode*/

OS_InitMisc();/*Initializemiscellaneousvariables*/

OS_InitRdyList();/*InitializetheReadyList*/

OS_InitTCBList();/*InitializethefreelistofOS_TCBs*/

OS_InitEventList();/*InitializethefreelistofOS_EVENTs*/

OS_InitTaskIdle();/*CreatetheIdleTask*/

OS_InitTaskStat();/*CreatetheStatisticTask*/

OSInitHookEnd();/*Callportspecificinit.code*/

}

上面是去掉一些宏開關(guān)的簡化代碼:


1、首先是hook函數(shù),下面結(jié)合官方文檔以及我自己的理解,談?wù)勥@個hook函數(shù)

本人理解,對于我們初學(xué)者來說hook函數(shù)是不需要管的,直接把宏開關(guān)關(guān)掉,因為操作系統(tǒng)的功能擴充
我們暫時還用不到,而這個hook函數(shù)就是實現(xiàn)對操作系統(tǒng)功能的擴充,之所以加上了這個hook函數(shù),就是為了
防止我們直接修改源代碼。從而對源代碼產(chǎn)生破壞!

也就是說我們可以直接把這兩個hook函數(shù)注釋掉,自己動手試試吧,我試過了!

2、接著是這個 OS_InitMisc(); 看注釋就是初始化各種各樣的變量。我們可以進去看看,代碼如下:

staticvoidOS_InitMisc(void)

{

#ifOS_TIME_GET_SET_EN>0

OSTime=0L;/*Clearthe32-bitsystemclock*/

#endif

OSIntNesting=0;/*Cleartheinterruptnestingcounter*/

OSLockNesting=0;/*Cleartheschedulinglockcounter*/

OSTaskCtr=0;/*Clearthenumberoftasks*/

OSRunning=OS_FALSE;/*Indicatethatmultitaskingnotstarted*/

OSCtxSwCtr=0;/*Clearthecontextswitchcounter*/

OSIdleCtr=0L;/*Clearthe32-bitidlecounter*/

#ifOS_TASK_STAT_EN>0

OSIdleCtrRun=0L;

OSIdleCtrMax=0L;

OSStatRdy=OS_FALSE;/*Statistictaskisnotready*/

#endif

}

從上面的代碼中我們可以獲得這樣的信息:


這幾行代碼完成的就是對系統(tǒng)定時器初值、中斷計數(shù)器、當(dāng)前任務(wù)數(shù)量等進行清零,沒有別的意思了。

3、OS_InitRdyList這個函數(shù)看名字意思是初始化就緒態(tài)列表

那么就序列表指的就是任務(wù)處于三態(tài)中的就緒態(tài)的任務(wù),關(guān)于三態(tài)的詳細解釋可以百度一下!

那么還是一樣跟蹤進去看看代碼里面到底做了些什么、


staticvoidOS_InitRdyList(void)

{

INT8Ui;

#ifOS_LOWEST_PRIO<=63

INT8U*prdytbl;

#else

INT16U*prdytbl;

#endif

OSRdyGrp=0;/*Clearthereadylist*/

prdytbl=&OSRdyTbl[0];

for(i=0;i

*prdytbl++ = 0;

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

無論是在統(tǒng)治NLP屆的Transformer,還是最近視覺領(lǐng)域的新秀Vision Transformer,我們都能在模型中看到Transpose/Permute算子的身影,特別是在多頭注意力機制(Multi-Head A...

關(guān)鍵字: se rc os

在六個服務(wù)領(lǐng)域表現(xiàn)出顯著提升;從2021年的第7位躍居第2位 印度班加羅爾2022年4月11日 /美通社/ -- 下一代數(shù)字服務(wù)和咨詢領(lǐng)域的全球領(lǐng)軍者Infosys(印度國家證券交易所、孟買證券交易所和紐約證券交易所代...

關(guān)鍵字: Group os

(全球TMT2022年4月11日訊)下一代數(shù)字服務(wù)和咨詢領(lǐng)域的全球領(lǐng)軍者Infosys近期宣布,在Everest Group PEAK Matrix?2022年度 IT服務(wù)提供商獎中排名第二。在第六屆PEAK Matr...

關(guān)鍵字: Group os

香港2022年3月29日 /美通社/ -- 在傳統(tǒng)與創(chuàng)新的十字路口,一些人不僅記錄了歷史,而且潛心打造未來?;仡橳oshiba TV第一次屏幕閃爍的那一刻,創(chuàng)新便已深植于公司的“血液”,致力于真實...

關(guān)鍵字: os

北京2022年3月21日 /美通社/ -- 微美全息軟件有限公司(納斯達克: WIMI)(以下簡稱為“微美全息”或“公司”),一家全球領(lǐng)先的增強現(xiàn)實(“AR”)服務(wù)提供商,今天宣布宣布被納入Proshares Metav...

關(guān)鍵字: os

Infosys 元宇宙工坊(Infosys metaverse foundry)是 Infosys Living Labs 不可或缺的一部分,它正在推動企業(yè)的數(shù)字創(chuàng)新議程,以適應(yīng)新興的優(yōu)先事項和市場趨勢。 Infosys...

關(guān)鍵字: os

Chronos芯片將搭載于Ouster面向量產(chǎn)車推出的DF系列固態(tài)數(shù)字激光雷達上,提高其性能與功效...

關(guān)鍵字: 芯片 激光雷達 os

(全球TMT2022年3月11日訊)2022年3月11日,高分辨率數(shù)字激光雷達供應(yīng)商Ouster發(fā)布最新Chronos 芯片,這是一款車規(guī)級、完全定制化的數(shù)字激光雷達接收芯片,將搭載于其DF系列固態(tài)激光雷達上。Chro...

關(guān)鍵字: 芯片 激光雷達 os

上海2022年3月10日 /美通社/ -- 中國上海,2022年3月,柏中(Bossard)宣布推出Smart Vending Cloud幫助客戶解決MRO耗材管理問題,進一步升級“智能工廠物流”服務(wù)。此舉也意味著柏中在...

關(guān)鍵字: 全自動 os

(全球TMT2022年2月22日訊)孚昇電子(Fusion Worldwide)收購了位于新加坡的大型電子元件測試公司Prosemi Mfg Pte Ltd。由于供應(yīng)鏈經(jīng)歷了歷史性的限制,導(dǎo)致周轉(zhuǎn)時間過長,此次收購將進...

關(guān)鍵字: os se 電子元件
關(guān)閉