本文檔主要講述的是單片機設計與KeilC編程總結(jié);希望本文檔會給有需要的朋友帶來幫助;感興趣的朋友可以過來看看
【規(guī)則 3 】 確定系統(tǒng)的復位信號可靠 。 這是一個很容易忽略的問題 。 當你在設計單片機系統(tǒng)時 , 你腦中有這個概念嗎?什么樣的復位信號才是可靠的嗎?你用示波器查看過你設計的產(chǎn)品的復位信號嗎?不穩(wěn)定的復位信號可能會產(chǎn)生什么樣的后果?你有沒有發(fā)現(xiàn)過你所設計的單片機系統(tǒng),每次重新上電啟動后,數(shù)據(jù)變得亂七八糟,并且每一次現(xiàn)象并不相同 , 找不出規(guī)律 , 或者有時候干脆不運行 , 或者有時候進入一種死機狀態(tài) , 有時候又一點事都沒有正常運行?在這種情況下,你應該查一下你的系統(tǒng)的復位信號。一般在單片機的數(shù)據(jù)手冊( Datasheet ) 中都會提到該單片機需要的復位信號的要求 。 一般復位信號的寬度應為 。 復位電平的寬度和幅度都應滿足芯片的要求 , 并且要求保持穩(wěn)定 。 還有特別重要的一點就是復位電平應與電源上電在同一時刻發(fā)生 , 即芯片一上電 , 復位信號就已產(chǎn)生 。 不然 , 由于沒有經(jīng)過復位 , 單片機中的寄存器的值為隨機值 , 上電時就會按 PC 寄存器中的隨機內(nèi)容開始運行程序,這樣很容易進行誤操作或進入死機狀態(tài)。
【規(guī)則 4 】 確定系統(tǒng)的初始化有效 。 系統(tǒng)程序開始應延時一段時間 。 這是很多單片機程序設計中的常用方法 , 為什么呢?因為系統(tǒng)中的芯片以及器件從上電開始到正常工作的狀態(tài)往往有一段時間 , 程序開始時延時一段時間 , 是讓系統(tǒng)中所有器件到達正常工作狀態(tài) 。 究竟延時多少才算合適?這取決于系統(tǒng)的各芯片中到達正常工作狀態(tài)的時間,通常以最慢的為準 。一般來說 , 延時 20-100 毫秒已經(jīng)足夠 。 對于系統(tǒng)中使用嵌入式 MODEM 等 “ 慢熱 ” 型的器件來說,則應更長。當然,這都需要在系統(tǒng)實際運行中進行調(diào)整。
【規(guī)則 5 】 上電時對系統(tǒng)進行檢測 。 上電時對系統(tǒng)中進行檢測是單片機程序中的一個良好設計 。 在硬件設計時也應該細細考慮將各個使用到的芯片 、 接口設計成容易使用軟件進行測試的模式 。 很多有經(jīng)驗的單片機設計者都會在系統(tǒng)上電時 ( 特別是第一次上電時 ) 進行全面的檢測 , 或者更進一步 , 將系統(tǒng)的運行狀態(tài)中分為測試模式和正常運行模式 , 通過加入測試模式對系統(tǒng)進行詳細的檢測 , 使得系統(tǒng)的批量檢測更為方便容易 。 另外要注意的是 , 一個簡單明了的故障顯示界面也是頗要費得心思的。比如:系統(tǒng)的外部 RAM (數(shù)據(jù)存儲器)是單片機系統(tǒng)中常用的器件。外部 RAM 如果存在問題,程序通常都會成為一匹脫韁的野馬 。 因此 , 程序在啟動時 ( 至少在第一次上電啟動時 ) 一定要對外部 RAM 進行檢測 。 檢測內(nèi)容包括: 1 )檢測 RAM 中的單元。這主要通過寫入和讀出的數(shù)據(jù)保持一致。 2 )檢測單片機與 RAM 之間的地址數(shù)據(jù)總線 。 總線即沒有互相短路 , 也沒有連接到 “ 地 ” 上 。 另外 , 很多芯片,都提供了測試的方法。如串行通信芯片 UART ,都帶環(huán)路測試的功能。
【規(guī)則 6 】按 EMC 測試要求設計硬件。 EMC 測試要求已經(jīng)成為產(chǎn)品的必需。有很多的文章關于這方面的。
完整的pdf格式文檔51黑下載地址(共45頁):
單片機設計與KeilC編程總結(jié).rar
(2.19 MB, 下載次數(shù): 23)
2018-3-16 13:14 上傳
點擊文件名下載附件
|