第15章_ADA轉(zhuǎn)換器接口_第1頁(yè)
第15章_ADA轉(zhuǎn)換器接口_第2頁(yè)
第15章_ADA轉(zhuǎn)換器接口_第3頁(yè)
第15章_ADA轉(zhuǎn)換器接口_第4頁(yè)
第15章_ADA轉(zhuǎn)換器接口_第5頁(yè)
已閱讀5頁(yè),還剩61頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第第1515章章 A/DA/D與與D/AD/A轉(zhuǎn)換器接口轉(zhuǎn)換器接口 在計(jì)算機(jī)應(yīng)用系統(tǒng)中,采集對(duì)象往往是連續(xù)在計(jì)算機(jī)應(yīng)用系統(tǒng)中,采集對(duì)象往往是連續(xù)變化的物理量,因此需要對(duì)連接變化的物理量進(jìn)變化的物理量,因此需要對(duì)連接變化的物理量進(jìn)行采樣、保持,再把模擬量轉(zhuǎn)換為數(shù)字量交給計(jì)行采樣、保持,再把模擬量轉(zhuǎn)換為數(shù)字量交給計(jì)算機(jī)處理。計(jì)算機(jī)輸出的數(shù)字量有時(shí)需要轉(zhuǎn)換為算機(jī)處理。計(jì)算機(jī)輸出的數(shù)字量有時(shí)需要轉(zhuǎn)換為模擬量去控制某些執(zhí)行元件。模擬量去控制某些執(zhí)行元件。 A/DA/D轉(zhuǎn)換器完成模擬量轉(zhuǎn)換器完成模擬量數(shù)字量的轉(zhuǎn)換數(shù)字量的轉(zhuǎn)換 D/AD/A轉(zhuǎn)換器完成數(shù)字量轉(zhuǎn)換器完成數(shù)字量模擬量的轉(zhuǎn)換模擬量的轉(zhuǎn)換 A/DA/

2、D轉(zhuǎn)換器完成模擬量轉(zhuǎn)換器完成模擬量數(shù)字量的轉(zhuǎn)換數(shù)字量的轉(zhuǎn)換 D/AD/A轉(zhuǎn)換器完成數(shù)字量轉(zhuǎn)換器完成數(shù)字量模擬量的轉(zhuǎn)換模擬量的轉(zhuǎn)換下圖是一個(gè)實(shí)時(shí)控制系統(tǒng):下圖是一個(gè)實(shí)時(shí)控制系統(tǒng):控制控制對(duì)象對(duì)象微機(jī)微機(jī)系統(tǒng)系統(tǒng)傳感器傳感器執(zhí)執(zhí)行行部部件件ADCADCDACDAC功放功放運(yùn)放運(yùn)放模擬量模擬量模擬量模擬量數(shù)字量數(shù)字量數(shù)字量數(shù)字量下圖是一個(gè)分時(shí)數(shù)據(jù)傳輸系統(tǒng):下圖是一個(gè)分時(shí)數(shù)據(jù)傳輸系統(tǒng):模模擬擬輸輸入入模模擬擬輸輸出出ADCADCDACDAC驅(qū)動(dòng)器驅(qū)動(dòng)器接收器接收器多路掃描器多路掃描器多路掃描器多路掃描器傳輸線傳輸線15.1 15.1 A/DA/D轉(zhuǎn)換器轉(zhuǎn)換器 A/DA/D轉(zhuǎn)換器就是把模擬量轉(zhuǎn)換成數(shù)字量

3、的過(guò)程轉(zhuǎn)換器就是把模擬量轉(zhuǎn)換成數(shù)字量的過(guò)程。數(shù)字量便于計(jì)算機(jī)的處理,是自動(dòng)控制過(guò)程的重?cái)?shù)字量便于計(jì)算機(jī)的處理,是自動(dòng)控制過(guò)程的重要步驟。要步驟。 A/DA/D轉(zhuǎn)換的原理很多轉(zhuǎn)換的原理很多, ,常見(jiàn)的有雙積分式、逐次常見(jiàn)的有雙積分式、逐次逼近式、計(jì)數(shù)式等。輸出碼制有二進(jìn)制、逼近式、計(jì)數(shù)式等。輸出碼制有二進(jìn)制、BCDBCD碼等;碼等;輸出數(shù)據(jù)寬度(二進(jìn)制)有輸出數(shù)據(jù)寬度(二進(jìn)制)有8 8位、位、1212位、位、1616位、位、2020位等。位等。15.1.1 A/D15.1.1 A/D轉(zhuǎn)換器的主要技術(shù)指標(biāo)轉(zhuǎn)換器的主要技術(shù)指標(biāo)1 1、分辨率、分辨率 指指A/DA/D轉(zhuǎn)換器能夠把模擬量轉(zhuǎn)換成二進(jìn)制的位

4、數(shù)轉(zhuǎn)換器能夠把模擬量轉(zhuǎn)換成二進(jìn)制的位數(shù)。例:用例:用1 1個(gè)個(gè)1010位位ADCADC轉(zhuǎn)換一個(gè)滿(mǎn)量程為轉(zhuǎn)換一個(gè)滿(mǎn)量程為5V5V的電壓的電壓, ,則可則可能分辨的最小電壓率為能分辨的最小電壓率為5000mV/1024=5mV5000mV/1024=5mV。若模擬。若模擬輸入值小于輸入值小于5mV5mV,則,則ADCADC無(wú)反映,輸出保持不變。無(wú)反映,輸出保持不變。 可見(jiàn),可見(jiàn),ADCADC的數(shù)字量輸出位數(shù)越多,其分辨率就的數(shù)字量輸出位數(shù)越多,其分辨率就越高越高。當(dāng)分辯率大于微機(jī)系統(tǒng)數(shù)據(jù)總線寬度時(shí),。當(dāng)分辯率大于微機(jī)系統(tǒng)數(shù)據(jù)總線寬度時(shí),每次轉(zhuǎn)換都需要兩次數(shù)據(jù)的傳輸。每次轉(zhuǎn)換都需要兩次數(shù)據(jù)的傳輸。2

5、 2、轉(zhuǎn)換時(shí)間、轉(zhuǎn)換時(shí)間 從轉(zhuǎn)換啟動(dòng)開(kāi)始到轉(zhuǎn)換結(jié)束,得到穩(wěn)定的數(shù)從轉(zhuǎn)換啟動(dòng)開(kāi)始到轉(zhuǎn)換結(jié)束,得到穩(wěn)定的數(shù)字量輸出所需要的時(shí)間字量輸出所需要的時(shí)間。 轉(zhuǎn)換時(shí)間的快慢將會(huì)影響轉(zhuǎn)換時(shí)間的快慢將會(huì)影響ADCADC接口與接口與CPUCPU交換交換數(shù)據(jù)的方式。數(shù)據(jù)的方式。對(duì)于低中速的對(duì)于低中速的ADCADC一般采用查詢(xún)或一般采用查詢(xún)或中斷方式,中斷方式,對(duì)于高速的對(duì)于高速的ADCADC應(yīng)采用應(yīng)采用DMADMA方式。方式。15.1.2 A/D15.1.2 A/D轉(zhuǎn)換器的外部特性轉(zhuǎn)換器的外部特性任何一種任何一種A/DA/D轉(zhuǎn)換器一般具有以下信號(hào)線:轉(zhuǎn)換器一般具有以下信號(hào)線:1 1、模擬信號(hào)輸入線模擬信號(hào)輸入線,

