(一)裸編程是什么?
一個數(shù)據(jù)結(jié)構(gòu),一個模塊形成,一個單片機的指令,一個硬指令的運行機制,一個口線的驅(qū)動方式,一個中斷的順序,一個跳變的延遲,一個代碼的位置,一個邏輯的組織,一個模塊與模塊之間的生(運行時的狀態(tài))死(不運行時的狀態(tài))關(guān)系等等,都是裸程序思想的組成部分。
(二)裸編程具體做法
我們知道網(wǎng)絡(luò)傳輸標(biāo)準(zhǔn)層次有七層:應(yīng)用層、表示層、會話層、傳輸層、網(wǎng)絡(luò)層、鏈路層、物理層,這么多層做什么用?也許理解這樣分層的概念也十分辛苦,但是理解這樣分層的思想,就容易多了,而且這也是我們硬件工程師們最應(yīng)該借鑒的思想,讓我們的硬件設(shè)計更具有標(biāo)準(zhǔn)性和前瞻性。
這個七層的思想從根本上講就是將一個網(wǎng)絡(luò)傳輸產(chǎn)品細化,讓不同的制造商選擇一個適合自己的層次開發(fā)自己的產(chǎn)品,層次不一樣,他們所選擇的開發(fā)基礎(chǔ)和開發(fā)內(nèi)容就不一樣,高一層開發(fā)者繼承低層開發(fā)者的成果,從而節(jié)省社會資源,提高社會生產(chǎn)力。對這個指導(dǎo)思想我就不贅述了,各位自己去理解,這里要說的是,微機上的面向?qū)ο缶幊趟枷刖褪侨缤趹?yīng)用層上實現(xiàn)的思想,而裸程序的面向?qū)ο笏枷雱t如同在鏈路層上實現(xiàn)的思想,他下面沒有軟件開發(fā)包,只有物理構(gòu)架。但是在應(yīng)用層上實現(xiàn)的思想,最終都要翻譯到物理構(gòu)架上。
但是面向?qū)ο蟮乃枷氩皇沁@樣做的,而是首先把顯示器當(dāng)作一個對象,該對象具有一些功能和一些變量屬性,不同的顯示器在對象中使用相同的代碼標(biāo)識,如函數(shù)指針(C語言中),這樣對于任何一個不同的顯示器,在調(diào)用時都使用同樣的代碼。也許有人說,傳統(tǒng)的做法這樣也可以做呀,為什么要弄得羅里吧唆的呢?其實不然,使用了正確的思想的好處在前頭已經(jīng)說了好多了,如果還模糊就上去再看一次。
(三)準(zhǔn)備工作
(四)展開思想
dispGetMaxCol();//取一行最多有多少列dispGetMaxRow();//取顯示器一共有多少行dispGetMaxColors();//取顯示器最多有多少色dispSetShowMode();//設(shè)置顯示的方式,對于不支持的顯示方式就自動轉(zhuǎn)為正常顯示dispSetWorkMode();//設(shè)置工作模式,如果沒有的模式就返回0,支持的就返回1
(五)數(shù)據(jù)傳遞與程序邏輯是同等重要的
(六)父對象接口函數(shù)與子對象功能剝離
(七)

