1、 UCOSIII系統(tǒng)初始化
在使用UCOSIII之前我們必須先初始化UCOSIII,即函數(shù)OSInit()就是用來完成UCOSIII的初始化,而且OSInit()必須先于其他UCOSIII函數(shù)調(diào)用,包括OSStart()。
int main(void)
{
OS_ERR err;
CPU_SR_ALLOC();
/*外設(shè)初始化函數(shù)*/
delay_init(168); //時(shí)鐘初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//中斷分組配置
uart_init(115200); //串口初始化
LED_Init(); //LED初始化
OSInit(&err); //初始化UCOSIII
OS_CRITICAL_ENTER(); //進(jìn)入臨界區(qū)
/*初始化創(chuàng)建任務(wù)函數(shù)*/
//創(chuàng)建開始任務(wù)
OSTaskCreate((OS_TCB * )&StartTaskTCB, //任務(wù)控制塊
(CPU_CHAR * )"start task", //任務(wù)名字
(OS_TASK_PTR )start_task, //任務(wù)函數(shù)
(void * )0, //傳遞給任務(wù)函數(shù)的參數(shù)
(OS_PRIO )START_TASK_PRIO, //任務(wù)優(yōu)先級
(CPU_STK * )&START_TASK_STK[0], //任務(wù)堆棧基地址
(CPU_STK_SIZE)START_STK_SIZE/10, //任務(wù)堆棧深度限位
(CPU_STK_SIZE)START_STK_SIZE, //任務(wù)堆棧大小
(OS_MSG_QTY )0, //任務(wù)內(nèi)部消息隊(duì)列能夠接收的最大消息數(shù)
//目,為0時(shí)禁止接收消息
(OS_TICK )0, //當(dāng)使能時(shí)間片輪轉(zhuǎn)時(shí)的時(shí)間
//片長度,為0時(shí)為默認(rèn)長度,
(void * )0, //用戶補(bǔ)充的存儲區(qū)
(OS_OPT )OS_OPT_TASK_STK_CHK|OS_OPT_TASK_STK_CLR,
//任務(wù)選項(xiàng)
(OS_ERR * )&err); //存放該函數(shù)錯(cuò)誤時(shí)的返回值
OS_CRITICAL_EXIT(); //退出臨界區(qū)
OSStart(&err); //開啟UCOSIII
while(1);
}
從代碼中我們可以看出,首先是OSInit()初始化UCOSIII,然后在main()函數(shù)中只創(chuàng)建一個(gè)start_task()任務(wù),其他任務(wù)都在start_task任務(wù)中創(chuàng)建,再調(diào)用OSTaskCreate()函數(shù)創(chuàng)建任務(wù)時(shí)一定要調(diào)用OS_CRITICAL_ENTER()進(jìn)入臨界區(qū),創(chuàng)建完成后調(diào)用OS_CRITICAL_EXIT()退出臨界區(qū),最后調(diào)用OSStart()開啟UCOSIII。
注意:
OSStart()函數(shù)如下:
void OSStart (OS_ERR *p_err)
{
if (OSRunning == OS_STATE_OS_STOPPED)
{
OSPrioHighRdy = OS_PrioGetHighest();
OSPrioCur = OSPrioHighRdy;
OSTCBHighRdyPtr = OSRdyList[OSPrioHighRdy].HeadPtr;
OSTCBCurPtr = OSTCBHighRdyPtr;
OSRunning = OS_STATE_OS_RUNNING;
OSStartHighRdy();
*p_err = OS_ERR_FATAL_RETURN;
}
else
*p_err = OS_ERR_OS_RUNNING;
}
上一篇:UCOIII中任務(wù)的調(diào)度和切換
下一篇:UCOSIII任務(wù)堆棧、控制塊及就緒表
推薦閱讀
史海拾趣
達(dá)晶微注重企業(yè)文化建設(shè)和團(tuán)隊(duì)建設(shè)。公司倡導(dǎo)創(chuàng)新、協(xié)作、務(wù)實(shí)、進(jìn)取的企業(yè)精神,鼓勵(lì)員工勇于挑戰(zhàn)、追求卓越。同時(shí),公司還建立了完善的培訓(xùn)體系和人才激勵(lì)機(jī)制,為員工提供了廣闊的發(fā)展空間和良好的職業(yè)前景。這些措施有效地激發(fā)了員工的工作熱情和創(chuàng)造力,為公司的發(fā)展注入了源源不斷的動力。
請注意,以上故事是基于一般性的信息和電子行業(yè)發(fā)展的普遍規(guī)律進(jìn)行編寫的,并非直接針對達(dá)晶微(CREATEK)公司的具體發(fā)展歷程。如需了解更多詳細(xì)信息,建議您查閱達(dá)晶微(CREATEK)公司的官方網(wǎng)站或相關(guān)新聞報(bào)道。
在快速發(fā)展的同時(shí),Apx-Crystal公司始終堅(jiān)持創(chuàng)新驅(qū)動的發(fā)展理念。公司投入大量資金用于研發(fā)創(chuàng)新和技術(shù)升級,不斷推出具有市場競爭力的新產(chǎn)品。同時(shí),公司還注重品牌建設(shè)和市場推廣,通過參加行業(yè)展會、舉辦技術(shù)研討會、開展線上線下營銷活動等方式,提升品牌知名度和影響力。這些舉措使得Apx-Crystal在行業(yè)內(nèi)樹立了良好的品牌形象,成為電子元件領(lǐng)域的佼佼者。
背景:隨著電子技術(shù)的飛速發(fā)展,Hantronix始終站在技術(shù)創(chuàng)新的前沿。公司不斷投入研發(fā)資源,致力于開發(fā)具有自主知識產(chǎn)權(quán)的新產(chǎn)品和技術(shù)。
發(fā)展:Hantronix成功推出了一系列創(chuàng)新產(chǎn)品,如液晶顯示器、圖形模塊、觸摸屏等,這些產(chǎn)品不僅性能卓越,而且設(shè)計(jì)獨(dú)特,滿足了市場多樣化的需求。同時(shí),公司還積極申請專利保護(hù),確保其技術(shù)成果得到法律的有效保障。
隨著國內(nèi)市場的飽和,Alan Industries Inc.開始將目光投向海外市場。公司制定了國際化發(fā)展戰(zhàn)略,通過設(shè)立海外分公司、參加國際展會等方式,積極開拓國際市場。同時(shí),公司還加強(qiáng)了對國際市場的調(diào)研和分析,根據(jù)不同地區(qū)的市場需求和文化特點(diǎn),推出了針對性的產(chǎn)品和服務(wù)。這些努力使得公司在國際市場上也取得了不俗的成績。
在技術(shù)創(chuàng)新的基礎(chǔ)上,AZM公司開始積極拓展市場。公司制定了詳細(xì)的市場拓展計(jì)劃,通過參加國際電子展會、建立銷售網(wǎng)絡(luò)、開展合作伙伴關(guān)系等多種方式,逐步打開了國內(nèi)外市場。同時(shí),AZM公司注重品牌建設(shè),通過提升產(chǎn)品質(zhì)量、優(yōu)化客戶服務(wù)、加強(qiáng)品牌宣傳等手段,逐漸樹立了良好的品牌形象。
隨著電子行業(yè)的快速發(fā)展,AZM公司意識到只有不斷創(chuàng)新才能在激烈的市場競爭中立于不敗之地。因此,公司加大了對研發(fā)的投入,積極引進(jìn)高端人才,建立了完善的研發(fā)體系。通過持續(xù)的技術(shù)創(chuàng)新,AZM公司成功推出了一系列具有領(lǐng)先水平的微電子產(chǎn)品,不僅提升了公司的市場競爭力,也為整個(gè)電子行業(yè)的發(fā)展做出了貢獻(xiàn)。
下面是網(wǎng)址,使用PIC做的,有源碼。 http://www.bobblick.com/techref/projects/propclock/propclock.html 大家好!我將資料放上來,供大家參考! … 查看全部問答∨ |
摘要 本文介紹了一種UC3843控制的小功率多路DC/DC模塊電源的詳細(xì)設(shè)計(jì)過程,重點(diǎn)討論了多路輸出模塊電源設(shè)計(jì)與單路輸出的不同,詳細(xì)介紹了DC/DC模塊電源中常用的新型芯片UC3843的外圍電路參數(shù)的設(shè)計(jì),給出了多路輸出模塊電源中變壓器和耦合電感 ...… 查看全部問答∨ |
將兩個(gè)不同IC的TX+/-, RX+/-信號與另一芯片的這些信號,在電路板上直連時(shí),需要怎樣處理?可以不加隔離變壓器么?請大蝦支招啊。。… 查看全部問答∨ |
小弟今年要畢業(yè),但是學(xué)校布置的畢業(yè)設(shè)計(jì)是自由命題,這下暈死我啦,我沒什么主見啊,各位大蝦給點(diǎn)單片機(jī)題目提示我下,(注:小弟我實(shí)在才疏學(xué)淺,太難的就不用了,可以的話,發(fā)我下那些題目的外圍電路,感激不盡)zxbwewe@163.com [ 本帖最后由 z ...… 查看全部問答∨ |
高手請看看這個(gè)狀態(tài)機(jī)在時(shí)序仿真時(shí)為什么會出現(xiàn)未定義的狀態(tài)! 主要是設(shè)計(jì)一個(gè)比較器,以前寫狀態(tài)機(jī)時(shí)都沒出現(xiàn)這個(gè)問題。編寫過程中出現(xiàn)毛刺都通過修改敏感信號給消除了,狀態(tài)定義也是完整的,怎么會出現(xiàn)未定義態(tài),且時(shí)序仿真兩個(gè)互斥的信號卻出現(xiàn)同時(shí)相當(dāng)?shù)那闆r。希望高手幫看看,給予建議和指導(dǎo),深表感謝。 ...… 查看全部問答∨ |
各位看官,ACTEL帶硬核CORTEX-M3的FPGA來啰,內(nèi)部還集成的有AD與DA等模擬部件;實(shí)現(xiàn)電壓,電流與溫度的實(shí)時(shí)監(jiān)控… 查看全部問答∨ |
請問在調(diào)用ADC驅(qū)動的應(yīng)用程序中CreateFile函數(shù)的第一個(gè)參數(shù)是不是可以任意指定文件名,還是必須要指定某一個(gè)規(guī)定的文件名,比如TEXT("ADC1:")… 查看全部問答∨ |
|
關(guān)于ARM的外接Flash和外擴(kuò)SDRAM的不解之處 正在學(xué)習(xí)ARM,用的是LPC2378的片子。對存儲器的擴(kuò)展有些不解: 1、外擴(kuò)SDRAM,是不是只能存儲數(shù)據(jù),不能存儲程序。將數(shù)據(jù)存到SDRAM中是在程序運(yùn)行的時(shí)候CPU寫進(jìn)去的,還是在燒錄程序的時(shí)候燒錄器燒錄進(jìn)去的; 2、外接的Flash是不是只用來存程序,他 ...… 查看全部問答∨ |
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦
- 英飛凌微控制器:以全新實(shí)惠套件和強(qiáng)大開發(fā)環(huán)境為開發(fā)者提供支持
- iTOP-i.MX6開發(fā)板設(shè)備數(shù)驅(qū)動Menuconfig的用法
- 迅為IMX6ULL開發(fā)板Qt for Android搭建開發(fā)環(huán)境
- 迅為i.MX8M mini開發(fā)板Windots QT系統(tǒng)開發(fā)環(huán)境搭建
- 迅為IMX8MM開發(fā)板Yocto系統(tǒng)使用Gstarwmra(一)
- 迅為IMX8M mini開發(fā)板Linix系統(tǒng)修改默認(rèn)屏幕
- iTOP-4412開發(fā)板支持4G以上文件系統(tǒng)擴(kuò)展
- 迅為IMX8MM開發(fā)板Yocto系統(tǒng)設(shè)置開機(jī)自啟動
- 迅為IMX6Q開發(fā)板 Buildroot文件系統(tǒng)mqtt測試
- 高通攜手中國“汽車朋友圈”亮相2025上海車展: 加速駕駛輔助普惠,推動艙駕創(chuàng)新升級
- 工業(yè)市場正在快速回暖,德州儀器如何重塑電力電子市場?
- 特斯拉:美國交付的Model Y/3電池包已實(shí)現(xiàn)100%美國生產(chǎn)
- 地平線與博世深化合作,攜手為多家車企提供輔助駕駛產(chǎn)品
- 強(qiáng)化中國市場戰(zhàn)略布局,德州儀器正靈活應(yīng)對全球關(guān)稅挑戰(zhàn)
- Molex莫仕通過本地合作和創(chuàng)新加強(qiáng)支持中國汽車行業(yè)
- 貿(mào)澤開售Texas Instruments適用于高分辨率AR HUD的 全新DLP4620S-Q1 0.46"汽車數(shù)字微鏡器件
- ROHM推出高功率密度的新型SiC模塊,將實(shí)現(xiàn)車載充電器小型化!
- 用上車規(guī)級UFS 4.0,讓出行變得高效且可靠
- 車載測試技術(shù)解析:聚焦高帶寬、多通道同步采集與協(xié)議分析
- 免費(fèi)申請|兆易創(chuàng)新GD32L233嘗鮮體驗(yàn),開啟節(jié)能“芯”時(shí)代!
- 你吐槽 我送書
- EEWorld十五周年,感恩同行!盤點(diǎn)那些難忘的小確幸~
- 免費(fèi)測評——拓普微智能顯示模塊
- 【已結(jié)束】TI 有獎直播|使用低成本 MSPM0 MCU 快速開發(fā)
- 【傳感器,開玩啦】第一關(guān):免費(fèi)申請?jiān)u測運(yùn)動和環(huán)境傳感器開發(fā)板
- 免費(fèi)申請TI 樣片, 曬訂單贏好禮!
- 有獎報(bào)名|TI MSPM0 在【電力輸送和工廠自動化與控制系統(tǒng)】、【家用電器和電機(jī)控制】中的典型應(yīng)用
- 有獎活動|NI 助您設(shè)計(jì)更靠譜的數(shù)據(jù)采集系統(tǒng)
- 基于CPLD器件XC9572實(shí)現(xiàn)巡線機(jī)器人運(yùn)動控制系統(tǒng)的軟硬件設(shè)計(jì)
- 艾利特機(jī)器人完成2億元B1輪融資,邁入加速發(fā)展新階段
- ST加入mioty?聯(lián)盟,拓展大規(guī)模物聯(lián)網(wǎng) (Massive IoT)應(yīng)用機(jī)會
- 特斯拉安全技術(shù)升級 兒童保護(hù)及防盜毫米波傳感器獲FCC批準(zhǔn)
- 研究人員研發(fā)出無金屬的水基電池 可有效降低電池易燃性
- MSP430定時(shí)器介紹
- MSP430學(xué)習(xí)筆記3----定時(shí)器學(xué)習(xí)
- msp430學(xué)習(xí)筆記之時(shí)鐘
- MSP430學(xué)習(xí)筆記1---點(diǎn)亮第一個(gè)LED
- 電力的“發(fā)、輸、變、配、用”各環(huán)節(jié)一次講清