6、有單通道與多通道之分。,有單通道與多通道之分。2 2、數(shù)字量輸出線數(shù)字量輸出線,線的數(shù)目決定了分辨率。,線的數(shù)目決定了分辨率。3 3、轉(zhuǎn)換啟動(dòng)線(輸入)轉(zhuǎn)換啟動(dòng)線(輸入),每次啟動(dòng)只能轉(zhuǎn)換一次,每次啟動(dòng)只能轉(zhuǎn)換一次 數(shù)據(jù)。數(shù)據(jù)。4 4、轉(zhuǎn)換結(jié)束線(輸出)轉(zhuǎn)換結(jié)束線(輸出),表示,表示ADCADC作一次轉(zhuǎn)換結(jié)作一次轉(zhuǎn)換結(jié) 束的狀態(tài)。束的狀態(tài)。15.215.2 A/DA/D轉(zhuǎn)換器與微處理器的接口轉(zhuǎn)換器與微處理器的接口15.1.1 15.1.1 A/DA/D轉(zhuǎn)換器與轉(zhuǎn)換器與CPUCPU的連接的連接1 1、ADCADC的啟動(dòng)信號(hào)的啟動(dòng)信號(hào) 有脈沖啟動(dòng)和電平啟動(dòng)兩種有脈沖啟動(dòng)和電平啟動(dòng)兩種。2 2、AD

7、CADC的輸入信號(hào)的輸入信號(hào) 有單通道和多通道之分有單通道和多通道之分。3 3、ADCADC的輸出信號(hào)的輸出信號(hào) ADCADC輸出是否有鎖存輸出是否有鎖存; ADCADC的分辨率是否與系統(tǒng)數(shù)據(jù)總線一致的分辨率是否與系統(tǒng)數(shù)據(jù)總線一致。4 4、ADCADC的轉(zhuǎn)換結(jié)束信號(hào)的轉(zhuǎn)換結(jié)束信號(hào) 作為查詢(xún)和中斷的依據(jù)作為查詢(xún)和中斷的依據(jù)。15.2.2 ADC15.2.2 ADC接口電路的結(jié)構(gòu)形式接口電路的結(jié)構(gòu)形式1 1、采用普通的、采用普通的ICIC2 2、采用可編程并行接口、采用可編程并行接口3 3、采用、采用GALGAL器件或器件或CPLDCPLD器件器件15.2.315.2.3 A/DA/D轉(zhuǎn)換器數(shù)據(jù)傳

8、輸轉(zhuǎn)換器數(shù)據(jù)傳輸 數(shù)據(jù)的傳送可采用查詢(xún)、中斷和數(shù)據(jù)的傳送可采用查詢(xún)、中斷和DMADMA方式。不同方式。不同的方式的電路組成和編程方法不同。的方式的電路組成和編程方法不同。A/DA/D采集的速度取決于:采集的速度取決于: A/DA/D轉(zhuǎn)換器的轉(zhuǎn)換時(shí)間轉(zhuǎn)換器的轉(zhuǎn)換時(shí)間T T; 將數(shù)據(jù)存入內(nèi)存所需要的數(shù)據(jù)傳輸時(shí)間將數(shù)據(jù)存入內(nèi)存所需要的數(shù)據(jù)傳輸時(shí)間 。 則采集數(shù)據(jù)的頻率上限為:則采集數(shù)據(jù)的頻率上限為: f f0 0 =1/(T+ =1/(T+ ) )上述幾種方法上述幾種方法采集數(shù)據(jù)的速度是:采集數(shù)據(jù)的速度是: 查詢(xún)查詢(xún) 中斷中斷 DMADMA方式方式高高低低15.2.4 A/D15.2.4 A/D轉(zhuǎn)換

9、器接口控制程序轉(zhuǎn)換器接口控制程序1 1、查詢(xún)方式的數(shù)據(jù)采集程序框架(模塊)查詢(xún)方式的數(shù)據(jù)采集程序框架(模塊) 接口芯片初始化(當(dāng)采用可編程并行接口芯片時(shí));接口芯片初始化(當(dāng)采用可編程并行接口芯片時(shí)); 選擇數(shù)據(jù)采集通道號(hào)(當(dāng)采用多通道選擇數(shù)據(jù)采集通道號(hào)(當(dāng)采用多通道A/DA/D轉(zhuǎn)換芯片時(shí));轉(zhuǎn)換芯片時(shí)); 啟動(dòng)啟動(dòng)A/DA/D轉(zhuǎn)換;轉(zhuǎn)換; 查詢(xún)轉(zhuǎn)換結(jié)束狀態(tài);查詢(xún)轉(zhuǎn)換結(jié)束狀態(tài); 讀取采集數(shù)據(jù);讀取采集數(shù)據(jù); 將數(shù)據(jù)傳輸?shù)酱鎯?chǔ)器;將數(shù)據(jù)傳輸?shù)酱鎯?chǔ)器; 在線進(jìn)行數(shù)據(jù)處理(顯示、打印、存盤(pán)等);在線進(jìn)行數(shù)據(jù)處理(顯示、打印、存盤(pán)等); 采集未完,繼續(xù)啟動(dòng)下一次轉(zhuǎn)換;采集未完,繼續(xù)啟動(dòng)下一次轉(zhuǎn)換; 轉(zhuǎn)

10、換完成,退出。轉(zhuǎn)換完成,退出。2 2、中斷方式數(shù)據(jù)采集程序框架(模塊)中斷方式數(shù)據(jù)采集程序框架(模塊) 接口芯片初始化(當(dāng)采用可編程并行口芯片作接口芯片初始化(當(dāng)采用可編程并行口芯片作ADCADC接口時(shí));接口時(shí)); 可屏蔽中斷初始化,包括中斷向量修改、中斷申請(qǐng)的屏蔽等;可屏蔽中斷初始化,包括中斷向量修改、中斷申請(qǐng)的屏蔽等; 選擇數(shù)據(jù)采集通道號(hào)(當(dāng)采用多通道選擇數(shù)據(jù)采集通道號(hào)(當(dāng)采用多通道A/DA/D轉(zhuǎn)換芯片時(shí));轉(zhuǎn)換芯片時(shí)); 啟動(dòng)啟動(dòng)A/DA/D轉(zhuǎn)換;轉(zhuǎn)換; 開(kāi)中斷,并等待中斷;開(kāi)中斷,并等待中斷; 轉(zhuǎn)換結(jié)束信號(hào)申請(qǐng)中斷;轉(zhuǎn)換結(jié)束信號(hào)申請(qǐng)中斷; 進(jìn)入中斷服務(wù)程序,在服務(wù)程序中讀取數(shù)據(jù),并將

