




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
6.1A/D和D/A器件工作原理6.2ADC0809數(shù)據(jù)采集6.3用DAC0832產(chǎn)生任意波形
6.4用DAC0832控制直流電機轉速6.5小結習題
6.1.1ADC0809的結構和工作原理
ADC0809是8位逐次逼近式單片A/D轉換芯片,可對8路0~5?V的輸入模擬電壓信號分時進行轉換。ADC0809的分辨率為8位,轉換時間約100?
s,含鎖存控制的8路多路開關,輸出有三態(tài)緩沖器控制,單5?V電源供電。
1.ADC0809的引腳和內(nèi)部結構
ADC0809的引腳和內(nèi)部結構如圖6-1所示。6.1A/D和D/A器件工作原理圖6-1ADC0809的引腳圖和內(nèi)部結構圖
ADC0809芯片有28條引腳,采用雙列直插式封裝,其引腳分布如下:
(1)電源線(4條)。
(2)輸入線(11條)。
模擬輸入中的一路,在ALE有效時被鎖存。選通8路模擬輸入的真值表如表6-1所示。
(3)輸出線(8條)。表6-1ADDA、ADDB、ADDC真值表
2.ADC0809的工作原理
ADC0809的工作過程是:首先輸入3位地址,并使ALE=1,將地址存入地址鎖存器中。此地址經(jīng)譯碼選通8路模擬輸入之一到比較器。主要控制信號說明如圖6-2所示。圖6-2ADC0809控制信號6.1.2DAC0832的結構和工作原理
DAC0832是8位雙緩沖器A/D轉換芯片,可對8路0~5?V的輸入模擬電壓信號分時進行轉換。單電源供電,從+5~+15?V均可正常工作?;鶞孰妷旱姆秶鸀?10~+10?V;電流建立時間為1?ms;CMOS工藝,低功耗20?mW。
1.DAC0832的引腳和內(nèi)部結構
DAC0832的引腳和內(nèi)部結構如圖6-3所示。圖6-3DAC0832的引腳圖和內(nèi)部結構圖
DAC0832的輸出方式為電流輸出:IOUT1+?IOUT2=?常數(shù)。
DAC0832是電流輸出,為了取得電壓輸出,需在電流輸出端接運算放大器,RFE即為運算放大器的反饋電阻端。運算放大器的接法如圖6-4所示。
DAC0832輸出電壓值為-D×VREF/255。其中,D為待轉換的8位輸入數(shù)據(jù)。圖6-4運算放大器接法
2.DAC0832與8051的接口電路
DAC0832的與CPU的連接可采用三種方式:直通方式、單緩沖方式和雙緩沖方式。
1)直通方式
直通方式是指D7~D0上一出現(xiàn)數(shù)字量,DAC即可將它們轉換成模擬量,見圖6-5。圖6-5直通方式
2)單緩沖方式
所謂單緩沖方式就是使0832的兩個輸入寄存器中有一個處于直通方式,而另一個處于受控的鎖存方式,或者說兩個輸入寄存器同時受控的方式。在實際應用中,如果只有一路模擬量輸出,或雖有幾路模擬量但并不要求同步輸出的情況,就可采用單緩沖方式。單緩沖方式的電路有多種形式,其中一種接線如圖6-6所示。圖6-6單緩沖方式
3)雙緩沖方式
所謂雙緩沖方式,就是把DAC0832的兩個鎖存器都接成受控鎖存方式。雙緩沖DAC0832的連接如圖6-7所示。圖6-7DAC0832的雙緩沖方式連接6.1.3單片機與DAC0832和ADC0809的接口設計
1.原理圖設計
單片機與DAC0832和ADC0809的接口原理圖如圖6-8和圖6-9所示。圖6-8頂層原理圖圖6-9ADC/DAC子原理圖
2.原理圖說明
對于ADC0809和單片機的接口說明:
(1)CLOCK引腳接單片機的端口P3.4,單片機利用定時器在該端口產(chǎn)生固定頻率的方波。
(2)?ADC0809的轉換結果,一方面由單片機讀取進行數(shù)據(jù)處理。
(3)使用了ADC0809的兩路輸入模擬量,模擬量采用可變電阻調節(jié)。對于DAC0832和單片機的接口說明:
(1)?DAC0832與8051的連接采用單緩沖方式,兩個輸入寄存器同時受控。
(2)放大器選用UA741,將電流輸出轉換為電壓輸出。
(3)?DAC0832的片選信號通過74LS138提供,為使片選信號有效,必須使P2.7和P2.4為高電平。此原理圖中所使用的元器件根據(jù)其名稱可在Proteus中查找得到。6.2.1設計要求
將模擬量轉換為數(shù)字量,具體要求如下:
(1)共有兩路模擬信號,信號電壓范圍為0~5?V,輪流采集。
(2)將兩路模擬信號的轉換結果,用LED燈顯示,并送數(shù)碼管顯示。
(3)報警功能。分別設定每一路的上限值和下限值,當超過設定界限值時,通過指示燈閃爍或喇叭發(fā)聲,表示報警。
(4)將采集的數(shù)據(jù)存入內(nèi)存。
(5)分別采用查詢方式和中斷方式實現(xiàn)。6.2ADC0809數(shù)據(jù)采集6.2.2設計說明
本設計僅完成功能(1)和功能(2),并采用查詢方式實現(xiàn)。
ADC0809的工作過程參見圖6-2,下面再作簡單說明:首先輸入3位地址,并使ALE=1,將地址存入地址鎖存器中,此地址經(jīng)譯碼選通8路模擬輸入之一到比較器。6.2.3設計源碼
根據(jù)程序流程圖,可以寫出ADC0809采集數(shù)據(jù)的源程序,如例6-1。圖6-10程序流程圖【例6-1】ADC0809采集源碼。
#include<reg51.h>
#include<absacc.h>
#defineucharunsignedchar
//下面地址定義中包含使能138芯片的信息
#definePA8255XBYTE[0x80fc]//8255端口A的地址
#definePB8255XBYTE[0x80fd]//8255端口B的地址
#definePC8255XBYTE[0x80fe]//8255端口C的地址
#defineCOM8255XBYTE[0x80ff]//8255命令字的地址//ADC0809引腳定義
sbitAD_EOC=P2^1;
sbitAD_selA=P3^2; //只使用2路模擬信號輸入
sbitAD_OE=P3^3;
sbitAD_CLK=P3^4;
sbitAD_ST=P3^5;
voiddelay(ucharx);
voidinit_8255(void);/*************采集數(shù)據(jù)函數(shù):使用AD器件采集數(shù)據(jù)*****************/
//使用ADC0809采樣通道0/1輸入模擬信號,轉換后進行顯示
voidadc_0809(void)
{
ucharled_table[16]={0x3f,0x6,0x5b,0x4f,0x66,0x6d,0x7d,
?0x7,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
//0~F共16個數(shù),用于段控 staticucharcnt=0; //用于交替選擇通道0和通道1
uchartmp=0;
if(((cnt++)%2)==0)
{
AD_selA=0;//選擇通道0
}
else
{
AD_selA=1; //選擇通道1 }
AD_ST=0;AD_ST=1;AD_ST=0; //啟動轉換
while(AD_EOC==0);//等待轉換結束
AD_OE=1;
//允許輸出
delay(2);
//下面幾行代碼將AD轉換輸出到數(shù)碼管上
for(tmp=0;tmp<100;tmp++) //顯示結果延時一段時間
{ PB8255=0x0f;
PA8255=led_table[(P1&0x0f)]; //讀取低4位并顯示在一個數(shù)碼管上
delay(5);
PB8255=0x0e;
PA8255=led_table[((P1>>4)&0x0f)];
//讀取高4位并顯示在一個數(shù)碼管上
delay(5);
}
AD_OE=0; //關閉輸出}
/*************中斷處理函數(shù):使用AD器件采集數(shù)據(jù)*****************/
//T0定時器中斷提供時鐘信號,一次定時10/36?ms,作為AD采樣時鐘:約20?kHz
voidTimer0_Int(void)interrupt1using1
{
AD_CLK=!AD_CLK; //ADC0809采樣時鐘信號,約20?kHz
}
/*************定時器初始化函數(shù)*****************/
voidTime_init(void)
{ TMOD=0x02;TH0=0x6;TL0=0x6;
//定時器模式與初值設定
IE=0x82; //開中斷
TR0=1; //啟動定時器0
}
/*************main函數(shù):循環(huán)采集并顯示數(shù)據(jù)*****************/
voidmain(void)
{ init_8255();
//8255命令字,PA/PB均為輸出,PC低4位輸入,高4位輸出
Time_init();
//定時器初始化,為DA轉化提供時鐘
while(1)
{
adc_0809();
}
}6.2.4仿真結果
將例6-1編譯下載后進行仿真,仿真結果如圖6-11和圖6-12所示。圖6-11數(shù)碼管上顯示的仿真結果從圖6-11可以看出,數(shù)碼管上交替顯示FF和80,這是輸入的兩路模擬量經(jīng)模數(shù)轉換器轉換后得到的數(shù)字量。該數(shù)字量也可以由子圖中的LED燈表示出來,如圖6-12所示,根據(jù)圖中LED燈的亮滅情況可知,前者代表數(shù)值0x80,后者代表數(shù)值0xff。圖6-12LED燈顯示的模數(shù)轉換結果6.3.1設計要求
設計并輸出模擬信號,具體要求如下:
(1)模擬信號為鋸齒波,周期為1?s。
(2)模擬信號為正弦波,周期為1?s。
(3)模擬信號為三角波,周期為1?s。
(4)交替產(chǎn)生上述三種波,周期為3?s。6.3用DAC0832產(chǎn)生任意波形6.3.2設計說明
本設計僅完成設計要求(1),產(chǎn)生鋸齒波,周期為1?s。其他設計要求,在理解設計要求(1)的基礎上,由讀者自行完成。
圖6-13為產(chǎn)生鋸齒波的流程圖。圖6-13產(chǎn)生鋸齒波的流程圖6.3.3設計源碼
根據(jù)程序流程圖,可以寫出DAC0832產(chǎn)生鋸齒波的源程序,如例6-2。
【例6-2】DAC0832產(chǎn)生鋸齒波源碼。
#include<reg51.h>
#include<absacc.h>
#defineucharunsignedchar
//下面地址定義中包含使能138芯片的信息
#defineDAC0832XBYTE[0x90ff]//DAC0832的地址
//函數(shù)聲明
voiddelay(ucharx);/*************使用DA器件生成鋸齒波*****************/
//向DAC0832反復遞增輸出0~255的數(shù)字量,經(jīng)模數(shù)轉換及電流到電壓的轉換后輸出鋸齒波
//輸出電壓值為:-I/255*VREF
voiddac_0832(void)
{
ucharI=0;
for(I=0;I<255;I++)
{
DAC0832=I;
delay(2);
}
}//主函數(shù)
voidmain(void)
{
while(1)
{
//數(shù)模轉換DAC
dac_0832();
}
}6.3.4仿真結果
將源程序編譯下載后進行仿真,仿真結果如圖6-14所示。圖6-14數(shù)字示波器顯示的由數(shù)擬轉換得出的鋸齒波6.4.1設計要求
控制直流電機的轉速為5檔,5檔的輸入電壓分別為:+1?V、+2?V、+3?V、+4?V和+5?V。具體設計要求如下:
(1)?5檔轉速自動輪換運行,每檔轉速運行的時間均為2?min。
(2)使用5個按鍵來控制5檔轉速,每個按鍵對應著1檔轉速,這樣當按下某個按鍵時,則直流電機就以相應的轉速運轉。
(3)使用一個按鍵來控制5檔轉速,系統(tǒng)運行后直流電機首先以1檔轉速運行。6.4用DAC0832控制直流電機轉速6.4.2設計說明
直流電機的轉速跟驅動電壓值呈線性關系,驅動電壓值越大,直流電機的轉速也就越高。
本設計僅完成設計要求(1),5檔轉速自動輪換運行,每檔轉速運行的時間均為2?min。設計要求(2)和設計要求(3)則在掌握設計要求(1)和矩陣鍵盤原理的基礎上,很容易實現(xiàn),設計流程圖如圖6-15所示。圖6-15軟件流程圖6.4.3設計源碼
根據(jù)程序流程圖,可以寫出DAC0832控制直流電機轉速的源程序,如例6-3。
【例6-3】DAC0832控制直流電機轉速源碼。
voiddac_0832_dc(void)
{
ucharI=0;
for(I=0;I<5;I++)
{
DAC0832=255*(I+1)/5;
delay_min(2);//延時2?min
}
}6.4.4仿真結果
將源程序編譯下載后進行仿真,仿真結果
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年燈具及照明裝置合作協(xié)議書
- 2025年商業(yè)、飲食、服務業(yè)專用設備項目發(fā)展計劃
- 合肥市2025年度勞動合同(含員工績效獎金分配)
- 二零二五總經(jīng)理聘任與法律風險合同:法律合規(guī)保障合作協(xié)議
- 二零二五年度森林防火責任森林土地承包協(xié)議
- IT技術外包服務合同
- 二零二五年度食品批發(fā)導購員聘用及銷售合同
- 關于2025年度消防檢測中心服務質量保障合同范本
- 二零二五年度企業(yè)戰(zhàn)略合作伙伴聘用協(xié)議書
- 保險經(jīng)紀合作協(xié)議
- DB33T 2157-2018 公共機構綠色數(shù)據(jù)中心建設與運行規(guī)范
- 陜西、甘肅、青海、寧夏四省普通高中2024-2025學年學業(yè)水平選擇性考試適應性演練(含答案)
- 2024版體育賽事票務代理合同:賽事組織者與票務代理公司之間的合作協(xié)議3篇
- 醫(yī)院陪護管理制度
- 中國計量大學《微機原理及其應用》2021-2022學年第一學期期末試卷
- 《車控操作系統(tǒng)功能軟件架構及接口要求》
- 急性心力衰竭的緊急處理與護理
- 中國技能大賽-第45屆世界技能大賽全國選拔賽“水處理技術”項目技術工作文件
- 無菌物品的儲存與管理
- 固定資產(chǎn)折舊合同
- 寒區(qū)作戰(zhàn)傷員的護理
評論
0/150
提交評論