版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
8.1系統(tǒng)設(shè)計(jì)內(nèi)容8.2系統(tǒng)開(kāi)發(fā)過(guò)程8.3系統(tǒng)設(shè)計(jì)方法8.4系統(tǒng)調(diào)試習(xí)題88.1.1硬件系統(tǒng)組成
單片機(jī)典型應(yīng)用系統(tǒng)包括單片機(jī)(CPU)模塊、用于檢測(cè)信號(hào)的傳感器、信號(hào)輸入模塊、控制輸出模塊及基本的人機(jī)對(duì)話模塊等。當(dāng)單個(gè)單片機(jī)系統(tǒng)不能滿足要求時(shí),應(yīng)采用多機(jī)系統(tǒng),即包含多個(gè)單片機(jī)子系統(tǒng)組成的應(yīng)用系統(tǒng),各個(gè)子系統(tǒng)之間利用通信模塊實(shí)現(xiàn)信息交流,達(dá)到系統(tǒng)協(xié)調(diào)工作。圖8.1是一個(gè)單片機(jī)應(yīng)用系統(tǒng)基本模塊組成框圖。8.1系統(tǒng)設(shè)計(jì)內(nèi)容圖8.1單片機(jī)應(yīng)用系統(tǒng)基本模塊組成框圖
1.輸入模塊
輸入模塊是單片機(jī)與測(cè)控對(duì)象的連接部分,是系統(tǒng)數(shù)據(jù)采集的輸入通道。通常來(lái)自測(cè)控對(duì)象的現(xiàn)場(chǎng)信息是多種多樣的,按物理量的特征可分為模擬量和開(kāi)關(guān)(數(shù)字)量?jī)煞N,如圖8.2所示。
開(kāi)關(guān)量輸入:對(duì)于開(kāi)關(guān)量的采集比較簡(jiǎn)單,只需對(duì)開(kāi)關(guān)信號(hào)進(jìn)行光電隔離、電平轉(zhuǎn)換,便可直接作為輸入信號(hào)。
模擬量輸入:模擬量輸入通道比較復(fù)雜,一般包括傳感器、隔離放大器、濾波、采樣保持電路、多路電子開(kāi)關(guān)、A/D轉(zhuǎn)換器及其接口電路等。圖8.2輸入模塊框圖傳感器:傳感器用來(lái)采集現(xiàn)場(chǎng)的各種信號(hào),并將其變換成電信號(hào),以滿足單片機(jī)對(duì)輸入信號(hào)的要求?,F(xiàn)場(chǎng)信號(hào)有各種各樣,有電信號(hào)(如電壓、電流、功率等),也有非電量(如溫度、濕度、壓力、流量、速度、位移量等),對(duì)于不同物理量應(yīng)選擇相應(yīng)的傳感器。這一部分也是某些專業(yè)學(xué)生的一個(gè)薄弱環(huán)節(jié),要成為合格的系統(tǒng)設(shè)計(jì)師、總工程師,就必須從全局出發(fā),對(duì)系統(tǒng)涉及到的各個(gè)領(lǐng)域的知識(shí)都十分清楚。在此應(yīng)提出來(lái)的是,請(qǐng)讀者在學(xué)習(xí)和工作期間應(yīng)注意不斷拓寬自己的知識(shí)面。(有關(guān)傳感器的內(nèi)容請(qǐng)參見(jiàn)第11章。)
隔離放大與濾波:一般情況下傳感器的輸出是微弱信號(hào),不能直接進(jìn)入系統(tǒng),要經(jīng)過(guò)放大處理后才能作為輸入信號(hào)。另外,信息來(lái)自各種工業(yè)生產(chǎn)現(xiàn)場(chǎng),存在大量的噪聲干擾。為了提高系統(tǒng)的可靠性,就必須采取隔離措施,濾掉干擾,這是整個(gè)系統(tǒng)抗干擾設(shè)計(jì)的重點(diǎn)部位。(抗干擾技術(shù)請(qǐng)參見(jiàn)第9章。)多路電子開(kāi)關(guān):用多路電子開(kāi)關(guān)實(shí)現(xiàn)用一個(gè)A/D轉(zhuǎn)換器對(duì)多路模擬信號(hào)進(jìn)行轉(zhuǎn)換。多路模擬電子開(kāi)關(guān)受單片機(jī)控制,某一時(shí)刻需要對(duì)哪一路模擬信號(hào)進(jìn)行轉(zhuǎn)換,由單片機(jī)向多路電子開(kāi)關(guān)發(fā)出路地址信息,把該路模擬信號(hào)與A/D轉(zhuǎn)換器接通,其他模擬信號(hào)與A/D轉(zhuǎn)換器隔離,從而實(shí)現(xiàn)用一個(gè)A/D轉(zhuǎn)換器轉(zhuǎn)換多路信號(hào)的目的。
A/D轉(zhuǎn)換器:A/D轉(zhuǎn)換器的作用是將輸入的模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),是系統(tǒng)輸入通道中模擬系統(tǒng)與數(shù)字系統(tǒng)連接的核心部件,其性能直接關(guān)系到模擬信號(hào)的轉(zhuǎn)換精度。綜上所述,輸入模塊具有以下特點(diǎn):
(1)與現(xiàn)場(chǎng)采集對(duì)象相連,是現(xiàn)場(chǎng)干擾進(jìn)入系統(tǒng)的主要通道,也是整個(gè)系統(tǒng)抗干擾設(shè)計(jì)的重要環(huán)節(jié)。
(2)由于采集的對(duì)象不同,有模擬量、數(shù)字量,而這些信號(hào)都是由現(xiàn)場(chǎng)的傳感器產(chǎn)生的,傳感器輸出的微弱信號(hào)不能滿足A/D轉(zhuǎn)換器輸入要求,因此必須有信號(hào)處理電路,如信號(hào)放大器、I/V變換、A/D轉(zhuǎn)換、放大、整形電路等。
(3)輸入模塊是一個(gè)模擬電路和數(shù)字電路的混合系統(tǒng),電路功耗低,信號(hào)功率小。
2.輸出模塊
輸出模塊是應(yīng)用系統(tǒng)的信號(hào)輸出通道,完成輸出信號(hào)的狀態(tài)鎖存、信號(hào)隔離與功率驅(qū)動(dòng)。
輸出信號(hào)通常也有兩種:開(kāi)關(guān)信號(hào)和模擬信號(hào)。開(kāi)關(guān)信號(hào)采用隔離器件進(jìn)行信號(hào)隔離、電平轉(zhuǎn)換和功率放大。模擬信號(hào)則需要進(jìn)行D/A轉(zhuǎn)換、放大、功率驅(qū)動(dòng)等。
輸出模塊的特點(diǎn):
(1)輸出模塊是應(yīng)用系統(tǒng)的輸出通道,通常需要狀態(tài)鎖定和功率驅(qū)動(dòng)。
(2)控制系統(tǒng)的大功率負(fù)荷易通過(guò)該通道把干擾噪聲反饋到單片機(jī)控制單元,干擾系統(tǒng)正常工作。因此,輸出信號(hào)的隔離對(duì)系統(tǒng)的可靠性影響較大,系統(tǒng)設(shè)計(jì)時(shí)必須重視。
(3)根據(jù)控制對(duì)象的不同要求,采用輸出驅(qū)動(dòng)的器件也是多種多樣的:三極管、可控硅、繼電器驅(qū)動(dòng)等。輸出信號(hào)形式有電流信號(hào)、電壓信號(hào)、開(kāi)關(guān)量及數(shù)字量輸出等,應(yīng)根據(jù)應(yīng)用系統(tǒng)的任務(wù)性質(zhì)而定。
3.人機(jī)對(duì)話模塊
人機(jī)對(duì)話模塊是單片機(jī)應(yīng)用系統(tǒng)中人機(jī)之間信息交流的主要通道,是為用戶對(duì)應(yīng)用系統(tǒng)進(jìn)行有效干預(yù)(如啟動(dòng)、參數(shù)設(shè)置等)及了解應(yīng)用系統(tǒng)運(yùn)行狀態(tài)所設(shè)置的功能模塊之一,主要包括鍵盤、顯示器、打印機(jī)等設(shè)備及接口。人機(jī)對(duì)話模塊有以下特點(diǎn):
(1)由于常用的單片機(jī)系統(tǒng)大多數(shù)是小規(guī)模嵌入式系統(tǒng),因此系統(tǒng)中人機(jī)對(duì)話設(shè)備的配置都較小,如微型打印機(jī)、功能按鍵、LED/LCD顯示器等。若需高水平的人機(jī)對(duì)話配置,如通用打印機(jī)、CRT、硬盤、標(biāo)準(zhǔn)鍵盤等,則往往將單片機(jī)系統(tǒng)通過(guò)串行通信端口與PC機(jī)相連,使單片機(jī)應(yīng)用系統(tǒng)能享用PC機(jī)的資源。
(2)單片機(jī)應(yīng)用系統(tǒng)中,人機(jī)對(duì)話通道及接口大多采用總線形式,與系統(tǒng)擴(kuò)展密切相關(guān)。
(3)人機(jī)對(duì)話模塊接口結(jié)構(gòu)簡(jiǎn)單,但功能較多。如鍵盤接口中通常采用對(duì)一個(gè)(組)按鍵定義多種功能,簡(jiǎn)化了系統(tǒng)硬件結(jié)構(gòu)。
4.通信模塊
單片機(jī)系統(tǒng)中的通信模塊是解決計(jì)算機(jī)與控制系統(tǒng)之間信息交流的重要接口。在較大規(guī)模的多機(jī)測(cè)控系統(tǒng)中,還需要設(shè)計(jì)各單機(jī)系統(tǒng)之間的通信接口。通信模塊具有以下特點(diǎn):
(1)單片機(jī)本身具有異步串行通信口,很容易實(shí)現(xiàn)串行通信,因此,通信模塊往往以單片機(jī)的串行口為基礎(chǔ)擴(kuò)展而成。
(2)單片機(jī)本身的串行口為系統(tǒng)通信提供了硬件支持,但并沒(méi)有提供標(biāo)準(zhǔn)的通信規(guī)約。因此,利用單片機(jī)串行口構(gòu)成系統(tǒng)時(shí),要建立相應(yīng)的通信規(guī)約并設(shè)置串行通信口。
(3)通信模塊采用數(shù)字通信技術(shù),抗干擾能力強(qiáng)。
以上對(duì)應(yīng)用系統(tǒng)中的輸入模塊、輸出模塊、人機(jī)對(duì)話模塊及通信模塊的功能及特點(diǎn)進(jìn)行了說(shuō)明,其他模塊功能比較簡(jiǎn)單,在此不再詳述。當(dāng)然,設(shè)計(jì)一個(gè)應(yīng)用系統(tǒng)不一定都會(huì)用到所有功能模塊,應(yīng)視具體情況而定。8.1.2系統(tǒng)設(shè)計(jì)內(nèi)容
單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)包含硬件設(shè)計(jì)與軟件設(shè)計(jì)兩部分,具體內(nèi)容如下:
(1)最小系統(tǒng)設(shè)計(jì)。
給單片機(jī)配以必要的外圍器件,構(gòu)成能夠獨(dú)立運(yùn)行的最簡(jiǎn)單的單片機(jī)系統(tǒng)稱為單片機(jī)最小系統(tǒng)。如片內(nèi)有程序存儲(chǔ)器的單片機(jī)89C51、87C51、SPCE061A等,只需在片外設(shè)置電源、復(fù)位電路、時(shí)鐘源,便構(gòu)成了最小系統(tǒng),就能實(shí)現(xiàn)一些基本功能。
(2)系統(tǒng)擴(kuò)展設(shè)計(jì)。
在單片機(jī)最小系統(tǒng)基礎(chǔ)上,擴(kuò)展能滿足應(yīng)用系統(tǒng)要求的存儲(chǔ)器、I/O端口及外圍電路等。
(3)接口電路設(shè)計(jì)。
根據(jù)應(yīng)用系統(tǒng)的性質(zhì)與任務(wù),設(shè)計(jì)相應(yīng)的輸入隔離放大器和輸出驅(qū)動(dòng)電路。
(4)通信模塊設(shè)計(jì)。
通信模塊通常采用單片機(jī)本身提供的串行通信接口,實(shí)現(xiàn)與其他設(shè)備、系統(tǒng)之間的數(shù)據(jù)通信。
(5)抗干擾設(shè)計(jì)。
系統(tǒng)抗干擾設(shè)計(jì)要貫穿到設(shè)計(jì)的全過(guò)程。從具體方案、器件選擇到電路設(shè)計(jì),從硬件系統(tǒng)設(shè)計(jì)到軟件系統(tǒng)設(shè)計(jì),都要把抗干擾設(shè)計(jì)作為一項(xiàng)重要任務(wù)。現(xiàn)行的大多數(shù)單片機(jī)都具有WatchDog功能,防止系統(tǒng)死機(jī)。這往往還不夠,必須有外圍電路組成的系統(tǒng)看門狗對(duì)整個(gè)系統(tǒng)進(jìn)行監(jiān)視。
(6)應(yīng)用軟件設(shè)計(jì)。
根據(jù)系統(tǒng)功能要求,設(shè)計(jì)能夠滿足系統(tǒng)功能的程序。目前,大多對(duì)應(yīng)用軟件采用單片機(jī)匯編語(yǔ)言或C語(yǔ)言設(shè)計(jì)程序。8.2.1需求分析與市場(chǎng)調(diào)研
在確定開(kāi)發(fā)課題后,首先要進(jìn)行系統(tǒng)需求分析與市場(chǎng)調(diào)研。目的是通過(guò)市場(chǎng)調(diào)研明確系統(tǒng)的設(shè)計(jì)目標(biāo)及目前相關(guān)產(chǎn)品的性能、優(yōu)缺點(diǎn)、發(fā)展方向及技術(shù)指標(biāo)等。調(diào)研包括查找資料、分析研究,并解決以下問(wèn)題:
(1)了解國(guó)內(nèi)外同類系統(tǒng)的現(xiàn)狀和發(fā)展方向、新器件性能及供應(yīng)狀況;對(duì)接收委托的研制項(xiàng)目,應(yīng)充分了解對(duì)方的技術(shù)要求、使用環(huán)境、技術(shù)水平,以便明確系統(tǒng)的功能和技術(shù)指標(biāo)。
(2)分析軟、硬件技術(shù)難度,明確技術(shù)主攻方向和目標(biāo)。8.2系統(tǒng)開(kāi)發(fā)過(guò)程
(3)了解軟、硬件技術(shù)支持。能夠移植的盡量移植,避免低水平重復(fù)開(kāi)發(fā)。
(4)綜合考慮軟、硬件分工。在單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)中,軟、硬件的工作是密切相關(guān)的,在系統(tǒng)設(shè)計(jì)時(shí)要綜合考慮,合理分工。
(5)根據(jù)任務(wù)要求,選擇合適的傳感器和執(zhí)行部件。
經(jīng)過(guò)需求分析與方案調(diào)研,整理出需求分析與方案論證報(bào)告,將其作為系統(tǒng)可行性分析的主要依據(jù)。8.2.2可行性分析
可行性分析的目的是對(duì)系統(tǒng)開(kāi)發(fā)研制的必要性及可行性做出明確的結(jié)論。根據(jù)這一結(jié)論決定系統(tǒng)的開(kāi)發(fā)研制工作是否繼續(xù)進(jìn)行下去。
通常,可行性分析要從以下幾個(gè)方面進(jìn)行論證:
(1)市場(chǎng)或用戶的需求情況分析。
(2)經(jīng)濟(jì)效益和社會(huì)效益分析。
(3)技術(shù)支持與開(kāi)發(fā)環(huán)境。
(4)產(chǎn)品競(jìng)爭(zhēng)力與市場(chǎng)前景。
(5)新技術(shù)的發(fā)展方向。8.2.3方案設(shè)計(jì)
系統(tǒng)方案設(shè)計(jì)是依據(jù)市場(chǎng)調(diào)研、用戶需求情況、系統(tǒng)運(yùn)行環(huán)境、關(guān)鍵技術(shù)支持等因素,確定系統(tǒng)功能、系統(tǒng)結(jié)構(gòu)并選擇相應(yīng)實(shí)現(xiàn)方法的過(guò)程。
系統(tǒng)功能設(shè)計(jì)包括系統(tǒng)總體目標(biāo)功能的確定及系統(tǒng)軟、硬件功能模塊的功能劃分與協(xié)調(diào)。
系統(tǒng)結(jié)構(gòu)設(shè)計(jì)是根據(jù)系統(tǒng)軟、硬件功能的劃分及其協(xié)調(diào)關(guān)系,確定系統(tǒng)硬件組成和軟件結(jié)構(gòu)。系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)包括單片機(jī)選型、擴(kuò)展方案和外圍設(shè)備的配置及其接口電路的確定等,最后要以邏輯框圖形式描述。系統(tǒng)軟件結(jié)構(gòu)設(shè)計(jì)是確定系統(tǒng)軟件功能模塊劃分及各功能模塊程序的實(shí)現(xiàn)方法,最后以結(jié)構(gòu)框圖或程序流程圖形式確定下來(lái)。本階段的工作是為整個(gè)應(yīng)用系統(tǒng)實(shí)現(xiàn)建立一個(gè)框架,即建立系統(tǒng)的邏輯模型,是系統(tǒng)設(shè)計(jì)的基礎(chǔ)和前提。因此,這項(xiàng)工作必須從整體出發(fā),從系統(tǒng)觀念出發(fā),放眼全局,每一步都要十分仔細(xì)、周密考慮,盡可能將工作內(nèi)容具體化,各個(gè)模塊功能劃分要詳細(xì),只有這樣,才不至于在系統(tǒng)設(shè)計(jì)時(shí)出現(xiàn)較大缺陷。8.2.4樣機(jī)研制
系統(tǒng)詳細(xì)設(shè)計(jì)與制作就是將前面的系統(tǒng)方案付諸實(shí)施,將硬件框圖轉(zhuǎn)化成具體電路,并設(shè)計(jì)印制電路板,將軟件框圖或流程圖編制成相應(yīng)的程序,生產(chǎn)出樣機(jī)。這是系統(tǒng)設(shè)計(jì)的主要工作階段,比較艱苦且工作量大。系統(tǒng)負(fù)責(zé)人要仔細(xì)研究,合理調(diào)配,做到既分工又協(xié)作,多頭并進(jìn),力爭(zhēng)軟、硬件各個(gè)環(huán)節(jié)能夠同時(shí)完成,以加快開(kāi)發(fā)進(jìn)程,縮短開(kāi)發(fā)時(shí)間。8.2.5系統(tǒng)調(diào)試
系統(tǒng)調(diào)試是檢測(cè)所設(shè)計(jì)系統(tǒng)的正確性與可靠性的過(guò)程,是解決設(shè)計(jì)和裝配過(guò)程中存在不足的必要手段。單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)是一個(gè)復(fù)雜過(guò)程,在設(shè)計(jì)、制作過(guò)程中,難免存在一些局部性問(wèn)題或錯(cuò)誤。系統(tǒng)調(diào)試可發(fā)現(xiàn)存在的問(wèn)題和錯(cuò)誤,并及時(shí)進(jìn)行修正。調(diào)試與修改的過(guò)程可能要反復(fù)多次,直到系統(tǒng)成功運(yùn)行,達(dá)到設(shè)計(jì)要求為止。系統(tǒng)軟、硬件調(diào)試通過(guò)后,把聯(lián)機(jī)調(diào)試完畢的目標(biāo)程序固化在程序存儲(chǔ)器中,脫機(jī)(脫離開(kāi)發(fā)系統(tǒng))運(yùn)行,對(duì)系統(tǒng)功能再進(jìn)行逐項(xiàng)測(cè)試,直
到達(dá)到設(shè)計(jì)指標(biāo),滿足用戶需求。8.2.6批量生產(chǎn)
在真實(shí)環(huán)境或模擬環(huán)境下運(yùn)行,經(jīng)反復(fù)測(cè)試運(yùn)行正常,開(kāi)發(fā)過(guò)程即告結(jié)束。這時(shí)的系統(tǒng)作為樣機(jī)系統(tǒng),加上外殼、面板,再配上完整的技術(shù)資料,就生成了正式系統(tǒng)(或產(chǎn)品),投入批量生產(chǎn),服務(wù)社會(huì)。
產(chǎn)品性質(zhì)不同,開(kāi)發(fā)過(guò)程中側(cè)重點(diǎn)也不同。大部分軍用產(chǎn)品、工業(yè)品對(duì)可靠性要求較高,而像民用產(chǎn)品、智能玩具之類的產(chǎn)品則對(duì)外觀、成本要求較為苛刻。產(chǎn)品設(shè)計(jì)過(guò)程也不是一成不變的,要根據(jù)產(chǎn)品性質(zhì)有所側(cè)重,靈活掌握。在產(chǎn)品設(shè)計(jì)過(guò)程中,要十分重視人機(jī)界面設(shè)計(jì)。一個(gè)設(shè)計(jì)良好的人機(jī)界面會(huì)使用戶感覺(jué)親切友好,使用得心應(yīng)手。在此,提請(qǐng)整機(jī)設(shè)計(jì)人員及系統(tǒng)設(shè)計(jì)師注意,一定要運(yùn)用人機(jī)工程學(xué),重視人機(jī)交互界面的設(shè)計(jì),否則會(huì)影響系統(tǒng)功能的正常發(fā)揮。系統(tǒng)調(diào)研、方案論證階段要周密仔細(xì),8.3.1熟悉設(shè)計(jì)對(duì)象
單片機(jī)作為控制系統(tǒng)的核心所控制的對(duì)象是多種多樣的,所實(shí)現(xiàn)的控制功能也是千差萬(wàn)
別的。這些對(duì)象可能是一個(gè)具體的設(shè)備,如交通燈控制器、機(jī)械手、電視機(jī)、空調(diào)器、微波
爐、電冰箱等,也可能是一個(gè)系統(tǒng),如生產(chǎn)線過(guò)程控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)、三遙系統(tǒng)等。
在這些控制系統(tǒng)中,它可以有多個(gè)數(shù)字量和模擬量的采集和控制,有多個(gè)采樣點(diǎn)和控制點(diǎn)。單
片機(jī)在這些應(yīng)用領(lǐng)域可以進(jìn)行數(shù)字測(cè)量及采集,也可以完成過(guò)程控制、程序控制,或者是閉環(huán)
控制。8.3系統(tǒng)設(shè)計(jì)方法例如,一個(gè)空調(diào)器實(shí)際上就是一個(gè)溫度控制系統(tǒng),它包含溫度測(cè)量、A/D變換、控制計(jì)算、輸出功率調(diào)節(jié)等多個(gè)環(huán)節(jié),在空調(diào)器中加熱均采用電加熱或壓縮機(jī),控制比較方便。對(duì)于一個(gè)鍋爐控制系統(tǒng),不管是燃油鍋爐還是燃煤鍋爐,比一個(gè)空調(diào)器控制要復(fù)雜的多,不僅要進(jìn)行溫度測(cè)量,還要測(cè)量鍋爐內(nèi)的壓力、水位等參量,其控制系統(tǒng)規(guī)模要大一些。這類系統(tǒng)是一個(gè)模擬量閉環(huán)反饋控制系統(tǒng)。在這些系統(tǒng)中,需要顯示輸出(常用LED、LCD顯示器)、初始值設(shè)定(常用撥碼開(kāi)關(guān)或鍵盤輸入)、控制操作和報(bào)警提示等。因此就需要一個(gè)控制面板,在面板上要設(shè)置相應(yīng)功能鍵和顯示器,其方框圖如圖8.3所示。圖8.3溫度控制系統(tǒng)方框圖如上所述,系統(tǒng)設(shè)計(jì)時(shí),首先要搞清楚控制對(duì)象是什么,有哪些控制規(guī)律和動(dòng)作要領(lǐng),采用哪種控制方法;有哪些被測(cè)量和輸出量,使用何種傳感器,所要求的控制精度或控制誤差范圍等。這樣,就可以對(duì)整個(gè)設(shè)計(jì)過(guò)程有—個(gè)總體把握,有的放矢地采取相應(yīng)技術(shù)措施,達(dá)到預(yù)期的設(shè)計(jì)要求。系統(tǒng)設(shè)計(jì)時(shí),盡可能的將問(wèn)題搞清楚,充分估計(jì)各種困難和技術(shù)難點(diǎn),這有利于后續(xù)工作的開(kāi)展。8.3.2確定I/O類型和數(shù)量
明確系統(tǒng)的I/O通道數(shù),對(duì)確定系統(tǒng)的規(guī)模和功能十分必要。這些內(nèi)容不僅與系統(tǒng)的主控制回路有關(guān),而且還涉及顯示模塊、測(cè)量模塊、系統(tǒng)保護(hù)模塊、操作模塊、報(bào)警處理模塊、參數(shù)設(shè)定模塊、通信模塊以及中斷處理模塊等。
1.開(kāi)關(guān)量確定
1)輸入開(kāi)關(guān)量
輸入開(kāi)關(guān)量包括現(xiàn)場(chǎng)輸入節(jié)點(diǎn)(如行程開(kāi)關(guān)、繼電器觸點(diǎn)、保護(hù)開(kāi)關(guān)輸出節(jié)點(diǎn)、操作機(jī)構(gòu)輔助節(jié)點(diǎn))和系統(tǒng)設(shè)置開(kāi)關(guān)(如設(shè)備號(hào)設(shè)置撥碼開(kāi)關(guān)等)。
2)輸出開(kāi)關(guān)量
輸出開(kāi)關(guān)量包括控制信號(hào)、繼電器線圈控制、報(bào)警裝置驅(qū)動(dòng)、指示燈及LED輸出接口等。
上述信號(hào)數(shù)量要逐一核實(shí)、編號(hào)、確定功能、信號(hào)采集方式、輸出驅(qū)動(dòng)電路等,并逐一落實(shí)。
2.模擬量確定
1)輸入通道
根據(jù)任務(wù)性質(zhì)和被測(cè)模擬量來(lái)確定系統(tǒng)所需的輸入通路數(shù)量。輸入通道數(shù)也就是A/D變換的路數(shù),它包括系統(tǒng)中被測(cè)量的模擬量,如溫度、壓力、流量、液位、電壓、電流等,也包括直接由測(cè)速電機(jī)、位移傳感器等輸出的電壓電流信號(hào)。這些被測(cè)量首先經(jīng)過(guò)信號(hào)變換,非電量要經(jīng)過(guò)變送器將物理量變成電信號(hào),再經(jīng)過(guò)電壓電流變換器轉(zhuǎn)換為標(biāo)準(zhǔn)的電壓或電流信號(hào)輸入到A/D變換器。
2)輸出通道
根據(jù)任務(wù)性質(zhì),確定系統(tǒng)的輸出通路數(shù)量。模擬輸出主要指連續(xù)變化量的調(diào)節(jié)與信號(hào)輸出,如調(diào)節(jié)電機(jī)電樞電壓或調(diào)節(jié)帶有電氣轉(zhuǎn)換的調(diào)節(jié)閥等。模擬輸出主要通過(guò)D/A變換器輸出,因此,模擬輸出通道數(shù)就是D/A變換路數(shù)。
將要輸入通道和輸出通道也同開(kāi)關(guān)量一樣,按照序號(hào)、名稱、變送器規(guī)格、轉(zhuǎn)換精度要求等內(nèi)容仔細(xì)統(tǒng)計(jì),登記造冊(cè)并存檔。這些工作要盡可能的詳細(xì)、清楚,它們是系統(tǒng)研制、維護(hù)的基本技術(shù)資料。
3.特殊輸出處理
在一些特殊情況下,要注意根據(jù)實(shí)際情況,對(duì)I/O類型和數(shù)量進(jìn)行靈活處理。如有的電機(jī)需要脈寬調(diào)制(PWM)控制,具有脈寬調(diào)制輸出功能的單片機(jī),就可直接作為單獨(dú)輸出形式應(yīng)用,而沒(méi)有脈寬調(diào)制輸出功能的單片機(jī),可用電子開(kāi)關(guān)與軟件來(lái)實(shí)現(xiàn)脈寬調(diào)制輸出,從而達(dá)到調(diào)整輸出脈寬的目的。
4.軟、硬件資源綜合考慮
在系統(tǒng)設(shè)計(jì)時(shí),應(yīng)充分利用單片機(jī)的軟件資源以簡(jiǎn)化硬件系統(tǒng),達(dá)到最佳設(shè)計(jì)。例如,系統(tǒng)人機(jī)界面經(jīng)常需要一些功能鍵和數(shù)字鍵,如果每一鍵對(duì)應(yīng)一個(gè)開(kāi)關(guān)量輸入,就增加了開(kāi)關(guān)輸入數(shù),加大了硬件開(kāi)銷,浪費(fèi)了硬件資源,同時(shí)使硬件電路變得復(fù)雜。為了綜合平衡軟、硬件的開(kāi)銷,我們通常將所需的鍵排列成矩陣形式,采用鍵盤掃描程序來(lái)完成鍵值輸入,其硬件如圖8.4所示。圖8.44×4矩陣式鍵盤圖8.4是一個(gè)4×4矩陣鍵盤,如果每個(gè)鍵用一個(gè)開(kāi)關(guān)輸入量,則要16個(gè)輸入量,而采用如圖8.4所示的矩陣排列方式,僅需要4個(gè)輸出量和4個(gè)輸入量。這樣,減少了開(kāi)關(guān)量(這
個(gè)例子中可減少8個(gè)),從而減少了I/O接口的開(kāi)銷。當(dāng)然,這種方式加大了軟件的工作,一般情況下,軟件能夠很容易完成。該鍵盤的識(shí)別要通過(guò)單片機(jī)的軟件掃描來(lái)完成,要求在控制程序中有一個(gè)鍵盤搜索識(shí)別程序塊并反復(fù)掃描鍵盤,才能實(shí)現(xiàn)搜索功能。在考慮一個(gè)系統(tǒng)設(shè)計(jì)時(shí),如何全面地衡量軟、硬件的分配,是一個(gè)非常重要的問(wèn)題。較好地解決這個(gè)問(wèn)題,有賴于設(shè)計(jì)人員的開(kāi)發(fā)經(jīng)驗(yàn)和對(duì)單片機(jī)技術(shù)及接口電路的熟悉程度。一位有經(jīng)驗(yàn)的設(shè)計(jì)者將始終立足于系統(tǒng)設(shè)計(jì)的整體利益,從系統(tǒng)的整體出發(fā),全面地均衡軟、硬件功能,從開(kāi)發(fā)要求、實(shí)現(xiàn)途徑、開(kāi)發(fā)周期、產(chǎn)品成本、系統(tǒng)可靠性等多方面衡量,合理安排軟、硬件功能。經(jīng)常會(huì)出現(xiàn)熟悉硬件電路的人喜歡用硬件解決問(wèn)題,往往將硬件電路設(shè)計(jì)得比較復(fù)雜,增加了開(kāi)發(fā)工作量、調(diào)試周期和硬件成本,也增加了設(shè)備維護(hù)量,降低了設(shè)備可靠性。
而熟悉軟件的人又喜歡盡可能用軟件來(lái)解決問(wèn)題,將硬件電路設(shè)計(jì)得過(guò)于簡(jiǎn)單,使軟件承擔(dān)了更多的任務(wù),而導(dǎo)致軟件調(diào)試比較困難,增加了調(diào)試時(shí)間,加大了人力資源的投入,延長(zhǎng)了開(kāi)發(fā)周期。因此,全面且正確地均衡軟、硬件功能的分配,對(duì)提高系統(tǒng)可靠性,縮短開(kāi)發(fā)周期,減少工作量和提高效益是非常重要的。這也是普通工程技術(shù)人員與系統(tǒng)級(jí)工程技術(shù)人員的區(qū)別,望讀者能全面掌握軟、硬件及傳感器方面的知識(shí),提高系統(tǒng)的整體設(shè)計(jì)能力。8.3.3單片機(jī)選型
當(dāng)前市場(chǎng)上單片機(jī)的種類和型號(hào)很多,有4位、8位、16位以及32位機(jī);片內(nèi)ROM和RAM各不相同;有的I/O功能強(qiáng),I/O路數(shù)多;有的擴(kuò)展方便,有的不能擴(kuò)展;有帶片內(nèi)A/D的,有不帶片內(nèi)A/D的,等等。要結(jié)合具體任務(wù)所需要的I/O數(shù)、控制對(duì)象要求的精度、響應(yīng)速率、開(kāi)發(fā)環(huán)境等因素選擇合適的單片機(jī)。在很大程度上,我們選用單片機(jī)的種類和型號(hào),基本上取決于我們對(duì)某些種類單片機(jī)的熟悉程度以及所具備的開(kāi)發(fā)條件。單片機(jī)的開(kāi)發(fā)以及調(diào)試都需要仿真器系統(tǒng),因此對(duì)仿真器系統(tǒng)使用的熟悉程度往往決定了選用單片機(jī)的類型。
國(guó)內(nèi)8位單片機(jī)仍以MCS-51系列為主流機(jī)型,與其兼容的Philips公司、NEC公司、ATMEL等公司的相應(yīng)型號(hào)單片機(jī),使51系列單片機(jī)的資源相當(dāng)豐富。故8位單片機(jī)的開(kāi)發(fā)系統(tǒng)仍以51系列的單片機(jī)開(kāi)發(fā)系統(tǒng)最普及,如WAVE開(kāi)發(fā)系統(tǒng)、MECE開(kāi)發(fā)系統(tǒng)、SICE開(kāi)發(fā)系統(tǒng)等。這些開(kāi)發(fā)系統(tǒng)市場(chǎng)普及率高,功能齊備,能夠滿足常見(jiàn)應(yīng)用系統(tǒng)的開(kāi)發(fā)需求。這些開(kāi)發(fā)系統(tǒng)通常要通過(guò)串行通信口與PC機(jī)相連,借助于PC機(jī)的資源構(gòu)成開(kāi)發(fā)系統(tǒng),開(kāi)發(fā)系統(tǒng)帶有仿真插頭連接到被開(kāi)發(fā)的目標(biāo)板上實(shí)現(xiàn)仿真,并進(jìn)行相應(yīng)的軟件調(diào)試。在PC機(jī)上安裝相配套的專用開(kāi)發(fā)工具軟件即可使用。在家用電器領(lǐng)域,Motorola公司的68系列單片機(jī)占有一定市場(chǎng),其品種多、型號(hào)全、功能專,適用于大批量開(kāi)發(fā)和應(yīng)用,其開(kāi)發(fā)芯片和相應(yīng)的掩膜芯片或OTP芯片都相互配套,使用方便。
另外,在研發(fā)階段選用片內(nèi)有E2PROM存儲(chǔ)器的單片機(jī),會(huì)為系統(tǒng)開(kāi)發(fā)調(diào)試帶來(lái)方便,但在開(kāi)發(fā)完成之后,可選用OTP(一次性編程)芯片或采用掩膜芯片投入批量生產(chǎn),可降低產(chǎn)品成本。
對(duì)于功能比較簡(jiǎn)單的家用電器、智能玩具等產(chǎn)品,可以選用功能齊全、節(jié)省電能、接口豐富、有一定驅(qū)動(dòng)能力的4位單片機(jī),不僅能很好的完成系統(tǒng)功能,而且硬件簡(jiǎn)單,成本低廉,便于批量生產(chǎn)。例如,三星公司的KS56、KS57系列的4位機(jī),其片內(nèi)有2~8KBROM和256~736BRAM,可直接驅(qū)動(dòng)LED、LCD顯示器,有的還帶有A/D轉(zhuǎn)換器,且其工作電壓范圍在2.7~6V之間,便于使用電池供電。
對(duì)于技術(shù)要求較高,8位單片機(jī)無(wú)法完成的系統(tǒng),就必須選用16位或32位單片機(jī)。這類單片機(jī)性能更高,功能更強(qiáng),典型的應(yīng)用機(jī)型有Intel公司的MCS-196系列單片機(jī)等。8.3.4確定存儲(chǔ)器
單片機(jī)運(yùn)行的程序存放在程序存儲(chǔ)器中,系統(tǒng)的臨時(shí)數(shù)據(jù)和參數(shù)一般存放在數(shù)據(jù)存儲(chǔ)器RAM中。在設(shè)計(jì)存儲(chǔ)器時(shí),首先要確定所用程序存儲(chǔ)器的容量。主要根據(jù)任務(wù)性質(zhì)、控制內(nèi)容、控制算法、控制檢測(cè)的數(shù)量及中斷服務(wù)程序的大小來(lái)確定。選擇的原則是:確保夠用,考慮發(fā)展,留有余量,最好選用現(xiàn)成芯片。如控制一部交流雙速電梯,估計(jì)程序量要在4KB左右,在設(shè)計(jì)時(shí),可選用8KB存儲(chǔ)器來(lái)實(shí)現(xiàn)。程序存儲(chǔ)器的選擇通常要比預(yù)先估計(jì)得富裕一些,這樣不僅可減輕調(diào)試、刪改程序的負(fù)擔(dān),而且選用大容量程序存儲(chǔ)器,不一定會(huì)增加成本。有時(shí)在程序設(shè)計(jì)時(shí),要將漢字字庫(kù)放在程序存儲(chǔ)器中,所需存儲(chǔ)空間就要大些。使用ROM保存字型,可防止字庫(kù)內(nèi)容在斷電時(shí)丟失。隨著集成電路技術(shù)的發(fā)展和微電子技術(shù)的提高,大容量的EPROM芯片并不比低存儲(chǔ)容量的EPROM價(jià)格高,有時(shí)還會(huì)低一些。如目前市場(chǎng)上4KB的EPROM2732比2KB的EPROM2716還便宜,而有相同存儲(chǔ)量8KB的EPROM2764比2732便宜。因此,選擇2764芯片作為程序存儲(chǔ)器可能還會(huì)更經(jīng)濟(jì)一些。作為開(kāi)發(fā)人員,要及時(shí)了解市場(chǎng)情況,以便做出正確的選擇。若選用片內(nèi)具有EPROM的單片機(jī),如87C51FA,片內(nèi)有16KB的EPROM,87C51FB內(nèi)部有32KB的EPROM,但該芯片價(jià)格高些,則要權(quán)衡價(jià)格和性能之間的矛盾,以便進(jìn)行取舍。
對(duì)隨機(jī)存儲(chǔ)器RAM來(lái)說(shuō),片內(nèi)RAM作為參數(shù)存儲(chǔ)單元有時(shí)就夠用了。若要存儲(chǔ)大量數(shù)據(jù)、表格、參數(shù),片內(nèi)RAM就可能不夠用了,則必須擴(kuò)展片外RAM。一般選用靜態(tài)存儲(chǔ)器SRAM,如經(jīng)常選用靜態(tài)存儲(chǔ)器16K×8位的62128、8K×8位的6264等。
選擇E2PROM(電可擦除的可編程存儲(chǔ)器)作為數(shù)據(jù)存儲(chǔ)器,在要求斷電時(shí)數(shù)據(jù)保存的特殊情況下是一種較好的選擇。E2PROM可由電信號(hào)進(jìn)行讀寫(xiě),且斷電后保存數(shù)據(jù)不丟失,但E2PROM要比EPROM貴一些。無(wú)論選用哪種存儲(chǔ)器,都要明確其容量、型號(hào)、性能,并且要選用速度和電平都相互兼容的芯片。
若使用單片機(jī)作為控制器,則不宜將系統(tǒng)擴(kuò)充得太大,而是盡可能簡(jiǎn)化設(shè)計(jì),充分體現(xiàn)單片機(jī)控制系統(tǒng)的優(yōu)勢(shì)和特點(diǎn)。8.3.5確定I/O接口芯片
I/O接口包括開(kāi)關(guān)量接口、模擬量接口、顯示接口和鍵盤接口等。
開(kāi)關(guān)量接口應(yīng)根據(jù)前面確定的開(kāi)關(guān)量數(shù)來(lái)選擇接口芯片。每種系列單片機(jī)都有與其兼容的常用芯片,盡可能選用一些搭配合理、應(yīng)用成熟的電路。
1.專用可編程接口
51系列單片機(jī)可選用8155或8255可編程I/O接口芯片。8155芯片有22位I/O,且內(nèi)部有256B的RAM,在I/O點(diǎn)數(shù)不太多,且單片機(jī)片內(nèi)RAM不足時(shí)選用8155芯片比較合適。
8255具有3個(gè)8位端口,共24位,作為開(kāi)關(guān)量,I/O接口是經(jīng)常選用的接口芯片之一。
Z8系列單片機(jī)可選用PIO作接口,也可選用8255芯片作接口,但其控制信號(hào)要經(jīng)過(guò)邏輯組合,其中斷控制要經(jīng)過(guò)相應(yīng)的處理才能應(yīng)用。
2.簡(jiǎn)單I/O接口
常常選用一般的TTL芯片和74系列8D鎖存器、三態(tài)緩沖器等做I/O接口,適用于單片機(jī)和外部設(shè)備之間作同步交換和傳輸?shù)膱?chǎng)合。選用TTL芯片作I/O接口簡(jiǎn)單易行,成本低,便于調(diào)試,指令控制方便??梢詣偃芜@種接口的芯片種類很多,如常用的8D鎖存器74LS273、8位單向三態(tài)緩沖器74LS244及8位雙向三態(tài)緩沖器74LS245等,設(shè)計(jì)時(shí)可根據(jù)設(shè)計(jì)需要查閱相關(guān)器件手冊(cè),合理選擇。
3.顯示接口的設(shè)計(jì)
通常在控制系統(tǒng)中,顯示接口是必要的,如利用發(fā)光二極管作狀態(tài)指示,利用七段LED數(shù)碼管顯示數(shù)據(jù)等。隨著液晶顯示器技術(shù)的飛速發(fā)展和性能價(jià)格比的提高,液晶顯示器在儀器儀表中的應(yīng)用已非常普及。
在利用LED七段數(shù)碼管進(jìn)行靜態(tài)顯示時(shí),使用TTL芯片的BCD七段譯碼驅(qū)動(dòng)芯片非常方便。常用芯片有74LS47和MC14495等。選用時(shí),可根據(jù)所用LED七段數(shù)碼顯示器共陰極或共陽(yáng)極的不同,分別選用相應(yīng)的芯片。使用這類芯片時(shí),只把這類芯片作為一個(gè)外設(shè)輸出接口,將要顯示字符的BCD碼鎖存入該芯片,就可得到相應(yīng)的數(shù)字顯示。這種顯示有適用于十六進(jìn)制計(jì)數(shù)的接口芯片,也有適用于十進(jìn)制計(jì)數(shù)的接口芯片。在有的數(shù)字顯示和小鍵盤輸入的系統(tǒng)中,也可選擇可編程接口器件8279作鍵盤和顯示接口電路。
總的來(lái)說(shuō),由于單片機(jī)應(yīng)用系統(tǒng)一般都強(qiáng)調(diào)簡(jiǎn)單實(shí)用,因此,在單片機(jī)應(yīng)用系統(tǒng)中,除非十分必要,一般都選用簡(jiǎn)單I/O接口芯片進(jìn)行系統(tǒng)擴(kuò)展。8.3.6系統(tǒng)設(shè)計(jì)
在確定了I/O接口路數(shù)、A/D、D/A轉(zhuǎn)換通道數(shù)以及選定了所需要的輸入、輸出接口器件的基礎(chǔ)上,下一步就是進(jìn)行電路設(shè)計(jì)。將選用的單片機(jī)和相應(yīng)的接口以及有關(guān)器件按系統(tǒng)要求組成一個(gè)系統(tǒng)電路連接圖。系統(tǒng)電路設(shè)計(jì)時(shí),主要考慮的內(nèi)容有主模塊設(shè)計(jì)和驅(qū)動(dòng)電路設(shè)計(jì)兩大部分。
1.主模塊設(shè)計(jì)
主模塊包括單片機(jī)最小系統(tǒng)、外部存儲(chǔ)器擴(kuò)展和外部接口擴(kuò)展,同時(shí)要完成地址分配、譯碼電路設(shè)計(jì)和控制電路設(shè)計(jì)。
1)總線擴(kuò)展
在51系列單片機(jī)中,程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器可分別尋址64KB地址空間,而外部設(shè)備I/O端口和數(shù)據(jù)存儲(chǔ)器統(tǒng)一編址。在51系列單片機(jī)中,擴(kuò)展系統(tǒng)總線時(shí),P0口用來(lái)分時(shí)傳送地址和數(shù)據(jù),使用74LS373作為低8位地址鎖存器來(lái)形成低8位地址線A7~A0,用ALE作為地址鎖存信號(hào)直接連到74LS373的鎖存使能端。用P2口形成地址線的高8位A15~A8,從而形成A15~A0共16位地址總線。由于程序存儲(chǔ)器是只讀存儲(chǔ)器,使用信號(hào)作為外擴(kuò)ROM的讀信號(hào),數(shù)據(jù)存儲(chǔ)器使用控制信號(hào)或作為讀、寫(xiě)控制信號(hào),以訪問(wèn)兩個(gè)不同的尋址空間。
2)地址分配及譯碼電路
根據(jù)總體設(shè)計(jì)要求,分別給存儲(chǔ)器、I/O端口分配適當(dāng)?shù)牡刂?,選擇相應(yīng)的譯碼器電路。
地址譯碼器通常選用現(xiàn)成的譯碼器芯片,常用芯片有:3-8譯碼器74LS138,雙2-4譯碼器74LS139,4-16譯碼器74LS154等。這些譯碼器的功能及輸入、輸出信號(hào)的連接特性可查閱相應(yīng)的器件手冊(cè)。
當(dāng)譯碼器選定并確定相應(yīng)的選片信號(hào)之后,就要確定各芯片的具體地址,從而明確軟件訪問(wèn)時(shí)的地址空間和使用范圍。圖8.5給出了利用74LS138作為8段譯碼器,將64KB地址分配為8×8KB的地址空間。當(dāng)一級(jí)譯碼信號(hào)不夠用時(shí),要對(duì)某一段地址進(jìn)行二次譯碼,即將一級(jí)譯碼輸出中的某一譯碼信號(hào)再作為譯碼條件進(jìn)行二級(jí)譯碼。圖8.5使用74LS138譯碼的地址分配
2.驅(qū)動(dòng)電路設(shè)計(jì)
由于常用的器件是TTL電路或MOS電路,這些電路的驅(qū)動(dòng)能力有限,尤其應(yīng)用于控制系統(tǒng)時(shí),因此要增加電流放大和電平轉(zhuǎn)換電路實(shí)現(xiàn)功率放大,以便驅(qū)動(dòng)被控設(shè)備。
常用的開(kāi)關(guān)驅(qū)動(dòng)電路種類較多,通常有晶體管驅(qū)動(dòng)、復(fù)合晶體管驅(qū)動(dòng)、可控硅驅(qū)動(dòng)(單向和雙向可控硅)、中間繼電器、固態(tài)繼電器驅(qū)動(dòng)和場(chǎng)效應(yīng)管驅(qū)動(dòng)等。讀者可根據(jù)設(shè)計(jì)的電路特點(diǎn)適當(dāng)選擇,也可參考有關(guān)實(shí)用電路進(jìn)行設(shè)計(jì),必要時(shí)要進(jìn)行相應(yīng)的模擬實(shí)驗(yàn)。開(kāi)關(guān)電路的驅(qū)動(dòng)常采用固態(tài)繼電器,它將雙向可控硅和光電耦合驅(qū)動(dòng)封裝在一個(gè)密封塊中,這種無(wú)觸點(diǎn)開(kāi)關(guān)有利于提高單片機(jī)控制系統(tǒng)的可靠性,減少觸點(diǎn)動(dòng)作對(duì)系統(tǒng)的影響。但這種固態(tài)繼電器價(jià)格較高,應(yīng)根據(jù)系統(tǒng)開(kāi)發(fā)的實(shí)際要求和具體情況選用。
3.光電耦合器件的應(yīng)用
光電耦合器件能可靠地實(shí)現(xiàn)信號(hào)隔離,有效地將單片機(jī)電源和驅(qū)動(dòng)電路電源完全分開(kāi)(兩電源不共地,各自獨(dú)立),以減少輸入、輸出設(shè)備對(duì)單片機(jī)控制系統(tǒng)的干擾。圖8.6光電耦合器當(dāng)前市場(chǎng)上光電耦合器的型號(hào)和種類很多,有單個(gè)獨(dú)立封裝的,有四個(gè)封裝在一個(gè)集成塊內(nèi)的,其輸入、輸出特性和傳輸速度也各不相同。光電耦合器的輸入端通常是一個(gè)獨(dú)立的發(fā)光二極管,輸出端有的是光敏三極管(如圖8.6所示),有的是復(fù)合光敏三極管,有的是光敏可控硅,因此其驅(qū)動(dòng)能力差別較大,價(jià)格差別也較大。選用時(shí),要根據(jù)系統(tǒng)設(shè)計(jì)的基本要求選用。通??刂齐姶砰_(kāi)關(guān),如繼電器線圈、電機(jī)電樞電壓,或有較大感性負(fù)載時(shí)均要使用光電耦合器進(jìn)行隔離,而作為一般指示燈或LED顯示輸出時(shí)不需要光電隔離。
4.繪制原理圖
目前,均利用計(jì)算機(jī)輔助設(shè)計(jì)完成單片機(jī)控制系統(tǒng)原理圖設(shè)計(jì)。只要有一臺(tái)普通配置的PC機(jī),就可方便地設(shè)計(jì)系統(tǒng)電路原理圖。常用Protel99繪制原理電路圖及設(shè)計(jì)印制電路板,該軟件是目前許多開(kāi)發(fā)人員使用的設(shè)計(jì)原理電路圖和印制電路板的CAD應(yīng)用軟件之一,它有比較豐富的元件庫(kù),如74系列集成電路、MOS集成電路、單片機(jī)、存儲(chǔ)器、光電耦合器件以及有關(guān)的分離元件、接插件等。若使用所帶庫(kù)中沒(méi)有的一些特殊元件,可以自己設(shè)計(jì)元件添加入庫(kù)。
使用計(jì)算機(jī)設(shè)計(jì)原理圖布局方便,修改容易,直觀明了,用打印機(jī)可直接輸出,清晰正規(guī),有利于設(shè)計(jì)資料的整理、存檔,便于安裝調(diào)試。8.3.7實(shí)驗(yàn)板設(shè)計(jì)
系統(tǒng)原理圖設(shè)計(jì)完成之后,要經(jīng)過(guò)實(shí)驗(yàn)驗(yàn)證,以證明理論設(shè)計(jì)的邏輯關(guān)系的正確性和合理性。
1.幾種常用實(shí)驗(yàn)板
1)面包板
面包板是常用的一種既經(jīng)濟(jì)又方便的實(shí)驗(yàn)電路板。在面包板上可以直接插入元器件及集成電路塊,導(dǎo)線連接也采用插接式,操作簡(jiǎn)便,易于實(shí)現(xiàn)。但由于面包板制造質(zhì)量以及內(nèi)部簧片彈性等因素,因此常常出現(xiàn)接觸不良等現(xiàn)象,造成電路工作不穩(wěn)定,易出現(xiàn)故障。所以,往往只對(duì)一些很簡(jiǎn)單的電路進(jìn)行實(shí)驗(yàn)時(shí),才采用面包板。
2)通用實(shí)驗(yàn)板
目前市場(chǎng)上出售多種類型的通用實(shí)驗(yàn)板,按集成電路管腳尺寸排列焊盤??梢詫㈦p列直插芯片插座焊上,接通連線,分離元件也可直接焊上。有的實(shí)驗(yàn)板(如適用于51系列單片機(jī)實(shí)驗(yàn)板)已完成了幾個(gè)主要芯片的插座設(shè)計(jì),用戶只需加上必要的外圍電路,插上必要的擴(kuò)展芯片就可做相應(yīng)的實(shí)驗(yàn)。這是目前常用的實(shí)驗(yàn)方法。
3)印制電路實(shí)驗(yàn)板
印制電路板是根據(jù)將來(lái)系統(tǒng)設(shè)計(jì)需要,設(shè)計(jì)相應(yīng)的實(shí)驗(yàn)板。設(shè)計(jì)的實(shí)驗(yàn)板也就是將來(lái)實(shí)際應(yīng)用電路板的試驗(yàn)板。設(shè)計(jì)的實(shí)驗(yàn)板焊接插座需進(jìn)行原理測(cè)試,當(dāng)實(shí)驗(yàn)測(cè)試完成后,并能保證其性能和功能都達(dá)到設(shè)計(jì)要求的情況下,就可對(duì)實(shí)驗(yàn)板稍做修改,即可正式加工印制電路板,從而加快了開(kāi)發(fā)周期。經(jīng)驗(yàn)豐富的開(kāi)發(fā)人員通常采用這種方法。
2.實(shí)驗(yàn)板測(cè)試步驟
1)電源檢查
當(dāng)實(shí)驗(yàn)板連接或焊接完成之后,首先在不插主要元器件的情況下,檢查是否存在電源對(duì)地短路現(xiàn)象。用三用表電阻檔檢測(cè),確保不存在短路現(xiàn)象的情況下,可加電檢查。通常用+5V直流電源,用萬(wàn)用表電壓檔測(cè)試各元器件插座上相應(yīng)電源管腳電壓是否正確。若有錯(cuò)誤,則要及時(shí)檢查、排除,使每個(gè)電源引腳的電壓都符合要求。
2)各元器件電源檢查
斷開(kāi)電源,按正確的元器件方向插上元器件。最好是分別插入,加電測(cè)試,并逐一檢查每個(gè)元器件上的電源是否正確,以至于最后全部插上元器件,加電后,每個(gè)元器件上電源都正確無(wú)誤。8.3.8實(shí)驗(yàn)電路調(diào)試
實(shí)驗(yàn)電路板安裝檢查完成之后,就可以利用開(kāi)發(fā)系統(tǒng)進(jìn)行調(diào)試。
1.開(kāi)發(fā)系統(tǒng)簡(jiǎn)介
對(duì)實(shí)驗(yàn)板進(jìn)行調(diào)試,通常要使用單片機(jī)開(kāi)發(fā)系統(tǒng)。開(kāi)發(fā)系統(tǒng)都帶有一個(gè)仿真插頭,可直接插入目標(biāo)電路板的CPU插座,代替目標(biāo)板上的CPU對(duì)其系統(tǒng)功能進(jìn)行仿真。(有關(guān)開(kāi)發(fā)系統(tǒng)的具體功能請(qǐng)參見(jiàn)第7章)大多數(shù)開(kāi)發(fā)系統(tǒng)都和PC機(jī)相連,借用PC機(jī)的鍵盤和顯示器以及程序開(kāi)發(fā)功能對(duì)目標(biāo)實(shí)驗(yàn)板進(jìn)行仿真調(diào)試,以動(dòng)態(tài)運(yùn)行方式確認(rèn)原理設(shè)計(jì)是否正確,各部分功能及相應(yīng)邏輯是否合理,是否符合設(shè)計(jì)要求。圖8.7仿真機(jī)系統(tǒng)連接示意圖開(kāi)發(fā)系統(tǒng)的仿真器是一個(gè)與被開(kāi)發(fā)的目標(biāo)板具有相同單片機(jī)芯片的系統(tǒng),它是借助開(kāi)發(fā)系統(tǒng)的資源來(lái)模擬目標(biāo)板中的CPU,對(duì)目標(biāo)板系統(tǒng)的資源如存儲(chǔ)器、I/O接口進(jìn)行管理。同時(shí),仿真機(jī)還具有程序跟蹤功能,它可將程序執(zhí)行過(guò)程中的有關(guān)數(shù)據(jù)和狀態(tài)在屏幕上顯示出來(lái),這給查找錯(cuò)誤和調(diào)試程序帶來(lái)了方便。其程序運(yùn)行的斷點(diǎn)功能、單步功能可直接發(fā)現(xiàn)硬件和軟件的設(shè)計(jì)錯(cuò)誤。開(kāi)發(fā)系統(tǒng)和目標(biāo)實(shí)驗(yàn)板的連接如圖8.7所示。
2.利用開(kāi)發(fā)機(jī)調(diào)試電路
利用開(kāi)發(fā)機(jī)對(duì)實(shí)驗(yàn)板的硬件進(jìn)行檢查,常常按其功能及I/O通道分別編寫(xiě)相應(yīng)的實(shí)驗(yàn)程序,檢查各部分功能及邏輯是否正確。
1)檢查各地址譯碼輸出
通常,地址譯碼輸出是一個(gè)低電平有效信號(hào)。因此,在選通某一個(gè)器件時(shí)(無(wú)論是存儲(chǔ)器芯片還是I/O接口芯片)其選片信號(hào)是一個(gè)負(fù)脈沖信號(hào)。由于使用的時(shí)鐘頻率不同,指令執(zhí)行時(shí)間不同,其負(fù)脈沖的寬度和頻率也有所不同。以51系列單片機(jī)開(kāi)發(fā)系統(tǒng)為例,如一片6264存儲(chǔ)芯片地址為2000~3FFFH,則可在開(kāi)發(fā)機(jī)上執(zhí)行如下程序:
MOVDPTR,#2000H
LOOP:MOVXA,@DPTR
SJMPLOOP
程序執(zhí)行時(shí),用邏輯筆或示波器就應(yīng)在該6264存儲(chǔ)器芯片的片選端看到等間隔的一串負(fù)脈沖信號(hào),就說(shuō)明該芯片選片信號(hào)連接是正確的。用同樣的方法,可將各存儲(chǔ)器及接口芯片的片選信號(hào)都逐一進(jìn)行檢查。如果在測(cè)試點(diǎn)上觀察不到被測(cè)信號(hào),就要檢查片選線連接是否正確,有無(wú)接觸不良、錯(cuò)線、斷線等現(xiàn)象。2)檢查存儲(chǔ)器
檢查存儲(chǔ)器時(shí)可編寫(xiě)一段檢測(cè)程序,向隨機(jī)存儲(chǔ)器進(jìn)行寫(xiě)入,再讀出,將寫(xiě)入和讀出的數(shù)據(jù)進(jìn)行比較。若正確,則繼續(xù)檢查下一單元;若發(fā)現(xiàn)錯(cuò)誤,則停止檢測(cè)程序的運(yùn)行。
ORG0100H
MOVA,#00H
MOVDPTR,#RAM首地址
MTEST:MOVX@DPTR,A
MOVR0,A
MOVXA,@DPTR
CLRC
SUBBA,R0
JNZSTOP
INCDPTR
MOVA,R0
INCA
SJMPMTEST
STOP:出錯(cuò)停止
若一片RAM芯片的多個(gè)單元不正確,則有可能某些控制信號(hào)連接不正確;如果一片RAM芯片中個(gè)別單元出現(xiàn)問(wèn)題,則有可能這一存儲(chǔ)器芯片本身有問(wèn)題。
3)檢查I/O擴(kuò)展接口
對(duì)可編程接口芯片如8155、8255,要首先對(duì)該接口芯片初始化,再對(duì)其I/O端口進(jìn)行操作。初始化要按系統(tǒng)設(shè)計(jì)要求進(jìn)行,程序調(diào)試好后就可作為正式編程的相應(yīng)內(nèi)容,初始化后,就可對(duì)其端口進(jìn)行讀寫(xiě)。對(duì)開(kāi)關(guān)量I/O來(lái)講,在實(shí)驗(yàn)板上可利用按鈕開(kāi)關(guān)和發(fā)光二極管進(jìn)行模擬調(diào)試。一般情況下,先調(diào)試主電路板,驅(qū)動(dòng)板單獨(dú)調(diào)試,這樣故障排除更方便些。如果用連續(xù)運(yùn)行方式運(yùn)行監(jiān)測(cè)程序,端口狀態(tài)不易觀察時(shí),就可用開(kāi)發(fā)系統(tǒng)的單步功能單步執(zhí)行檢測(cè)程序,檢查內(nèi)部寄存器的有關(guān)內(nèi)容或外部相應(yīng)信號(hào)的狀態(tài),以確定開(kāi)關(guān)量輸入和輸出通道連接是否正確。
4)檢查按鍵輸入及顯示電路
對(duì)獨(dú)立按鍵可直接讀入按鍵的狀態(tài),按開(kāi)關(guān)量輸入進(jìn)行檢查。若是矩陣式鍵盤,則要編寫(xiě)相應(yīng)的鍵盤掃描程序,并逐一按鍵,在顯示器上顯示相應(yīng)的代碼。
顯示器檢查可根據(jù)設(shè)計(jì)的是動(dòng)態(tài)顯示還是靜態(tài)顯示,是硬件七段譯碼還是軟件七段譯碼,來(lái)編寫(xiě)相應(yīng)的檢測(cè)程序。檢查時(shí),要將七段LED顯示器從0到9逐一驗(yàn)證,對(duì)有些特殊字符需要時(shí)也要進(jìn)行驗(yàn)證,以防丟段或連線有錯(cuò)。若采用液晶顯示器(LCD),則要連接相應(yīng)接口,調(diào)試好通信程序,使LCD顯示正常。8.3.9系統(tǒng)結(jié)構(gòu)設(shè)計(jì)
在前面實(shí)驗(yàn)板調(diào)試的基礎(chǔ)上檢查各部分功能均達(dá)到設(shè)計(jì)要求后,要核對(duì)系統(tǒng)原理圖,確定元器件的型號(hào)、引腳連接線,最終確定正式系統(tǒng)原理圖。然后就可進(jìn)行結(jié)構(gòu)設(shè)計(jì)了。
1.機(jī)殼設(shè)計(jì)
機(jī)殼是控制器的保護(hù)罩,同時(shí)也是人機(jī)界面的重要組成部分。外殼的體積和面板設(shè)計(jì)要根據(jù)控制對(duì)象的要求綜合考慮,不可能給出統(tǒng)一原則。如機(jī)床控制器,電路板可能就安裝在機(jī)床內(nèi)部,不需要另外設(shè)計(jì)機(jī)殼,只要一個(gè)簡(jiǎn)單的外殼加上一個(gè)便于操作的面板就可以了??照{(diào)器的控制器,要求將其放在機(jī)體內(nèi),因此控制板的體積要盡可能緊湊,不需要再加外殼保護(hù),其有關(guān)操作放在空調(diào)機(jī)體的面板上進(jìn)行。若要設(shè)計(jì)一個(gè)以單片機(jī)為核心的智能儀表,則要設(shè)計(jì)一個(gè)恰當(dāng)
的外殼,美觀的面板,便于攜帶和操作,使產(chǎn)品有良好的人機(jī)界面。對(duì)于家電產(chǎn)品,外觀造型、色彩、樣式等都要求較高,既要功能齊全使用方便,又要美觀大方經(jīng)濟(jì)實(shí)用。
2.印制電路板設(shè)計(jì)
印制板的大小和形狀要根據(jù)機(jī)殼內(nèi)安裝的實(shí)際要求和系統(tǒng)所含元器件的數(shù)量進(jìn)行安排和布局。
在一個(gè)復(fù)雜的系統(tǒng)中,往往要設(shè)計(jì)多塊印制電路板,通過(guò)接插件連接,印制板的劃分要依據(jù)以下原則:
(1)同一功能模塊電路盡可能設(shè)計(jì)在同一印制板上。
(2)電路板間的連線盡可能簡(jiǎn)單。
(3)板子大小要適中,布局要均衡。同時(shí),在設(shè)計(jì)印制板時(shí),要選好相應(yīng)的接插件以及安裝方式。由于印制電路板元器件密集,容易相互影響,因此在設(shè)計(jì)時(shí)要考慮以下幾點(diǎn):
(1)電源線和地線盡可能加粗,以減少導(dǎo)線電阻產(chǎn)生的壓降。
(2)低頻信號(hào)宜采用一點(diǎn)接地,高頻信號(hào)宜采用多點(diǎn)接地。
(3)地線最好繞印制板邊沿一周布線,便于地線連接。
(4)數(shù)字、模擬電路要分開(kāi)布局,且兩者地線盡量不要相混。
(5)每個(gè)印制板電源進(jìn)線跨接一個(gè)100~250μF電解電容;每個(gè)集成電路芯片應(yīng)跨接一個(gè)103左右的瓷片去耦電容,保證器件電源正常。
(6)在元器件排列時(shí),有關(guān)的器件盡可能靠近,使走線盡可能短,可獲得較好的抗噪效果。
(7)將發(fā)熱量大的元器件盡可能放置在上方或靠近機(jī)殼通風(fēng)散熱孔,以便獲得好的散熱效果。
設(shè)計(jì)印制電路板使用Protel99繪圖軟件。使用該軟件設(shè)計(jì)PCB版圖,可直接拿到印制板廠在光繪機(jī)上做出膠片底板,直接加工。在印制板上同時(shí)設(shè)計(jì)一張絲網(wǎng)印制板圖,用于將印制板上的元件序號(hào)、名稱等印制到電路板上,便于安裝和檢查。以上介紹了系統(tǒng)硬件設(shè)計(jì)的主要步驟及方法。在印制板正式做出來(lái)后,要再次進(jìn)行調(diào)試以形成正式的控制系統(tǒng)硬件。讀者在工作中可結(jié)合自己的實(shí)踐總結(jié)出一些規(guī)律,以提高系統(tǒng)設(shè)計(jì)的效率,縮短設(shè)計(jì)周期,從而盡快設(shè)計(jì)出一個(gè)優(yōu)質(zhì)高效的單片機(jī)控制系統(tǒng)。8.4.1常用調(diào)試工具
在單片機(jī)應(yīng)用系統(tǒng)調(diào)試中,常用的調(diào)試工具有以下幾
1.單片機(jī)開(kāi)發(fā)系統(tǒng)
單片機(jī)開(kāi)發(fā)系統(tǒng)(又稱仿真器)的主要作用是:
(1)系統(tǒng)硬件電路的診斷與檢查。
(2)程序的輸入與修改。
(3)硬件電路、程序的運(yùn)行與調(diào)試。
(4)程序固化(要用到編程器)。8.4系統(tǒng)調(diào)試由于單片機(jī)本身不具有調(diào)試及輸入程序的能力,因此單片機(jī)開(kāi)發(fā)系統(tǒng)就成為開(kāi)發(fā)應(yīng)用系統(tǒng)不可缺少的工具。
對(duì)應(yīng)于某一系列的單片機(jī)都有與之相應(yīng)的開(kāi)發(fā)系統(tǒng)。例如,Intel公司推出的ICE-5100/252單片機(jī)在線仿真器,用于開(kāi)發(fā)研制51系列單片機(jī)應(yīng)用系統(tǒng);ATD-96/98B單片機(jī)開(kāi)發(fā)系統(tǒng)用于開(kāi)發(fā)研制8096/98單片機(jī)應(yīng)用系統(tǒng)。Motorola公司推出的MC68HC11EVM仿真器用于開(kāi)發(fā)研制MC68HC11系列單片機(jī)應(yīng)用系統(tǒng)。凌陽(yáng)公司提供的PROBEL用于開(kāi)發(fā)研制SPCE061A系列單片機(jī)應(yīng)用系統(tǒng),可以很容易地進(jìn)行系統(tǒng)仿真和調(diào)試,并能完成程序下載實(shí)現(xiàn)器件編程。
也有少數(shù)的開(kāi)發(fā)系統(tǒng)適用于多種類型的單片機(jī),但一般局限于同一公司的產(chǎn)品。因此,單片機(jī)開(kāi)發(fā)系統(tǒng)的選擇原則是,開(kāi)發(fā)系統(tǒng)的單片機(jī)與用戶系統(tǒng)的單片機(jī)必須為同一系列產(chǎn)品。如圖8.8所示是一種常用的開(kāi)發(fā)系統(tǒng)。
開(kāi)發(fā)系統(tǒng)可獨(dú)立工作,也可與計(jì)算機(jī)聯(lián)機(jī)使用。它提供了必要的開(kāi)發(fā)軟件及豐富的子程序庫(kù),其監(jiān)控程序支持程序輸入、修改、測(cè)試、狀態(tài)查詢等功能。開(kāi)發(fā)系統(tǒng)本身占用單片機(jī)硬件資源少并具有資源出借功能,同時(shí)具有多種跟蹤、運(yùn)行、調(diào)試功能,與主機(jī)聯(lián)機(jī)時(shí)可用匯編語(yǔ)言或C語(yǔ)言編程。圖8.8一種常用仿真器將單片機(jī)開(kāi)發(fā)系統(tǒng)的仿真插頭插入用戶系統(tǒng)的單片機(jī)插座,通過(guò)操作開(kāi)發(fā)系統(tǒng)實(shí)現(xiàn)對(duì)用戶系統(tǒng)各部件的操作,就能達(dá)到調(diào)試、運(yùn)行用戶系統(tǒng)的目的。
2.萬(wàn)用表
萬(wàn)用表(三用表)是系統(tǒng)設(shè)計(jì)和調(diào)試人員必不可少的儀表之一,主要用于測(cè)量硬件電路的通斷、兩點(diǎn)間電阻值、測(cè)試點(diǎn)電壓、電流及其他靜態(tài)工作狀態(tài)等。系統(tǒng)研發(fā)、調(diào)試、維護(hù)人員應(yīng)配備一塊內(nèi)阻較大的數(shù)字三用表。
例如,在某個(gè)集成塊的輸入端輸入穩(wěn)態(tài)電平時(shí),可用萬(wàn)用表來(lái)測(cè)試其輸出,通過(guò)測(cè)試值與理論值的比較,就可判定該芯片的工作是否正常。例如,74LS04六非門器件,當(dāng)在非門輸入端加高電平時(shí),其輸出端應(yīng)為低電平,可用三用表測(cè)試其電平,判斷其工作狀態(tài)。
3.邏輯筆
邏輯筆是數(shù)字系統(tǒng)調(diào)試過(guò)程中十分有用的測(cè)試工具,它以制作容易,攜帶方便,經(jīng)濟(jì)實(shí)用,深受廣大工程技術(shù)人員歡迎。圖8.9是一種常用的邏輯筆。圖8.9邏輯筆邏輯筆可以測(cè)試數(shù)字電路中被測(cè)試點(diǎn)的電平狀態(tài)(高或低)及是否有脈沖信號(hào)。假如要檢測(cè)單片機(jī)擴(kuò)展總線上連接的某譯碼器是否有譯碼信號(hào)輸出,可編寫(xiě)一循環(huán)程序使譯碼器輸出一特定譯碼信號(hào)。運(yùn)行該循環(huán)程序后,用邏輯筆測(cè)試譯碼器輸出端,若邏輯筆上發(fā)光二極管交替閃亮,則說(shuō)明譯碼器有譯碼信號(hào)輸出;若只有紅色發(fā)光二極管亮(高電平輸出)或綠色發(fā)光二極管亮(低電平輸出),則說(shuō)明譯碼器無(wú)譯碼信號(hào)輸出。這樣就可以初步確定由擴(kuò)展總線到譯碼器之間可能存在故障。系統(tǒng)運(yùn)行時(shí),邏輯筆用來(lái)測(cè)量系統(tǒng)總線的信號(hào),判斷系統(tǒng)運(yùn)行狀況十分實(shí)用。
4.邏輯脈沖發(fā)生器與模擬信號(hào)發(fā)生器
邏輯脈沖發(fā)生器能夠產(chǎn)生不同寬度、幅度及頻率的脈沖信號(hào),它可以作為數(shù)字電路的信號(hào)源。模擬信號(hào)發(fā)生器可產(chǎn)生具有不同頻率的方波、正弦波、三角波、鋸齒波等模擬信號(hào),作為模擬電路的信號(hào)源。這些信號(hào)源在系統(tǒng)模擬調(diào)試過(guò)程中很有用。
5.示波器
示波器可以測(cè)量電平、模擬信號(hào)波形及頻率,還可以觀察多個(gè)信號(hào)的波形及它們之間的相位關(guān)系(雙蹤或多蹤示波器)。既可以對(duì)靜態(tài)信號(hào)進(jìn)行檢測(cè),也可以對(duì)動(dòng)態(tài)信號(hào)進(jìn)行測(cè)試,而且測(cè)試準(zhǔn)確直觀,是電子信息系統(tǒng)調(diào)試維修的一種必備工具。圖8.10是一種常用的示波器。圖8.10常用的示波器
6.邏輯分析儀
邏輯分析儀能夠以單通道或多通道實(shí)時(shí)獲取觸發(fā)事件的邏輯信號(hào),可保存顯示觸發(fā)事件前后所獲取的信號(hào),供操作者隨時(shí)觀察,作為軟、硬件分析的依據(jù),能夠快速有效地查出軟、硬件中的錯(cuò)誤。邏輯分析儀主要用于動(dòng)態(tài)調(diào)試中信號(hào)的捕獲,當(dāng)然,它也是一種比較貴重的儀器。一般情況下,單片機(jī)仿真器也可提供軟件邏輯分析功能,能夠解決一些實(shí)際問(wèn)題,售價(jià)不高,是一種行之有效的分析方法。
在單片機(jī)應(yīng)用系統(tǒng)調(diào)試過(guò)程中,數(shù)字三用表、示波器、邏輯筆及開(kāi)發(fā)系統(tǒng)是最基本的調(diào)試工具。通常為了便于掌握單片機(jī)原理及應(yīng)用,需要相應(yīng)的單片機(jī)原理實(shí)驗(yàn)箱,圖8.11為一種功能比較齊全的單片機(jī)應(yīng)用實(shí)驗(yàn)箱。該實(shí)驗(yàn)箱能夠完成以下實(shí)驗(yàn):?jiǎn)纹瑱C(jī)并行端口、串行通信口、定時(shí)器/計(jì)數(shù)器和中斷系統(tǒng)等功能模塊的測(cè)試及應(yīng)用類基本實(shí)驗(yàn);存儲(chǔ)器擴(kuò)展、I/O端口擴(kuò)展等系統(tǒng)擴(kuò)展類實(shí)驗(yàn);鍵盤、顯示器應(yīng)用實(shí)驗(yàn);A/D、D/A應(yīng)用實(shí)驗(yàn);光電隔離器件、繼電器應(yīng)用類實(shí)驗(yàn);也可以作為大型綜合性實(shí)驗(yàn)及電子設(shè)計(jì)大賽的培訓(xùn)平臺(tái)等。圖8.11單片機(jī)實(shí)驗(yàn)箱8.4.2系統(tǒng)調(diào)試方法
1.硬件調(diào)試
硬件調(diào)試是利用開(kāi)發(fā)系統(tǒng)、基本測(cè)試儀器(萬(wàn)用表、示波器等),通過(guò)執(zhí)行開(kāi)發(fā)系統(tǒng)有關(guān)命令或運(yùn)行適當(dāng)?shù)臏y(cè)試程序(也可以是與硬件有關(guān)的用戶程序段),檢查用戶系統(tǒng)硬件工作是否正常。
硬件調(diào)試可分為靜態(tài)調(diào)試與動(dòng)態(tài)調(diào)試兩步進(jìn)行。
1)靜態(tài)調(diào)試
靜態(tài)調(diào)試是在用戶系統(tǒng)未加電工作時(shí)的一種硬件檢查方法。
第1步,目測(cè)。單片機(jī)應(yīng)用系統(tǒng)中大部分電路安裝在印制電路板上,因此,對(duì)每一塊加工好的印制電路板要進(jìn)行仔細(xì)的檢查。檢查它的印制線是否有斷線和毛刺,是否與其他線或焊盤粘連,焊盤是否脫落,金屬化過(guò)孔是否連通等。若印制板無(wú)質(zhì)量問(wèn)題,則將集成芯片的插座、電路元件焊接在印制板上(注意裝配工藝,一般先低后高。先焊體積小高度低的元件,后裝體積大較高的元件;先裝低值元器件,后安裝價(jià)格較高的元件),并檢查其焊點(diǎn)是否有毛刺,是否與其他印制線或焊盤連接,焊點(diǎn)是否光亮飽滿,有無(wú)虛焊等。對(duì)系統(tǒng)中所用的器件與設(shè)備,要仔細(xì)核對(duì)型號(hào),檢查它們對(duì)外連線(包括集成芯片引腳)是否完整無(wú)損。通過(guò)目測(cè)可以查出一些明顯的器件、設(shè)備故障并及時(shí)排除。
第2步,萬(wàn)用表檢測(cè)。目測(cè)檢查后,可用萬(wàn)用表測(cè)試。先用萬(wàn)用表復(fù)核目測(cè)過(guò)程中認(rèn)為可疑的連接點(diǎn),檢查它們的通斷狀態(tài)是否與設(shè)計(jì)相符。再檢查各種電源線與地線之間是否有短路現(xiàn)象。短路現(xiàn)象一定要在器件安裝及加電前排除。如果電源與地之間短路,系統(tǒng)中的器件或電源設(shè)備都可能被毀壞,后果十分嚴(yán)重。所以,對(duì)電源與地的處理,在整個(gè)系統(tǒng)調(diào)試及今后的運(yùn)行過(guò)程中都要相當(dāng)小心。如果有現(xiàn)成的集成電路測(cè)試儀器,應(yīng)將要使用的芯片進(jìn)行測(cè)試篩選。其他的器件、設(shè)備在購(gòu)買或使用前也應(yīng)做必要的測(cè)試,以確保將性能可靠的器件、設(shè)備用于系統(tǒng)。
第3步,加電檢查。在靜態(tài)檢測(cè)完成之后,在給印制板加電前,首先檢查所有插座或器件的電源額定值是否與電源電壓相符,然后再加電檢查各點(diǎn)電壓是否正常(注意,單片機(jī)插座上的電壓不應(yīng)該大于VDD,否則聯(lián)機(jī)時(shí)可能損壞仿真器),檢查接地是否可靠,接固定電平的引腳電平是否正確。然后在斷電狀態(tài)下,將芯片逐個(gè)插入印制板的相應(yīng)插座。每插入一塊做一遍上述檢查,特別要檢查電源與地是否短路,這樣就可以確定電源錯(cuò)誤或與地短路發(fā)生在哪塊芯片上。在對(duì)各芯片、器件加電過(guò)程中,還要隨時(shí)注意觀察芯片或器件是否出現(xiàn)打火、過(guò)熱、變色、冒煙、異味等現(xiàn)象,如果出現(xiàn)立即斷電,就應(yīng)仔細(xì)檢查電源加載等情況,找出產(chǎn)生異常的原因并加以排除。
此外,也可以在加電期間,通過(guò)給邏輯功能簡(jiǎn)單的芯片加載固定輸入電平,用萬(wàn)用表測(cè)其輸出電平的方法來(lái)判定該芯片的好壞。例如,74LS08為四二輸入與門,當(dāng)兩輸入端接高電平時(shí),其輸出端應(yīng)為高電平;任一輸入端為低電平時(shí),輸出應(yīng)為低電平。否則,說(shuō)明該器件有問(wèn)題。第4步,聯(lián)機(jī)檢查。因?yàn)橹挥杏脝纹瑱C(jī)開(kāi)發(fā)系統(tǒng)才能完成對(duì)用戶系統(tǒng)的調(diào)試,而動(dòng)態(tài)測(cè)試也需要在聯(lián)機(jī)仿真的情況下進(jìn)行。因此,在靜態(tài)檢查印制電路板、接插件、器件等部分無(wú)物理性故障后,即可將用戶系統(tǒng)與單片機(jī)開(kāi)發(fā)系統(tǒng)用仿真電纜連接起來(lái)。聯(lián)機(jī)檢查上述連接是否正確、可靠。
2)動(dòng)態(tài)調(diào)試
動(dòng)態(tài)調(diào)試是在用戶系統(tǒng)加電工作的情況下,發(fā)現(xiàn)和排除系統(tǒng)存在的器件內(nèi)部故障、器件間連接邏輯錯(cuò)誤、軟件功能是否正常的一種有效檢查方法。由于單片機(jī)應(yīng)用系統(tǒng)的動(dòng)態(tài)調(diào)試是在開(kāi)發(fā)系統(tǒng)的支持下完成的,因此又稱為聯(lián)機(jī)調(diào)試或聯(lián)機(jī)仿真。
動(dòng)態(tài)調(diào)試的原則是:由分到合、由近及遠(yuǎn)。由分到合指的是,首先按邏輯功能將用戶系統(tǒng)硬件電路分為若干模塊,如程序存儲(chǔ)器、A/D轉(zhuǎn)換電路、繼電器控制電路等,再分別調(diào)試。當(dāng)調(diào)試某一模塊電路時(shí),與該電路無(wú)關(guān)的器件可以全部從用戶系統(tǒng)中去掉,這樣,可將故障范圍限定在某個(gè)局部范圍內(nèi)。當(dāng)各個(gè)電路調(diào)試無(wú)誤后,將各模塊電路逐一加入系統(tǒng)中,再對(duì)電路功能及各電路間可能存在的相互聯(lián)系進(jìn)行調(diào)試。
此時(shí)若出現(xiàn)故障,則最大可能是在各電路協(xié)調(diào)關(guān)系上出了問(wèn)題,如交互信息的聯(lián)絡(luò)是否正確,時(shí)序是否達(dá)到要求等。直到所有電路加入系統(tǒng)后各部分電路能正常工作為止,由分到合的調(diào)試即告完成。在經(jīng)歷了這樣一個(gè)調(diào)試過(guò)程后,大部分硬件故障基本上可以排除。由近及遠(yuǎn)指的是,對(duì)于功能較多,某些邏輯功能模塊電路較復(fù)雜,會(huì)給故障的準(zhǔn)確定位帶來(lái)一定的難度。這時(shí),對(duì)每一模塊電路可以以信號(hào)處理的流向?yàn)榫€索,將信號(hào)流經(jīng)的各器件按照距離單片機(jī)的邏輯距離由近及遠(yuǎn)地分層,然后按層調(diào)試。調(diào)試時(shí),仍采用去掉無(wú)關(guān)器件的方法,逐層依次調(diào)試下去,就可將故障定位在具體器件上。例如,調(diào)試外部數(shù)據(jù)存儲(chǔ)器時(shí),可按層先調(diào)試總線電路,然后調(diào)試譯碼電路,最后加上存儲(chǔ)芯片,利用開(kāi)發(fā)系統(tǒng)對(duì)其進(jìn)行讀寫(xiě)操作,就能有效地調(diào)試數(shù)據(jù)存儲(chǔ)器。顯然,每部分出現(xiàn)的問(wèn)題只局限在一個(gè)小范圍內(nèi),有利于故障的發(fā)現(xiàn)和排除。動(dòng)態(tài)調(diào)試借用開(kāi)發(fā)系統(tǒng)資源(單片機(jī)、存儲(chǔ)器等)來(lái)調(diào)試用戶系統(tǒng)中單片機(jī)的外圍電路。利用開(kāi)發(fā)系統(tǒng)友好的人機(jī)界面,可以有效地對(duì)用戶系統(tǒng)的各部分電路進(jìn)行訪問(wèn)、控制,從而發(fā)現(xiàn)故障。典型有效的訪問(wèn)、控制各部分電路的方法是對(duì)電路進(jìn)行循環(huán)讀或?qū)懖僮?時(shí)鐘等特殊電路除外,這些電路通常在系統(tǒng)加電后會(huì)正常運(yùn)行,只要器件沒(méi)有問(wèn)題,一般情況下為免調(diào)試電路),使得電路中主要測(cè)試點(diǎn)的狀態(tài)能夠用常規(guī)檢測(cè)儀器(示波器、萬(wàn)用表等)測(cè)試,依次檢測(cè)被調(diào)試電路是否按預(yù)期的狀態(tài)工作。
2.軟件調(diào)試
軟件調(diào)試是檢測(cè)應(yīng)用程序是否達(dá)到設(shè)計(jì)要求,能否正確完成系統(tǒng)功能的過(guò)程,通過(guò)對(duì)用戶程序的匯編、連接、執(zhí)行,來(lái)發(fā)現(xiàn)程序中存在的語(yǔ)法錯(cuò)誤與邏輯錯(cuò)誤并加以排除的過(guò)程。軟件調(diào)試一般采用先獨(dú)立后聯(lián)機(jī)、先分塊后組合、先單步后連續(xù)的調(diào)試方法。
1)先獨(dú)立后聯(lián)機(jī)
從宏觀來(lái)說(shuō),單片機(jī)應(yīng)用系統(tǒng)中的軟件與硬件是密切相關(guān)、相輔相成的。軟件是硬件的靈魂,沒(méi)有軟件,系統(tǒng)將無(wú)法工作;同時(shí),軟件的運(yùn)行又依賴于硬件,沒(méi)有硬件支持,軟件的功能便蕩然無(wú)存。因此,將兩者完全孤立開(kāi)來(lái)是不可能的。然而,并非所有用戶程序都依賴于硬件,當(dāng)軟件對(duì)被測(cè)試參數(shù)進(jìn)行加工處理或作某種事務(wù)處理時(shí),往往與硬件無(wú)關(guān)。這樣,就可以通過(guò)分析用戶程序,把與硬件無(wú)關(guān)的功能相對(duì)獨(dú)立的程序段提取出來(lái),形成與硬件無(wú)關(guān)和依賴于硬件的兩大類用戶程序塊。這一劃分工作在軟件設(shè)計(jì)時(shí)就應(yīng)充分考慮。
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年版高校專利技術(shù)轉(zhuǎn)讓合同
- 2024-2030年中國(guó)大棗飲料行業(yè)銷售模式及投資盈利預(yù)測(cè)報(bào)告
- 2024-2030年中國(guó)城市電視臺(tái)行業(yè)發(fā)展策略及投資運(yùn)作模式分析報(bào)告
- 2024年農(nóng)業(yè)產(chǎn)業(yè)投資合同擔(dān)保協(xié)議3篇
- 2024年校園水電設(shè)施改造與維護(hù)服務(wù)合同3篇
- 馬鞍山師范高等專科學(xué)?!段锫?lián)網(wǎng)應(yīng)用概論》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024年創(chuàng)新創(chuàng)業(yè)項(xiàng)目投資評(píng)估與咨詢服務(wù)協(xié)議3篇
- 2024年度自動(dòng)駕駛汽車勞動(dòng)合同與聘用合同3篇
- 2024年標(biāo)準(zhǔn)化信息技術(shù)外包服務(wù)合同一
- 2024年度行政合同科技創(chuàng)新合同糾紛救濟(jì)與保障協(xié)議2篇
- 《景點(diǎn)導(dǎo)游》教案
- 德勤公司概況簡(jiǎn)介
- DB32∕T 2156-2012 電梯能耗測(cè)試及能效分級(jí)
- 瀝青路面日常養(yǎng)護(hù)及維修施工要點(diǎn)(大量附圖共143頁(yè))
- 《色彩基礎(chǔ)知識(shí)》PPT課件(詳解)
- 《保健按摩師》(二級(jí))理論知識(shí)鑒定要素細(xì)目表
- 甘蔗制糖簡(jiǎn)介
- 三秦出版社五年級(jí)上冊(cè)綜合實(shí)踐教案
- 屋頂分布式光伏項(xiàng)目安全文明施工控制措施
- 水泥保證供應(yīng)實(shí)施方案及服務(wù)承諾書(shū)
- 2022機(jī)要密碼工作總結(jié)機(jī)要室工作總結(jié).doc
評(píng)論
0/150
提交評(píng)論