11、采集數(shù)據(jù)進(jìn)入中斷服務(wù)程序,在服務(wù)程序中讀取數(shù)據(jù),并將采集數(shù)據(jù) 傳輸?shù)酱鎯?chǔ)器以及進(jìn)行在線數(shù)據(jù)處理;傳輸?shù)酱鎯?chǔ)器以及進(jìn)行在線數(shù)據(jù)處理; 采集數(shù)據(jù)未完,繼續(xù)啟動(dòng)下一次轉(zhuǎn)換;采集數(shù)據(jù)未完,繼續(xù)啟動(dòng)下一次轉(zhuǎn)換; 采集完成,返回。采集完成,返回。 3 3、DMADMA方式的數(shù)據(jù)采集程序框架(模塊)方式的數(shù)據(jù)采集程序框架(模塊) DMA DMA傳輸初始化;傳輸初始化; 選擇采集數(shù)據(jù)通道號(hào)(當(dāng)采用多通道選擇采集數(shù)據(jù)通道號(hào)(當(dāng)采用多通道A/DA/D轉(zhuǎn)換芯片時(shí));轉(zhuǎn)換芯片時(shí)); 啟動(dòng)啟動(dòng)A/DA/D轉(zhuǎn)換;轉(zhuǎn)換; 轉(zhuǎn)換結(jié)束信號(hào)申請(qǐng)轉(zhuǎn)換結(jié)束信號(hào)申請(qǐng)DMADMA傳輸;傳輸; 進(jìn)入進(jìn)入DMADMA周期,周期,DMADMA

12、控制器接管總線控制權(quán);控制器接管總線控制權(quán); 在在DMADMA控制器控制下,讀取采集數(shù)據(jù),并直接將采集數(shù)據(jù)控制器控制下,讀取采集數(shù)據(jù),并直接將采集數(shù)據(jù) 傳輸?shù)酱鎯?chǔ)器里;傳輸?shù)酱鎯?chǔ)器里; 采集數(shù)據(jù)沒(méi)有完成,繼續(xù)啟動(dòng)下一次采集數(shù)據(jù)沒(méi)有完成,繼續(xù)啟動(dòng)下一次A/DA/D轉(zhuǎn)換;轉(zhuǎn)換; 采集數(shù)據(jù)完成,返回。采集數(shù)據(jù)完成,返回。 15.3 A/D15.3 A/D轉(zhuǎn)換器接口設(shè)計(jì)轉(zhuǎn)換器接口設(shè)計(jì)15.3.1 15.3.1 分析與設(shè)計(jì)分析與設(shè)計(jì)A/DA/D轉(zhuǎn)換器接口的方法轉(zhuǎn)換器接口的方法 ADC ADC的模擬量輸入是否是多通道?的模擬量輸入是否是多通道? ADC ADC的分辨率是否大于系統(tǒng)數(shù)據(jù)總線寬度?的分辨率是否

13、大于系統(tǒng)數(shù)據(jù)總線寬度? ADC ADC芯片內(nèi)部是否有三態(tài)輸出鎖存器?芯片內(nèi)部是否有三態(tài)輸出鎖存器? ADC ADC的啟動(dòng)方式是脈沖觸發(fā)還是電平觸發(fā)?的啟動(dòng)方式是脈沖觸發(fā)還是電平觸發(fā)? A/D A/D轉(zhuǎn)換的數(shù)據(jù)采用哪種傳輸方式?轉(zhuǎn)換的數(shù)據(jù)采用哪種傳輸方式? A/D A/D轉(zhuǎn)換的數(shù)據(jù)進(jìn)行什么樣的處理?轉(zhuǎn)換的數(shù)據(jù)進(jìn)行什么樣的處理? ADC ADC接口電路采用什么元器件組成?接口電路采用什么元器件組成?15.3.2 A/D15.3.2 A/D轉(zhuǎn)換器的接口設(shè)計(jì)轉(zhuǎn)換器的接口設(shè)計(jì)例例15.1 15.1 查詢(xún)方式的查詢(xún)方式的ADCADC接口電路設(shè)計(jì)接口電路設(shè)計(jì)1 1、要求、要求 利用利用ADC0804ADC0

14、804采集采集100100個(gè)數(shù)據(jù),采集的數(shù)據(jù)以查詢(xún)方式傳個(gè)數(shù)據(jù),采集的數(shù)據(jù)以查詢(xún)方式傳輸?shù)絻?nèi)存輸?shù)絻?nèi)存BUFRBUFR區(qū)。接口電路采用普通區(qū)。接口電路采用普通ICIC芯片組成。芯片組成。 2 2、分析、分析 ADC0804ADC0804是單個(gè)模擬量輸入;是單個(gè)模擬量輸入; ADC0804ADC0804的分辨率為的分辨率為8 8位,并具有三態(tài)輸出鎖存器;位,并具有三態(tài)輸出鎖存器; ADC0804ADC0804的啟動(dòng)方式為脈沖啟動(dòng);的啟動(dòng)方式為脈沖啟動(dòng); 數(shù)據(jù)傳輸方式為查詢(xún)方式。數(shù)據(jù)傳輸方式為查詢(xún)方式。 硬件電路:硬件電路:軟件流程圖:軟件流程圖:STARTP EQU 310HSTARTP EQU

15、 310H; ; 轉(zhuǎn)換啟動(dòng)端口轉(zhuǎn)換啟動(dòng)端口 STATEP EQU 311HSTATEP EQU 311H; ; 狀態(tài)端口狀態(tài)端口 DATAP EQU 310HDATAP EQU 310H; ; 數(shù)據(jù)端口數(shù)據(jù)端口 DATA SEGMENT DATA SEGMENT BUFR DB 100BUFR DB 100(0 0) DATA ENDS DATA ENDS CODE SEGMENT CODE SEGMENT ASSUME CS: CODE, DS: DATA ASSUME CS: CODE, DS: DATA BEGIN: MOV SI, OFFSET BUFRBEGIN: MOV SI, O

16、FFSET BUFR; ; 緩沖區(qū)指針緩沖區(qū)指針 MOV CX,100MOV CX,100; ; 采樣次數(shù)采樣次數(shù) START: START: MOV DX,STARTPMOV DX,STARTP; ; 啟動(dòng)轉(zhuǎn)換啟動(dòng)轉(zhuǎn)換 MOV AL,00HMOV AL,00H; ;(可以是其它值)(可以是其它值) OUT DX,ALOUT DX,AL;使;使CSCS和和WRWR同時(shí)有效同時(shí)有效 WAIT1: WAIT1: MOV DX,STATEPMOV DX,STATEP; ; 查轉(zhuǎn)換結(jié)束查轉(zhuǎn)換結(jié)束 IN AL,DX IN AL,DX AND AL,80HAND AL,80H; ; 查查D D7 7=0=

