<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 單片機(jī)系統(tǒng)設(shè)計與C51編程實(shí)踐分享

          單片機(jī)系統(tǒng)設(shè)計與C51編程實(shí)踐分享

          作者: 時間:2013-01-16 來源:網(wǎng)絡(luò) 收藏

          【規(guī)則9】使用庫函數(shù)重用代碼,尤其是是標(biāo)準(zhǔn)庫的代碼,而不是手工編寫你自己的代碼。這樣更快、更容易也更安全。KeilC 中提供了多個庫函數(shù),這些庫函數(shù)的用法在KeilC 的幫助文件中有詳細(xì)的描述。

          【規(guī)則10】使用const。這一點(diǎn)在很多經(jīng)典的關(guān)于C 和C++的書籍中是必談的要點(diǎn)。在《Exceptional C++》一書中,對這點(diǎn)有很精彩的描述,現(xiàn)摘錄如下:“沒有正確的安全意識的槍手在世界上是不可能活的很長的。const 觀念不正確的程序員也是一樣和沒有時間戴緊帽子的正確,沒有時間檢查帶電電線的電工一樣不會活的很長?!痹贑 語言中,const 修飾符表示告訴編譯器此函數(shù)將不會改變被修飾的變量的指向的任何值(除了強(qiáng)制類型轉(zhuǎn)換)。當(dāng)把指針作為參數(shù)傳遞時,總是合適地使用const,不僅可以防止你無意中錯誤的賦值,而且還可以防止在作為參數(shù)將指針傳遞給函數(shù)時可能會修改了本不想改變的指針?biāo)赶虻膶ο蟮闹?。如?const int num = 7;num = 9; file://有/可能得到編譯器的警告。const char *ptr,則表示該指針?biāo)赶虻膬?nèi)容不會被改變,如果在程序中被發(fā)生對其賦值的操作,編譯時將出錯誤提示。如:const char *ptr = “hello”;*ptr = ‘H’; file://錯/誤,所指內(nèi)容不可改變也可將const 放在星號后面來聲明指針本身不可改變。如:char* const ptr;ptr++; file://錯/誤,指針本身不可改變也可同時禁止改變指針和它所引用的內(nèi)容,其形式如下: const char* const ptr;

          【規(guī)則11】使用staticstatic是一個能夠減少命名沖突的有用工具。將只在一個模塊文件中的變量和函數(shù)使用static 修飾,將不會和其他模塊可能具有相同名稱的函數(shù)和變量在模塊連接時不會產(chǎn)生名稱沖突。一般來說,只要不是提供給其它模塊使用的函數(shù),和非全局變量,均應(yīng)使用static修飾。將子程序中的變量使用static 修飾時,表示這個變量在程序開始時分配內(nèi)存,在程序結(jié)束時釋放,它們在程序執(zhí)行期間保持它們的值。如:void func1(void){static int time = 0;time++}void func2(void){static int time = 0;time++;}兩個子程序中的time 變量使用static 修飾,所以它們是靜態(tài)變量,每調(diào)用一次time將進(jìn)行加1,并保持這個值。它們的功能與下面程序相似:int time1 = 0;int time2 = 0;void func1(void){time1++}void func2(void){time2++;}我們可以看出,使用static修飾后,模塊中的全局變量減少,使得程序的更為簡單。

          【規(guī)則12】不要忽視編譯器的警告。編譯器的給出的警告都是有的放矢,在沒有查清引起警告的真正原因之前,不要忽視它。

          【規(guī)則13】注意溢出問題,寫安全的代碼。1.4 KeilC 編程

          【規(guī)則14】深入了解你所用的工具。仔細(xì)查看KeilC 附帶的幫助文件,你能找到你期待已久的東西。KeilC 是當(dāng)前最好用的單片機(jī)開發(fā)軟件。要充分利用該軟件的功能,就必須對它深入的進(jìn)行了解。

          【規(guī)則15】不要使用語言的冷僻特性,并且記住,耍小聰明會貽害無窮。最重要的是編寫你理解的代碼,理解你編寫的代碼,你就可能會做得很好。2 推薦書目要成為一個優(yōu)秀的產(chǎn)品設(shè)計工程師,興趣、熱情、責(zé)任心至關(guān)重要。2.1 單片機(jī)技術(shù)學(xué)習(xí)《微機(jī)原理及應(yīng)用(從16 位到32 位) 》戴梅萼等著清華大學(xué)出版社。學(xué)校教材,也是當(dāng)年我學(xué)習(xí)單片機(jī)的啟蒙書。2.2 C51 編程學(xué)習(xí)《單片機(jī)高級語言C51 Windows 環(huán)境編程與應(yīng)用》作者:徐愛鈞彭秀華電子工業(yè)出版社。這本書幾乎覆蓋了C51 編程的方方面面,最新版本對當(dāng)前使用最廣的keilC 也有很詳細(xì)的講述。對于剛學(xué)C51 編程的同志,本書是上上之選,強(qiáng)力推薦。比起現(xiàn)今書市上的所謂什么“C51 編程圣經(jīng)”之類的書強(qiáng)得多。

          2.3 C 語言編程必讀《C 陷阱與缺陷》Andrew Koenig著《C 專家編程》Peter Van Der Linden 著C 語言開發(fā)技術(shù)經(jīng)典之作,C 程序員必讀之書,數(shù)十年來經(jīng)久不衰。如果你想對C 語言全面的掌握,真正了解C 語言的精髓,這兩本書是必讀之作。由人民郵電出版社出版的中文譯本也還不錯。2.4 程序設(shè)計技術(shù)方面《數(shù)據(jù)結(jié)構(gòu)》, 嚴(yán)蔚敏, 清華大學(xué)出版社。清華大學(xué)出版社的教材質(zhì)量穩(wěn)定,中規(guī)中矩,價格相對來說也便宜一點(diǎn)?!冻绦蛟O(shè)計實(shí)踐》Brian W. Kernighan, Rob Pike著;《代碼大全》(網(wǎng)上有下載)。這兩本是能讓你看后,感覺有大突破的那種書籍,千萬別吝惜銀子。3 后記從事單片機(jī)開發(fā)工作已經(jīng)有差不多三年時間了,自己感覺積累了一些經(jīng)驗(yàn)和體會。這篇文章就算是一個總結(jié)吧。


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();