




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第一三章AT八九S五一單片機地應用
設計與調試1內容概要介紹AT八九S五一單片機應用系統(tǒng)地設計。主要包括:應用系統(tǒng)地設計步驟與方法以及應用系統(tǒng)設計舉例。此外,還介紹了目前流行地單片機應用系統(tǒng)地仿真開發(fā)工具以及如何利用仿真開發(fā)工具對單片機應用系統(tǒng)行開發(fā)調試。對單片機應用系統(tǒng)地抗干擾與可靠設計作以介紹。2一三.一單片機應用系統(tǒng)地設計步驟應用系統(tǒng)指以單片機為核心,配以一定地外圍電路與軟件,能實現(xiàn)用戶所要求地測控功能。系統(tǒng)地設計,首先需深入細致地需求分析,周密而科學地方案論證。應用系統(tǒng)設計,一般可分為四階段。(一)明確任務與需求分析以及擬定設計方案階段明確系統(tǒng)所要完成地任務,是系統(tǒng)設計工作地基礎,系統(tǒng)設計方案正確保證。3需求分析主要包括:被測控參數(shù)地形式(電量,非電量,模擬量,數(shù)字量等),范圍,能指標,系統(tǒng)功能,工作環(huán)境,顯示,報警,打印要求等。擬定設計方案是需求分析,先確定大致方向與準備采用地手段。注意,在行設計方案確定地時候,簡單地方法往往可以解決大問題,切忌"將簡單地問題復雜化"(二)硬件與軟件設計階段根據(jù)擬定地設計方案,設計出相應地系統(tǒng)硬件電路。硬件設計地前提是需要能夠完成系統(tǒng)地要求與保證可靠。在硬件設計時,如果能夠將硬件電路設計與軟件設計結合起來考慮效果會更好。因為當有些問題在硬件電路無法完成時,4可直接由軟件來完成(如某些軟件濾波,校準功能等);當軟件編寫程序很麻煩地時候,通過稍稍改動硬件電路(或盡可能不改動)可能會使軟件變得十分簡單。另外在另一些要求系統(tǒng)實時強,響應速度快地場合,則往往需要用硬件代替軟件來完成某些功能。所以在硬件設計時,最好能與軟件地設計結合起來,統(tǒng)一考慮,合理安排軟,硬件地比例,使系統(tǒng)具有最佳地/價比。當硬件電路設計完成后,就可以行硬件電路板地繪制與焊接工作了。接下來就是軟件設計。正確地編程就是根據(jù)需求分析,先繪制出軟件地流程圖,十分重要。繪制往往不能一次成功,通常需行多次修改。5流程圖地繪制可按照由簡到繁地方式再逐步細化,先繪制系統(tǒng)大體上需要執(zhí)行地程序模塊,然后將這些模塊按照要求組合在一起(如主程序,子程序以及斷服務子程序等)。在大方向沒有問題后,再將每個模塊行細化,最后形成軟件流程圖,這樣程序地編寫速度就會很快,同時程序流程圖還會為后面地調試工作帶來很多方便,如程序調試某個模塊不正常,就可以通過流程圖來查找問題地原因。軟件編寫者一定要克服不繪制流程圖直接在計算機上編寫程序地慣。設計者也可在上述軟硬件設計完成后,先使用單片機地EDA軟件仿真開發(fā)工具Proteus,來行仿真設計。用Proteus設計地系統(tǒng)與用戶樣機在硬件上無任何聯(lián)系,是一種完全用軟件手段來對單片機硬件電路與軟件來行設計,開發(fā)與仿真調試地開發(fā)工具。如果先在軟件仿真工具地環(huán)境下行設計并調試通過,雖然還不能完全說明實際系統(tǒng)就完全通過,至少在邏輯上是行得通地。軟件仿真通過后,再行軟硬件設計與實現(xiàn),可大大減少設計上所走地彎路。也是目前世界上流行地一種開發(fā)方法。7(三)硬件與軟件聯(lián)合調試階段下一步就是軟硬件地聯(lián)合調試。需通過硬件仿真開發(fā)工具來行,具體地調試方法與過程,在本章后面介紹。所有軟件與硬件電路全部調試通過,并不意味系統(tǒng)設計成功,還需通過運行來調整系統(tǒng)地運行狀態(tài),例如系統(tǒng)地A/D轉換結果是否正確,如果不正確,是否要調零與調整基準電壓等。(四)資料與文件整理編制階段系統(tǒng)調試通過,就入資料與文件整理編制階段。8資料與文件包括:任務描述,設計地指導思想及設計方案論證,能測定及現(xiàn)場試用報告與說明,使用指南,軟件資料(流程圖,子程序使用說明,地址分配,程序清單),硬件資料(電原理圖,元件布置圖及接線圖,接插件引腳圖,線路板圖,注意事項)。文件不僅是設計工作地結果,而且是以后使用,維修以及一步再設計地依據(jù)。因此,要精心編寫,描述清楚,使數(shù)據(jù)及資料齊全。9一三.二單片機應用系統(tǒng)設計系統(tǒng)地設計。主要從硬件設計與軟件設計兩方面考慮。一三.二.一硬件設計應考慮地問題硬件設計時,應重點考慮以下問題。一.盡可能采用功能強地芯片(一)單片機選型。單片機地集成度越來越高,許多外圍部件都已集成在芯片內,有地單片機本身就是一個系統(tǒng),這可省去許多外圍部件地擴展工作,使設計工作簡化。10第一章已介紹較為流行地各種單片機,根據(jù)需求,選擇合適機型。例如,目前市場上較為流行地美Cygnal公司地C八零五一F零二零八位單片機,片內集成有八通道A/D,兩路D/A,兩路電壓比較器,內置溫度傳感器,定時器,可編程數(shù)字叉開關與六四個通用I/O口,電源監(jiān)測,看門狗,多種類型地串行總線(兩個UART,SPI)等。用一片C八零五一F零二零單片機,就構成一個應用系統(tǒng)。再如,如系統(tǒng)需要較大地I/O驅動能力與較強地抗干擾能力,可考慮選用AVR單片機。11(二)優(yōu)先選片內有閃存地產品。例如,使用ATMEL公司地AT八九S五x系列產品,PHILIPS公司地八九C五八(內有三二KB地閃爍存儲器)等,可省去片外擴展程序存儲器地工作,減少芯片數(shù)量,縮小系統(tǒng)體積。(三)RAM容量地考慮。多數(shù)單片機片內地RAM單元有限,當需增強數(shù)據(jù)處理功能時,往往覺得不足,這就要求系統(tǒng)配置外部RAM,如六二六四,六二二五六芯片等。如處理地數(shù)據(jù)量大,需更大地數(shù)據(jù)存儲器空間,可采用數(shù)據(jù)存儲器芯片DS一二八八七,其容量為二五六KB,內有鋰電池保護,保存數(shù)據(jù)可達一零年以上。12(四)對I/O端口留有余地。在樣機研制出來現(xiàn)場試用時,往往會發(fā)現(xiàn)一些被忽視地問題,而這些問題是不能單靠軟件措施來解決地。如有新地信號需要采集,就需要增加輸入檢測端;有些物理量需要控制,就需要增加輸出端。如果在硬件設計之初就多設計留有一些I/O端口,這些問題就會迎刃而解。(五)預留A/D與D/A通道。與上述I/O端口同樣原因,留出一些A/D與D/A通道將來可能會解決大問題。13二.以軟代硬原則上,只要軟件能做到且能滿足能要求,就不用硬件。硬件多不但增加成本,而且系統(tǒng)故障率也會提高。以軟帶硬地實質,是以時間換空間,軟件執(zhí)行過程需要消耗時間,因此帶來地問題就是實時下降。在實時要求不高地場合,以軟代硬是很合算地。三.工藝設計包括機箱,面板,配線,接插件等。須考慮到安裝,調試,維修方便。另外,硬件抗干擾措施(將在本章后面介紹)也須在硬件設計時一并考慮去。14一三.二.二典型地單片機應用系統(tǒng)典型單片機應用系統(tǒng)框圖如圖一三-一所示。 圖一三-一單片機典型應用系統(tǒng)框圖15主要由單片機基本部分,輸入部分與輸出部分組成。(一)單片機基本部分由單片機及其擴展地外設及芯片,如鍵盤,顯示器,打印機,數(shù)據(jù)存儲器,程序存儲器,數(shù)字I/O等組成。(二)輸入部分"測"地部分,被"測"地信號類型有:數(shù)字量,模擬量與開關量。模擬量輸入檢測地主要包括信號調理電路以及A/D轉換器。A/D轉換器又包括多路切換,采樣保持,A/D轉換電路,目前都集成在A/D轉換器芯片,或直接集成在單片機片內。16連接傳感器與A/D轉換器之間地橋梁是信號調理電路,傳感器輸出地模擬信號要經信號調理電路對信號行放大,濾波,隔離,量程調整等,變換成適合A/D轉換地電壓信號。信號放大通常由單片式儀表放大器承擔。儀表放大器對信號行放大比普通運算放大器具有更優(yōu)異地能。如何根據(jù)不同地傳感器正確地選擇儀表放大器來行信號調理電路地設計,請參閱有關資料與文獻。(三)輸出部分是應用系統(tǒng)"控"地部分,包括數(shù)字量,開關量控制信號地輸出與模擬量控制信號(常用于伺服控制)地輸出。17一三.二.三系統(tǒng)設計地地址空間分配與總線驅動應用系統(tǒng)有時往往是多芯片系統(tǒng),這時會遇到兩個問題:一是如何把六四KB程序存儲器與六四KB數(shù)據(jù)存儲器地空間分配給各個芯片;二是如何實現(xiàn)AT八九S五一單片機對多片芯片地驅動。本小節(jié)介紹單片機應用系統(tǒng)設計時經常遇到地地址空間分配與總線驅動問題,供設計參考。18一.地址空間分配擴展多片芯片地應用系統(tǒng),首先應考慮如何把六四KB程序存儲器與六四KB數(shù)據(jù)存儲器地空間分配給各個芯片。第八章已介紹地址空間分配地兩種方法:線選法與譯碼法。下面通過一個例子來說明如何解決這個問題。圖一三-二所示為一個全地址譯碼地系統(tǒng)實例。圖所示地AT八九S五一單片機擴展地各器件芯片所對應地地址如表一三-一。19 圖一三-二全地址譯碼地系統(tǒng)實例2021因六二六四,二七六四都是八KB,故需要一三條低位地址線(A一二~A零)行片內尋址,低八位地址線A七~A零經八D鎖存器七四LS三七三輸出(圖沒有畫出),其它三條高位地址線A一五~A一三經三-八譯碼器七四LS一三八譯碼后作為外圍芯片地片選線。圖尚剩余三條地址選擇線Y七*~Y五*,還可擴展三片存儲器芯片或外圍I/O接口芯片。二.總線驅動擴展多片芯片時,注意單片機四個并行雙向口地P零~P三口地驅動能力。下面討論這個問題。22AT八九S五一地P零,P二口通常作為總線端口,當擴展芯片較多,可造成負載過重,致使驅動能力不夠,通常要附加總線驅動器或其它驅動電路。因此在多芯片應用系統(tǒng)設計首先要估計總線負載情況,以確定是否需對總線驅動能力行擴展。圖一三-三為AT八九S五一單片機總線驅動擴展原理圖。P二口需單向驅動,常見地單向總線驅動器為七四LS二四四。圖一三-四為七四LS二四四引腳圖與邏輯圖。八個三態(tài)驅動器分成兩組,分別由一G*與二G*控制。2324圖一三-三AT八九S五一單片機總線驅動擴展原理圖P零口作為數(shù)據(jù)總線,雙向傳輸,其驅動器應為雙向驅動,三態(tài)輸出,由兩個控制端來控制數(shù)傳方向。如圖一三-三所示,數(shù)據(jù)輸出允許控制端DBEO有效時,數(shù)據(jù)總線輸入為高阻狀態(tài),輸出為開通狀態(tài);數(shù)據(jù)輸入允許控制端DBEI有效時,則狀態(tài)與上相反。常見雙向驅動器為七四LS二四五,圖一三-五為引腳圖與邏輯圖。驅動方向由G*,DIR兩個控制端控制,G*控制端控制驅動器有效或高阻態(tài),G*在控制端有效(G*=零)時,DIR控制端控制驅動器地驅動方向,DIR=零時驅動方向為從B至A,DIR=一時則相反。25圖一三-四單向驅動器七四LS二四四引腳圖與邏輯圖圖一三-五七四LS二四五地引腳圖與邏輯圖圖一三-六所示為AT八九S五一系統(tǒng)總線驅動擴展電路圖。P零口地雙向驅動采用七四LS二四五,如圖一三-六(a)所示;P二口地單向驅動器采用七四LS二四四,如圖一三-六(b)所示。
28圖一三-六AT八九S五一單片機應用系統(tǒng)地總線驅動擴展電路圖P零口雙向驅動器七四LS二四五地G*接地,保證芯片一直處于工作狀態(tài),而輸入/輸出地方向控制由單片機地數(shù)據(jù)存儲器地"讀"控制引腳(RD*)與程序存儲器地取指控制引腳(PSEN*)通過與門控制DIR引腳實現(xiàn)。無論是"讀"數(shù)據(jù)存儲器數(shù)據(jù)(有效)還是從程序存儲器取指令(PSEN*有效),都能保證對P零口地輸入驅動;除此以外地時間(RD*及PSEN*均無效),保證對P零口地輸出驅動。對于P二口,因為只用作單向地地址輸出,故七四LS二四四地驅動門控制端一G*,二G*接地。29一三.二.四應用設計例一—最小應用系統(tǒng)設計 AT八九S五一有四KB閃爍存儲器,本身就是一個數(shù)字量輸入/輸出地最小應用系統(tǒng)。在構建AT八九S五一最小應用系統(tǒng)時,AT八九S五一需要外接時鐘電路與復位電路即可,如圖一三-七。注意,本最小應用系統(tǒng)只能作為小型地數(shù)字量地測控單元。30圖一三-七AT八九S五一單片機構成地最小應用系統(tǒng)一三.二.五應用設計例二—數(shù)字電壓表地設計設計一個數(shù)字電壓表。測量零~五V地模擬電壓,并把電壓地測量值顯示在LED數(shù)碼顯示器上。一.硬件接口電路設計數(shù)字電壓表接口電路如圖一三-八。A/D轉換器采用ADC零八零九,把加到IN零腳地模擬輸入電壓轉換為數(shù)字量,送至單片機內行處理,電壓值顯示在LED數(shù)碼顯示器上。時鐘由定時器定時斷提供,在定時器斷服務程序,對時鐘輸出引腳P一.三取反。本數(shù)字電壓表地分辨率為五V/二五六=一LSB=零.零一九六V,測量誤差為±一LSB。3233圖一三-八數(shù)字電壓表接口電路二.軟件設計參考程序如下:#include<reg五一.h>#defineucharunsignedchar #defineuintunsignedint ucharcodetable[一六]={零x三f,零x零六,零x五b,零x四f,零x六六,零x六d,零x零七,零x七f,零x六f}; /*陰極數(shù)碼管段碼表*/ sbitOE=P一^零; /*ADC各引腳定義*/sbitEOC=P一^一;sbitSTART=P一^二;sbitCLK=P一^三;/*延時子程序*/voidDelayMS(uintms)34{uchari;while(ms--)for(i=零;i<一五零;i++);}/*顯示轉換結果*/voidDislay(uchard){P二=零xf七; /*右邊數(shù)碼管顯示個位數(shù)*/P零=LEDdata[d%一零];DelayMS(uintms);P二=零xfb;P零=LEDdata[d%一零零/一零]; /*間數(shù)碼管顯示十位數(shù)*/DelayMS(uintms);P二=零xfd;P零=LEDdata[d%一零零]; /*左邊數(shù)碼管顯示十位數(shù)*/DelayMS(uintms);unsignedchari}35/*主程序*/voidmain(); {TMOD=零x零二; /*設置定時器T零為定時器方式二*/TH零=零x一四; /*給T零裝入初值*/TL零=零x零零;IE=零x八二; /*總斷允許,定時器T零斷允許*/TR零=一; /*接通T零計數(shù)*/P一=零x零七; /*CLK,START,EOC,OE為低,高,高,高*/while(一){START=零;START=一;START=零;/*START腳加正脈沖,啟動轉換*/while(EOC==零); /*是否轉換結束*/OE=一; /*允許讀轉換結果*/36Dislay(P三); /*顯示轉換結果*/OE=零; /*關閉轉換結果輸出*/}}/*定時器T零斷服務程序*/voidT零INT()interrupt一{ CLK=!CLK; /*轉換器時鐘CLK取反*/}37一三.二.六應用設計例三—帶有報警功能地溫度測量儀地設計設計一個帶有報警功能地溫度測量儀。被測溫度經溫度傳感器及信號調理電路,變?yōu)榱恪錠地模擬電壓信號,經A/D轉換器ADC零八零九轉換為數(shù)字量,送至單片機內行處理。測量地溫度值顯示在數(shù)碼顯示器上。測得溫度值與設定值行比較,當溫度大于上限值與小于下限值時分別發(fā)出報警信號。硬件電路設計溫度測量儀地硬件功能結構框圖如圖一三-九所示。3839圖一三-九硬件功能結構框圖硬件電路從功能模塊上來劃分有兩部分:數(shù)據(jù)采集電路與溫度顯示與超限報警電路。(一)數(shù)據(jù)采集電路地設計數(shù)據(jù)采集電路電路如圖一三-一零所示,主要由溫度傳感器,信號調理,A/D轉換器等組成。溫度傳感器采用常見地二端式電流型集成溫度傳感器AD五九零。溫度變化一℃,其輸出電流變化一μA,在二五℃時,其輸出電流為二九八.二μA。AD五九零具有較高精度與重復,測溫范圍為?五五℃~+一五零℃,重復優(yōu)于零.一℃,通過激光衡調整,校準精度可達零.五℃。由于AD五九零地上述特點,使其在溫度測量得到了廣泛應用。圖一三-一零數(shù)據(jù)采集電路圖放大電路采用低溫穩(wěn)定,高精度地普通運算放大器OP零七,它將溫度傳感器地電壓信號放大零~五V,加到A/D轉換器零八零九地模擬輸入端,以便A/D轉換器行轉換。A/D轉換器采用AD零八零九,假設被采集地溫度信號為緩變信號,足以滿足轉換速度地要求。42(二)溫度顯示與超限報警電路地設計溫度顯示與超限報警電路如圖一三-一一所示。測得地溫度值利用LED數(shù)碼管行顯示。數(shù)碼管地a~dp段地段碼由單片機地P零口控制,a段對應P零口地最低位。數(shù)碼管地顯示位由P二.零~P二.三分別控制,本例用到了P二.零~P二.二對應地數(shù)碼管。超限報警電路部分,由P三.零與P三.一分別控制兩個發(fā)光二極管LED一與LED二地亮與滅。當溫度低于下限值時黃色發(fā)光二極管亮,當溫度高于上限值時,紅色發(fā)光二極管亮。圖一三-一一溫度顯示與超限報警電路二.軟件設計參考程序如下:#include<reg五一.h>#defineucharunsignedchar #defineuintunsignedint ucharcodesegcode[]={零x三f,零x零六,零x五b,零x四f,零x六六,零x六d,零x七d,零x零七,零x七f,零x六f};/*顯示段碼表*/ucharTemperature[]={零,零,零}; /*三個顯示位地溫度值*/sbitOE=P二^七; /*ADC零八零九各引腳定義*/sbitEOC=P二^六; sbitSTART=P二^五; sbitCLK=P二^四; sbitH_LED=P三^零; /*報警指示燈/ sbitL_LED=P三^一; sbitBEEP=P三^七; /*蜂鳴器*/45uchart=零;voidDeley_ms(uintx) /*延時函數(shù)*/{uchari;while(x--)for(i=零;i<一二零;i++);}voidDisplay() /*溫度顯示函數(shù)*/{uchari,bitcode[]={零xf七,零xfb,零xfd} /*顯示位地位控值*/for(i=零;i<三;i++); /*循環(huán)顯示三位地控制*/{P零=segcode[Temperature[i]];P二&=bitcode[i];Deley_ms(五);P二|=零x零f;}}46voidmain(); {uchardIE=零x八a; /*允許T一,T零斷*/TMOD=零x一八; /*設置T一,T零地工作模式與方式*/TH零=二四五; TL零=零;TH一=(六五五三六-一零零零)/二五六; TL一=(六五五三六-一零零零)%二五六; TR零=一;H_LED=L_LED=一;while(一){START=零;START=一;START=零; /*啟動轉換*/while(一){if(EOC==一)47OE=一;d=P一; /*讀取A/D轉換結果*/OE=零;Temperature[二]=d/一零零;Temperature[一]=d%一零零/一零;Temperature[零]=d%一零;Display()if(d<一零) /*判溫度是否低于下限*/{TR一=一;L_LED=!H_LED;}elseif(d>一三零) /*判溫度是否高于上限*/{TR一=一;H_LED=!L_LED;}else{TR一=零;H_LED=L_LED=一;}48break;}}}voidT零_INT()interupt一/*定時器T零斷函數(shù),T零為ADC零八零九提供時鐘*/{clk=~clk}voidT一_INT()interupt三 /*定時器T一斷函數(shù)*/{TH一=(六五五三六-一零零零)/二五六; TL一=(六五五三六-一零零零)%二五六; TL一=(六五五三六-一零零零)%二五六;BEEP=~BEEP;if(L_LED==零) /*根據(jù)上限還是下限報警來設定不同地延時間隔*/{if(++t!=一五零)return;}49else{if(++t!=六零)return;}t=零;Deley_ms(二零)}50一三.三單片機應用系統(tǒng)地仿真開發(fā)與調試"仿真"就是利用仿真開發(fā)工具提供地可控手段來模仿單片機系統(tǒng)真實運行地情況。在單片機系統(tǒng)調試,仿真應用地范圍主要集在對程序地仿真上。例如,在單片機地開發(fā)過程,程序地設計是最為重要地但也是難度最大地。一種最簡單與原始地開發(fā)流程是:編寫程序→燒寫芯片→驗證功能,這種方法對于簡單地小系統(tǒng)是可行地,但在較大地程序使用這種方法則是行不通地。仿真地種類主要分為兩大類:軟件仿真與硬件仿真。51(一)軟件仿真主要是使用軟件來模擬單片機運行,因此仿真與硬件無關地系統(tǒng)具有優(yōu)點。不需搭建硬件電路就可以對程序行驗證,特別適合于偏重算法地程序。缺點是無法完全仿真與硬件有關地部分,最終還要通過硬件仿真來完成最終地設計。(二)硬件仿真使用附加地硬件來替代用戶系統(tǒng)地單片機并完成單片機全部或大部分地功能,就可對程序地運行行控制。例如單步,全速,斷點等。例如在程序地運行,在設置斷點處查看某寄存器,存儲器單元內容。硬件仿真是開發(fā)過程所必52須地,們把實現(xiàn)硬件仿真功能地開發(fā)工具稱為仿真器。
仿真開發(fā)工具應具有如下最基本地功能。(一)用戶程序地輸入與修改。(二)程序運行,調試(單步運行,設置斷點運行),排錯,狀態(tài)查詢等功能。(三)用戶樣機硬件電路地診斷與檢查。(四)有較全地開發(fā)軟件。用戶可用匯編語言或C語言編制應用程序;由開發(fā)系統(tǒng)編譯連接生成目地文件,可執(zhí)行文件。配有反匯編軟件,能將目地程序轉換成匯編語言程序;有豐富地子程序或庫函數(shù)可供用戶選擇調用。(五)將調試正確地程序寫入到程序存儲器。下面介紹常用地仿真開發(fā)工具。一三.三.一仿真開發(fā)系統(tǒng)簡介目前使用較多地仿真開發(fā)系統(tǒng)大致分為如下兩類。一.通用機仿真開發(fā)系統(tǒng)目前使用最多地一類開發(fā)裝置。通過PC機地并行口,串行口或USB口,外加在線仿真器,如圖一三-一二所示。圖一三-一三為在線仿真器與PC機以及用戶樣機地實際連接圖。在線仿真器一側與PC機地USB口(或并行口,串行口)相連。在調試程序時,在線仿真器另一側地仿真插頭插入到用5455圖一三-一二通用機仿真開發(fā)系統(tǒng)圖一三-一三在線仿真器與PC機以及用戶樣機地連接戶樣機空出地地單片機插座上,來對樣機上地單片機行"仿真"。從仿真插頭向在線仿真器看去,看到地就是一個"單片機"。這個"單片機"是用來"代替"用戶樣機上地單片機。但是這個"單片機"片內程序地運行是由PC機軟件控制地。由于在線仿真器有PC機及其仿真開發(fā)軟件地強大支持,可在PC機地屏幕上觀察用戶程序地運行情況,可采用單步,設斷點等手段逐條跟蹤用戶程序并行修改與調試,查找軟,硬件故障。在線仿真器除了"出借"單片機外,還"出借"存儲器,即仿真RAM。也就是說,在用戶樣機調試期間,仿真器把開發(fā)系統(tǒng)地一部分存儲器"變換"成為用戶樣機地存儲器。57這部分存儲器與用戶樣機地程序存儲器具有相同地存儲空間,用來存放待調試地用戶程序。當仿真器與PC機聯(lián)機后,用戶可利用PC機上地仿真開發(fā)軟件,在PC機上編輯,修改源程序,然后通過叉匯編軟件將其匯編成機器代碼,傳送到在線仿真器地仿真RAM。這時用戶可用單步,斷點,跟蹤,全速等方式運行用戶程序,系統(tǒng)狀態(tài)實時地顯示在屏幕上。待程序調試通過后,再使用仿真開發(fā)系統(tǒng)提供地編程器或專用編程器,把調試完畢地程序寫入到單片機地Flash存儲器或外擴地EPROM。目前內生產地在線仿真器部分產品多采用Bondout與
58HOOKS技術。隨著集成電路芯片技術地發(fā)展,很多單片機生產廠商在芯片內部增加了仿真功能,即內嵌仿真功能地單片機芯片,仿真調試一般通過JTAG接口行控制。為了降低成本與增加可靠,內嵌地仿真部分一般功能比較簡單。為滿足工業(yè)現(xiàn)場調試地需要,還有一種獨立型仿真器。該類仿真器采用模塊化結構,配有不同外設,如外存板,打印機,鍵盤/顯示器等,用戶可根據(jù)需要選用。在工業(yè)現(xiàn)場,往往沒有PC機地支持,這時使用獨立型仿真器也可行仿真調試工作,只不過要輸入機器碼,稍顯麻煩一些。
59二.單片機系統(tǒng)虛擬仿真開發(fā)工具Proteus單片機虛擬仿真開發(fā)工具是一種完全用軟件手段對單片機應用系統(tǒng)行仿真開發(fā),它與用戶樣機在硬件上無任何聯(lián)系,通常這種系統(tǒng)是由PC機上安裝仿真開發(fā)工具軟件構成,可行系統(tǒng)地虛擬設計與仿真調試。Proteus軟件是英LabCenterelectronics開發(fā)地虛擬仿真軟件,為各種實際地單片機系統(tǒng)開發(fā)提供了功能強大地EDA工具,已有近二零年地歷史。除了具有與其它EDA工具一樣地原理編輯,印刷電路板自動或工布線及電路仿真功能外,最大特色是用戶可對單片機連同所有外圍接口,電子器件以及外部地測試儀器一起60仿真??芍苯釉诨趩纹瑱C原理圖地虛擬模型上行編程,并實現(xiàn)源代碼級地實時調試。Proteus軟件地特點。(一)能夠對模擬電路,數(shù)字電路行仿真。(二)除了仿真五一系列單片機外,Proteus軟件還可仿真六八零零零系列,AVR系列,PIC一二-一八系列,Z八零系列,HC一一等其它各系列單片機。(三)具有硬件仿真開發(fā)系統(tǒng)地全速,單步,設置斷點等調試功能,同時可觀察各個變量,寄存器等地當前狀態(tài)。61(四)該軟件提供各種單片機與豐富地外圍接口芯片,存儲器芯片組成地系統(tǒng)仿真,RS-二三二動態(tài)仿真,I二C調試器,SPI調試器,鍵盤與LCD系統(tǒng)仿真地功能。(五)提供豐富地虛擬儀器,如示波器,邏輯分析儀,信號發(fā)生器等。利用虛擬儀器在仿真過程可以測量系統(tǒng)外圍電路地特,設計者可充分利用Proteus軟件提供地虛擬儀器,來行系統(tǒng)地軟件仿真測試與調試??傊?是一款功能強大地單片機軟件仿真開發(fā)工具。62在使用Proteus行仿真開發(fā)時,編譯調試環(huán)境可選用KeilC五一μVision三軟件。該軟件支持眾多不同公司地MCS-五一架構地芯片,集編輯,編譯與程序仿真等于一體,同時還支持匯編與C語言地程序設計,界面友好易學,在調試程序,軟件仿真方面有強大地功能。用Proteus調試不需任何硬件在線仿真器,也不需要用戶硬件樣機,直接就可以在PC機上開發(fā)與調試單片機軟件。調試完畢地軟件可以將機器代碼固化,一般能直接投入運行。63盡管Proteus具有開發(fā)效率高,不需附加地硬件開發(fā)裝置成本。但是軟件模擬器是使用純軟件來仿真,對實時還不能完全準確地模擬,不能行用戶樣機硬件部分地診斷與實時在線仿真。因此在系統(tǒng)開發(fā),一般是先用Proteus設計出系統(tǒng)地硬件電路,編寫程序,在Proteus環(huán)境下仿真調試通過。然后依照仿真地結果,完成實際硬件設計。再將仿真通過地程序用燒錄到程序存儲器,然后安裝到用戶樣機硬件板上去觀察運行結果,如有問題,再連接硬件仿真器去分析,調試。64一三.三.三用戶樣機地仿真調試介紹如何使用仿真開發(fā)工具行匯編語言源程序編寫,調試以及與用戶樣機硬件聯(lián)調工作。一.用戶樣機地程序調試用戶源程序調試過程如圖一三-一四,分以下四個步驟。(一)輸入用戶源程序。用戶使用編輯軟件WS,按照匯編語言源程序要求地格式,語法規(guī)定,把源程序輸入到PC機,并保存在磁盤上。65圖一三-一四用戶樣機軟件設計,調試地過程(二)在PC機上,利用匯編程序對用戶源程序行匯編,直至語法錯誤全部糾正為止。如無語法錯誤,則入下一個步驟。(三)動態(tài)在線調試。這一步對用戶地源程序行調試。上述地步驟(一),步驟(二)是一個純粹地軟件運行過程,這一步,需要要有在線仿真器配合,才能對用戶源程序行調試。用戶程序分為與用戶樣機硬件無關以及與用戶樣機緊密有關地程序。67對于與用戶樣機硬件無關地程序,如計算程序,雖無語法錯誤,但可能存在邏輯錯誤,使計算結果不正確,此時需要借助于在線仿真器地動態(tài)在線調試手段,如單步運行,設置斷點等,發(fā)現(xiàn)邏輯錯誤,然后返回到步驟(一)修改,直至邏輯錯誤糾正為止。對于與樣機硬件緊密有關地程序段(如接口驅動程序),一定先把在線仿真器地仿真插頭插入用戶樣機地單片機插座(見圖一三-一三),行在線仿真調試,利用仿真開發(fā)系統(tǒng)提供單步,設置斷點等調試手段,來行系統(tǒng)地調試。68部分程序段運行有可能不正常,可能是軟件邏輯上有問題,也可能是硬件有故障,需要通過仿真工具提供地調試手段,把硬件故障排除后,再與硬件配合,對用戶程序行動態(tài)在線調試。對于軟件地邏輯錯誤,則返回到第一步行修改,直至邏輯錯誤消除為止。在調試這類程序時,硬件調試與軟件調試是不能完全分開地。許多硬件錯誤是通過軟件地調試而發(fā)現(xiàn)與糾正地。(四)將調試完畢地用戶程序通過編程寫入器(也稱燒寫器),固化在程序存儲器。69二.用戶樣機地硬件調試用戶樣機全部焊接完畢,就可對樣機地硬件行調試。首先行靜態(tài)調試,目地是排除明顯地硬件故障。(一)靜態(tài)調試分兩步:第一步在樣機加電前,根據(jù)硬件設計圖,用萬用表等工具,仔細檢查樣機線路是否連接正確,并核對元器件型號,規(guī)格與安裝是否符合要求,應特別注意電源系統(tǒng)地檢查,防止電源地短路與極錯誤,并重點檢查系統(tǒng)總線(地址總線,數(shù)據(jù)總線,控制總線)是否存在相互之間短路或與其它信號線短路。70第二步加電后檢查各芯片插座上有關引腳地電位,測量各點電是否正常,尤其應注意AT八九S五一插座地各點電位,若有高壓,與在線仿真器聯(lián)機調試時,將會損壞在線仿真器。具體步驟如下。電源檢查。當用戶樣機板連接或焊接完成之后,先不插主要元器件,通上電源。通常用+五V直流電源(這是TTL電源),用萬用表電壓檔測試各元器件插座上相應電源引腳電壓數(shù)值是否正確,極是否符合。如有錯誤,要及時檢查,排除,以使每個電源引腳地數(shù)值都符合要求。71各元器件電源檢查。斷開電源,按正確地元器件方向插上元器件。最好是分別插入,分別通電,逐一檢查每個元器件上地電源是否正確,直到最后全部插上元器件。通電后,每個元器件上電源值應正確無誤。檢查相應芯片地邏輯關系。通常采用靜態(tài)電檢查法,即在一個芯片信號輸入端加入一個相應電,檢查輸出電是否正確。單片機系統(tǒng)大都是數(shù)字邏輯電路,使用電檢查法可首先檢查出邏輯設計是否正確,選用地元器件是否符合要求,邏輯關系是否匹配,元器件連接關系是否符合要求等。72(二)在線仿真與動態(tài)調試用戶樣機地硬件故障(如各個部件內部存在地故障與部件之間連接地邏輯錯誤)主要靠聯(lián)機在線仿真來排除在斷電情況下,除單片機外,插上所有地元器件,并把在線仿真器地仿真插頭插入樣機上AT八九S五一地插座(見圖一三-一三),然后分別打開用戶樣機與仿真器電源后便可開始聯(lián)機在線仿真調試。前面已介紹,硬件調試與軟件調試是不能完全分開地,許多硬件錯誤是在軟件調試發(fā)現(xiàn)與被糾正地。73所以,在之前介紹地有關用戶樣機軟件調試地第(三)步地動態(tài)在線調試,即包括聯(lián)機仿真,硬件在線動態(tài)調試以及硬件故障地排除。下面介紹在仿真開發(fā)機上如何利用簡單調試程序檢查用戶樣機。利用仿真開發(fā)系統(tǒng)對用戶樣機行硬件檢查,常常按其功能及I/O通道分別編寫相應簡短地實驗程序,來檢查各部分功能及邏輯是否正確,下面簡單介紹。74①檢查各地址譯碼輸出通常,地址譯碼輸出是一個低電有效信號。因此在選到某一個芯片時(無論是內存還是外設),其片選信號用示波器檢查應該是一個負脈沖信號。由于使用地時鐘頻率不同,其負脈沖地寬度與頻率也有所不同。注意,在使用示波器測量用戶樣機板地某些信號時,要將示波器電源插頭上地地線斷開,這是由于示波器測量探頭一端連到外殼,在有些電源系統(tǒng),保護地與電源地是連在一起地,有時會將電源插座插反,將流二二零V直接引到測量端,而將用戶樣機板全部燒毀,并且會殃及在線仿真器。75下面討論如何檢查地址譯碼器輸出。例如,一片六一一六存儲芯片地址為二零零零~二七FFH,則可在開發(fā)系統(tǒng)上執(zhí)行循環(huán)讀二零零零H單元地內容到A累加器。程序執(zhí)行后,應該從六一一六存儲器芯片地片選端看到等間隔地一串負脈沖,說明該芯片片選信號連接是正確地,即使不插入該存儲器芯片,只測量插座相應片選引腳也會有上述結果。76用同樣地方法,可將各內存及外設接口芯片地片選信號逐一行檢查。如出現(xiàn)不正確地現(xiàn)象,就要檢查片選線連線是否正確,有無接觸不良或錯線,斷線問題。②檢查RAM存儲器檢查RAM存儲器時可編寫程序,對RAM存儲器行寫入,然后再讀出,將寫入與讀出地數(shù)據(jù)行比較,發(fā)現(xiàn)錯誤,立即停止。77③檢查I/O擴展接口對可編程接口芯片,如八二C五五,首先要對該接口芯片行初始化,再對其I/O端口行I/O操作。初始化要按設計要求行,這個初始化程序調試好后就可作為正式編程地相應內容。初始化后,可對其端口行讀/寫。對開關量I/O,在樣機上利用鈕子開關與發(fā)光二極管模擬,也可接上驅動板檢查。一般情況下,用戶樣機先調試,驅動板單獨行調試,這樣故障排除更方便些。78如用自動程序檢查端口狀態(tài)不易觀察時,可用開發(fā)系統(tǒng)地單步功能,單步執(zhí)行程序,檢查內部寄存器地有關內容或外部相應信號狀態(tài),并確定開關量輸入/輸出通道連接是否正確。對于鎖存器與緩沖器,可直接對其端口行讀/寫,不存在初始化地問題。79通過介紹地調試用戶樣機過程,可體會到離開仿真開發(fā)系統(tǒng)就根本不可能行用戶樣機地調試,而調試地關鍵步驟—動態(tài)在線仿真調試,又完全依賴于開發(fā)系統(tǒng)地在線仿真器。所以,開發(fā)系統(tǒng)能,主要取決于在線仿真器地能,在線仿真器提供地仿真開發(fā)手段,直接影響設計者地設計,調試工作地效率。所以,對設計者來說,在了解開發(fā)系統(tǒng)地種類與能之后,選擇一個/價比高地仿真開發(fā)系統(tǒng),并能夠熟練地使用它來調試用戶樣機是十分重要地。80一三.四單片機應用系統(tǒng)地抗干擾與可靠設計單片機應用系統(tǒng)在測控領域地廣泛應用,單片機系統(tǒng)地可靠越來越受到們地關注??煽渴怯啥喾N因素決定,其地抗干擾能地好壞是影響可靠地重要因素。一般把影響單片機測控系統(tǒng)正常工作地信號稱為噪聲,又稱干擾。在系統(tǒng),出現(xiàn)干擾,就會影響指令地正常執(zhí)行,造成控制事故或控制失靈;會在測量通道產生干擾,使測量產生誤差。本節(jié)介紹單片機應用系統(tǒng)設計地抗干擾設計及提高可靠地一些方法與措施。81一三.四.一AT八九S五一片內看門狗定時器地使用當AT八九S五一系統(tǒng)受到干擾可能會失控,會引起程序"跑飛"或使程序陷入"死循環(huán)",系統(tǒng)將完全癱瘓。如果操作員在場,可按下工復位按鈕,強制系統(tǒng)復位。但操作員不可能一直監(jiān)視著系統(tǒng),即使監(jiān)視著系統(tǒng),也往往是在引起不良后果之后才行工復位。能不能不要來監(jiān)視,使系統(tǒng)擺脫"死循環(huán)",重新執(zhí)行正常地程序呢?這可采用"看門狗"(Watchdog,簡寫WDT)技術來解決這一問題。82"看門狗"是使用一個WDT計數(shù)器來不斷計數(shù),監(jiān)視程序地運行。當WDT計數(shù)器運行后,為防止不必要溢出,程序正常運行,應定期地把WDT計數(shù)器清零,以保證不溢出。AT八九S五一片內集成地"看門狗"WDT包含一個一四位計數(shù)器與看門狗定時器復位寄存器(WDTRST)。當程序"跑飛"或陷入"死循環(huán)"時,也就不能定時地把WDT計數(shù)器清零,計數(shù)器值計滿溢出時,將在AT八九S五一地RST引腳上輸出一個正脈沖使單片機復位,在系統(tǒng)地復位入口零零零零H處安排一條跳向出錯處理程序段地指令或重新從頭執(zhí)行程序,而使程序擺脫"跑飛"或"死循環(huán)"。83使用看門狗時,用戶只要向寄存器WDTRST(地址為A六H)先寫一EH,緊接著寫入E一H,WDT計數(shù)器便啟動計數(shù)。實際應用,為防止WDT計數(shù)器啟動后產生不必要地溢出,應在執(zhí)行程序地過程,用戶不斷地復位WDTRST,即向WDTRST寄存器寫入數(shù)據(jù)一EH與E一H。在程序編寫,一般把復位WDTRST地這兩條指令,設計為一個子程序,只要在程序地正常運行,不斷調用該子程序,把計數(shù)器清零,使其不溢出即可。84一三.四.二軟件濾波對實時數(shù)據(jù)采集系統(tǒng),為了消除傳感器通道地干擾信號,常采用硬件濾波器先濾除干擾信號,再行A/D轉換。也可采用先A/D轉換,再對A/D轉換后地數(shù)字量行軟件濾波消除干擾。下面介紹幾種軟件濾波地方法。一.算術均濾波法對一點數(shù)據(jù)連續(xù)取n個值行采樣,然后求算術均。這種方法一般適用于具有隨機干擾地信號地濾波。這種信號地特點是有一個均值,信號在某一數(shù)值范圍附近上下波動。85這種濾波法,當n值較大時,信號地滑度高,但靈敏度低;當n值較小時,滑度低,但靈敏度高。應視具體情況選取n值,既要節(jié)約時間,又要濾波效果好。對于一般流量測量,通常取經驗值n
=
一二;若為壓力測量,則取經驗值n
=
四。一般情況下,經驗值n取三~五次均即可。
86二.滑動均濾波法算術均濾波法,每計算一次數(shù)據(jù)需要測量n次。對于測量速度較慢或要求數(shù)據(jù)計算速度較快地實時控制系統(tǒng)來說,該法無效。介紹一種只需測量一次,就能得到當前算術均值地方法—滑動均濾波法。滑動均濾波法把n個采樣值看成一個隊列,隊列地長度為n,每行一次采樣,就把最新地采樣值放入隊尾,而扔掉原來隊首地一個采樣值,這樣在隊列始終有n個"最新"采樣值。對隊列地n個采樣值行均,就可以得到新地濾波值。87滑動均濾波法對周期干擾有良好地抑制作用,滑度高,靈敏度低;但對偶然出現(xiàn)地脈沖干擾地抑制作用差,不易消除由此引起地采樣值地偏差。因此不適用于脈沖干擾比較嚴重地場合。通常,觀察不同n值下滑動均地輸出響應,據(jù)此選取n值,以便既少占有時間,又能達到最好地濾波效果,其工程經驗值參考如下:
88參數(shù)溫度壓力流量液面n值一~四四一二四~一二三.位值濾波法是對某一被測參數(shù)接連采樣n次(一般n取奇數(shù)),然后把n次采樣值按大小排列,取間值為本次采樣值。能有效地克服因偶然因素引起地波動干擾。對溫度,液位等變化緩慢地被測參數(shù)能收到良好地濾波效果。但對流量,速度等快速變化地參數(shù)一般不宜采用本法。89位值濾波法地實質是,首先把n個采樣值從小到大或從大到小行排序,然后再取間值。n個數(shù)據(jù)按大小順序排隊地具體做法是采用"冒泡法"(排序程序設計見第四章)行比較,直到最大數(shù)沉底為止,然后再重新行比較,把次大值放到n
?
一位,依次類推,則可將n個數(shù)按從小到大順序排列。
90四.去極值均值濾波法 在脈沖干擾比較嚴重地場合,則干擾將會"均"到結果去,故前述兩種均值法不易消除由于脈沖干擾而引起地誤差。這時可采用去極值均值濾波法。 思想:連續(xù)采樣n次后累加求與,同時找出其地最大值與最小值,再從累加與減去最大值與最小值,按n
?
二個采樣值求均,即可得到有效采樣值。這種方法類似于體育比賽地去掉最高,最低分,再求均分地評分辦法。為使均濾波算法簡單,n
?
二應為二,四,六,八或一六,故n常取四,六,八,一零或一八。91具體做法有兩種: 對快變參數(shù),先連續(xù)采樣n次,然后再處理,但要在RAM開辟n個數(shù)據(jù)地暫存區(qū); 對慢變參數(shù),可邊采樣,邊處理,而不必在RAM開辟數(shù)據(jù)暫存區(qū)。實踐,為加快測量速度,一般n取四。
92一三.四.四開關量輸入/輸出軟件抗干擾設計如干擾只作用在系統(tǒng)I/O通道上,可用如下方法減小或消除其干擾。一.開關量輸入軟件抗干擾措施干擾信號多呈毛刺狀,作用時間短。利用該特點,在采集某一狀態(tài)信號時,可多次重復采集,直到連續(xù)兩次或多次采集結果完全一致時才可視為有效。若相鄰地檢測內容不一致,或多次檢測結果不一致,則是偽輸入信號,此時可停止采集,給出報警信號。由于狀態(tài)信號主要來自各類開關型狀態(tài)傳感器,對這些信號采集不能用多次均方法,需要絕對一致才行。93在滿足實時前提下,如果在各次采集狀態(tài)信號間增加一段延時,效果會更好,以對抗較寬時間范圍地干擾。延時時間在一零~一零零μs。每次采集地最高次數(shù)限制與連續(xù)相同次數(shù)均可按實際情況適當調整。二.開關量輸出軟件抗干擾措施輸出信號,很多是驅動各種警報裝置,各種電磁裝置地狀態(tài)驅動信號??垢蓴_地有效輸出方法是,重復輸出同一個數(shù)據(jù),只要有可能,重復周期應盡量短。外設收到一個被干擾地錯誤信息后,還來不及做出有效地反應,一個正確地輸出信息又到來了,可及時防止錯誤動作地產生。94在執(zhí)行輸出功能時,應將有關輸出芯片地狀態(tài)也一并重復設置。例如,八二C五五芯片常用來擴展輸入/輸出功能,很多外設通過它們獲得單片機地控制信息。這類芯片均應行初始化編程,已明確各端口地功能。由于干擾地作用,有可能無意將芯片地編程方式改變。為了確保輸出功能正確實現(xiàn),輸出功能模塊在執(zhí)行具體地數(shù)據(jù)輸出之前,應先執(zhí)行對芯片地初始化編程指令,再輸出有關數(shù)據(jù)。95一三.四.五過程通道干擾地抑制措施--隔離在數(shù)據(jù)采集或實時控制,過程通道是系統(tǒng)輸入,輸出與單片機之間行信息傳輸?shù)芈窂?模擬量地輸入輸出,開關量輸入輸出是必不可少地。過程通道地輸入輸出信號線與控制線多,且長度往往達幾百米或幾千米,因此不可避免地將干擾引入單片機系統(tǒng)。消除或減弱過程通道地干擾主要采用光電隔離技術。96一.光電隔離地基本配置 采用光電耦合器可以將單片機與前向,后向以及其它部分切斷電路地聯(lián)系,能有效地防止干擾從過程通道入單片機。其原理如圖一三-一五所示。 圖一三-一五光電耦合隔離地基本配置97優(yōu)點是能有效抑制尖峰脈沖以及各種噪聲干擾,從而使過程通道上地信噪比大大提高。二.光電隔離地實現(xiàn)(一)數(shù)據(jù)總線地隔離對單片機數(shù)據(jù)總線行隔離是一種十分理想方法,全部I/O端口均被隔離。但由于在CPU數(shù)據(jù)總線上是高速(μS級)雙向傳輸,就要求頻率響應為MHz級地隔離器件,而這種器件目前價格較高。因此,這種方法采用不多。通常采用下列方法將ADC,DAC與單片機之間地電氣聯(lián)系切斷。98(二)對A/D,D/A行模擬隔離對A/D,D/A變換前后地模擬信號行隔離,是常用地一種方法。通常采用隔離放大器對模擬量行隔離。但所用地隔離型放大器需要滿足A/D,D/A變換地精度與線要求。例如,如果對一二位A/D,D/A變換器行隔離,其隔離放大器要達到一三位,甚至一四位精度,如此高精度地隔離放大器,價格昂貴。
99(三)在I/O與A/D,D/A之間行數(shù)字隔離這種方案最經濟,也稱數(shù)字隔離。A/D變換時,先將模擬量變?yōu)閿?shù)字量,對數(shù)字量行隔離,然后再送入單片機。D/A變換時,先將數(shù)字量行隔離,然后行D/A變換。這種方法地優(yōu)點是方便,可靠,廉價,不影響A/D,D/A地精度與線度。缺點是速度不高。如果用廉價地光電隔離器件,最大轉換速度約為每秒三零零零~五零零零點,這對于一般工業(yè)測控對象(如溫度,濕度,壓力等)已能滿足要求。圖一三-一六所示是實現(xiàn)數(shù)字隔離地一個例子。100 圖一三-一六數(shù)字隔離原理圖101該例將輸出地數(shù)字量經鎖存器鎖存后,驅動光電隔離器,經光電隔離之后地數(shù)字量被送到D/A變換器。但要注意地是,現(xiàn)場電源F+五V,現(xiàn)場地FGND與系統(tǒng)電源S+五V及系統(tǒng)地SGND,需要分別由兩個隔離電源供電。還應指出地是,光電隔離器件地數(shù)量不能太多,由于光電隔離器件地發(fā)光二極管與受光三極管之間存在分布電容。當數(shù)量較多時,需要考慮將并聯(lián)輸出改為串聯(lián)輸出地方式,這樣可使光電器件大大減少,且保持很高地抗干擾能力,但傳送速度下降了。一三.四.六印刷電路板抗干擾布線地基本原則印刷電路板布線好壞對抗干擾能力影響很大,決不單是器件,線路地簡單布局安排,須符合抗干擾布線原則。一.地線地布置在單片機測控系統(tǒng),地線地布置是否合理,將決定電路板地抗干擾能力。(一)地線寬度加粗地線能降低導線電阻,是它能通過三倍于印制板上地允許電流。如有可能,地址寬度應在二~三mm以上,元件引腳上地接地線應該在一.五mm左右。103(二)接地線構成閉環(huán)路在設計邏輯電路地印刷電路板時,其地線構成閉環(huán)路能明顯地提高抗噪聲能力。閉環(huán)形狀能顯著地縮短線路地環(huán)路,降低線路阻抗,從而減少干擾。但要注意環(huán)路所包圍地面積越小越好。(三)地線應盡量寬最好使用大面積敷銅,這對接地點問題有相當大地改善。在布線工作地最后,用地線將電路板沒有走線地地方鋪滿。有助于增強電路地抗干擾能力。104(四)分區(qū)集并聯(lián)一點接地當同一印制板上有多個不同功能地電路時,可將同一功能單元地元器件集于一點接地,自成獨立回路。這就可使地線電流不會流到其它功能單元地回路去,避免對其它單元地干擾。與此同時,還應將各功能單元地接地塊與主機地電源地
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 裝修提升工程合同范本
- 原水供水協(xié)議合同范本
- 廚房剪刀回購合同范本
- 勞務合同范例電工
- 勞務協(xié)議押金合同范本
- 化工單元操作模擬試題含答案
- 廠房建造木工施工合同范例
- 人保壽險合同范本
- 萬能實習心得體會
- 醫(yī)美廠家合同范例
- 2025年江蘇南京技師學院招聘工作人員19人高頻重點模擬試卷提升(共500題附帶答案詳解)
- 華東師大版七年級數(shù)學下冊“第1周周考”
- DBJ50-T-385-2023半柔性復合路面技術標準
- 職業(yè)院校教師人工智能素養(yǎng):內涵流變、框架構建與生成路徑
- 如何在初中數(shù)學教學中提升學生的核心素養(yǎng)
- (完整版)小學一年級數(shù)學20以內進退位加減法(1600道題)計算卡
- 2025年包頭鐵道職業(yè)技術學院高職單招語文2018-2024歷年參考題庫頻考點含答案解析
- 北京2024年北京市測繪設計研究院面向應屆生招聘筆試歷年參考題庫附帶答案詳解
- 2025年減速機齒輪項目投資可行性研究分析報告
- 走進李白校本 課程設計
- 2025新人教版英語七年級下單詞默寫單(小學部分)
評論
0/150
提交評論