17、0(INTR=0INTR=0?)?) JNZ WAIT1JNZ WAIT1; ; 未結(jié)束,等待未結(jié)束,等待 MOV DX,DATAPMOV DX,DATAP; ; 已結(jié)束,讀數(shù)據(jù)已結(jié)束,讀數(shù)據(jù) IN AL,DX IN AL,DX MOVMOVSISI,AL,AL; ; 數(shù)據(jù)傳輸?shù)綌?shù)據(jù)傳輸?shù)紹UFRBUFR區(qū)區(qū) INC SIINC SI;緩沖區(qū)地址加;緩沖區(qū)地址加1 1 DEC CXDEC CX; ; 采樣次數(shù)減采樣次數(shù)減1 1 JNZ STARTJNZ START; ; 未完,繼續(xù)啟動(dòng)未完,繼續(xù)啟動(dòng) MOV AX,4C00HMOV AX,4C00H; ; 已完,退出已完,退出 INT 21H

18、INT 21H CODE ENDS CODE ENDS END BEGIN END BEGIN 例例15.2 15.2 中斷方式的中斷方式的ADCADC接口設(shè)計(jì)接口設(shè)計(jì)1 1、要求、要求 采用采用ADC0809ADC0809,從通道,從通道7 7采集采集100100個(gè)數(shù)據(jù),采集的數(shù)據(jù)以個(gè)數(shù)據(jù),采集的數(shù)據(jù)以中斷方式傳輸?shù)絻?nèi)存緩沖區(qū),并將轉(zhuǎn)換結(jié)束信號(hào)中斷方式傳輸?shù)絻?nèi)存緩沖區(qū),并將轉(zhuǎn)換結(jié)束信號(hào)EOCEOC連到連到IRQIRQ4 4上,請(qǐng)求中斷。上,請(qǐng)求中斷。2 2、分析、分析 要實(shí)現(xiàn)上述設(shè)計(jì)要求,至少有要實(shí)現(xiàn)上述設(shè)計(jì)要求,至少有3 3個(gè)方面的問(wèn)題需要考慮:個(gè)方面的問(wèn)題需要考慮: 被控對(duì)象被控對(duì)象AD

19、C0809ADC0809的特性;的特性; 接口電路結(jié)構(gòu)形式;接口電路結(jié)構(gòu)形式; 中斷處理。中斷處理。 ADC0809 ADC0809外部特性外部特性ADC0809ADC0809內(nèi)部邏輯原理圖內(nèi)部邏輯原理圖CLOCKCLOCK STARTSTART通道通道選擇選擇開(kāi)關(guān)開(kāi)關(guān)通道地址通道地址鎖存和譯碼鎖存和譯碼定時(shí)和控制定時(shí)和控制逐次逼近逐次逼近寄存器寄存器輸出輸出三態(tài)三態(tài)鎖存器鎖存器開(kāi)關(guān)樹(shù)組開(kāi)關(guān)樹(shù)組比較器比較器ININ0 0ININ1 1 ININ7 7ADDADDA AADDADDB BADDADDC CALEALE V VR R(+ +) V VR R(- -) D D0 0D D1 1D D

20、7 7EOCEOCOEOE 模擬輸入模擬輸入 數(shù)字輸出數(shù)字輸出A/DA/D 轉(zhuǎn)換結(jié)束轉(zhuǎn)換結(jié)束 啟動(dòng)轉(zhuǎn)換啟動(dòng)轉(zhuǎn)換 輸出允許輸出允許 通道選擇通道選擇地址地址 通道地址通道地址鎖存鎖存ADC0809ADC0809的時(shí)序圖的時(shí)序圖 接口電路結(jié)構(gòu)形式接口電路結(jié)構(gòu)形式 采用可編程接口芯片采用可編程接口芯片82C55A82C55A 中斷處理中斷處理 本例題是利用微機(jī)系統(tǒng)的中斷資源,故不需本例題是利用微機(jī)系統(tǒng)的中斷資源,故不需做中斷系統(tǒng)的硬件連接和做中斷系統(tǒng)的硬件連接和82C59A82C59A的初始化。的初始化。只需做兩件事:只需做兩件事:l 中斷向量的修改(中斷向量的修改(IRQIRQ4 4); ;l 開(kāi)

21、放開(kāi)放IRQIRQ4 4的中斷和的中斷和CPUCPU中斷。中斷。 3 3、硬件設(shè)計(jì)。、硬件設(shè)計(jì)。 本接口電路應(yīng)能提供如下信號(hào)本接口電路應(yīng)能提供如下信號(hào): : ADC0809 ADC0809模擬量通道號(hào)選擇信號(hào)模擬量通道號(hào)選擇信號(hào) 啟動(dòng)信號(hào)啟動(dòng)信號(hào) 讀數(shù)據(jù)允許信號(hào)讀數(shù)據(jù)允許信號(hào) EOCEOC的中斷請(qǐng)求的中斷請(qǐng)求: :直接連到系統(tǒng)總線的直接連到系統(tǒng)總線的IRQIRQ4 4上。上。82C55A82C55A的的4 4個(gè)端口地址是個(gè)端口地址是: : 300H 300H(A A口)、口)、301H301H(B B口)、口)、302H302H(C C口)、口)、303H303H(命(命令口)。令口)。 由由

22、82C55A82C55A接口接口芯片實(shí)現(xiàn)芯片實(shí)現(xiàn)中斷方式的中斷方式的ADCADC接口電路原理接口電路原理4 4、軟件設(shè)計(jì)、軟件設(shè)計(jì)通道通道7 7的數(shù)據(jù)采集相關(guān)程序段:的數(shù)據(jù)采集相關(guān)程序段:MOVMOVDXDX,303H303H;82C5582C55初始化初始化,A,A口輸入口輸入MOVMOVALAL,90H90HOUTOUTDXDX,ALALMOVMOVALAL,0EH0EH;置;置PCPC7 7=0=0,使,使STARTSTART和和ALEALE無(wú)效無(wú)效OUTOUTDXDX,ALALMOVMOVALAL,0CH0CH;置;置PCPC6 6=0=0,使,使OEOE無(wú)效無(wú)效OUTOUTDXDX,

23、ALALMOVMOVAXAX,350CH350CH;獲取;獲取IRQIRQ4 4的中斷向量并保存的中斷向量并保存INTINT21H21HMOVMOVOLD-OFFOLD-OFF,BXBXMOVMOVBXBX,ESESMOVMOVOLD-SEGOLD-SEG,BXBXCLICLIMOVMOVAXAX,250CH250CH;置新中斷向量;置新中斷向量MOVMOVDXDX,SEG A-DSEG A-DMOVMOVDSDS,DXDXMOVMOVDXDX,OFFSET A-DOFFSET A-DINTINT21H21HMOVMOVAXAX,DATADATA;恢復(fù)數(shù)據(jù)段;恢復(fù)數(shù)據(jù)段MOVMOVDSDS,A

24、XAXSTISTIININALAL,21H21H;開(kāi)放;開(kāi)放IRQIRQ4 4ANDANDALAL,0EFH0EFHOUTOUT21H21H,ALALMOVMOVCXCX,100100;設(shè)置采集字節(jié)數(shù);設(shè)置采集字節(jié)數(shù)MOVMOVDIDI,OFFSET BUFFOFFSET BUFF;設(shè)置內(nèi)存指針;設(shè)置內(nèi)存指針BEGINBEGIN:MOVMOVDXDX,303H303H;82C5582C55初始化初始化,A,A口輸出口輸出MOVMOVALAL,80H80HOUTOUTDXDX,ALALMOVMOVDXDX,300H300H;選擇通道;選擇通道7 7MOVMOVALAL,07H07HOUTOUTD

