前不久在用51單片機(jī)做一個(gè)東西,用到了GPS模塊、GSM模塊、電子羅盤模塊、DS1302計(jì)時(shí)、LCD1602循環(huán)顯示時(shí)間和當(dāng)前磁方位角信息,單片機(jī)程序就寫了幾個(gè)周,雖然磕磕碰碰,但最后還是能夠勉強(qiáng)靠一個(gè)while(1)大循環(huán)和無(wú)數(shù)子函數(shù)搞定了,但是也深切地感覺(jué)到單片機(jī)在面對(duì)一個(gè)較大工程時(shí)“裸奔”的無(wú)奈,尤其是面對(duì)多個(gè)需要同時(shí)執(zhí)行的任務(wù)。
對(duì)于我而言,“操作系統(tǒng)”一直以來(lái)都感覺(jué)是一種可望而不可及,而且尤其的偏向于軟件的那么一種東西,而我勵(lì)志是成為一名硬件工程師,這段時(shí)間自學(xué)單片機(jī)以來(lái),天天就寫程序、看代碼,越發(fā)感覺(jué)到自己“偏科”了,電路沒(méi)時(shí)間設(shè)計(jì)了,DXP怎么用也怕都給忘了,很多電子元件的特性啥的也快忘差不多了,我這是要練成太極了嗎?
但是單片機(jī)確實(shí)是一種好東西,我覺(jué)得它能夠釋放硬件電路的潛能。
曾經(jīng)見(jiàn)到過(guò)網(wǎng)上一個(gè)哥們用晶振+非門振蕩電路、D觸發(fā)器分頻、計(jì)數(shù)器芯片、7段數(shù)碼管解碼芯片和數(shù)碼管做了一個(gè)簡(jiǎn)單的時(shí)鐘。后來(lái)我們學(xué)了數(shù)電,掌握了一些知識(shí)后,我也用proteus仿真了一個(gè),電路異常的麻煩。但是出來(lái)的功能單一到了極點(diǎn),增加任何一個(gè)功能都會(huì)消耗極大的心力、物力和財(cái)力。想到這里,我就能夠體會(huì)當(dāng)時(shí)設(shè)計(jì)處理器的工程師們的初衷。
單片機(jī)作為微型處理器發(fā)展的一條朝著多功能走的路線,在今天吸引了一大票愛(ài)好者來(lái)學(xué)習(xí)使用它,我覺(jué)得一點(diǎn)是它便宜,二是它有用。
好吧,扯遠(yuǎn)了。。。。言歸正傳!
面對(duì)一開(kāi)始說(shuō)到的問(wèn)題,我迫切想知道面對(duì)這種情況其他工程師或者愛(ài)好者是如何解決的? 于是我問(wèn)了度娘,度娘說(shuō)的話讓我茫然了-----操作系統(tǒng)(OS)。
Windows XP嗎?Linux嗎?android嗎?我慌了!最近寫單片機(jī)程序給我的感觸就是以后少跟代碼打交道啊。。。。這不是火坑嘛!
最后看到一個(gè)似曾相識(shí)的名字---uCOS II。話說(shuō)這是所有學(xué)嵌入式的一個(gè)必經(jīng)之路。看了很多網(wǎng)友在網(wǎng)上的言論。
于是毅然決然地告訴自己:就是它了!
然后就是幾天苦苦看網(wǎng)上下來(lái)的PPT、WORD、PDF。
最終決定從我最熟悉的51單片機(jī)開(kāi)始來(lái)學(xué)習(xí)uCOS II的原理!
現(xiàn)在開(kāi)帖!希望大家對(duì)uCOS有了解或者有興趣的朋友一起來(lái)學(xué)習(xí)和討論如何給單片機(jī)這個(gè)小東西“注入靈魂”?
首先分享一些網(wǎng)絡(luò)下載的很好的資料:文字版_嵌入式實(shí)時(shí)操作系統(tǒng)uCOS-II_邵貝貝.pdf
以下是一個(gè)經(jīng)過(guò)我測(cè)試,能夠在STC增強(qiáng)型51單片機(jī)上運(yùn)行的uCOS II移植程序:
uCOS-II內(nèi)核移植到STC單片機(jī).zip