




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、基于單片機和EDA技術(shù)的邏輯分析儀設(shè)計 摘要:本設(shè)計采用單片機控制8路邏輯信號電平采集;采用EDA技術(shù)設(shè)計的CPLD芯片處理邏輯信號,控制點陣掃描和分析結(jié)果在示波器上顯示;單片機和CPLD間采用中斷方式交換數(shù)據(jù)。該設(shè)計具有1、3級觸發(fā)方式,觸發(fā)字位置和浮動時標(biāo)線顯示等功能,以及友好操作界面和波形穩(wěn)定顯示等特點,并拓寬示波器使用功能。 關(guān)鍵字:點陣掃描控制;邏輯分析;CPLD;VHDL編程 The design of the logical analysis
2、apparatus of one-chip microcomputer and the EDA's technology baseding on 【Abstract】This design uses the one-chip microcomputer to be controlled gathering of logical signal lev
3、els of 8 tunnels, Use CPLD's chip of EDA's technical design to the logic signal processing and Control scanning to the lattice signal and The result of
4、;display analysis on the oscillograph , Use the interrupt mode exchange data between one-chip microcomputer and CPLD. this design has 1 and 3 grade of method of acti
5、vation , trigger word seat display and time to be marked thread display etc. merit ability,As well as friendly operation interface and waveform stabilization what shows&
6、#160; etc. characteristic , And widen the oscillograph use merit ability . 【Key words】The lattice scanning control; The logical analysis; CPLD; VHDL's programming 1 引言
7、60; 邏輯分析儀是數(shù)字電路調(diào)試和信號分析中不可缺少的工具。本設(shè)計參照“2003年全國大學(xué)生電子設(shè)計競賽”的題目,用雙蹤信號示波器作為邏輯分析結(jié)果顯示設(shè)備;用單片機控制邏輯信號采集和邏輯分析儀的各項功能操作;用EDA(電子設(shè)計自動化)技術(shù)設(shè)計的CPLD(復(fù)雜可編程邏輯器件)芯片處理邏輯信號,控制邏輯分析結(jié)果波形的點陣掃描;達(dá)到一般邏輯分析儀應(yīng)有的功能和指標(biāo)1。本設(shè)計的邏輯分析儀特點是性能穩(wěn)定、成本低,并拓寬了示波器使用功能。 2 總體結(jié)構(gòu)及各硬件設(shè)計 邏輯信號分析的總體結(jié)構(gòu)如圖1所示;其中邏輯分析儀由8路邏輯信號檢測電路、單片機系統(tǒng)和CPLD
8、點陣掃描控制電路構(gòu)成。邏輯分析儀能接受8路邏輯信號(D7D0)和位傳送時鐘信號(B-CLK);其接受的邏輯信號形式如圖2所示。 600)makesmallpic(this,600,1800);' src="file:/C:/DOCUME1/ADMINI1/LOCALS1/Temp/ksohtml/wps_clip_image-7831.png" width="554" height="202" /> 邏輯分析儀各部分解釋如下: 2.1 邏輯信號檢測 8路邏輯信
9、號檢測部分由8選1采樣模擬開關(guān)(CD4051)和模數(shù)轉(zhuǎn)換器ADC(MAX7820)組成,如圖3所示。為了適應(yīng)較寬范圍(0.254V)邏輯信號門限電壓(邏輯1的電壓)的輸入,對邏輯信號電平采用模擬信號采樣,當(dāng)AD轉(zhuǎn)換獲得邏輯信號電平的數(shù)字量(A/D-DATA)大于門限電壓對應(yīng)的數(shù)字量時,確定為邏輯1。由于分時檢測8路邏輯信號(D7D0),要求采樣開關(guān)速度和AD轉(zhuǎn)換速度要遠(yuǎn)遠(yuǎn)大于邏輯信號位傳送速度;當(dāng)位傳送時鐘信號到來時,才能保證8路邏輯信號每1路采樣點在靠近位的中間位置,從而得到可靠的電平數(shù)字量。 本設(shè)計的CD4051從地址選通(CH-SELECT)到數(shù)據(jù)輸出時間約500ns,MAX7
10、820轉(zhuǎn)換一路信號所需的時間約3ns,采集處理8路邏輯信號各位(1個字節(jié))所需時間約5us。若8路邏輯信號每位采樣點在位中間的三分之一區(qū),則邏輯信號的位寬約為15us,因此本設(shè)計的邏輯分析儀可對66kHz以下波特率的8路信號進(jìn)行邏輯分析。 600)makesmallpic(this,600,1800);' src="file:/C:/DOCUME1/ADMINI1/LOCALS1/Temp/ksohtml/wps_clip_image-16949.png" width="519" height="222" />
11、 2.3 單片機系統(tǒng) 單片機系統(tǒng)2由單片機(AT89C51)、點陣液晶顯示模塊和4×4鍵盤三部分組成,其示意圖見圖1的“單片機系統(tǒng)”部分。單片機的P0口在不同的時間段分別用于顯示數(shù)據(jù)輸出,邏輯信號采樣數(shù)據(jù)輸入,采樣字節(jié)輸出的數(shù)據(jù)傳送;P1、P3口用于邏輯信號檢測(見圖3引腳標(biāo)注)、CPLD點陣掃描控制(見圖4引腳標(biāo)注)和液晶顯示模塊的操作控制;P2口用于4×4鍵盤掃描及按鍵信息接受。單片機系統(tǒng)的鍵盤和顯示部分用于完成1、3級觸發(fā)方式,1級、3級觸發(fā)字,16級門限電壓選擇,數(shù)據(jù)采集區(qū)的前、中、后顯示頁面(16字節(jié))選擇,時間線位置等參
12、數(shù)的設(shè)定和顯示,以及相關(guān)功能操作。 2.4 CPLD點陣掃描控制 CPLD點陣掃描控制部分由可編程邏輯陣列(CPLD)、數(shù)模轉(zhuǎn)換器(DAC)和X、Y、Z軸掃描信號放大電路組成,并在CPLD控制下工作;其電路如圖4所示。 600)makesmallpic(this,600,1800);' src="file:/C:/DOCUME1/ADMINI1/LOCALS1/Temp/ksohtml/wps_clip_image-5417.png" width="549" height="280&q
13、uot; /> CPLD向通過輸出中斷CPLD-INT請求(單片機的INT0)從單片機系統(tǒng)獲得采樣字節(jié);對每個采樣字節(jié)按順序進(jìn)行8路邏輯信號位波形(或時標(biāo)線)的點陣掃描的信息處理,并控制數(shù)模轉(zhuǎn)換(DAC)、信號放大、信號掃描顯示和回掃信號消隱處理。在處理一個頁面(1/3數(shù)據(jù)區(qū))16個采樣字節(jié)后,重復(fù)處理過程。 CPLD內(nèi)部由計數(shù)器鏈(2分頻器,點、位、字節(jié)計數(shù)器)、數(shù)據(jù)接收器、X軸位邊界定位器、加法器、Y軸定位輸出器、2選1多路器、消隱控制器等部分組成,如圖5所示。CPLD外部引腳CLK(CPLD-CLK)、EN(使能)、TR(信息類型控制)、DI70 (C
14、PLD-DATA)、CP(鎖存)、-INT(CPLD-INT)分別連邏輯分析儀單片機的ALE、P1.7、P3.1、P007、P3.0、P3.2引腳(見圖4的引腳標(biāo)注);-WR、A0(通道選擇)、DO70分別連DAC的-WR、A0、D70引腳;Zout連信號放大器的Z軸輸入端。CPLD工作原理說明如下: 600)makesmallpic(this,600,1800);' src="file:/C:/DOCUME1/ADMINI1/LOCALS1/Temp/ksohtml/wps_clip_image-12884.png" width="438&qu
15、ot; height="246" /> 開機后,CPLD內(nèi)部復(fù)位,EN=0,CPLD處于保持狀態(tài)。 1數(shù)據(jù)傳送首先設(shè)置EN=0,CPLD處于保持;然后,CP的上升沿,將外部數(shù)據(jù)送入數(shù)據(jù)接收器;設(shè)置TR=0,傳送8路信號采樣字節(jié);TR=1,傳送觸發(fā)字或時標(biāo)線位置的4位編碼(給出16個位置信息)。傳送數(shù)據(jù)后,設(shè)置EN=1,CPLD工作。 2邏輯信號掃描在EN=1,TR=0前提下,外部時鐘CLK的上升沿驅(qū)動計數(shù)器鏈工作。字節(jié)計數(shù)器(采樣字節(jié)計數(shù))值ByteC經(jīng)過X軸位邊界定位器處理后的值X1(X1=ByteC*10H)與點計數(shù)器(位內(nèi)點計數(shù))值
16、Xc再經(jīng)過加法器處理,產(chǎn)生當(dāng)前掃描點X軸數(shù)字量X=X1+Xc=ByteC*10H+Xc。位計數(shù)器(采樣字節(jié)各位計數(shù))值BitC和數(shù)據(jù)接收器(存放采樣字節(jié))值DI70經(jīng)過軸定位輸出器處理,產(chǎn)生當(dāng)前掃描點軸數(shù)字量的Y有兩種:當(dāng)DIBitC=0,Y=0E0H-(BitC*20H)+05H;當(dāng)DIBitC=1,Y=0E0H-(BitC*20H)+15H。在A0正(A0=1)、負(fù)(A0=0)狀態(tài)對2選1多路器的驅(qū)動下,分時將Y、X送到DO70總線上;以此同時,在兩個-WR(-CLK)的上升沿(A0正、負(fù)半個周期的中間)驅(qū)動下,將送到DO70總線上的Y和X分別寫入數(shù)模轉(zhuǎn)換器DAC的兩個通道。位計數(shù)器值Bi
17、tC=7時,表示一個采樣字節(jié)處理完,CPLD發(fā)出傳送下一個字節(jié)的中斷請求-INT。邏輯分析儀單片機收到中斷請求后,進(jìn)行一次數(shù)據(jù)傳送處理。 3觸發(fā)字和時間線位置掃描在EN=1前提下,TR=1將數(shù)據(jù)接收器DI3(位置信息)送入字節(jié)計數(shù)器,并控制點計數(shù)器值Xc=0,經(jīng)過X軸位邊界定位器和加法器處理后,產(chǎn)生掃描點X軸數(shù)字量X=X1+Xc=DI3*10H+0;同時TR=1控制Y軸定位輸出器的值Y按計數(shù)方式工作,在CLK1驅(qū)動下,輸出Y=000FFH的計數(shù)值,在示波器屏上顯示豎線,表示觸發(fā)字或時間線位置。當(dāng)Y=0FFH時,表示位置信息掃描完畢,發(fā)出傳送下一個字節(jié)的中斷請求信號。 4消隱
18、處理在Xc=0FH,即開始下1路時鐘位各點掃描時,點計數(shù)器輸出Z1=1;在BitC=7,即開始8路信號下一組各時鐘位(下一個采樣字節(jié))掃描時,Y軸定位輸出器輸出Z2=1;在Y=OFFH,即觸發(fā)字和時間線位置掃描結(jié)束時,Y軸定位輸出器輸出Z2=1;在A0=1時,為了消除當(dāng)前傳送的Y軸數(shù)字量與前一次X軸數(shù)字量產(chǎn)生的干擾掃描點,2分頻器輸出的A0使Z3=1;Z1、Z2、Z3信號經(jīng)過消隱控制器(或非門電路)處理,使Zout為低電平,經(jīng)反相放大器處理后,向示波器Z軸輸出+12V電壓,以消除回掃線和干擾點。 雙蹤信號示波器調(diào)整到X-Y工作方式,探頭Y1為X軸輸入,探頭Y2為Y軸輸入,顯像管電子槍
19、控制端為Z軸輸入。CPLD輸出的X、Y軸數(shù)字量X、Y經(jīng)過數(shù)模轉(zhuǎn)換和放大處理后,產(chǎn)生示波器X、Y軸掃描的模擬信號,在示波器屏上顯示8路邏輯信號。CPLD輸出的Zout信號經(jīng)放大后,控制示波器的Z軸,以消隱回掃線和干擾點,使8路邏輯信號更清晰的顯示。 3 軟件設(shè)計 軟件設(shè)計部分有邏輯信號檢測及數(shù)據(jù)采集處理、鍵盤顯示掃描處理、采樣字節(jié)輸出處理和CPLD內(nèi)部結(jié)構(gòu)設(shè)計VHDL(硬件描述語言)編程四部分。本文主要介紹邏輯信號檢測及數(shù)據(jù)采集處理和CPLD結(jié)構(gòu)設(shè)計VHDL編程部分。 3.1 邏輯信號檢測及數(shù)據(jù)采集處理 邏輯信號
20、檢測及數(shù)據(jù)采集處理是通過單片機的INT1中斷服務(wù)程序來完成。其中1級觸發(fā)字邏輯信號檢測中斷服務(wù)程序和數(shù)據(jù)采集處理子程序流程如圖6、圖7所示。 當(dāng)各項參數(shù)設(shè)定后,按“確認(rèn)鍵”保存參數(shù),并打開邏輯信號檢測中斷(INT1),關(guān)閉采樣字節(jié)輸出中斷(INT0)。每次邏輯信號發(fā)生器的位傳送時鐘(B-CLK)觸發(fā)一次邏輯信號檢測中斷服務(wù)程序的執(zhí)行,每次服務(wù)程序執(zhí)行要進(jìn)行8次路選和8次AD轉(zhuǎn)換啟動,并分別檢測轉(zhuǎn)換結(jié)束狀態(tài)和讀取轉(zhuǎn)換結(jié)果。每次邏輯信號檢測中斷服務(wù),要調(diào)用8路邏輯信號數(shù)據(jù)采集處理子程序,將8路信號狀態(tài)轉(zhuǎn)換成1個采樣字節(jié),并存入采樣數(shù)據(jù)區(qū)。當(dāng)數(shù)據(jù)區(qū)存滿后,關(guān)閉邏輯信號檢測中斷,打開采樣字節(jié)
21、輸出中斷,等待CPLD輸出中斷請求(CLPD-INT)。 600)makesmallpic(this,600,1800);' src="file:/C:/DOCUME1/ADMINI1/LOCALS1/Temp/ksohtml/wps_clip_image-27242.png" width="514" height="421" /> CPLD點陣掃描控制電路在每次輸出8路1位信號波形后,向單片機系統(tǒng)發(fā)出采樣字節(jié)輸出中斷;對每次采樣字節(jié)輸出中斷的服務(wù),單片機要對CPLD進(jìn)行一次采樣字節(jié)輸出及寫操作控制。
22、輸出的采樣字節(jié)有波形數(shù)據(jù)、觸發(fā)字和時標(biāo)線位置三種數(shù)據(jù)類型。 3.2 CPLD結(jié)構(gòu)設(shè)計的VHDL編程 CPLD內(nèi)部結(jié)構(gòu)各部分設(shè)計采用硬件描述語言VHDL編程來實現(xiàn)3。由于篇幅所限,僅給出部分設(shè)計的編程及解釋說明。 1點計數(shù)器設(shè)計的編程 if TR='0' then - TR=0時,邏輯信號時鐘位的掃描點計數(shù)。 if f='0' then
23、160; - f為回掃時鐘插入標(biāo)志位,f=0時,正常的點計數(shù)掃描。 Xc<=Xc+1; - 點計數(shù)增1。 else Xc<=Xc; - f=1時,Xc保持1個時鐘時間。 end if;
24、60; if Xc="1111" then f<='1' - 計完1個時鐘位16個點后,f置1控制插入一個回掃時鐘 BitC<=BitC+1; - 采樣字節(jié)的位計數(shù)增1 Z1<='1
25、39; - 控制下一時鐘周期不顯示 else f<='0' - 控制正常計數(shù) Z1<='0' - 控制正常
26、顯示 end if; else - TR=1時,觸發(fā)字和時標(biāo)線位置掃描 Xc<="0000" - 點計數(shù)器值Xc 置0 end if; 程序中的“Xc&l
27、t;=Xc+1”語句僅為點計數(shù)器增1作準(zhǔn)備,只有下一個時鐘到來后,才計數(shù)增1變化;因此,對后邊的“if Xc="1111" then”語句,判斷到Xc="1111"時,已經(jīng)為點計數(shù)器Xc變成0做好了準(zhǔn)備。程序中的“-”為注釋標(biāo)志。 2Y軸定位輸出器設(shè)計的編程 if TR='0' then - TR='0'邏輯信號掃描,由位計數(shù)器值和數(shù)據(jù)接收器值確定Y值
28、;if BitC="000" then 第1路邏輯信號,對應(yīng)字節(jié)內(nèi)的最高位,示波器上端 if DI(7)='0' then Y<="11100101" - DI(7)=0,Y=E5H else Y<="11110101" &
29、#160; - DI(7)=1,Y=F5H end if; elsif BitC="001" then - 第二路 if DI(6)='0' then Y<="11000101" - DI(6)=0,Y=C5H
30、;else Y<="11010101" - DI(6)=1,Y=D5H end if; elsif BitC="010" then - 第三路
31、 if DI(5)<='0'then Y<="10100101" - DI(5)=0,Y=A5H else Y<="10110101" - DI(5)=1,Y=B5H end if; elsif BitC="011"
32、160;then - 第四路 if DI(4)<='0'then Y<="10000101" - DI(4)=0,Y=85H else Y<="10010101"
33、; - DI(4)=1,Y=95H end if; elsif BitC="100" then - 第五路 if DI(3)='0' then Y<="01100101" - DI(3)=0,Y=
34、65H else Y<="01110101" - DI(3)=1,Y=75H end if; elsif BitC="101" then -&
35、#160;第六路 if DI(2)='0' then Y<="01000101" - DI(2)=0,Y=45H else Y<="01010101" - DI(2)=1,Y=55H end if; elsif BitC="1
36、10" then - 第七路 if DI(1)='0' then Y<="00100101" - DI(1)=0,Y=25H else Y<="00110101"
37、; - DI(1)=1,Y=35H end if; elsif BitC="111" then - 第八路 if DI(0)='0' then Y<="00000101" - DI(0)=0,Y=05H else Y<="00010101"
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 智源小學(xué)測試題及答案
- 化工常用面試題及答案
- 慢性病健康管理培訓(xùn)
- 呼吸內(nèi)科2025年工作總結(jié)
- 闌尾炎病人術(shù)后健康指導(dǎo)
- 員工培訓(xùn)發(fā)展
- 智能化工程驗收規(guī)范培訓(xùn)
- 兒科急性喉炎課件
- 中班健康身體的小秘密
- 支氣管肺炎的病理變化
- 池州市中銀礦業(yè)發(fā)展有限公司池州市貴池區(qū)梅街松山鐵銅多金屬礦礦山地質(zhì)環(huán)境保護(hù)與土地復(fù)墾方案
- 物業(yè)前期承接查驗報告模板
- 挖掘機、裝載機檢驗報告完整
- 《重慶市建設(shè)工程費用定額》電子版
- 報價單模板完整版
- 2023年山東軍轉(zhuǎn)真題
- 2023年杭州育才中學(xué)小升初語文考試真題卷含標(biāo)準(zhǔn)答案
- 2023年安徽六安市裕安區(qū)城鄉(xiāng)建設(shè)投資集團(tuán)有限公司招聘筆試題庫及答案解析
- 超市營業(yè)員聘用勞務(wù)合同書(2篇)
- GB/T 2832-1996陶管抗外壓強度試驗方法
- GB/T 19974-2018醫(yī)療保健產(chǎn)品滅菌滅菌因子的特性及醫(yī)療器械滅菌過程的開發(fā)、確認(rèn)和常規(guī)控制的通用要求
評論
0/150
提交評論