25、XDX,ALALMOVMOVDXDX,303H303H;啟動(dòng)轉(zhuǎn)換;啟動(dòng)轉(zhuǎn)換MOVMOVALAL,0FH0FH;產(chǎn)生;產(chǎn)生STARTSTART啟動(dòng)脈沖信號(hào)啟動(dòng)脈沖信號(hào)OUTOUTDXDX,ALALNOPNOPMOVMOVALAL,0EH0EHOUTOUTDXDX,ALALSTISTI;開(kāi)中斷;開(kāi)中斷HLTHLT;等待中斷;等待中斷DECDECCXCX;采樣次數(shù)減;采樣次數(shù)減1 1JNZJNZBEGINBEGIN;沒(méi)完,繼續(xù);沒(méi)完,繼續(xù)CLICLI;已完,關(guān)中斷;已完,關(guān)中斷MOVMOVAXAX,250CH250CH;恢復(fù);恢復(fù)IRQIRQ4 4的原中斷向量的原中斷向量MOVMOVDXDX,OLD

26、-SEGOLD-SEGMOVMOVDSDS,DXDXMOVMOVDXDX,OLD-OFFOLD-OFFINTINT21H21HMOVMOVAXAX,DATADATA;恢復(fù)數(shù)據(jù)段;恢復(fù)數(shù)據(jù)段MOVMOVDSDS,AXAXSTISTIININALAL,21H21HORORALAL,10H10H;屏蔽;屏蔽IRQIRQ4 4OUTOUT21H21H,ALALMOVMOVAXAX,4C00H4C00H;返回;返回DOSDOSINTINT21H21HA-DA-DPROCPROCFARFAR;中斷服務(wù)程序;中斷服務(wù)程序PUSHPUSHAXAX;保護(hù)現(xiàn)場(chǎng);保護(hù)現(xiàn)場(chǎng)PUSHPUSHDXDXCLICLI;關(guān)中斷

27、;關(guān)中斷MOVMOVDXDX,303H303H;打開(kāi)三態(tài)鎖存器;打開(kāi)三態(tài)鎖存器MOVMOVALAL,0DH0DHOUTOUTDXDX,ALAL;置;置PCPC6 6=1=1高高M(jìn)OVMOVDXDX,303H303H;82C5582C55初始化初始化,A,A口輸入口輸入MOVMOVALAL,90H90HOUTOUTDXDX,ALALMOVMOVDXDX,300H300HININALAL,DXDX;從;從PAPA口讀數(shù)據(jù)口讀數(shù)據(jù)MOVMOVAHAH,ALALMOVMOVDXDX,303H303HMOVMOVALAL,0CH0CHOUTOUTDXDX,ALAL;置;置PCPC6 6=0=0低低MOV

28、MOVDIDI,AHAH;存取數(shù)據(jù);存取數(shù)據(jù)INCINCDIDI;內(nèi)存地址指針加;內(nèi)存地址指針加1 1MOVMOVALAL,20H20H;發(fā)中斷結(jié)束命令;發(fā)中斷結(jié)束命令OUTOUT20H20H,ALALPOPPOPDXDX;恢復(fù)現(xiàn)場(chǎng);恢復(fù)現(xiàn)場(chǎng)POPPOPAXAXSTISTI;開(kāi)中斷;開(kāi)中斷IRETIRET;中斷返回;中斷返回A-DA-DENDPENDP例例15.3 15.3 電平啟動(dòng)電平啟動(dòng)的的ADCADC接口設(shè)計(jì)接口設(shè)計(jì)1 1、要求、要求 采用采用AD570AD570采集采集1K1K個(gè)字節(jié)數(shù)據(jù),采集的數(shù)據(jù)以查個(gè)字節(jié)數(shù)據(jù),采集的數(shù)據(jù)以查詢(xún)方式傳送到內(nèi)存緩沖區(qū)。詢(xún)方式傳送到內(nèi)存緩沖區(qū)。2 2、分

29、析、分析 AD570AD570內(nèi)無(wú)三態(tài)鎖存,且啟動(dòng)電平要維持內(nèi)無(wú)三態(tài)鎖存,且啟動(dòng)電平要維持2525usus,采用采用82C5582C55進(jìn)行連接和緩沖。進(jìn)行連接和緩沖。AD570AD570為為電平啟動(dòng)電平啟動(dòng)的的A/DA/D轉(zhuǎn)換器,轉(zhuǎn)換時(shí)間為轉(zhuǎn)換器,轉(zhuǎn)換時(shí)間為25us25us。時(shí)序關(guān)系時(shí)序關(guān)系如下圖:如下圖:B/CB/CDRDRD D0 0_ _7 7數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)轉(zhuǎn)換時(shí)間轉(zhuǎn)換時(shí)間25us25us轉(zhuǎn)換時(shí)間轉(zhuǎn)換時(shí)間25us25us開(kāi)始轉(zhuǎn)換開(kāi)始轉(zhuǎn)換第二次啟動(dòng)第二次啟動(dòng)中止轉(zhuǎn)換中止轉(zhuǎn)換轉(zhuǎn)換結(jié)束轉(zhuǎn)換結(jié)束結(jié)束結(jié)束1.5us1.5us空白空白空白空白空白空白A A此處此處DRDR不變低不變低即無(wú)數(shù)據(jù)輸出

30、即無(wú)數(shù)據(jù)輸出25us25us2us2us3 3、硬件設(shè)計(jì)、硬件設(shè)計(jì) 設(shè)設(shè)82C55A82C55A的端口地址為的端口地址為300H-303H300H-303H4 4、軟件設(shè)計(jì)、軟件設(shè)計(jì) 相關(guān)的程序段:相關(guān)的程序段:MOVMOVCXCX,100100;采樣次數(shù);采樣次數(shù)CXCXMOVMOVDIDI,OFFSET BUFFOFFSET BUFF;緩沖器指針;緩沖器指針DIDIMOVMOVDXDX,303H303HMOVMOVALAL,91H91H;82C5582C55初始化初始化OUTOUTDXDX,ALALMOVMOVALAL,0FH0FH;置;置PC7=1PC7=1,啟動(dòng)無(wú)效,啟動(dòng)無(wú)效OUTOU

31、TDXDX,ALALNOPNOPSTARTSTART:MOVMOVDXDX,303H303H;置;置PC7=0PC7=0,啟動(dòng)轉(zhuǎn)換,啟動(dòng)轉(zhuǎn)換MOVMOVALAL,0EH0EHOUTOUTDXDX,ALALCHECKCHECK:MOVMOVDXDX,302H302H;查轉(zhuǎn)換是否結(jié)束;查轉(zhuǎn)換是否結(jié)束ININALAL,DXDXANDANDALAL,08H08H;PCPC3 3=0=0否?否?JNZJNZCHECKCHECK;沒(méi)有結(jié)束,繼續(xù)轉(zhuǎn)換;沒(méi)有結(jié)束,繼續(xù)轉(zhuǎn)換MOVMOVDXDX,300H300H;轉(zhuǎn)換結(jié)束,讀數(shù)據(jù);轉(zhuǎn)換結(jié)束,讀數(shù)據(jù)ININALAL,DXDXMOVMOVDIDI,ALAL;存數(shù)據(jù)到