相信這張圖已經(jīng)足夠說清楚我們在KeilC中如何用語言來組織我們的顯示器對象disp了。disp是一個抽象的對象,它只是一種聯(lián)系,完成對所有子對象d000、d001、d002到最多d255的歸納概括并提供一組被調(diào)用者所使用的功能接口。這些功能接口正是上貼所提到的函數(shù)指針。而具體的功能實現(xiàn)及不同顯示對象對數(shù)據(jù)結(jié)構(gòu)的要求,我們都可以交給子對象設(shè)計工程師自己去決定。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
單片機
+關(guān)注
關(guān)注
6067文章
44992瀏覽量
650510 -
編程
+關(guān)注
關(guān)注
88文章
3689瀏覽量
95259
原文標(biāo)題:一位嵌入式工程師,硬核單片機編程思想!
文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
熱點推薦
嵌入式工程師分享:學(xué)習(xí)單片機必備的八大步驟
成為一名嵌入式工程師,簡單的單片機基礎(chǔ)學(xué)習(xí)與應(yīng)用是不可缺少的。學(xué)習(xí)單片機就是學(xué)習(xí)單片機的硬件結(jié)構(gòu),內(nèi)部資源與外設(shè)的應(yīng)用。在C語言中(極少量的
發(fā)表于 10-03 23:13
?2802次閱讀

電子工程師_嵌入式工程師_單片機_筆試題目_面試題目
應(yīng)聘硬件工程師或研發(fā)類工作資料集錦_硬件工程師_電子工程師_嵌入式工程師_單片機_筆試題目_面試
發(fā)表于 08-09 20:38
招聘-單片機開發(fā)工程師,高級嵌入式測試(北京)
獨立開展軟硬件聯(lián)調(diào);5、1年以上單片機程序開發(fā)工作經(jīng)驗;6、做事積極主動,富有激情,自我學(xué)習(xí)能力強。高級嵌入式測試工程師-1人崗位職責(zé):1、建立嵌入式軟件測試流程,并組織軟件測試助理
發(fā)表于 08-30 14:28
ARM嵌入式工程師
本帖最后由 spotaku 于 2017-10-2 10:42 編輯
ARM嵌入式工程師入門門檻高,而且很多職位需要你有項目經(jīng)驗。所以,有一部分同學(xué)最終只能轉(zhuǎn)行:轉(zhuǎn)而做單片機或APP開發(fā)等相對
發(fā)表于 08-24 00:51
ARM嵌入式工程師
本帖最后由 spotaku 于 2017-10-2 10:42 編輯
ARM嵌入式工程師入門門檻高,而且很多職位需要你有項目經(jīng)驗。所以,有一部分同學(xué)最終只能轉(zhuǎn)行:轉(zhuǎn)而做單片機或APP開發(fā)等相對
發(fā)表于 08-24 01:53
ARM嵌入式工程師
本帖最后由 spotaku 于 2017-10-2 10:42 編輯
ARM嵌入式工程師入門門檻高,而且很多職位需要你有項目經(jīng)驗。所以,有一部分同學(xué)最終只能轉(zhuǎn)行:轉(zhuǎn)而做單片機或APP開發(fā)等相對
發(fā)表于 08-24 03:02
ARM嵌入式工程師
本帖最后由 spotaku 于 2017-10-2 10:41 編輯
ARM嵌入式工程師入門門檻高,而且很多職位需要你有項目經(jīng)驗。所以,有一部分同學(xué)最終只能轉(zhuǎn)行:轉(zhuǎn)而做單片機或APP開發(fā)等相對
發(fā)表于 08-30 19:36
ARM嵌入式工程師
本帖最后由 spotaku 于 2017-10-2 10:41 編輯
ARM嵌入式工程師入門門檻高,而且很多職位需要你有項目經(jīng)驗。所以,有一部分同學(xué)最終只能轉(zhuǎn)行:轉(zhuǎn)而做單片機或APP開發(fā)等相對
發(fā)表于 08-31 19:02
嵌入式工程師是如何煉成的
、LCD等)、控制(PWM等控制技術(shù))、數(shù)據(jù)處理(圖形、圖像、語音、視頻等的處理或識別)等,學(xué)好單片機可以為采用嵌入式系統(tǒng)奠定良好的基礎(chǔ)。 中級嵌入式工程師 經(jīng)過第一個階段的學(xué)習(xí),你已
發(fā)表于 04-17 09:31
如何成為高級嵌入式工程師
怎么學(xué)習(xí)怎么積累成為高級嵌入式系統(tǒng)硬件工程師?還要具備的技能;‘在學(xué)習(xí)單片機的過程中積累必要的學(xué)習(xí)經(jīng)驗和知識是非常有必要的,如何在這一過程中逐漸成為高級嵌入式
發(fā)表于 03-05 07:35
嵌入式和單片機的區(qū)別是什么
。那嵌入式和單片機的區(qū)別是什么?有什么關(guān)系?如果把嵌入式比作一顆大樹,那單片機就是這棵樹的樹枝。嵌入式一個行業(yè),
發(fā)表于 11-08 08:55
嵌入式或單片機的編程是怎么樣的呢
的思維的不同的思考》,經(jīng)過一年多的深化,又有些新的感想,角度是不同的,本篇的角度是編程思想。想想嵌入式或單片機的編程是怎么樣的呢?其實
發(fā)表于 12-22 07:15
基于AVR單片機的嵌入式“瘦服務(wù)器”系統(tǒng)設(shè)計思想
基于AVR單片機的嵌入式“瘦服務(wù)器”系統(tǒng)設(shè)計思想
根據(jù)國內(nèi)嵌入式設(shè)備的研究形勢和產(chǎn)業(yè)發(fā)展規(guī)模,提出了基于AVR單片機(ATmega103)
發(fā)表于 05-04 22:10
?974次閱讀

【資料分享】工程師必備嵌入式資料合集
對于許多電子工程師來說,各種電路資料,學(xué)習(xí)資料,新新技術(shù)資料等等,都有越多越好的。本篇帖子就為大家整理了一些比較受工程師歡迎的一些電路資料。如果你有心動的話,不妨就來搜集一波吧!《從C到嵌入式C
發(fā)表于 12-20 18:46
?24次下載

評論