




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、第五章第五章 MCS-51系列單片機的接口與應(yīng)用系列單片機的接口與應(yīng)用 MCS-51單片機內(nèi)部集成了并行接口、串行接口、單片機內(nèi)部集成了并行接口、串行接口、定時計數(shù)器等接口電路。單片機通過接口與其它電路定時計數(shù)器等接口電路。單片機通過接口與其它電路設(shè)備相聯(lián)系,當(dāng)這些接口電路的數(shù)量或功能不能滿足設(shè)備相聯(lián)系,當(dāng)這些接口電路的數(shù)量或功能不能滿足系統(tǒng)要求時,需要進行系統(tǒng)要求時,需要進行I/O接口電路擴展。單片機常接口電路擴展。單片機常用擴展接口有可編程接口、顯示用擴展接口有可編程接口、顯示/鍵盤接口、數(shù)鍵盤接口、數(shù)/模轉(zhuǎn)模轉(zhuǎn)換接口,串行接口等多種換接口,串行接口等多種。第一節(jié)第一節(jié) 扳鍵開關(guān)、撥盤開關(guān)
2、、按鈕、鍵盤扳鍵開關(guān)、撥盤開關(guān)、按鈕、鍵盤與單片機的接口與單片機的接口一、扳鍵開關(guān)與單片機的接口一、扳鍵開關(guān)與單片機的接口 應(yīng)用扳鍵開關(guān)或鈕子開關(guān)類器件可將高電平或低電應(yīng)用扳鍵開關(guān)或鈕子開關(guān)類器件可將高電平或低電平經(jīng)單片機的平經(jīng)單片機的I/O引腳置入單片機,以實現(xiàn)操作分檔、引腳置入單片機,以實現(xiàn)操作分檔、參數(shù)設(shè)定等人機聯(lián)系的功能。參數(shù)設(shè)定等人機聯(lián)系的功能。 如圖如圖5-1是扳鍵類開關(guān)應(yīng)用的示例,根據(jù)是扳鍵類開關(guān)應(yīng)用的示例,根據(jù)S1-S8開關(guān)中開關(guān)中那一個引入高電平而轉(zhuǎn)去執(zhí)行相應(yīng)的工作程序。各開關(guān)那一個引入高電平而轉(zhuǎn)去執(zhí)行相應(yīng)的工作程序。各開關(guān)通過擴展輸入口通過擴展輸入口74LS244與與803
3、1的的P0口連接,開關(guān)合上口連接,開關(guān)合上時向時向P0口相應(yīng)引腳送低電平,反之開關(guān)打開時送高電平??谙鄳?yīng)引腳送低電平,反之開關(guān)打開時送高電平。 803174LS244+5VS1S8P0.0P0.7RDP1.0 1G2G圖圖5-1 扳鍵開關(guān)應(yīng)用示例扳鍵開關(guān)應(yīng)用示例讀扳鍵開關(guān)狀態(tài)程序段:讀扳鍵開關(guān)狀態(tài)程序段:CLR P1.0 ;準(zhǔn)備選通和讀入;準(zhǔn)備選通和讀入S1-S8狀態(tài)信息狀態(tài)信息MOVX A,R0 ;自;自P0口讀入口讀入S1-S8狀態(tài)信息狀態(tài)信息RRC A ;把;把P0.0移入高位移入高位JNC KS1 ;P0.0為低電平,轉(zhuǎn)為低電平,轉(zhuǎn)KS1LJMP KF1 ;P0.0為高電平,轉(zhuǎn)為高電平
4、,轉(zhuǎn)KF1執(zhí)行相應(yīng)程序執(zhí)行相應(yīng)程序KS1: RRC A ;P0.1為低電平,轉(zhuǎn)為低電平,轉(zhuǎn)KS2JNC KS2 ;P0.1為高電平,轉(zhuǎn)為高電平,轉(zhuǎn)KF2執(zhí)行相應(yīng)程序執(zhí)行相應(yīng)程序LJMP KF2 二、撥盤開關(guān)與單片機的接口撥盤開關(guān)與單片機的接口 常見的撥盤開關(guān)是常見的撥盤開關(guān)是BCDBCD撥盤開關(guān),撥動正面的撥盤,撥盤開關(guān),撥動正面的撥盤,可置一十進制數(shù)(在正面顯示該數(shù))并轉(zhuǎn)換成可置一十進制數(shù)(在正面顯示該數(shù))并轉(zhuǎn)換成BCDBCD碼(呈碼(呈現(xiàn)在背面現(xiàn)在背面8 8、4 4、2 2、1 1引腳上)而輸入計算機。在引腳上)而輸入計算機。在BCDBCD碼撥碼撥盤開關(guān)中,引腳盤開關(guān)中,引腳A A一般接高
5、電平,一般接高電平,8 8、4 4、2 2、1 1四個引腳原四個引腳原來為低電平,當(dāng)置某個十進制數(shù)時,撥盤的轉(zhuǎn)動將使引來為低電平,當(dāng)置某個十進制數(shù)時,撥盤的轉(zhuǎn)動將使引腳腳8 8、4 4、2 2、1 1某些引腳為高電平,其余仍為低電平。從某些引腳為高電平,其余仍為低電平。從而轉(zhuǎn)換成與該十進制數(shù)相當(dāng)?shù)亩D(zhuǎn)換成與該十進制數(shù)相當(dāng)?shù)腂CDBCD碼。碼。 BCD碼撥盤開關(guān)碼撥盤開關(guān)48A1251G2G74LS244P1.0RD十位撥盤開關(guān)十位撥盤開關(guān)個位撥盤開關(guān)個位撥盤開關(guān)AA82414182+5VP0.0P0.78031撥盤開關(guān)應(yīng)用示例撥盤開關(guān)應(yīng)用示例READ: CLR P1.0 ;準(zhǔn)備選通和讀入準(zhǔn)備選
6、通和讀入2位位BCD碼碼 MOVX A,R0 ;自;自P0口讀入口讀入2位位BCD碼碼 ANL A,#OFH ;取個位數(shù);取個位數(shù) MOV 20H,A ;存入片內(nèi);存入片內(nèi)20H單元單元 MOVX A,R0 ;重讀;重讀2位位BCD碼碼 ANL A,#0F0H ;取十位數(shù);取十位數(shù) SWAP A ;調(diào)整到低半字節(jié);調(diào)整到低半字節(jié) MOV 21H,A ;存入片內(nèi);存入片內(nèi)21H單元單元 RET三、按鈕與單片機的接口三、按鈕與單片機的接口 按鈕按下的短時間內(nèi)送出一個高或低電平,待手松按鈕按下的短時間內(nèi)送出一個高或低電平,待手松恢復(fù)原來的電平,但由于人手的抖動,所以應(yīng)用按鈕時恢復(fù)原來的電平,但由于人
7、手的抖動,所以應(yīng)用按鈕時常需考慮消抖措施,可采用常需考慮消抖措施,可采用RSRS觸發(fā)器。觸發(fā)器。 四、鍵盤與單片機的接口四、鍵盤與單片機的接口 1)鍵盤工作原理)鍵盤工作原理 鍵盤是由若干按鍵組成的開關(guān)矩陣鍵盤是由若干按鍵組成的開關(guān)矩陣 ,稱為矩陣式鍵,稱為矩陣式鍵盤或行列式鍵盤。用來盤或行列式鍵盤。用來輸入數(shù)據(jù)或命令輸入數(shù)據(jù)或命令 。 鍵盤接口應(yīng)有以下功能:鍵盤接口應(yīng)有以下功能: 鍵掃描功能,即檢測是否有鍵閉合;鍵掃描功能,即檢測是否有鍵閉合; 鍵識別功能,確定被閉合鍵所在行列位置;鍵識別功能,確定被閉合鍵所在行列位置; 消除按鍵抖動功能。消除按鍵抖動功能。 產(chǎn)生相應(yīng)的鍵的代碼(鍵值)功能;
8、產(chǎn)生相應(yīng)的鍵的代碼(鍵值)功能; 按鍵識別采用按鍵識別采用“逐行掃描逐行掃描”法。法。 5.1K4+5V8031P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7鍵盤工作原理鍵盤工作原理先判斷有無鍵按下先判斷有無鍵按下 行線輸出行線輸出00000000,然后輸入輸入列線狀態(tài),然后輸入輸入列線狀態(tài), 若沒有鍵按下,則列線狀態(tài)為全若沒有鍵按下,則列線狀態(tài)為全1 1( 1111 1111 );); 若有任一鍵按下,則列線狀態(tài)不為全(若有任一鍵按下,則列線狀態(tài)不為全(11111111););再確認(rèn)哪個鍵被按下再確認(rèn)哪個鍵被按下 行線逐行輸出行線逐行輸出0 0(如(如11101110),然
9、后輸入列線狀態(tài),),然后輸入列線狀態(tài), 若沒有鍵按下,則列線狀態(tài)為全若沒有鍵按下,則列線狀態(tài)為全1 1( 1111 1111 );); 若有任一鍵按下,則列線狀態(tài)不為全為若有任一鍵按下,則列線狀態(tài)不為全為1 1(如(如01110111,說明右,說明右 上角那個鍵被按下)上角那個鍵被按下)確定每個鍵的鍵值確定每個鍵的鍵值 負(fù)邏輯表示負(fù)邏輯表示-行列線數(shù)據(jù)直接組合,上例中的各鍵值分別為行列線數(shù)據(jù)直接組合,上例中的各鍵值分別為: 7777H、7B7BH、 7D7DH 、7E7EH、 B7H、BBH 、BDH、BEH D7H、DBH、 DDH、DEH E7H、EBH、 EDH、EEH前沿抖動前沿抖動后
10、沿抖動后沿抖動鍵按下鍵按下閉合穩(wěn)定閉合穩(wěn)定鍵釋放鍵釋放按鍵過程按鍵過程 在確認(rèn)有鍵按下時,要消除按鍵的抖動常采用軟件在確認(rèn)有鍵按下時,要消除按鍵的抖動常采用軟件延時延時20ms。74LS2442)鍵盤應(yīng)用示例)鍵盤應(yīng)用示例1G2GP1.0P1.1P1.2P1.3P2.7 RDP0.0P0.1P0.2P0.3S0S1S2S3+5V 先用鍵掃描功能,即檢測是否有鍵閉合;然后鍵識先用鍵掃描功能,即檢測是否有鍵閉合;然后鍵識別功能,確定被閉合鍵所在行列位置;確定好行列位置別功能,確定被閉合鍵所在行列位置;確定好行列位置后要消除抖動,最后是產(chǎn)生相應(yīng)的鍵的代碼(鍵值)功后要消除抖動,最后是產(chǎn)生相應(yīng)的鍵的代
11、碼(鍵值)功能。如圖,行線按能。如圖,行線按P1口低口低4位,列線經(jīng)位,列線經(jīng)74LS244擴展輸入擴展輸入口讀入口讀入P0口低口低4位。位。 鍵盤掃描程序:鍵盤掃描程序:KEY:MOV DPTR,#7FFFHMOV P1,#0F0HMOVX A,DPTRORL A,#0F0HCPL AJNZ INRET I N :A C A L L D E L AYMOV R2,#04HMOV R4,#7FHMOV R7,#0 SCAN:MOV A,R4 RL A MOV R4,A MOVX A,DPTR MOV R3,#04HNEXT:RRC AJNC FINDINC R7DJNZ R3,NEXTDJNZ
12、 R2,SCANRET第二節(jié)第二節(jié) 顯示器與單片機的接口顯示器與單片機的接口 顯示器是普遍使用的輸出器件。顯示器中常用的是顯示器是普遍使用的輸出器件。顯示器中常用的是LED(發(fā)光二極管)和(發(fā)光二極管)和LED數(shù)碼管,數(shù)碼管,LEDLED多用于信號指示,多用于信號指示,數(shù)碼管用于數(shù)據(jù)顯示。數(shù)碼管用于數(shù)據(jù)顯示。一、一、LEDLED與單片機的接口與單片機的接口 下圖是用擴展輸出口下圖是用擴展輸出口74LS37774LS377來點亮來點亮LEDLED,作信號指,作信號指示,即信號燈。示,即信號燈。 74LS377P0.0P0.78031P2.6WRGCLKGNDLED信號燈應(yīng)用示例信號燈應(yīng)用示例點亮
13、信號燈程序為:點亮信號燈程序為:MOV DPTR,#0BFFFHSETB A.0MOVX DPTR,A熄滅信號燈程序為:熄滅信號燈程序為:MOV DPTR,#0BFFFHCLR A.0MOVX DPTR,A二、數(shù)碼管與單片機的接口二、數(shù)碼管與單片機的接口1 1)、)、 LEDLED結(jié)構(gòu)與原理結(jié)構(gòu)與原理DpgfedcbaD7 D6 D5 D4 D3 D2 D1 D0+5VDp g f e d c b a共陽極共陽極 如共陽極時,輸出如共陽極時,輸出1 1 1 1 1 0 0 0 即即 F8H時,顯示時,顯示“7”。字型表見書。字型表見書P127表表3-11。Dp g f e d c b a共陰極
14、共陰極abcdefg2)靜態(tài))靜態(tài)LED 亮度大,硬件、軟件相對簡單,可以用亮度大,硬件、軟件相對簡單,可以用 并行或串行方式。靜態(tài)掃描一般采用硬并行或串行方式。靜態(tài)掃描一般采用硬 件譯碼。件譯碼。 下圖是下圖是LED數(shù)碼管靜態(tài)掃描顯示應(yīng)用示例,采用共數(shù)碼管靜態(tài)掃描顯示應(yīng)用示例,采用共陰陰LED數(shù)碼管,并設(shè)待顯示的十位、個位數(shù)碼管,并設(shè)待顯示的十位、個位BCD碼在片內(nèi)碼在片內(nèi)RAM30H單元,千位、百位單元,千位、百位BCD碼在片內(nèi)碼在片內(nèi)RAM31H單元。單元。顯示程序為:顯示程序為:DISP:DISP: MOV R0,#30H MOV R0,#30H MOV A,R0 MOV A,R0 M
15、OV DPTR,#7000H MOV DPTR,#7000H MOVX DPTR,A MOVX DPTR,A INC R0 INC R0 MOV A,R0 MOV A,R0 MOV DPTR,#0BFFFH MOV DPTR,#0BFFFH MOVX DPTR,A MOVX DPTR,A RET RET74LS377(2)74LS377(1)A B C DA B C DA B C DA B C Da.ga.ga.ga.gCD4511GGP2.6P2.7CLKCLKWRP0.0P0.78031LED數(shù)碼管靜態(tài)掃描顯示應(yīng)用示例數(shù)碼管靜態(tài)掃描顯示應(yīng)用示例3)動態(tài))動態(tài)LED 分時使各數(shù)碼管輪流點亮,
16、硬件簡單。分時使各數(shù)碼管輪流點亮,硬件簡單。 動態(tài)掃描一般采用軟件譯碼。動態(tài)掃描一般采用軟件譯碼。 下圖是通過下圖是通過81558155擴展擴展I/OI/O接口,接口,LEDLED數(shù)碼管動態(tài)掃描顯數(shù)碼管動態(tài)掃描顯示應(yīng)用實例。設(shè)待顯示的十位、個位示應(yīng)用實例。設(shè)待顯示的十位、個位BCDBCD碼和千位、百位碼和千位、百位BCDBCD碼分別在片內(nèi)碼分別在片內(nèi)RAM30HRAM30H、31H31H單元。單元。 設(shè)顯示的動態(tài)掃描按時間定時進行,每設(shè)顯示的動態(tài)掃描按時間定時進行,每20ms20ms掃描一次,掃描一次,用定時器用定時器/ /計數(shù)器計數(shù)器0 0定時,令其工作在方式定時,令其工作在方式1 1,相應(yīng)
17、的顯示,相應(yīng)的顯示程序為:程序為: 8155驅(qū)驅(qū)動動驅(qū)驅(qū)動動PB0. .PB7PC3PC2PC1PC0P0.0P0.7AD0AD7P1.3CEALEALEP1.4IO/MRDRDWRWRRESETRESET8031LEDLED數(shù)碼管動態(tài)掃描顯示應(yīng)用實例數(shù)碼管動態(tài)掃描顯示應(yīng)用實例排阻排阻+5v程序如下:程序如下:CLR P1.3SETB P1.4MOV R1,#00HMOV A,#0EHMOVX R1,AMOV TMOD,#01HMOV TH0,#0B1HMOV THL,#0E0HSETB TR0SETB EASETB ET0 ORG 000BHAJMP DISPDISP: MOV TH0,#0
18、B1H MOV TH0,#0E0H PUSH A PUSH PSW SETB PSW.3 MOV R0,#30H MOV R2,#0FEH MOV R3,#02H CLR P1.3 SETB P1.4 MOV DPTR,#TABLOOP: MOV R1,#02H MOV A,R0 ANL A,#0FH MOVC A,A+DPTR MOVX R1,AMOV R1,#03HMOV A,R2MOVX R1,AACALL DELAYRL AMOV R2,AMOV R1,#02HMOV A,R0SWAP AANL A,#0FHMOVC A,A+DPTRMOV R1,AMOV R1,#03HMOV A,R
19、2 MOVX R1,A ACALL DELAY RL AMOV R2,AINC R0DJNZ R3,LOOPMOV A,#0FFHMOVX R1,APOP PSWPOP ARETITAB: DB3FH,06H,5BH,4FH DB 66H6DH,7DH,07H DB 7FH,67H第三節(jié)第三節(jié) 鍵盤顯示接口芯片鍵盤顯示接口芯片8279 對鍵盤自動掃描,識別閉合鍵的鍵號,完成顯示器對鍵盤自動掃描,識別閉合鍵的鍵號,完成顯示器的動態(tài)顯示。的動態(tài)顯示。 8279內(nèi)部有兩個緩沖器,一個內(nèi)部有兩個緩沖器,一個8字節(jié)的字節(jié)的FIFO鍵盤鍵盤RAM和一個和一個16字節(jié)的顯示字節(jié)的顯示RAM。顯示數(shù)據(jù)時只要將
20、待。顯示數(shù)據(jù)時只要將待顯示數(shù)據(jù)的段碼寫入顯示顯示數(shù)據(jù)的段碼寫入顯示RAM即可;當(dāng)有鍵閉合時,即可;當(dāng)有鍵閉合時,8279會自動執(zhí)行去抖、得到鍵值、等待按鍵釋放等操作,會自動執(zhí)行去抖、得到鍵值、等待按鍵釋放等操作,最后將鍵值存入最后將鍵值存入FIFO鍵盤鍵盤RAM中,程序只需從中,程序只需從FIFO中中讀取鍵值即可,編程十分簡單。讀取鍵值即可,編程十分簡單。 8279用用A0來區(qū)分信息特征,當(dāng)來區(qū)分信息特征,當(dāng)A0=1時,讀向時,讀向CPU的是狀態(tài)字,自的是狀態(tài)字,自CPU寫入的是命令字;當(dāng)寫入的是命令字;當(dāng)A0=0時,讀寫時,讀寫的都是數(shù)據(jù)。的都是數(shù)據(jù)。1、8279內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)數(shù)據(jù)總線數(shù)據(jù)
21、總線緩沖器緩沖器I/O控制控制FIFO RAM狀態(tài)寄存器狀態(tài)寄存器顯示地址顯示地址寄存器寄存器16 8位位顯示顯示RAM控制及定時控制及定時寄存器寄存器8 8位位FIFO RAM鍵盤鍵盤消抖與控制消抖與控制輸入緩沖器輸入緩沖器顯示寄存器顯示寄存器控制及定時控制及定時掃描計數(shù)器掃描計數(shù)器CLK RESET D0D7RDWRCSA0IRQ內(nèi)內(nèi)部部總總線線OUTA3OUTA0OUTB3OUTB0BDSL3SL0RL7RL0SHIFTCNTL/STB8279芯片的內(nèi)部結(jié)構(gòu)圖芯片的內(nèi)部結(jié)構(gòu)圖(1)數(shù)據(jù)總線緩沖器和)數(shù)據(jù)總線緩沖器和I/O控制控制同單片機的數(shù)據(jù)總線相連同單片機的數(shù)據(jù)總線相連 CS RD有效
22、時:有效時:CPU讀數(shù)據(jù)總線緩沖器讀數(shù)據(jù)總線緩沖器CS WR有效時:有效時:CPU寫數(shù)據(jù)到數(shù)據(jù)總線緩沖器寫數(shù)據(jù)到數(shù)據(jù)總線緩沖器A0=1時:讀向時:讀向CPU的是狀態(tài)字,寫入的是命令字的是狀態(tài)字,寫入的是命令字A0=0時:讀寫都是數(shù)據(jù)時:讀寫都是數(shù)據(jù)(2)控制及定時寄存器和控制及定時)控制及定時寄存器和控制及定時 接收接收CPU送來的命令字(鍵盤及顯示器的工作方式),送來的命令字(鍵盤及顯示器的工作方式),產(chǎn)生控制信號;定時器是一個可編程的產(chǎn)生控制信號;定時器是一個可編程的5位計數(shù)器,對外位計數(shù)器,對外部時鐘頻率進行分頻,產(chǎn)生部時鐘頻率進行分頻,產(chǎn)生100kHz的內(nèi)部定時信號。的內(nèi)部定時信號。(
23、3)掃描計數(shù)器)掃描計數(shù)器 外部譯碼方式:計數(shù)器以二進制方式計數(shù),計數(shù)狀態(tài)外部譯碼方式:計數(shù)器以二進制方式計數(shù),計數(shù)狀態(tài)從掃描線從掃描線SL3SL0輸出,經(jīng)外部譯碼器譯出輸出,經(jīng)外部譯碼器譯出16位掃描線。位掃描線。 譯碼方式:掃描計數(shù)器低兩位譯碼后從譯碼方式:掃描計數(shù)器低兩位譯碼后從SL3SL0輸出。輸出。作為作為4 8鍵盤和鍵盤和4位顯示器的掃描信號。位顯示器的掃描信號。(4)輸入緩沖器和鍵盤消抖控制)輸入緩沖器和鍵盤消抖控制 完成對鍵盤的自動掃描,鎖存完成對鍵盤的自動掃描,鎖存RL7RL0的鍵輸入信的鍵輸入信息,搜索閉合鍵,去除鍵的拌動,并將鍵輸入數(shù)據(jù)寫入息,搜索閉合鍵,去除鍵的拌動,并
24、將鍵輸入數(shù)據(jù)寫入內(nèi)部內(nèi)部FIFO RAM。(5)FIFO RAM和狀態(tài)寄存器和狀態(tài)寄存器 8個個FIFO 鍵輸入緩沖器,儲存鍵入的數(shù)據(jù)信息。狀鍵輸入緩沖器,儲存鍵入的數(shù)據(jù)信息。狀態(tài)寄存器存放狀態(tài)字。態(tài)寄存器存放狀態(tài)字。RAM中有數(shù)據(jù)時,中有數(shù)據(jù)時,IRQ變高。變高。(6)顯示)顯示RAM和地址寄存器和地址寄存器 16個字節(jié)顯示數(shù)據(jù)緩沖器,個字節(jié)顯示數(shù)據(jù)緩沖器,CPU將段數(shù)據(jù)寫入顯示將段數(shù)據(jù)寫入顯示緩沖器,緩沖器,8279自動對顯示器掃描,將其內(nèi)部顯示緩沖器自動對顯示器掃描,將其內(nèi)部顯示緩沖器中的數(shù)據(jù)在顯示器上顯示出來。地址寄存器存放中的數(shù)據(jù)在顯示器上顯示出來。地址寄存器存放CPU正正在讀或?qū)懺?/p>
25、在讀或?qū)懺揜AM某單元地址。某單元地址。2、8279引腳功能引腳功能1)D7D0 雙向數(shù)據(jù)總線,用于傳送雙向數(shù)據(jù)總線,用于傳送CPU與與8279間間命令字、狀態(tài)與數(shù)據(jù)。命令字、狀態(tài)與數(shù)據(jù)。2)CS 片選信號,低電平選中片選信號,低電平選中8279。3)A0 區(qū)分信息的特征位區(qū)分信息的特征位 A0=1,I/O為命令和狀態(tài)為命令和狀態(tài) A0=0,I/O信息都是數(shù)據(jù)信息都是數(shù)據(jù)4)RD、WR 讀和寫選通信號線,低電平有效讀和寫選通信號線,低電平有效5)IRQ 中斷請求信號輸出端。當(dāng)中斷請求信號輸出端。當(dāng)FIFO RAM中有中有數(shù)據(jù)時,數(shù)據(jù)時,IRQ 變?yōu)楦唠娖健W優(yōu)楦唠娖健?)RL7RL0 鍵盤信息
26、輸入端。平時為高電平,當(dāng)鍵盤信息輸入端。平時為高電平,當(dāng)有鍵按下時,其中一條變?yōu)榈碗娖健S墟I按下時,其中一條變?yōu)榈碗娖健?)SL3SL0 掃描輸出線。用于對鍵盤和顯示器進掃描輸出線。用于對鍵盤和顯示器進行掃描。行掃描。8)OUTA3OUTA0、OUTB3OUTB0 顯示段數(shù)據(jù)顯示段數(shù)據(jù)輸出線。輸出線。9)BD 顯示熄滅控制線。顯示信息切換時,顯示器顯示熄滅控制線。顯示信息切換時,顯示器不亮。不亮。10)RESET 復(fù)位,高電平有效。復(fù)位,高電平有效。11)SHIFT、CNTL/STB 控制輸入線??刂戚斎刖€。SHIFT為換為換檔,檔,CNTL為控制,為控制,STB為選通。為選通。12)CLK
27、外部時鐘輸入端。外部時鐘輸入端。8279內(nèi)部時鐘由此經(jīng)定內(nèi)部時鐘由此經(jīng)定時器分頻產(chǎn)生。內(nèi)部時鐘時器分頻產(chǎn)生。內(nèi)部時鐘=外部時鐘外部時鐘/定時器值。定時器值。13)Vcc、GND +5V電源和地。電源和地。 8279IRQD0D7RDWRCSA0RESETCLKRL7RL0SHIFTCNTL/STBSL3SL0OUTA3OUTA0OUTB3OUTB0BDCPU接口接口鍵盤鍵盤數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)顯示顯示8279引腳功能引腳功能3、8279命令字命令字1)鍵盤)鍵盤/顯示方式命令字顯示方式命令字D7D6D5D4D3D2D1D0000DDKKK特征位特征位顯示方式顯示方式選擇位選擇位鍵盤工作方式鍵盤工作
28、方式選擇位選擇位DVCC-52196S實驗上顯示從左端輸入實驗上顯示從左端輸入編碼、譯碼指編碼、譯碼指SL3SL0譯碼方式譯碼方式雙鍵封鎖:只允許按一個鍵雙鍵封鎖:只允許按一個鍵N鍵依次讀出:多個鍵同時按時,依次送入鍵依次讀出:多個鍵同時按時,依次送入FIFO RAM中中2)分頻命令字)分頻命令字D7D6D5D4D3D2D1D0001PPPPP 用于設(shè)定分頻系數(shù),其值為用于設(shè)定分頻系數(shù),其值為131,將外部,將外部CLK信號信號分頻,得到以取得分頻,得到以取得100kHz的內(nèi)部時鐘信號。的內(nèi)部時鐘信號。 例如:例如:CLK輸入時鐘頻率為輸入時鐘頻率為1MHz,要獲得,要獲得100kHz的內(nèi)部時
29、鐘信號,則需要的內(nèi)部時鐘信號,則需要20分頻,即:分頻,即:PPPPP=10100B=20D特征位特征位分頻系數(shù)分頻系數(shù)3)讀)讀FIFO RAM命令命令D7D6D5D4D3D2D1D0010AIAAAFIFO RAM起始地址起始地址3位正好可以表示位正好可以表示8個個FIFO RAM無意義無意義1:地址自動加:地址自動加10:只讀一個單元:只讀一個單元 CPU按先進先出的規(guī)律讀鍵入數(shù)據(jù)。在讀按先進先出的規(guī)律讀鍵入數(shù)據(jù)。在讀FIFO RAM前,先寫入此命令字。前,先寫入此命令字。特征位特征位4)讀顯示)讀顯示RAM命令字命令字D7D6D5D4D3D2D1D0011AIAAAA顯示顯示RAM地址
30、地址命令特征位命令特征位1:地址自動加:地址自動加10:只讀一個單元:只讀一個單元在讀顯示在讀顯示 RAM前,先寫入此命令字。前,先寫入此命令字。5)寫顯示)寫顯示RAM命令命令D7D6D5D4D3D2D1D0100AIAAAA要寫的起始地址要寫的起始地址命令特征位命令特征位1:地址自動加:地址自動加10:只讀一個單元:只讀一個單元6)屏蔽與消隱命令)屏蔽與消隱命令D7D6D5D4D3D2D1D0101IWAIWBBLABLB命令特征位命令特征位 IWA和和IWB分別用以禁止寫分別用以禁止寫A組和組和B組顯示組顯示RAM。OUTA3OUTA0和和OUTB3OUTB0獨立作為兩個半字節(jié)獨立作為兩
31、個半字節(jié)輸出時,可改寫顯示輸出時,可改寫顯示RAM中低半字節(jié)而不影響高半字節(jié)中低半字節(jié)而不影響高半字節(jié)的狀態(tài)(的狀態(tài)(IWA=1),反之,),反之,IWB=1時可改寫高半字節(jié)而時可改寫高半字節(jié)而不影響低半字節(jié)。不影響低半字節(jié)。 D1和和D0為為1可分別熄滅高半字節(jié)和低半字節(jié)。可分別熄滅高半字節(jié)和低半字節(jié)。BL=0時恢復(fù)顯示。時恢復(fù)顯示。7)清除)清除RAM內(nèi)容命令字內(nèi)容命令字D7D6D5D4D3D2D1D0110CDCDCDCFCA命令特征位命令特征位清除方式清除方式將清除命令命令寫入將清除命令命令寫入8279,顯示緩沖器呈初態(tài)(暗碼)。,顯示緩沖器呈初態(tài)(暗碼)。4、8279狀態(tài)字狀態(tài)字 8
32、279狀態(tài)字用于指出狀態(tài)字用于指出FIFO RAM中字符個數(shù)和是否中字符個數(shù)和是否出錯,格式如下:出錯,格式如下: D7D6D5D4D3D2D1D0DUS/EOUFNNNFIFO中數(shù)據(jù)個數(shù)中數(shù)據(jù)個數(shù)為為1時,時,F(xiàn)IFO RAM已滿(存入已滿(存入8個數(shù)據(jù))個數(shù)據(jù))FULLFIFO RAM已空已空置置1FIFO RAM溢出溢出8279輸入數(shù)據(jù)格式輸入數(shù)據(jù)格式 在鍵掃描方式中,鍵輸入數(shù)據(jù)格式如下:在鍵掃描方式中,鍵輸入數(shù)據(jù)格式如下:D7D6D5D4D3D2D1D0CNTLSHIFT掃描掃描回送回送CNTL鍵狀態(tài)鍵狀態(tài)SHIFT鍵狀態(tài)鍵狀態(tài)指出鍵所在行號指出鍵所在行號指出鍵所在列號指出鍵所在列號R
33、L7RL0狀態(tài)狀態(tài)5、8279應(yīng)用示例應(yīng)用示例8 8鍵盤鍵盤38譯碼器譯碼器驅(qū)動器驅(qū)動器16位數(shù)碼管位數(shù)碼管顯示顯示驅(qū)動器驅(qū)動器416譯碼器譯碼器11P2.7ALEP0INT1RDWRRESET8031GOE74LS373CSCLKA0D7D0IRQRDWRRESETBDSL3SL03SHIFTCNTLRL7RL088888SL2SL0SL3SL04161688279應(yīng)用示例應(yīng)用示例OUTA3OUTA0OUTB3OUTB0 圖示電路中圖示電路中8279的命令口地址為:的命令口地址為:7FFFH;數(shù)據(jù)口;數(shù)據(jù)口地址為:地址為:7FFEH。 初始化初始化8279,在第一位,在第一位LED顯示器上顯
34、示字符顯示器上顯示字符“P”,表示正,表示正常工作。常工作。START:MOV DPTR,#7FFFH:置控制字地址:置控制字地址 MOV A,#14H;內(nèi)部;內(nèi)部20分頻,時鐘為分頻,時鐘為100kHz MOVX DPTR,A;置分頻控制字;置分頻控制字 MOV A,#0DOH;清顯示器命令字送;清顯示器命令字送A MOVX DPTR,A;滅顯示器;滅顯示器 ACALL DELAY;調(diào);調(diào)10ms延時程序延時程序 MOV A,#08H;16 8字符顯示左端輸入,雙鍵互鎖,字符顯示左端輸入,雙鍵互鎖, MOVX DPTR,A;賦控制字;賦控制字 MOV A,#80H;顯示;顯示RAM地址為地址
35、為0 MOVX DPTR,A;賦控制字;賦控制字 MOV A,#0C8H;置字符;置字符“P”的段碼的段碼C8H MOV DPTR,#7FFEH;指向數(shù)據(jù)口地址;指向數(shù)據(jù)口地址 MOVX DPTR,A;顯示字符;顯示字符P鍵盤顯示接口芯片鍵盤顯示接口芯片8279使用電路使用電路第四節(jié)第四節(jié) 行程開關(guān)、繼電器、晶閘管行程開關(guān)、繼電器、晶閘管與單片機的接口與單片機的接口 為了屏蔽干擾,兩者電路完全隔離為了屏蔽干擾,兩者電路完全隔離;通過光耦器件與通過光耦器件與單片機相連。單片機相連。一、行程開關(guān)、繼電器觸點與單片機的接口一、行程開關(guān)、繼電器觸點與單片機的接口 E1E2送單片機送單片機某某I/O引腳
36、引腳10uF1k10k10k行程開關(guān)常開觸點接口示例行程開關(guān)常開觸點接口示例二、繼電器線圈與單片機的接口二、繼電器線圈與單片機的接口8031E1E2VccP1.0VssK繼電器線圈與單片機接口示例繼電器線圈與單片機接口示例三、晶閘管與單片機的接口三、晶閘管與單片機的接口8031E2VccP1.0VssE1 L負(fù)載負(fù)載晶閘管與單片機的接口示例晶閘管與單片機的接口示例第五節(jié)第五節(jié) A/D、D/A轉(zhuǎn)換芯片與單片機的接口轉(zhuǎn)換芯片與單片機的接口 在單片機的實時控制和智能儀表等應(yīng)用系統(tǒng)中,常在單片機的實時控制和智能儀表等應(yīng)用系統(tǒng)中,常需要將一些連續(xù)變化的物理量(例如溫度、壓力、流量、需要將一些連續(xù)變化的物
37、理量(例如溫度、壓力、流量、速度等)轉(zhuǎn)換成數(shù)字量,以便送入計算機內(nèi)進行加工處速度等)轉(zhuǎn)換成數(shù)字量,以便送入計算機內(nèi)進行加工處理。計算機處理的結(jié)果也常需要轉(zhuǎn)換成數(shù)字量,驅(qū)動相理。計算機處理的結(jié)果也常需要轉(zhuǎn)換成數(shù)字量,驅(qū)動相應(yīng)的執(zhí)行機構(gòu),實現(xiàn)對被控對象的控制。應(yīng)的執(zhí)行機構(gòu),實現(xiàn)對被控對象的控制。 實現(xiàn)模擬量轉(zhuǎn)換成數(shù)字量的器件稱為模數(shù)(實現(xiàn)模擬量轉(zhuǎn)換成數(shù)字量的器件稱為模數(shù)(A/D)轉(zhuǎn)換器(轉(zhuǎn)換器(ADC),), 數(shù)字量轉(zhuǎn)換成模擬量的器件稱為數(shù)數(shù)字量轉(zhuǎn)換成模擬量的器件稱為數(shù)/模(模(D/A)轉(zhuǎn)換)轉(zhuǎn)換器(器(DAC)。)。 單片微型單片微型計算機計算機當(dāng)當(dāng)?shù)氐毓δ苣蹹/A被控實體被控實體傳感器傳感器
38、變送器變送器A/D多多路路開開關(guān)關(guān)單片機和被控實體間的接口示意圖單片機和被控實體間的接口示意圖 被控實體的過程信號可以電量(如:電流、電被控實體的過程信號可以電量(如:電流、電壓等)也可以非電量(如溫度、壓力等),其數(shù)值壓等)也可以非電量(如溫度、壓力等),其數(shù)值是隨時間連續(xù)變化的。過程信號由變送器和各類傳是隨時間連續(xù)變化的。過程信號由變送器和各類傳感器變換成相應(yīng)的模擬電量,然后經(jīng)圖中多路開關(guān)感器變換成相應(yīng)的模擬電量,然后經(jīng)圖中多路開關(guān)匯集給匯集給A/D轉(zhuǎn)換器,再由轉(zhuǎn)換器,再由A/D轉(zhuǎn)換器轉(zhuǎn)換成相應(yīng)的轉(zhuǎn)換器轉(zhuǎn)換成相應(yīng)的數(shù)字量送給單片機。單片機對過程信息進行運算和數(shù)字量送給單片機。單片機對過程信
39、息進行運算和處理,把處理后的數(shù)字量送給處理,把處理后的數(shù)字量送給D/A轉(zhuǎn)換器,變換成轉(zhuǎn)換器,變換成相應(yīng)模擬量對被控實體實施控制和調(diào)整,使之處于相應(yīng)模擬量對被控實體實施控制和調(diào)整,使之處于最佳狀態(tài)下工作。上述分析表明:最佳狀態(tài)下工作。上述分析表明:A/D轉(zhuǎn)換器在單轉(zhuǎn)換器在單片機控制系統(tǒng)中主要用于數(shù)據(jù)采集,提供被控對象片機控制系統(tǒng)中主要用于數(shù)據(jù)采集,提供被控對象的各種實時參數(shù),以便單片機對被控對象進行監(jiān)視;的各種實時參數(shù),以便單片機對被控對象進行監(jiān)視;D/A轉(zhuǎn)換器用于模擬控制,通過機械或電氣手段來轉(zhuǎn)換器用于模擬控制,通過機械或電氣手段來對被控對象進行調(diào)整和控制。對被控對象進行調(diào)整和控制。 一、一、
40、A/D轉(zhuǎn)換芯片與單片機的接口轉(zhuǎn)換芯片與單片機的接口1 1、ADC0809ADC0809內(nèi)部結(jié)構(gòu)及引腳功能內(nèi)部結(jié)構(gòu)及引腳功能 ADC0809ADC0809是是8 8位、逐次比較式位、逐次比較式A/DA/D轉(zhuǎn)換芯片,具有地轉(zhuǎn)換芯片,具有地址鎖存控制的址鎖存控制的8 8路模擬開關(guān),應(yīng)用單一路模擬開關(guān),應(yīng)用單一+5V+5V電源,其模擬電源,其模擬量輸入電壓范圍為量輸入電壓范圍為0 05V5V,對應(yīng)的數(shù)字量輸出為,對應(yīng)的數(shù)字量輸出為0000FFHFFH,轉(zhuǎn)換時間為轉(zhuǎn)換時間為100us100us。其結(jié)構(gòu)框圖如圖所示:。其結(jié)構(gòu)框圖如圖所示: ADC0809ADC0809的結(jié)構(gòu)框圖的結(jié)構(gòu)框圖8路路模擬量模擬量
41、開關(guān)開關(guān)地址地址鎖存與鎖存與譯碼譯碼8位位A/D轉(zhuǎn)換器轉(zhuǎn)換器三態(tài)三態(tài)輸出輸出鎖存器鎖存器STARTCLKIN0IN0 IN7IN7D0D0 D7D7ADDCADDBADDAALEVR(+)VR(-)EOCOEEOC ADC0809由八路模擬開關(guān)、地址鎖存與譯碼器、比由八路模擬開關(guān)、地址鎖存與譯碼器、比較器、較器、256電阻階梯樹狀開關(guān)、逐次副近式寄存器電阻階梯樹狀開關(guān)、逐次副近式寄存器SAR、控制電路和三態(tài)輸出鎖存器等組成。控制電路和三態(tài)輸出鎖存器等組成。 (1)八路模擬開關(guān)及地址鎖存與譯碼器)八路模擬開關(guān)及地址鎖存與譯碼器 八路模擬開關(guān)用于輸入八路模擬開關(guān)用于輸入IN0IN7上八路模擬電壓。
42、上八路模擬電壓。地址鎖存和譯碼器在地址鎖存和譯碼器在ALE信號控制下可以鎖存信號控制下可以鎖存ADDA、ADDB、ADDC上地址信息,經(jīng)譯碼后控制上地址信息,經(jīng)譯碼后控制IN0IN7上上哪一路模擬電壓送入比較器。例如:當(dāng)哪一路模擬電壓送入比較器。例如:當(dāng)ADDA、ADDB、ADDC上均為低電平上均為低電平0以及以及ALE為高電平時,地址鎖存和為高電平時,地址鎖存和譯碼器輸出使譯碼器輸出使IN0上模擬電壓送到比較器輸入端上模擬電壓送到比較器輸入端VIN。(2)三態(tài)輸出鎖存器和控制電路)三態(tài)輸出鎖存器和控制電路 三態(tài)輸出鎖鎖存器用于鎖存三態(tài)輸出鎖鎖存器用于鎖存A/DA/D轉(zhuǎn)換后的數(shù)字量,轉(zhuǎn)換后的數(shù)
43、字量,CPUCPU使使OEOE引腳變?yōu)楦唠娖骄涂梢詮囊_變?yōu)楦唠娖骄涂梢詮摹叭龖B(tài)輸出鎖存器三態(tài)輸出鎖存器”取取走走A/DA/D轉(zhuǎn)換后的數(shù)字量??刂齐娐酚糜诳刂妻D(zhuǎn)換后的數(shù)字量??刂齐娐酚糜诳刂艫DC0809ADC0809的操的操作過程。作過程。 2、引腳功能、引腳功能ADC0809采用雙列直插式封裝,共有采用雙列直插式封裝,共有28條引腳,各引腳條引腳,各引腳功能如下:功能如下:(1)IN0IN7 8路模擬量輸入端。在多路開關(guān)控制下,路模擬量輸入端。在多路開關(guān)控制下,任一瞬間只能有一路模擬量經(jīng)相就通道輸入到任一瞬間只能有一路模擬量經(jīng)相就通道輸入到A/D轉(zhuǎn)換轉(zhuǎn)換器中的比較器。器中的比較器。(2)D
44、7D0 8位數(shù)字量輸出端,可直接接入單片機的位數(shù)字量輸出端,可直接接入單片機的數(shù)據(jù)總線。數(shù)據(jù)總線。(3)ALE 地址鎖存信號輸入端,該信號的上升沿可將地址鎖存信號輸入端,該信號的上升沿可將地址選擇信號地址選擇信號ADDA、ADDB、ADDC鎖入地址寄存器鎖入地址寄存器內(nèi)。內(nèi)。 4)START 啟動啟動A/D轉(zhuǎn)換信號輸入端,該信號的上升沿轉(zhuǎn)換信號輸入端,該信號的上升沿用以清除用以清除ADC內(nèi)部寄存器,下降沿用以啟動內(nèi)部寄存器,下降沿用以啟動A/D轉(zhuǎn)換器轉(zhuǎn)換器工作。工作。(5)EOC 轉(zhuǎn)換結(jié)束信號輸出端。轉(zhuǎn)換結(jié)束后該端由低轉(zhuǎn)換結(jié)束信號輸出端。轉(zhuǎn)換結(jié)束后該端由低電平變?yōu)楦唠娖健k娖阶優(yōu)楦唠娖?。?
45、6)OE OE 輸出允許控制端,高電平有效,該信號用以輸出允許控制端,高電平有效,該信號用以打開三態(tài)數(shù)據(jù)輸出鎖存器,將轉(zhuǎn)換后的打開三態(tài)數(shù)據(jù)輸出鎖存器,將轉(zhuǎn)換后的8 8位數(shù)據(jù)送至單位數(shù)據(jù)送至單片機的數(shù)據(jù)總線上。片機的數(shù)據(jù)總線上。(7 7)CLOCK CLOCK 轉(zhuǎn)換定時時鐘輸入端,它的頻率決定了轉(zhuǎn)換定時時鐘輸入端,它的頻率決定了A/DA/D轉(zhuǎn)換器的轉(zhuǎn)換速度。時鐘頻率不能高于轉(zhuǎn)換器的轉(zhuǎn)換速度。時鐘頻率不能高于640kHz640kHz,也,也不能低于不能低于100kHz100kHz。(8 8)V VREFREF(+ +)、V VREFREF() A/DA/D轉(zhuǎn)換器參考電壓的正負(fù)端。轉(zhuǎn)換器參考電壓的正
46、負(fù)端。(9 9)V VCCCC、GND +5VGND +5V電源及地電源及地 (9)ADDA、ADDB、ADDC 多路開關(guān)地址選擇輸入多路開關(guān)地址選擇輸入端,其取值與通道對應(yīng)關(guān)系如下表:端,其取值與通道對應(yīng)關(guān)系如下表: 選能輸入通道選能輸入通道ADDCADDBADDAIN0000IN1001IN2010IN3011IN4100IN5101IN6110IN71113、ADC0809與與MCS51系列單片機的接口系列單片機的接口 如圖,由于如圖,由于8031ALE信號的頻率較高,故先經(jīng)信號的頻率較高,故先經(jīng)74LS90五分頻,再接到五分頻,再接到ADC0809的的CLD端,轉(zhuǎn)換結(jié)束后,端,轉(zhuǎn)換結(jié)束
47、后,將向?qū)⑾?031發(fā)中斷請求信號。設(shè)進入采樣程序后發(fā)中斷請求信號。設(shè)進入采樣程序后8個通道都個通道都依次選通一次,即采樣次數(shù)為依次選通一次,即采樣次數(shù)為8,轉(zhuǎn)換所得的數(shù)字量按序,轉(zhuǎn)換所得的數(shù)字量按序存于片內(nèi)存于片內(nèi)RAM3037H單元;單元;8次采樣是否完成以標(biāo)志位次采樣是否完成以標(biāo)志位F0是否建起為標(biāo)志,如未完成,單片機將反復(fù)執(zhí)行是否建起為標(biāo)志,如未完成,單片機將反復(fù)執(zhí)行JBC F0,ELSE 與與 SJMP NEXT 這兩條指令,以等待每一次這兩條指令,以等待每一次采樣、轉(zhuǎn)換的完成并進入中斷服務(wù)程序。采樣、轉(zhuǎn)換的完成并進入中斷服務(wù)程序。 74LS90DB7DB0.ADDCADDBADDA
48、11 INT011 EOCOESTART ALECLKIN0IN7ADC08098031P0ALERDWR88843A2A0A7G74LS373BQADC0809應(yīng)用示例應(yīng)用示例EPROM相應(yīng)程序為相應(yīng)程序為:(中斷方式):(中斷方式) MOV R0MOV R0,#30H#30H MOV R1 MOV R1,#78H#78H MOV R2 MOV R2,#08H#08H MOVX R1 MOVX R1,A A SETB EA SETB EA SETB EX0 SETB EX0 CLR F0 CLR F0NEXTNEXT:JBC F0JBC F0,ELSEELSE SJMP NEXT SJMP
49、NEXT ELSE ELSE: ORG 0003H LJMP TRANSTRANS:MOVX A,R1 MOV R0,A DJNZ R2,INPUT SJMP DONEINPUT: INC R0 INC R1 MOVX R1,A RETIDONE: SETB F0 RETI MAIN:MOV R0, #30H ;置數(shù)據(jù)區(qū)首地址;置數(shù)據(jù)區(qū)首地址 查詢方式程序查詢方式程序-8路模擬信號輪流采樣一次,并將轉(zhuǎn)換路模擬信號輪流采樣一次,并將轉(zhuǎn)換結(jié)果分別存入內(nèi)部結(jié)果分別存入內(nèi)部RAM 30H37H連續(xù)連續(xù)8個單元中。個單元中。MOV R1,#78H ;選中;選中IN0通道通道MOV R2,#8H ;置通道
50、數(shù);置通道數(shù)LOOP:MOVX R1,A ;啟動;啟動A/D轉(zhuǎn)換轉(zhuǎn)換TEST:JB P3.2,TEST ;查詢;查詢A/D轉(zhuǎn)換結(jié)束否轉(zhuǎn)換結(jié)束否MOVX A,R1 ;轉(zhuǎn)換結(jié)束,讀入轉(zhuǎn)換結(jié)果;轉(zhuǎn)換結(jié)束,讀入轉(zhuǎn)換結(jié)果MOV R0,A ;存入內(nèi)部;存入內(nèi)部RAM存儲區(qū)存儲區(qū)INC R1 ;指向下一個通道;指向下一個通道INC R0 ;修改存儲指針;修改存儲指針DJNZ R2,LOOP ;8個通道是否轉(zhuǎn)換完成個通道是否轉(zhuǎn)換完成4、A/D轉(zhuǎn)換器的性能指標(biāo)轉(zhuǎn)換器的性能指標(biāo) ADC(Analog-Digital Converter)是)是A/D轉(zhuǎn)換器的轉(zhuǎn)換器的簡稱,簡稱,ADC的性能指標(biāo)是正確選擇的性能指標(biāo)是
51、正確選擇ADC芯片的依據(jù),芯片的依據(jù),也是衡量也是衡量ADC質(zhì)量的關(guān)鍵,質(zhì)量的關(guān)鍵,ADC的性能指標(biāo)有分辨率,的性能指標(biāo)有分辨率,線性度,偏移誤差等,這里主要講兩點:線性度,偏移誤差等,這里主要講兩點: (1)轉(zhuǎn)換速度()轉(zhuǎn)換速度(Conversion Rate) 轉(zhuǎn)換速度是指完成一次轉(zhuǎn)換速度是指完成一次A/D轉(zhuǎn)換所需時間的倒數(shù),轉(zhuǎn)換所需時間的倒數(shù),是一個很重要的指標(biāo),是一個很重要的指標(biāo),ADC型號不同,轉(zhuǎn)換速度差別很型號不同,轉(zhuǎn)換速度差別很大,通常大,通常8位逐次比較式位逐次比較式ADC的轉(zhuǎn)換時間為的轉(zhuǎn)換時間為100us左右,左右,選用選用ADC型號應(yīng)視現(xiàn)場需要定,在控制時間允許情況下,型號
52、應(yīng)視現(xiàn)場需要定,在控制時間允許情況下,應(yīng)盡量選用便宜有逐次比較式應(yīng)盡量選用便宜有逐次比較式A/D轉(zhuǎn)換器。轉(zhuǎn)換器。 (2)、轉(zhuǎn)換精度()、轉(zhuǎn)換精度(Conversion Accuracy) ADC的轉(zhuǎn)換精度有模擬誤差和數(shù)字誤差組成,模擬誤的轉(zhuǎn)換精度有模擬誤差和數(shù)字誤差組成,模擬誤差是比較器、解碼網(wǎng)絡(luò)中電阻值以有基準(zhǔn)電壓波動等引差是比較器、解碼網(wǎng)絡(luò)中電阻值以有基準(zhǔn)電壓波動等引起的誤差,數(shù)字誤差主要包括丟失碼誤差和量化誤差,起的誤差,數(shù)字誤差主要包括丟失碼誤差和量化誤差,在在A/D轉(zhuǎn)換過程中,模擬量是一種連續(xù)變化的量,數(shù)字量轉(zhuǎn)換過程中,模擬量是一種連續(xù)變化的量,數(shù)字量是斷續(xù)的量,因此是斷續(xù)的量,因此
53、A/D轉(zhuǎn)換器位數(shù)固定后,并不會根據(jù)電轉(zhuǎn)換器位數(shù)固定后,并不會根據(jù)電壓都能用數(shù)字量精確表示。例如:假定三位二進制壓都能用數(shù)字量精確表示。例如:假定三位二進制A/D轉(zhuǎn)轉(zhuǎn)換器的滿量程值換器的滿量程值VFS為為7V,即輸入模擬電壓可以在,即輸入模擬電壓可以在07V之間連續(xù)變化,但三們數(shù)字量只能有之間連續(xù)變化,但三們數(shù)字量只能有8種組合,如果模擬種組合,如果模擬輸入電壓為輸入電壓為0V、1V、2V、3V、4V、5V、6V和和7V時,三時,三位數(shù)字量恰好能精確表示,不會出現(xiàn)量化誤差,如果輸位數(shù)字量恰好能精確表示,不會出現(xiàn)量化誤差,如果輸入模擬電壓為其余值就會產(chǎn)生量化誤差,輸入模擬電壓入模擬電壓為其余值就會
54、產(chǎn)生量化誤差,輸入模擬電壓為為0.5V、1.5V、2.5V、3.5V、4.5V、5.5V、6.5V時量化誤時量化誤差最大,應(yīng)當(dāng)是差最大,應(yīng)當(dāng)是0.5V,故量化誤差定義為分辨率之半,故量化誤差定義為分辨率之半,其計算公式為:其計算公式為:Q=VFS/(2N-1)*2,式在,式在VFS滿量程,滿量程,N為為ADC的二進制位數(shù)。的二進制位數(shù)。二、二、D/A轉(zhuǎn)換器轉(zhuǎn)換器DAC0832與單片機的接口與單片機的接口 D/A轉(zhuǎn)換的芯片較多,轉(zhuǎn)換的芯片較多,DAC0832是國內(nèi)使用較為普是國內(nèi)使用較為普遍的遍的8位位D/A轉(zhuǎn)換器,具有價廉、接口簡單和轉(zhuǎn)換控制方轉(zhuǎn)換器,具有價廉、接口簡單和轉(zhuǎn)換控制方便等優(yōu)點。便
55、等優(yōu)點。 1、DAC0832內(nèi)部結(jié)構(gòu)及引腳內(nèi)部結(jié)構(gòu)及引腳功能功能 DAC0832內(nèi)部結(jié)構(gòu)如圖所示,它由一個輸入鎖存器、內(nèi)部結(jié)構(gòu)如圖所示,它由一個輸入鎖存器、DAC寄存器和寄存器和D/A轉(zhuǎn)換器三部分組成。輸入鎖存器和轉(zhuǎn)換器三部分組成。輸入鎖存器和DAC寄存器用以實現(xiàn)兩級緩沖,故在輸出的同時,尚可寄存器用以實現(xiàn)兩級緩沖,故在輸出的同時,尚可采集一個數(shù)字,從而提高了轉(zhuǎn)換速率,當(dāng)多芯片同時工采集一個數(shù)字,從而提高了轉(zhuǎn)換速率,當(dāng)多芯片同時工作時,可用同步信號控制各模擬量的同步輸出。作時,可用同步信號控制各模擬量的同步輸出。 8位輸入位輸入寄存器寄存器8位位DAC寄存器寄存器8位位D/A轉(zhuǎn)換器轉(zhuǎn)換器ILE
56、CSWR1WR2XFERIOUT1IOUT2DI7DI0DAC0832結(jié)構(gòu)框圖結(jié)構(gòu)框圖LE1LE2VREFRfb&DAC0832有有20個引腳,各引腳功能如下:個引腳,各引腳功能如下: (1)CS片選信號片選信號 輸入低電平有效,與輸入低電平有效,與ILE相配合,可對寫信號相配合,可對寫信號WR1是否有效起控制作用。是否有效起控制作用。 (2)ILE 允許鎖存信號,輸入高電平有效,輸入鎖存器的鎖允許鎖存信號,輸入高電平有效,輸入鎖存器的鎖存信號存信號LE1由由ILE、CS、WR1的邏輯組合產(chǎn)生,當(dāng)?shù)倪壿嫿M合產(chǎn)生,當(dāng)ILE為高電平,為高電平,CS為低電平、為低電平、WR1輸入負(fù)脈沖時,在輸入負(fù)脈
57、沖時,在LE1產(chǎn)產(chǎn)生正脈沖,生正脈沖,LE1為高電平時,輸入鎖存器的狀態(tài)隨著數(shù)為高電平時,輸入鎖存器的狀態(tài)隨著數(shù)據(jù)輸入線的狀態(tài)變化,據(jù)輸入線的狀態(tài)變化,LE1的負(fù)跳變將數(shù)據(jù)線上的信息的負(fù)跳變將數(shù)據(jù)線上的信息打入輸入鎖存器。打入輸入鎖存器。 (3)WR1寫信號寫信號1 輸入低電平有效,當(dāng)輸入低電平有效,當(dāng)WR1、CS、ILE均為有效時,均為有效時,可將數(shù)據(jù)寫入可將數(shù)據(jù)寫入8位輸入鎖存器。位輸入鎖存器。 (4)WR2寫信號寫信號2 輸入低電平有效,當(dāng)其有效時,在傳送控制信號輸入低電平有效,當(dāng)其有效時,在傳送控制信號XFER的作用下,可將鎖存在輸入鎖存器的的作用下,可將鎖存在輸入鎖存器的8位數(shù)據(jù)送到
58、位數(shù)據(jù)送到DAC寄存器。寄存器。(5 5)XFER XFER 數(shù)據(jù)傳送控制信號,輸入低電平有效,當(dāng)數(shù)據(jù)傳送控制信號,輸入低電平有效,當(dāng)WR2WR2、XFERXFER均有效時,則在均有效時,則在LE2LE2產(chǎn)生正脈沖,產(chǎn)生正脈沖,LE2LE2為高電平時,為高電平時,DACDAC寄寄存器的輸出和輸入鎖存器的狀態(tài)一致,存器的輸出和輸入鎖存器的狀態(tài)一致,IE2IE2的負(fù)跳變將輸?shù)呢?fù)跳變將輸入鎖存器的內(nèi)容打入入鎖存器的內(nèi)容打入DACDAC寄存器。寄存器。 (6)DI7DI0 8位數(shù)字量輸入端位數(shù)字量輸入端 (7)IOUT1 DAC的電流輸出的電流輸出1, 當(dāng)當(dāng)DAC寄存器各位均為寄存器各位均為1時,輸出
59、電流最大,當(dāng)時,輸出電流最大,當(dāng)DAC寄存器各位均為寄存器各位均為0時,輸出電流為時,輸出電流為0。 (8)IOUT2 DAC的電流輸出的電流輸出2 IOUT1與與IOUT2的和為一常數(shù),一般單極性輸出時的和為一常數(shù),一般單極性輸出時IOUT2接地,在雙極性輸出時接運放。接地,在雙極性輸出時接運放。 (9)VREF 基準(zhǔn)電壓輸入端基準(zhǔn)電壓輸入端 (10)RFB 反饋電阻引腳反饋電阻引腳 在在DAC0832芯片內(nèi)部有一個反饋電阻,可作為外部芯片內(nèi)部有一個反饋電阻,可作為外部運算放大電路的反饋電阻用運算放大電路的反饋電阻用 (11)VCC 電源輸入線,電源輸入線,+5+15V (12)DGND、A
60、GND 分別為數(shù)字信號地和模擬信號地分別為數(shù)字信號地和模擬信號地 2、DAC0832的應(yīng)用示例的應(yīng)用示例 如圖所示,如圖所示,ILEILE接高電平,接高電平,WR1WR1、WR2WR2互連,于是二級互連,于是二級鎖存控制成了一級鎖存控制,適用于無須二級控制的場鎖存控制成了一級鎖存控制,適用于無須二級控制的場合,合,V VREFREF直接接到直接接到V VCCCC,適用于對轉(zhuǎn)換精度要求不高的場合,適用于對轉(zhuǎn)換精度要求不高的場合,輸出端在片外接有運放,使該電流輸出出輸出端在片外接有運放,使該電流輸出出D/AD/A轉(zhuǎn)換芯片可轉(zhuǎn)換芯片可有適當(dāng)有模擬量輸出電壓輸出有適當(dāng)有模擬量輸出電壓輸出。 轉(zhuǎn)換程序為
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)村拆除施工方案范本
- 揚州脫硫煙囪施工方案
- 古詩二首(東溪和蠶麥)閱讀練習(xí)
- 建筑工程臨時用工合同
- 包頭中招試題數(shù)學(xué)試卷
- 污泥干化機更換施工方案
- 工程不得驗收施工方案
- 物理-安徽省天一大聯(lián)考2024-2025學(xué)年(下)2025屆高三3月調(diào)研考試試題和答案
- 辦公軟件怎么做數(shù)學(xué)試卷
- 食堂調(diào)料配送服務(wù)方案
- 人力資源課件 -非人力資源經(jīng)理的人力資源管理
- GB/T 24475-2023電梯遠(yuǎn)程報警系統(tǒng)
- 衢州市建筑工程質(zhì)量通病防治措施
- 《中式面點技藝(第二版)》教案(高教版)
- 《神經(jīng)梅毒》教學(xué)課件
- 六年級下冊數(shù)學(xué)同步學(xué)堂
- 【電氣專業(yè)】15D501建筑物防雷設(shè)施安裝
- 通信施工安全生產(chǎn)培訓(xùn)(登高作業(yè)施工專題)
- 四位數(shù)乘四位數(shù)乘法題500道
- 企業(yè)生產(chǎn)管理-9S現(xiàn)場管理培訓(xùn)PPT課件教材講義
- 豬場趕豬方案
評論
0/150
提交評論