32、;存數(shù)據(jù)到BUFFBUFF中中MOVMOVDXDX,303H303H;撤消啟動(dòng)信號(hào);撤消啟動(dòng)信號(hào)MOVMOVALAL,0FH0FHOUTOUTDXDX,ALALINCINCDIDI;指針加;指針加1 1DECDECCXCX;采樣次數(shù)減;采樣次數(shù)減1 1JNZJNZSTARTSTART;沒(méi)有結(jié)束,繼續(xù)啟動(dòng);沒(méi)有結(jié)束,繼續(xù)啟動(dòng)例例15.4 15.4 DMADMA方式方式的的ADCADC接口電路設(shè)計(jì)接口電路設(shè)計(jì)1 1、要求、要求 要求要求8 8位位A/DA/D轉(zhuǎn)換器,共采集轉(zhuǎn)換器,共采集4K4K個(gè)字節(jié)數(shù)據(jù),采集的數(shù)個(gè)字節(jié)數(shù)據(jù),采集的數(shù)據(jù)用據(jù)用DMADMA方式,送到從方式,送到從30400H30400

33、H開(kāi)始的內(nèi)存保存,以待處理,開(kāi)始的內(nèi)存保存,以待處理,內(nèi)存地址以?xún)?nèi)存地址以+1+1方式修改。使用方式修改。使用DMAC8237ADMAC8237A的通道的通道1 1,單一傳,單一傳送方式。送方式。2 2、電路分析與設(shè)計(jì)、電路分析與設(shè)計(jì) 采用采用DMADMA方式,是為了縮短數(shù)據(jù)傳送過(guò)程中的時(shí)間。根方式,是為了縮短數(shù)據(jù)傳送過(guò)程中的時(shí)間。根據(jù)上述要求,采用下圖所示的電路。據(jù)上述要求,采用下圖所示的電路。DMADMA方式的方式的ADCADC接口電路:接口電路:3 3、初始化編程、初始化編程根據(jù)題意只涉及以下幾個(gè)寄存器的操作:根據(jù)題意只涉及以下幾個(gè)寄存器的操作: 選定傳送通道及工作方式(工作方式寄存器)

34、。選定傳送通道及工作方式(工作方式寄存器)。 設(shè)置設(shè)置DMADMA屏蔽字(屏蔽寄存器),端口屏蔽字(屏蔽寄存器),端口=0BH=0BH。 設(shè)定傳輸?shù)目傋止?jié)數(shù)(字節(jié)數(shù)寄存器),端口設(shè)定傳輸?shù)目傋止?jié)數(shù)(字節(jié)數(shù)寄存器),端口 =03H=03H(通道(通道1 1) 設(shè)定傳送的存儲(chǔ)器地址(地址寄存器),端口設(shè)定傳送的存儲(chǔ)器地址(地址寄存器),端口 =02H=02H(通道(通道1 1) 寫(xiě)清除先寫(xiě)清除先/ /后觸發(fā)器,端口后觸發(fā)器,端口=0CH=0CH。返回程序清單:程序清單: CLI CLI ;關(guān)中斷;關(guān)中斷 MOV ALMOV AL,04H04H;命令字,;命令字,禁止禁止82C37A82C37A工作

35、工作 OUT 08HOUT 08H,AL AL MOV AL MOV AL,01000101B 01000101B ;工作方式工作方式:?jiǎn)我粋鬏敺绞?,:?jiǎn)我粋鬏敺绞剑?;地址加;地址加1 1,非自動(dòng)預(yù)置,非自動(dòng)預(yù)置, ;DMADMA寫(xiě),通道寫(xiě),通道1 1 OUT 0BH OUT 0BH,AL AL ;送入工作方式寄存器;送入工作方式寄存器 OUT 0CHOUT 0CH,AL AL ;清先清先/ /后觸發(fā)器后觸發(fā)器(軟命令)(軟命令) MOV AL MOV AL,03H 03H ;頁(yè)面地址頁(yè)面地址(最高(最高4 4位地址)位地址) OUT 83HOUT 83H,AL AL ;寫(xiě)入;寫(xiě)入DMADM

36、A頁(yè)面地址寄存器頁(yè)面地址寄存器 MOV ALMOV AL,00H 00H ;基地址低基地址低8 8位位 OUT 02HOUT 02H,AL AL ;低;低8 8位地址寫(xiě)入通道位地址寫(xiě)入通道1 1的基與的基與 ;當(dāng)前地址寄存器當(dāng)前地址寄存器 MOV ALMOV AL,04H 04H ;基地址高基地址高8 8位位 OUT 02HOUT 02H,AL AL ;高;高8 8位地址寫(xiě)入通道位地址寫(xiě)入通道1 1的基與的基與 ;當(dāng)前地址寄存器;當(dāng)前地址寄存器 MOV AL MOV AL,0FFH 0FFH ;字節(jié)數(shù)低字節(jié)數(shù)低8 8位位 OUT 03HOUT 03H,AL AL ;字節(jié)數(shù)低;字節(jié)數(shù)低8 8位寫(xiě)

37、入通道位寫(xiě)入通道1 1的基與的基與 ;當(dāng)前字節(jié)計(jì)數(shù)器;當(dāng)前字節(jié)計(jì)數(shù)器 MOV ALMOV AL,0FH 0FH ;字節(jié)數(shù)高字節(jié)數(shù)高8 8位位 OUT 03HOUT 03H,AL AL ;字節(jié)數(shù)高;字節(jié)數(shù)高8 8位寫(xiě)入通道位寫(xiě)入通道1 1的基與的基與;當(dāng)前字節(jié)計(jì)數(shù)器;當(dāng)前字節(jié)計(jì)數(shù)器 STI STI ;CPUCPU開(kāi)中斷開(kāi)中斷 MOV ALMOV AL,01H 01H ;清通道清通道1 1的屏蔽位的屏蔽位,允許,允許DREQ1DREQ1 OUT 0AH OUT 0AH,AL AL ;開(kāi)通道;開(kāi)通道1 1,接收,接收DREQ1DREQ1的到來(lái)的到來(lái) 15.4 D/A 15.4 D/A轉(zhuǎn)換器轉(zhuǎn)換器15

