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

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

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

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

評論