38、.4.1 D/A15.4.1 D/A轉(zhuǎn)換器的主要技術(shù)指標(biāo)轉(zhuǎn)換器的主要技術(shù)指標(biāo)1 1、分辨率分辨率 指指DACDAC能夠把多少位二進(jìn)制數(shù)轉(zhuǎn)換成模擬量。能夠把多少位二進(jìn)制數(shù)轉(zhuǎn)換成模擬量。例:例:DAC0832DAC0832能夠把能夠把8 8位二進(jìn)制數(shù)轉(zhuǎn)換成電流,位二進(jìn)制數(shù)轉(zhuǎn)換成電流, 所以所以DAC0832DAC0832的分辨率是的分辨率是8 8位。位。2 2、轉(zhuǎn)換時(shí)間轉(zhuǎn)換時(shí)間 從數(shù)字量輸入到從數(shù)字量輸入到DACDAC完成轉(zhuǎn)換所需要的時(shí)間。完成轉(zhuǎn)換所需要的時(shí)間。15.4.2 D/A15.4.2 D/A轉(zhuǎn)換器的外部特性轉(zhuǎn)換器的外部特性DACDAC的外部信號(hào)線包括的外部信號(hào)線包括: : 數(shù)字信號(hào)輸入線

39、;數(shù)字信號(hào)輸入線; 模擬信號(hào)輸出線;模擬信號(hào)輸出線; CS CS信號(hào)線和信號(hào)線和WRWR(或(或WR1WR1,WR2WR2)信號(hào)線(用)信號(hào)線(用 于形成于形成DACDAC的啟動(dòng)轉(zhuǎn)換信號(hào));的啟動(dòng)轉(zhuǎn)換信號(hào)); 數(shù)據(jù)輸入鎖存控制線;數(shù)據(jù)輸入鎖存控制線; 模擬量輸出通道地址線。模擬量輸出通道地址線。15.5 D/A15.5 D/A轉(zhuǎn)換器與微處理器的接口轉(zhuǎn)換器與微處理器的接口15.5.115.5.1、D/AD/A轉(zhuǎn)換器與轉(zhuǎn)換器與CPUCPU的連接的連接 DACDAC與與CPUCPU的接口包括的接口包括硬件連接硬件連接和和軟件編程軟件編程。DACDAC與與CPUCPU之間的數(shù)據(jù)傳輸是之間的數(shù)據(jù)傳輸是無(wú)

40、條件傳輸無(wú)條件傳輸。 DACDAC接接口電路的結(jié)構(gòu)形式也有下列幾種:口電路的結(jié)構(gòu)形式也有下列幾種: 采用中小規(guī)模邏輯芯片采用中小規(guī)模邏輯芯片; ; 利用可編程并行利用可編程并行I/OI/O接口芯片接口芯片; ; 采用采用GALGAL器件。器件。15.5.2 D/A15.5.2 D/A轉(zhuǎn)換器接口的主要任務(wù)轉(zhuǎn)換器接口的主要任務(wù)D/AD/A與與A/DA/D有很多不同之處,表現(xiàn)在有很多不同之處,表現(xiàn)在: DACDAC一般不需要專(zhuān)門(mén)的控制信號(hào)去觸發(fā),只要一般不需要專(zhuān)門(mén)的控制信號(hào)去觸發(fā),只要 CPUCPU把數(shù)據(jù)送到它的輸入端,就開(kāi)始轉(zhuǎn)換。把數(shù)據(jù)送到它的輸入端,就開(kāi)始轉(zhuǎn)換。 DAC DAC不提供轉(zhuǎn)換結(jié)束狀態(tài)

41、信號(hào)。不提供轉(zhuǎn)換結(jié)束狀態(tài)信號(hào)。DACDAC主要解決的是:主要解決的是: CPUCPU與與DACDAC之間的數(shù)據(jù)緩沖問(wèn)題;之間的數(shù)據(jù)緩沖問(wèn)題; 當(dāng)當(dāng)D/AD/A轉(zhuǎn)換器的分辯率大于數(shù)據(jù)總線的寬度轉(zhuǎn)換器的分辯率大于數(shù)據(jù)總線的寬度 時(shí),時(shí),CPUCPU必須分兩次傳送和同時(shí)選通。必須分兩次傳送和同時(shí)選通。15.5.3 15.5.3 分析與設(shè)計(jì)分析與設(shè)計(jì)D/AD/A轉(zhuǎn)換器接口的方法轉(zhuǎn)換器接口的方法 DAC DAC的模擬量輸出是否是多通道?的模擬量輸出是否是多通道? DAC DAC的分辨率是否大于系統(tǒng)數(shù)據(jù)總線的寬度?的分辨率是否大于系統(tǒng)數(shù)據(jù)總線的寬度? DAC DAC芯片內(nèi)部是否有三態(tài)輸入鎖存器?芯片內(nèi)部是

42、否有三態(tài)輸入鎖存器? DAC DAC的啟動(dòng)方式,只有脈沖觸發(fā)一種。的啟動(dòng)方式,只有脈沖觸發(fā)一種。DACDAC不設(shè)專(zhuān)門(mén)的轉(zhuǎn)不設(shè)專(zhuān)門(mén)的轉(zhuǎn)換啟動(dòng)信號(hào),是利用換啟動(dòng)信號(hào),是利用CSCS和和IOWIOW共同進(jìn)行假寫(xiě)操作,來(lái)實(shí)現(xiàn)脈共同進(jìn)行假寫(xiě)操作,來(lái)實(shí)現(xiàn)脈沖啟動(dòng)的。沖啟動(dòng)的。 DAC DAC的數(shù)據(jù)傳輸方式,的數(shù)據(jù)傳輸方式,只有無(wú)條件傳輸一種只有無(wú)條件傳輸一種。 DAC DAC接口電路采用什么元器件組成?接口電路采用什么元器件組成?15.6 D/A15.6 D/A轉(zhuǎn)換器接口電路設(shè)計(jì)轉(zhuǎn)換器接口電路設(shè)計(jì)例例15.6 DAC15.6 DAC接口電路設(shè)計(jì)接口電路設(shè)計(jì)1 1、要求、要求 通過(guò)通過(guò)DAC0832DAC0

43、832產(chǎn)生三角波、鋸齒波、方波等。產(chǎn)生三角波、鋸齒波、方波等。2 2、分析、分析 DAC0832 DAC0832是單通道模擬量輸出,不需通道選擇;是單通道模擬量輸出,不需通道選擇; DAC0832 DAC0832有兩級(jí)緩沖鎖存器,它有有兩級(jí)緩沖鎖存器,它有3 3種工作方式:種工作方式: 雙緩沖方式、單緩沖方式和直通方式雙緩沖方式、單緩沖方式和直通方式。8 8位位輸入輸入寄存器寄存器8 8位位DACDAC寄存器寄存器8 8位位D/AD/A轉(zhuǎn)換器轉(zhuǎn)換器DIDI7 7DIDI0 0ILEILELELE1 1LELE2 2CSCSWRWR1 1WRWR2 2XFERXFERV VREFREFI IOU

44、T2OUT2I IOUT1OUT1R RFBFBAGNDAGND( (模擬地模擬地 ) )& & & &DGNDDGND( (數(shù)字地?cái)?shù)字地 ) )V VCCCCDAC0832DAC0832引腳及內(nèi)部結(jié)構(gòu):引腳及內(nèi)部結(jié)構(gòu):DAC0832DAC0832有三種工作方式有三種工作方式:(1 1)雙緩沖方式)雙緩沖方式(LELE1 1和和LELE2 2分別控制)分別控制)(2 2)單緩沖方式)單緩沖方式(其中(其中LELE1 1和和LELE2 2有一個(gè)直通)有一個(gè)直通)(3 3)直通方式)直通方式(LELE1 1和和LELE2 2均為直通)均為直通)注:注:在在DACDA

45、C實(shí)際連接中,實(shí)際連接中,要注意區(qū)分要注意區(qū)分“模擬地模擬地”和和“數(shù)字?jǐn)?shù)字地地”的連接的連接,為了避免信號(hào)串?dāng)_,數(shù)字量部分只能連接到,為了避免信號(hào)串?dāng)_,數(shù)字量部分只能連接到數(shù)字地,而模擬量部分只能連接到模擬地。數(shù)字地,而模擬量部分只能連接到模擬地。1 1:輸出隨輸入變化:輸出隨輸入變化0 0:鎖存:鎖存3 3、硬件設(shè)計(jì)、硬件設(shè)計(jì)硬件設(shè)計(jì)的方案很多,本例采用硬件設(shè)計(jì)的方案很多,本例采用82558255做做CPUCPU與與DACDAC的接口,并的接口,并DACDAC工作在直通方式工作在直通方式DAC0832DAC0832DIDI0-70-7ILEILECSCSWR1WR1WR2WR2XFERXF

46、ER8255A8255APA PA PBPB4 4PBPB3 3PBPB2 2PBPB1 1PBPB0 0CPUCPURfbRfbI IO1O1I IO2O2- -+ + +至至示示波波器器B B口輸出做控口輸出做控制信號(hào)制信號(hào)4 4、軟件設(shè)計(jì)、軟件設(shè)計(jì)以下程序是產(chǎn)生三角波的程序以下程序是產(chǎn)生三角波的程序;82558255初始化初始化MOV DXMOV DX,303H 303H ;82558255的命令口的命令口MOV ALMOV AL,10000000B10000000B ;82558255的方式字的方式字OUT DXOUT DX,AL AL ;指定;指定B B口控制口控制DACDAC的轉(zhuǎn)換

47、的轉(zhuǎn)換MOV DXMOV DX,301H 301H ;8255A8255A的的B B口地址口地址MOV ALMOV AL,00010000B00010000B ;置;置DAC0832DAC0832為直通工作方式為直通工作方式OUT DXOUT DX,AL AL ;生成三角波的循環(huán);生成三角波的循環(huán)MOV DXMOV DX,300H 300H ;8255A8255A的的A A口地址口地址MOV ALMOV AL,0H 0H ;輸出數(shù)據(jù)從;輸出數(shù)據(jù)從0 0開(kāi)始開(kāi)始L1L1:OUT DXOUT DX,ALAL INC AL INC AL;輸出數(shù)據(jù)加;輸出數(shù)據(jù)加1 1 JNZ L1 JNZ L1 ;A

48、LAL是否加滿(mǎn)?未滿(mǎn)繼續(xù)是否加滿(mǎn)?未滿(mǎn)繼續(xù) MOV ALMOV AL,0FFH0FFH;已滿(mǎn),;已滿(mǎn),ALAL置全置全1 1L2L2:OUT DXOUT DX,AL AL DEC AL DEC AL;輸出數(shù)據(jù)減;輸出數(shù)據(jù)減1 1 JNZ L2 JNZ L2;ALAL是否減到是否減到0 0?不為?不為0 0繼續(xù)繼續(xù) JMP L1JMP L1;為;為0 0,ALAL加加1 1 0FFHDAC0832DAC0832雙緩沖方式的典型用法:雙緩沖方式的典型用法:多目標(biāo)的同時(shí)控制多目標(biāo)的同時(shí)控制CPUCPUDAC0832DAC0832DAC0832DAC0832控制點(diǎn)控制點(diǎn)控制點(diǎn)控制點(diǎn)被控對(duì)象被控對(duì)象 D

49、AC0832 DAC0832最適合要求多片最適合要求多片DACDAC同時(shí)轉(zhuǎn)換的系統(tǒng),下圖的時(shí)同時(shí)轉(zhuǎn)換的系統(tǒng),下圖的時(shí)序關(guān)系表示,兩個(gè)數(shù)據(jù)分別用序關(guān)系表示,兩個(gè)數(shù)據(jù)分別用CSCS1 1和和CSCS2 2鎖存到兩個(gè)鎖存到兩個(gè)DAC0832DAC0832的的輸入寄存器中,最后用輸入寄存器中,最后用XFERXFER信號(hào)的上升沿將它們同時(shí)鎖存到信號(hào)的上升沿將它們同時(shí)鎖存到各自的各自的DACDAC寄存器中。寄存器中。數(shù)據(jù)數(shù)據(jù)1 1數(shù)據(jù)數(shù)據(jù)2 2數(shù)據(jù)數(shù)據(jù)1 1輸入到輸入到數(shù)據(jù)數(shù)據(jù)2 2輸入到輸入到1#1#鎖存鎖存2#2#鎖存鎖存DACDAC寄存器鎖存寄存器鎖存DATA BUSDATA BUSCSCS1 1C

50、SCS2 2WRWR1 1WRWR2 2XFERXFER用來(lái)進(jìn)行同時(shí)多點(diǎn)的控制方法用來(lái)進(jìn)行同時(shí)多點(diǎn)的控制方法例例15.7 DAC121015.7 DAC1210接口電路設(shè)計(jì)接口電路設(shè)計(jì)1 1、要求、要求 通過(guò)通過(guò)ADC1210ADC1210產(chǎn)生并輸出產(chǎn)生并輸出5050個(gè)方波個(gè)方波2 2、分析、分析 ADC1210ADC1210的分辨率是的分辨率是1212位,且內(nèi)部有三態(tài)鎖存,位,且內(nèi)部有三態(tài)鎖存,數(shù)據(jù)要分兩次傳送。數(shù)據(jù)要分兩次傳送。DAC1210DAC1210的的3 3個(gè)端口的地址分別為:個(gè)端口的地址分別為: 316H316H(y0y0):鎖存高):鎖存高8 8位數(shù)據(jù)端口;位數(shù)據(jù)端口; 317H317H(y1y1):鎖存低):鎖存低4 4位數(shù)據(jù)端口;位數(shù)據(jù)端口; 318H318H(y2y2):第):第2 2級(jí)鎖存端口。級(jí)鎖存端口。8 8位輸入位輸入鎖存器鎖存器4 4位輸入位輸入鎖存器鎖存器1212位位DACDAC存儲(chǔ)器存儲(chǔ)器1212位相乘型位相乘型D/AD/A轉(zhuǎn)換器轉(zhuǎn)換器LELELELSBMSBDI11 15DI10 16DI9 17DI8 18DI7 19DI6 20DI5 4DI4 5DI3 6DI2 7DI1 8DI0 9BYTE1 23 / BYTE2CS 1 WR1 2XFER 21WR2 2210 Vref14 Iout213 Iou

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論