版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、單片機(jī)原理及應(yīng)用單片機(jī)原理及應(yīng)用 MCS-51單片機(jī)單片機(jī)I/O口結(jié)構(gòu)及應(yīng)用,獨(dú)立式鍵盤(pán)和矩陣口結(jié)構(gòu)及應(yīng)用,獨(dú)立式鍵盤(pán)和矩陣式鍵盤(pán)接口技術(shù),式鍵盤(pán)接口技術(shù),LED數(shù)碼管顯示器接口技術(shù),模數(shù)換數(shù)碼管顯示器接口技術(shù),模數(shù)換器(器(ADC)和數(shù)模轉(zhuǎn)換器()和數(shù)模轉(zhuǎn)換器(DAC)接口技術(shù)。)接口技術(shù)。7.1 I/O口直接應(yīng)用口直接應(yīng)用7.2 鍵盤(pán)和顯示器接口技術(shù)鍵盤(pán)和顯示器接口技術(shù)7.3 A/D、D/A轉(zhuǎn)換接口技術(shù)轉(zhuǎn)換接口技術(shù)v直接做輸出口直接做輸出口 v直接做輸入口直接做輸入口 在沒(méi)有外擴(kuò)任何芯片時(shí),在沒(méi)有外擴(kuò)任何芯片時(shí),MCS-51單片機(jī)內(nèi)部單片機(jī)內(nèi)部并行口可以作為輸出口,直接與輸出外設(shè)連接。并行
2、口可以作為輸出口,直接與輸出外設(shè)連接。常用的輸出外設(shè)是發(fā)光二極管常用的輸出外設(shè)是發(fā)光二極管。 MCS-51單片機(jī)單片機(jī)內(nèi)部并行口也可以作為輸入口,直接與輸入外設(shè)內(nèi)部并行口也可以作為輸入口,直接與輸入外設(shè)連接,連接,常用的輸入外設(shè)是開(kāi)關(guān)常用的輸入外設(shè)是開(kāi)關(guān)。 例例1例例2例例1例例27.1 I/O口直接應(yīng)用口直接應(yīng)用v直接做輸出口直接做輸出口P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.789C51+5V例例1:用:用89C51的的P1口驅(qū)動(dòng)口驅(qū)動(dòng)8個(gè)發(fā)光二極管,使個(gè)發(fā)光二極管,使8個(gè)發(fā)光二極管由左向右輪個(gè)發(fā)光二極管由左向右輪流點(diǎn)亮。試畫(huà)出連接圖,編制驅(qū)動(dòng)程序。流點(diǎn)亮。試畫(huà)出連接
3、圖,編制驅(qū)動(dòng)程序。解:解:1、畫(huà)電路圖、畫(huà)電路圖2、編程、編程MOV A, #0FEHUP:MOV P1, ALCALL DLRL ASJMP UPDL:MOV R7, #2DL1:MOV R6, #250DJNZ R6, $DJNZ R7, DL1RET 電阻的作用是當(dāng)流過(guò)發(fā)光二極管的電流過(guò)大電阻的作用是當(dāng)流過(guò)發(fā)光二極管的電流過(guò)大時(shí),它就會(huì)被燒壞。這個(gè)電阻可以限制流過(guò)發(fā)光時(shí),它就會(huì)被燒壞。這個(gè)電阻可以限制流過(guò)發(fā)光二極管的電流,因此這個(gè)電阻叫作限流電阻。限二極管的電流,因此這個(gè)電阻叫作限流電阻。限流電阻阻值的計(jì)算方法:流電阻阻值的計(jì)算方法:R=(5-1.75)/Id, Id 是流是流過(guò)發(fā)光二極
4、管的電流,一般從過(guò)發(fā)光二極管的電流,一般從8mA到到20mA,其值,其值越大,發(fā)光二極管越亮,但不能太大,當(dāng)流過(guò)發(fā)越大,發(fā)光二極管越亮,但不能太大,當(dāng)流過(guò)發(fā)光二極管的電流超過(guò)光二極管的電流超過(guò)20mA時(shí),容易燒壞發(fā)光二極時(shí),容易燒壞發(fā)光二極管。管。v 如果用如果用P0口驅(qū)動(dòng)發(fā)光二極管,則如何修改?口驅(qū)動(dòng)發(fā)光二極管,則如何修改?v如果使如果使8個(gè)發(fā)光二極管由右向左輪流點(diǎn)亮,則如何修改?個(gè)發(fā)光二極管由右向左輪流點(diǎn)亮,則如何修改?v如果使如果使8個(gè)發(fā)光二極管閃亮,則如何修改?個(gè)發(fā)光二極管閃亮,則如何修改?v如果使如果使8個(gè)發(fā)光二極管由內(nèi)向外輪流點(diǎn)亮,則如何修改?個(gè)發(fā)光二極管由內(nèi)向外輪流點(diǎn)亮,則如何修
5、改?v如果使如果使8個(gè)發(fā)光二極管由右向左依次點(diǎn)亮,則如何修改?個(gè)發(fā)光二極管由右向左依次點(diǎn)亮,則如何修改?v如果使延時(shí)時(shí)間延長(zhǎng)或縮短,會(huì)出現(xiàn)什么現(xiàn)象?如果使延時(shí)時(shí)間延長(zhǎng)或縮短,會(huì)出現(xiàn)什么現(xiàn)象?預(yù)習(xí)實(shí)驗(yàn)并思考:預(yù)習(xí)實(shí)驗(yàn)并思考:v熟悉實(shí)驗(yàn)板上與發(fā)光二極管有關(guān)的電路。熟悉實(shí)驗(yàn)板上與發(fā)光二極管有關(guān)的電路。v編制驅(qū)動(dòng)程序,實(shí)現(xiàn)如下操作:編制驅(qū)動(dòng)程序,實(shí)現(xiàn)如下操作: 由左向右輪流點(diǎn)亮由左向右輪流點(diǎn)亮 由外向里輪流點(diǎn)亮由外向里輪流點(diǎn)亮 由右向左依次點(diǎn)亮由右向左依次點(diǎn)亮 閃亮閃亮1 1、直接做輸出口、直接做輸出口P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.789C51+5V例例2:用:用805
6、1的的P1口驅(qū)動(dòng)口驅(qū)動(dòng)1個(gè)數(shù)碼管,制成個(gè)數(shù)碼管,制成1位秒表位秒表.試畫(huà)出連接圖,編制驅(qū)動(dòng)程序。試畫(huà)出連接圖,編制驅(qū)動(dòng)程序。 解:解:1、畫(huà)電路圖、畫(huà)電路圖2、編程、編程思考思考abcdefgDpabcdefgDpUP0: MOVR7, #10 MOVR2, #00H MOVDPTR, #TABUP:MOVA, R2MOVCA, A+DPTRMOVP1, ALCALL D1SINCR2DJNZR7, UPSJMPUP0TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98Hv如果制成如果制成0.1S的表,則如何修改?的表,則如何修改?2 2、直接
7、做輸入口、直接做輸入口P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.789C51+5V例例1:用:用89C51的的P1口傳送口傳送8個(gè)開(kāi)關(guān)狀態(tài),用個(gè)開(kāi)關(guān)狀態(tài),用P2口顯示口顯示8個(gè)開(kāi)關(guān)個(gè)開(kāi)關(guān)狀態(tài),若開(kāi)關(guān)合則對(duì)應(yīng)燈亮,試畫(huà)出連接圖,編制驅(qū)動(dòng)程序。狀態(tài),若開(kāi)關(guān)合則對(duì)應(yīng)燈亮,試畫(huà)出連接圖,編制驅(qū)動(dòng)程序。解:解:(1)畫(huà)電路圖)畫(huà)電路圖 MOV P1, #0FFHUP: MOV A, P1 MOV P2, A SJMP UPP2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7+5V開(kāi)關(guān)處的電阻稱為上拉電阻上拉電阻,它的作用是當(dāng)開(kāi)關(guān)斷開(kāi)時(shí),使P3口的電壓上拉為準(zhǔn)確的高電平,避
8、免懸空狀態(tài)。 (2)編程)編程強(qiáng)調(diào):強(qiáng)調(diào):8051內(nèi)部并行口直接作為輸入口時(shí),內(nèi)部并行口直接作為輸入口時(shí),必須先將口鎖存器置必須先將口鎖存器置1。P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.789C51P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7+5V如果將發(fā)光二極管反接,則如何修改程序?如果將發(fā)光二極管反接,則如何修改程序? MOV P1, #0FFHUP: MOV A, P1 CPL A MOV P2, A SJMP UP2 2、直接做輸入口、直接做輸入口89C51+5V例例2:用:用8051的的P1口驅(qū)動(dòng)口驅(qū)動(dòng)8個(gè)發(fā)光二極管,個(gè)發(fā)光二極管,P3.4接
9、一個(gè)開(kāi)關(guān)接一個(gè)開(kāi)關(guān)K1,當(dāng)開(kāi)關(guān)按下,當(dāng)開(kāi)關(guān)按下時(shí),時(shí),8個(gè)發(fā)光二極管由左向右輪流點(diǎn)亮;開(kāi)關(guān)斷開(kāi)時(shí),個(gè)發(fā)光二極管由左向右輪流點(diǎn)亮;開(kāi)關(guān)斷開(kāi)時(shí),8個(gè)發(fā)光二極管不亮。個(gè)發(fā)光二極管不亮。試畫(huà)出連接圖,編制驅(qū)動(dòng)程序。試畫(huà)出連接圖,編制驅(qū)動(dòng)程序。 解:解:(1)畫(huà)電路圖)畫(huà)電路圖P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7(2)編程)編程+5VP3.4MOVP3, #0FFHUP: MOVA, #0FEHUP1:JBP3.4, UP1 MOVP1, ALCALL DLRLASJMPUP1DL:MOVR7, #2DL1: MOVR6, #250DJNZR6, $DJNZR7, DL1RE
10、T v在上述程序中,開(kāi)關(guān)必須一直按著,燈才能輪流點(diǎn)亮,當(dāng)開(kāi)關(guān)斷開(kāi)在上述程序中,開(kāi)關(guān)必須一直按著,燈才能輪流點(diǎn)亮,當(dāng)開(kāi)關(guān)斷開(kāi)時(shí),停留在某個(gè)燈點(diǎn)亮狀態(tài)。如果當(dāng)開(kāi)關(guān)斷開(kāi)時(shí),燈全滅,如何修時(shí),停留在某個(gè)燈點(diǎn)亮狀態(tài)。如果當(dāng)開(kāi)關(guān)斷開(kāi)時(shí),燈全滅,如何修改程序?改程序?v如果開(kāi)關(guān)作為啟動(dòng)開(kāi)關(guān),開(kāi)關(guān)按下并抬起時(shí),燈才開(kāi)始輪流點(diǎn)亮,如果開(kāi)關(guān)作為啟動(dòng)開(kāi)關(guān),開(kāi)關(guān)按下并抬起時(shí),燈才開(kāi)始輪流點(diǎn)亮,則如何編程?則如何編程?預(yù)習(xí)實(shí)驗(yàn)預(yù)習(xí)實(shí)驗(yàn)v熟悉實(shí)驗(yàn)板上與發(fā)光二極管和開(kāi)關(guān)有關(guān)的電路。熟悉實(shí)驗(yàn)板上與發(fā)光二極管和開(kāi)關(guān)有關(guān)的電路。v編制驅(qū)動(dòng)程序,實(shí)現(xiàn)如下操作:編制驅(qū)動(dòng)程序,實(shí)現(xiàn)如下操作:(1)讀入)讀入4個(gè)按鍵并使對(duì)應(yīng)的個(gè)按鍵并使
11、對(duì)應(yīng)的LED點(diǎn)亮。點(diǎn)亮。(2)K1按下按下LED每每2個(gè)為一組由右向左依次點(diǎn)亮。個(gè)為一組由右向左依次點(diǎn)亮。(3)K2按下并抬起時(shí),按下并抬起時(shí),LED由內(nèi)向外輪流點(diǎn)亮。由內(nèi)向外輪流點(diǎn)亮。P3.2P3.3P3.4P3.5+5V7.2 7.2 鍵盤(pán)和顯示器接口技術(shù)鍵盤(pán)和顯示器接口技術(shù)7.2.1 鍵盤(pán)接口技術(shù)鍵盤(pán)接口技術(shù)7.2.2 顯示器接口技術(shù)顯示器接口技術(shù)v 一、一、鍵盤(pán)類型鍵盤(pán)類型 v 二、二、非編碼鍵盤(pán)與單片機(jī)的接口非編碼鍵盤(pán)與單片機(jī)的接口v 三、矩陣非編碼鍵盤(pán)與單片機(jī)的接口三、矩陣非編碼鍵盤(pán)與單片機(jī)的接口 鍵盤(pán)是單片機(jī)控制系統(tǒng)最常用、最簡(jiǎn)單的輸鍵盤(pán)是單片機(jī)控制系統(tǒng)最常用、最簡(jiǎn)單的輸入設(shè)備。
12、用戶可以通過(guò)鍵盤(pán)輸入數(shù)據(jù)或命令,實(shí)入設(shè)備。用戶可以通過(guò)鍵盤(pán)輸入數(shù)據(jù)或命令,實(shí) 現(xiàn)簡(jiǎn)單的人機(jī)通信?,F(xiàn)簡(jiǎn)單的人機(jī)通信。 7.2.17.2.1 鍵盤(pán)接口技術(shù)鍵盤(pán)接口技術(shù)一、鍵盤(pán)類型一、鍵盤(pán)類型 單片機(jī)控制系統(tǒng)鍵盤(pán)有編碼鍵盤(pán)和非編碼鍵盤(pán)兩種。單片機(jī)控制系統(tǒng)鍵盤(pán)有編碼鍵盤(pán)和非編碼鍵盤(pán)兩種。v1、編碼鍵盤(pán)除了鍵開(kāi)關(guān)外,還有專門(mén)的硬件電路,用、編碼鍵盤(pán)除了鍵開(kāi)關(guān)外,還有專門(mén)的硬件電路,用于識(shí)別閉合鍵并產(chǎn)生鍵代碼。不僅如此,編碼鍵盤(pán)一般于識(shí)別閉合鍵并產(chǎn)生鍵代碼。不僅如此,編碼鍵盤(pán)一般還有去鍵抖動(dòng)電路和防串鍵保護(hù)電路等。這種鍵盤(pán)的優(yōu)還有去鍵抖動(dòng)電路和防串鍵保護(hù)電路等。這種鍵盤(pán)的優(yōu)點(diǎn)是所需軟件簡(jiǎn)短,但硬件電路較復(fù)
13、雜,價(jià)格較貴。點(diǎn)是所需軟件簡(jiǎn)短,但硬件電路較復(fù)雜,價(jià)格較貴。 目前在單片機(jī)控制系統(tǒng)中使用不多。目前在單片機(jī)控制系統(tǒng)中使用不多。v2、非編碼鍵盤(pán)僅由鍵開(kāi)關(guān)組成,其它工作如鍵識(shí)別、非編碼鍵盤(pán)僅由鍵開(kāi)關(guān)組成,其它工作如鍵識(shí)別、鍵代碼的產(chǎn)生、去抖動(dòng)等,不是由硬件完成而是由軟件鍵代碼的產(chǎn)生、去抖動(dòng)等,不是由硬件完成而是由軟件完成的。為了簡(jiǎn)化硬件電路,降低成本,目前單片機(jī)控完成的。為了簡(jiǎn)化硬件電路,降低成本,目前單片機(jī)控 制系統(tǒng)中大多數(shù)采用非編碼鍵盤(pán)。制系統(tǒng)中大多數(shù)采用非編碼鍵盤(pán)。 非編碼鍵盤(pán)的鍵開(kāi)關(guān)可以排列成非編碼鍵盤(pán)的鍵開(kāi)關(guān)可以排列成線性形式線性形式或或矩陣形矩陣形式式,因此非編碼鍵盤(pán)有線性非編碼鍵盤(pán)
14、和矩陣非編碼鍵,因此非編碼鍵盤(pán)有線性非編碼鍵盤(pán)和矩陣非編碼鍵 盤(pán)兩種。盤(pán)兩種。線性形式 單片機(jī)控制系統(tǒng)所用的鍵盤(pán)有編碼鍵盤(pán)和非編碼鍵盤(pán)兩種。單片機(jī)控制系統(tǒng)所用的鍵盤(pán)有編碼鍵盤(pán)和非編碼鍵盤(pán)兩種。1、編碼鍵盤(pán)除了鍵開(kāi)關(guān)外,還有專門(mén)的硬件電路,用于識(shí)別閉合鍵、編碼鍵盤(pán)除了鍵開(kāi)關(guān)外,還有專門(mén)的硬件電路,用于識(shí)別閉合鍵并產(chǎn)生鍵代碼。不僅如此,編碼鍵盤(pán)一般還有去鍵抖動(dòng)電路和防串鍵并產(chǎn)生鍵代碼。不僅如此,編碼鍵盤(pán)一般還有去鍵抖動(dòng)電路和防串鍵保護(hù)電路等。這種鍵盤(pán)的優(yōu)點(diǎn)是所需軟件簡(jiǎn)短,但硬件電路較復(fù)雜,保護(hù)電路等。這種鍵盤(pán)的優(yōu)點(diǎn)是所需軟件簡(jiǎn)短,但硬件電路較復(fù)雜,價(jià)格較昂貴。目前在單片機(jī)控制系統(tǒng)中使用不多。價(jià)格較
15、昂貴。目前在單片機(jī)控制系統(tǒng)中使用不多。2、非編碼鍵盤(pán)僅由鍵開(kāi)關(guān)組成,其它工作如鍵識(shí)別、鍵代碼的產(chǎn)生、非編碼鍵盤(pán)僅由鍵開(kāi)關(guān)組成,其它工作如鍵識(shí)別、鍵代碼的產(chǎn)生、去抖動(dòng)等,不是由硬件完成而是由軟件完成的。為了簡(jiǎn)化硬件電路,去抖動(dòng)等,不是由硬件完成而是由軟件完成的。為了簡(jiǎn)化硬件電路,降低成本,目前單片機(jī)控制系統(tǒng)中大多數(shù)采用非編碼鍵盤(pán)。降低成本,目前單片機(jī)控制系統(tǒng)中大多數(shù)采用非編碼鍵盤(pán)。 非編碼鍵盤(pán)的鍵開(kāi)關(guān)可以排列成非編碼鍵盤(pán)的鍵開(kāi)關(guān)可以排列成線性形式線性形式或或矩陣形式矩陣形式,因此非編,因此非編碼鍵盤(pán)有線性非編碼鍵盤(pán)和矩陣非編碼鍵盤(pán)兩種。碼鍵盤(pán)有線性非編碼鍵盤(pán)和矩陣非編碼鍵盤(pán)兩種。一、鍵盤(pán)類型一、
16、鍵盤(pán)類型矩陣形式二、非編碼鍵盤(pán)與單片機(jī)的接口二、非編碼鍵盤(pán)與單片機(jī)的接口 線性非編碼鍵盤(pán)的鍵開(kāi)關(guān)排成一行或一列的形式,它與線性非編碼鍵盤(pán)的鍵開(kāi)關(guān)排成一行或一列的形式,它與單片機(jī)的接口電路如圖所示:?jiǎn)纹瑱C(jī)的接口電路如圖所示:K1K2K3K4P1.1P1.0P1.2P1.389C51+5V鍵處理程序如下:鍵處理程序如下:MOV P1, #0FFHUP1: MOV A, P1 ;讀讀I/O口狀態(tài)口狀態(tài) ANL A, #0FH ;屏蔽無(wú)用位屏蔽無(wú)用位 CJNE A, #0FH, NEXT1;有閉合鍵?有閉合鍵? SJMP UP1 NEXT1:LCALL D10ms ;延時(shí)延時(shí)10ms去抖動(dòng)去抖動(dòng) MO
17、V A, P1 ;再讀再讀I/O口狀態(tài)口狀態(tài) ANL A, #0FH CJNE A, #0FH, NEXT2;有閉合鍵?有閉合鍵? SJMP UP1NEXT2:JB P1.0, NEXT3 ;K1按下?按下? LCALL K1 ;K1鍵處理程序鍵處理程序NEXT3:JB P1.1, NEXT4 ;K2按下?按下? LCALL K2 ;K2鍵處理程序鍵處理程序NEXT4:JB P1.2, NEXT5 ;K3按下?按下? LCALL K3 ;K3鍵處理程序鍵處理程序NEXT5:JB P1.3, UP1 ;K4按下?按下? LCALL K4 ;K4鍵處理程序鍵處理程序 LJMP UP1 線性非編碼鍵
18、盤(pán)的工作原理:當(dāng)鍵線性非編碼鍵盤(pán)的工作原理:當(dāng)鍵未被按下時(shí),與此鍵相連的未被按下時(shí),與此鍵相連的I/O線獲得高線獲得高電平;當(dāng)鍵被按下時(shí),與此鍵相連的電平;當(dāng)鍵被按下時(shí),與此鍵相連的I/O線獲得低電平,單片機(jī)只要讀取線獲得低電平,單片機(jī)只要讀取I/O口狀口狀態(tài),就可以獲取按鍵信息,識(shí)別有態(tài),就可以獲取按鍵信息,識(shí)別有無(wú)鍵按下和哪個(gè)鍵被按下。無(wú)鍵按下和哪個(gè)鍵被按下。例:某單片機(jī)控制系統(tǒng),例:某單片機(jī)控制系統(tǒng),P1口接有口接有8發(fā)光二極管,發(fā)光二極管,P3.0、P3.1、P3.2、P3.3接有接有4個(gè)開(kāi)關(guān)個(gè)開(kāi)關(guān)K1、K2、K3、K4,試畫(huà)出接口電路,并編程使得當(dāng),試畫(huà)出接口電路,并編程使得當(dāng)K1按
19、下時(shí)按下時(shí)8個(gè)發(fā)光二極管全亮;當(dāng)個(gè)發(fā)光二極管全亮;當(dāng)K2按下時(shí)按下時(shí)8個(gè)發(fā)光二極管閃亮;當(dāng)個(gè)發(fā)光二極管閃亮;當(dāng)K3按下時(shí)按下時(shí)8個(gè)發(fā)光二極管由左向右點(diǎn)亮;當(dāng)個(gè)發(fā)光二極管由左向右點(diǎn)亮;當(dāng)K4按下時(shí)按下時(shí)8個(gè)發(fā)光二極管全滅。個(gè)發(fā)光二極管全滅。K1K2K3K4P3.1P3.0P3.2P3.389C51+5VP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7程程 序序 MOV B, #01H MOV P3, #0FFH MOV P1, #00H UP1: MOV A, P3 ANL A, #0FH CJNE A, #0FH, NEXT1 SJMP UP1 NEXT1: LCALL D10
20、ms MOV A, P3 ANL A, #0FH CJNE A, #0FH, NEXT2 SJMP UP1NEXT2: JB P3.0, NEXT3 LCALL K1 NEXT3: JB P3.1, NEXT4 LCALL K2 NEXT4: JB P3.2, NEXT5 LCALL K3 NEXT5: JB P3.3, UP1 LCALL K4 LJMP UP1子程序子程序K1: MOV P1,#0FFH RETK2: MOV P1,#0FFH LCALL D2S MOV P1,#00H LCALL D2S RETK3: MOV P1,B LCALL D2S MOV A,B RL A MOV
21、 B,A RETK4: MOV P1,#00H RET三、矩陣非編碼鍵盤(pán)與單片機(jī)的接口三、矩陣非編碼鍵盤(pán)與單片機(jī)的接口 1、矩陣鍵盤(pán)結(jié)構(gòu)、矩陣鍵盤(pán)結(jié)構(gòu) P1.3 P1.2 P1.1 P1.7 P1.6 P1.5 P1.4 P1.000H04H08H0CH各行首鍵值各行首鍵值00H01H02H03H各列序號(hào)各列序號(hào)2、矩陣鍵盤(pán)工作原理、矩陣鍵盤(pán)工作原理 v行線行線P1.4 P1.7為為輸入,輸入,列線列線P1.0 P1.3為為輸出。輸出。vCPU先使先使第一第一列列( P1.0)為為“0”,其余行為,其余行為“1”。v讀輸入口讀輸入口P1.4 P1.7的的狀態(tài),若輸入緩沖器的狀態(tài)全狀態(tài),若輸入緩
22、沖器的狀態(tài)全部為部為“1”,則表示所在行無(wú)鍵按下;若輸入緩沖器不,則表示所在行無(wú)鍵按下;若輸入緩沖器不全為全為“1”,說(shuō)明所在行有鍵按下,說(shuō)明所在行有鍵按下,CPU停止當(dāng)前行線停止當(dāng)前行線掃描,轉(zhuǎn)入到列線掃描掃描,轉(zhuǎn)入到列線掃描,行線,行線P1.4 P1.7為為“0”狀態(tài)狀態(tài)的列表示對(duì)應(yīng)列有鍵按下。這樣,行線與列數(shù)交叉鍵的列表示對(duì)應(yīng)列有鍵按下。這樣,行線與列數(shù)交叉鍵就是掃描到的按鍵。就是掃描到的按鍵。3、鍵盤(pán)掃描方式、鍵盤(pán)掃描方式 v程控掃描方式:程控掃描方式:CPU從執(zhí)行程序就開(kāi)始了鍵盤(pán)的掃描,從執(zhí)行程序就開(kāi)始了鍵盤(pán)的掃描,等待來(lái)是鍵盤(pán)的命令。等待來(lái)是鍵盤(pán)的命令。v 定時(shí)掃描方式:定時(shí)掃描方
23、式:在程序初始化時(shí),先對(duì)定時(shí)在程序初始化時(shí),先對(duì)定時(shí)/計(jì)數(shù)器進(jìn)計(jì)數(shù)器進(jìn)行設(shè)置,使其每行設(shè)置,使其每10ms中斷一次,每次中斷,中斷一次,每次中斷,CPU將去將去掃描一次鍵盤(pán),若兩次中斷掃描到有鍵按下(這里考慮掃描一次鍵盤(pán),若兩次中斷掃描到有鍵按下(這里考慮了消抖動(dòng)),了消抖動(dòng)),CPU將對(duì)鍵作相應(yīng)的處理。將對(duì)鍵作相應(yīng)的處理。v中斷掃描方式:中斷掃描方式:采用中斷掃描方式必需有外部中斷接口,采用中斷掃描方式必需有外部中斷接口,當(dāng)有鍵按下時(shí),產(chǎn)生中斷請(qǐng)請(qǐng)求,當(dāng)有鍵按下時(shí),產(chǎn)生中斷請(qǐng)請(qǐng)求,CPU響應(yīng)中斷,在中響應(yīng)中斷,在中斷服務(wù)程序掃描鍵盤(pán),作相應(yīng)處理。這是多任務(wù)應(yīng)用系斷服務(wù)程序掃描鍵盤(pán),作相應(yīng)處理
24、。這是多任務(wù)應(yīng)用系統(tǒng)常用的一種方式。統(tǒng)常用的一種方式。4、鍵盤(pán)掃描過(guò)程、鍵盤(pán)掃描過(guò)程 v判斷鍵盤(pán)上有無(wú)鍵按下:判斷鍵盤(pán)上有無(wú)鍵按下:先對(duì)行進(jìn)行掃描,當(dāng)掃描先對(duì)行進(jìn)行掃描,當(dāng)掃描到行線有鍵按下時(shí),再對(duì)列線進(jìn)行掃描,行線、列到行線有鍵按下時(shí),再對(duì)列線進(jìn)行掃描,行線、列線均為線均為“0”狀態(tài)的鍵就是當(dāng)前的按鍵。狀態(tài)的鍵就是當(dāng)前的按鍵。v去除鍵的抖動(dòng):去除鍵的抖動(dòng):當(dāng)掃描到有按鍵時(shí),軟件延時(shí)當(dāng)掃描到有按鍵時(shí),軟件延時(shí)10ms再判該鍵是否仍是按鍵,如是則確認(rèn)該鍵是當(dāng)前的再判該鍵是否仍是按鍵,如是則確認(rèn)該鍵是當(dāng)前的按鍵,若不是,則把它當(dāng)成是誤操作處理。按鍵,若不是,則把它當(dāng)成是誤操作處理。v 取鍵值:取鍵
25、值:根據(jù)行號(hào)、列號(hào)建立一個(gè)鍵值數(shù)據(jù)表,采根據(jù)行號(hào)、列號(hào)建立一個(gè)鍵值數(shù)據(jù)表,采用用MOVC A,A+DPTR查表指令。鍵值存于:查表指令。鍵值存于: 閉閉合鍵的鍵碼值合鍵的鍵碼值=以(以(TAB(數(shù)據(jù)表首地址)(數(shù)據(jù)表首地址)+行號(hào)行號(hào)+列列號(hào))為地址單元中的內(nèi)容。號(hào))為地址單元中的內(nèi)容。5、鍵盤(pán)掃描編程、鍵盤(pán)掃描編程 ORG 0000H LJMP START ORG 2000HSTART:MOV P1, #0F0H ; P1口高四位為輸入(可?。┛诟咚奈粸檩斎耄墒。?MOV R2,#0FEH ; 掃描掃描初值(初值(P1.0=0) MOV R3,#04H ;每次列掃描數(shù)每次列掃描數(shù) M0V
26、R0,#00H ;列值列值計(jì)數(shù)器計(jì)數(shù)器R0清零清零 KEY: MOV A,R2 ;開(kāi)始掃描開(kāi)始掃描 MOV P1,A RL A MOV R2, A ;列掃描值左移一位列掃描值左移一位 MOV A,P1 ;讀讀P1狀態(tài)狀態(tài) ANL A, #0F0H ;屏蔽低四位屏蔽低四位 下面以下面以44鍵盤(pán)為例來(lái)說(shuō)明程序掃描鍵盤(pán)程序的編寫(xiě):鍵盤(pán)為例來(lái)說(shuō)明程序掃描鍵盤(pán)程序的編寫(xiě): CJNE A, #0F0H, JS ;若被按鍵在本列,則轉(zhuǎn)若被按鍵在本列,則轉(zhuǎn)JS INC R0 ;若被按鍵不在本列,則加若被按鍵不在本列,則加1DJNZ R3,KEY ;4列未掃描完,則循環(huán)列未掃描完,則循環(huán)EXIE: MOV A,
27、 #0FFH SJMP DONE ;沒(méi)有按鍵按下,沒(méi)有按鍵按下,(A)=0FFHJS: JB ACC.4, JS1 ;被按鍵不在被按鍵不在L0行,則轉(zhuǎn)行,則轉(zhuǎn)JS1 MOV A, #00H ;被按鍵在被按鍵在L0行,則行首鍵號(hào)行,則行首鍵號(hào)00H送送A AJMP JS4JS1: JB ACC.5, JS2 ;被按鍵不在被按鍵不在L1行,則轉(zhuǎn)行,則轉(zhuǎn)JS2 MOV A, #04H ;被按鍵在被按鍵在L1行,則行首鍵號(hào)行,則行首鍵號(hào)04H送送A AJMP JS4JS2: JB ACC.6, JS3 ;被按鍵不在被按鍵不在L2行,則轉(zhuǎn)行,則轉(zhuǎn)JS3 MOV A, #08H ;被按鍵在被按鍵在L2行,
28、則行首鍵號(hào)行,則行首鍵號(hào)08H送送A AJMP JS4 JS3: JB ACC.7, JS1 ;被按鍵不在被按鍵不在L3行,則轉(zhuǎn)行,則轉(zhuǎn)JS4 MOV A, #0CH ;被按鍵在被按鍵在L3行,則行首鍵號(hào)行,則行首鍵號(hào)0CH送送A AJMP JS4JS4: ADD A, R0 ;(;(A)=行首鍵號(hào)行首鍵號(hào)+列值列值 MOV DPTR, #TAB MOVC A, A+DPTR; 查表得鍵值查表得鍵值DONE: RETTAB: DB 01H,02H,03H,0AH DB 04H,05H,06H,0BH DB 07H,08H,09H,0CH DB 0EH,00H,0FH,0DH (不查表行不行?)
29、(不查表行不行?)v一、一、數(shù)碼管簡(jiǎn)介數(shù)碼管簡(jiǎn)介 v二、二、單個(gè)七段單個(gè)七段LED數(shù)碼管的接口數(shù)碼管的接口v三、三、多個(gè)七段多個(gè)七段LED數(shù)碼管的接口數(shù)碼管的接口 在單片機(jī)控制系統(tǒng)中顯示器是必不可少的外設(shè)。在單片機(jī)控制系統(tǒng)中顯示器是必不可少的外設(shè)。常用的顯示器有發(fā)光二極管,數(shù)碼管和液晶顯示器。常用的顯示器有發(fā)光二極管,數(shù)碼管和液晶顯示器。本節(jié)介紹數(shù)碼管接口。本節(jié)介紹數(shù)碼管接口。7.2.2 顯示器接口技術(shù)顯示器接口技術(shù)一、數(shù)碼管簡(jiǎn)介一、數(shù)碼管簡(jiǎn)介v組成:LED數(shù)碼管由7段或8段發(fā)光二極管組成 , 在 平 面 上 排 成 8字型。v分類:分類:有共陰極和共 陽(yáng)極兩種。COMabcdefgDpCOM
30、abcdefgDp顯示原理:顯示原理:使某些段點(diǎn)亮而另一些段不亮就可以顯示使某些段點(diǎn)亮而另一些段不亮就可以顯示0-9,A-F等字型。等字型。使某段點(diǎn)亮必須具備使某段點(diǎn)亮必須具備2個(gè)條件個(gè)條件:共陰極管的公共端接地和共陽(yáng)極管的公共端接電源。共陰極管的公共端接地和共陽(yáng)極管的公共端接電源。共陰極管的控制端接電源和共陽(yáng)極管的控制端接地。共陰極管的控制端接電源和共陽(yáng)極管的控制端接地。共陽(yáng)極共陽(yáng)極 共陰極共陰極abcdefgDp二、單個(gè)七段二、單個(gè)七段LED數(shù)碼管的接口數(shù)碼管的接口 v1、軟譯碼連接法、軟譯碼連接法v2、硬譯碼連接法、硬譯碼連接法 單個(gè)七段單個(gè)七段LED數(shù)碼管與單片機(jī)的連接方法有數(shù)碼管與單
31、片機(jī)的連接方法有2種:種:1、軟譯碼連接法、軟譯碼連接法 在軟譯碼連接法下,在軟譯碼連接法下,LED數(shù)碼管數(shù)碼管與單片機(jī)的連接圖與單片機(jī)的連接圖 :abcdefgDpP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.789C51+5VabcdefgDp(1)欲使欲使LED數(shù)碼管顯示數(shù)碼管顯示2,試編程。,試編程。 MOV P1,#01011011B(2)編程讓)編程讓LED數(shù)碼管顯示數(shù)碼管顯示30H單元單元的內(nèi)容(的內(nèi)容(30H單元的內(nèi)容在單元的內(nèi)容在09之之間)。間)。 UP: MOV A,30HMOV DPTR, #TABMOVC A, A+DPTRMOV P1, ASJMP
32、UPTAB : DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H共陽(yáng)極共陽(yáng)極LED2、硬譯碼連接法、硬譯碼連接法 在硬譯碼連接法下,在硬譯碼連接法下,LED數(shù)碼管數(shù)碼管與單片機(jī)的連接圖與單片機(jī)的連接圖 :abcdefgDpP1.0P1.1P1.2P1.3ABCD89C51 利用利用BCD碼碼七段碼譯碼七段碼譯碼器實(shí)現(xiàn)字形到字形碼的轉(zhuǎn)換。器實(shí)現(xiàn)字形到字形碼的轉(zhuǎn)換。常用的常用的BCD碼碼七段碼譯碼器七段碼譯碼器有有74LS48和和74LS47。 編程讓編程讓LED數(shù)碼管顯示數(shù)碼管顯示30H單元的內(nèi)容(單元的內(nèi)容(30H單元的單元的內(nèi)容在內(nèi)容在09之間)
33、。之間)。 MOV P1, 30HLTRBORBIabcdefgP1.4P1.5P1.6P1.7COMabcdefg74LS48共陰極共陰極LED+5V注意:注意:在硬譯碼連接法下,直接送欲顯示的數(shù)即可,字形到字形碼的轉(zhuǎn)換在硬譯碼連接法下,直接送欲顯示的數(shù)即可,字形到字形碼的轉(zhuǎn)換是用硬件實(shí)現(xiàn)的。是用硬件實(shí)現(xiàn)的。三、多個(gè)七段三、多個(gè)七段LED數(shù)碼管的接口數(shù)碼管的接口 多個(gè)數(shù)碼管與多個(gè)數(shù)碼管與CPU的連接方法有的連接方法有4種:種:v1、靜態(tài)軟譯碼連接法、靜態(tài)軟譯碼連接法v2、靜態(tài)硬譯碼連接法、靜態(tài)硬譯碼連接法v3、動(dòng)態(tài)硬譯碼連接法、動(dòng)態(tài)硬譯碼連接法v4、動(dòng)態(tài)軟譯碼連接法、動(dòng)態(tài)軟譯碼連接法1、靜態(tài)
34、軟譯碼連接法、靜態(tài)軟譯碼連接法 在靜態(tài)軟譯碼連接法下,在靜態(tài)軟譯碼連接法下,4個(gè)個(gè)LED數(shù)碼管數(shù)碼管與單片機(jī)的連接圖與單片機(jī)的連接圖 :abcdefgDpDpP0.0P0.1P0.2P0.389C51P0.4P0.5P0.6P0.7COMabcdefg共陰極共陰極LEDDpP2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7COMabcdefgDpP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7COMabcdefgDpP3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7COMabcdefg1、編程在、編程在4個(gè)七段個(gè)七段LED數(shù)數(shù)碼管上顯示碼管上顯示12
35、34。 MOV P0,#06HMOV P1,#5BHMOV P2,#4FHMOV P3,#66HSJMP $DpP0.0P0.1P0.2P0.389C51P0.4P0.5P0.6P0.7COMabcdefg共陰極共陰極LEDDpP2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7COMabcdefgDpP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7COMabcdefgDpP3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7COMabcdefg MOV DPTR, #TAB UP0: MOV A, 30H MOVC A, A+DPTR MOV P0, A
36、 MOV A, 31H MOVC A, A+DPTR MOV P1, A MOV A, 32H MOVC A, A+DPTR MOV P2, A MOV A, 33H MOVC A, A+DPTR MOV P3, A SJMP UP0TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH 1、編程在、編程在4個(gè)七段個(gè)七段LED數(shù)碼管上顯示數(shù)碼管上顯示30H,31H,32H,33H單元中存放的單元中存放的1位位BCD碼的內(nèi)容碼的內(nèi)容 。 DpP0.0P0.1P0.2P0.389C51P0.4P0.5P0.6P0.7COMabcdefg共陰極共陰極LEDDp
37、P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7COMabcdefgDpP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7COMabcdefgDpP3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7COMabcdefg MOV DPTR, #TAB UP0: MOV A, 30H ANL A, #0FH MOVC A, A+DPTR MOV P0, A MOV A, 30H SWAP A ANL A, #0FH MOVC A, A+DPTR MOV P1, A MOV A, 31H ANL A, #0FH MOVC A, A+DPTR MOV P2,
38、A MOV A, 31H SWAP A ANL A, #0FH MOVC A, A+DPTR MOV P3, A SJMP UP0TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH2、編程在、編程在4個(gè)七段個(gè)七段LED數(shù)碼管上顯示數(shù)碼管上顯示30H,31H單元中的內(nèi)容。單元中的內(nèi)容。(30H,31H單元中分別存有單元中分別存有2位位BCD碼)碼)2、靜態(tài)硬譯碼連接法、靜態(tài)硬譯碼連接法在靜態(tài)硬譯碼連接法下,在靜態(tài)硬譯碼連接法下,4個(gè)個(gè)LED數(shù)碼管與單片機(jī)連接圖數(shù)碼管與單片機(jī)連接圖 :P2.0P2.1P2.2P2.389C51DpP2.4P2.5P2.6
39、P2.7COMabcdefgDpP1.0P1.1P1.2P1.3COMabcdefgP1.4P1.5P1.6P1.7ABCDLTRBORBIabcdefg74LS47+5VDpCOMabcdefgABCDLTRBORBIabcdefg74LS47+5VABCDLTRBORBIabcdefg74LS47+5VDpCOMabcdefgABCDLTRBORBIabcdefg74LS47+5V+5V+5V+5V+5VP2.0P2.1P2.2P2.389C51DpP2.4P2.5P2.6P2.7COMabcdefgDpP1.0P1.1P1.2P1.3COMabcdefgP1.4P1.5P1.6P1.7A
40、BCDLTRBORBIabcdefg74LS47+5VDpCOMabcdefgABCDLTRBORBIabcdefg74LS47+5VABCDLTRBORBIabcdefg74LS47+5VDpCOMabcdefgABCDLTRBORBIabcdefg74LS47+5V例例1:編程在:編程在4個(gè)七段個(gè)七段LED數(shù)碼管上顯示數(shù)碼管上顯示30H,31H單元中的內(nèi)單元中的內(nèi)容。容。(30H30H,31H31H單元中分別存有單元中分別存有2 2位位BCDBCD碼)碼) UP: MOV P1,30H MOV P2,31H SJMP UP +5V+5V+5V+5V例例2:編程在:編程在4個(gè)七段個(gè)七段LED
41、數(shù)碼管上顯示數(shù)碼管上顯示30H,31H,32H,33H單元中存放的單元中存放的1位位BCD碼的內(nèi)容碼的內(nèi)容 。 UP: MOV A, 31H SWAP A ORL A, 30H MOV P1, A MOV A,33H SWAP A ORL A,32H MOV P2,A SJMP UPP2.0P2.1P2.2P2.389C51DpP2.4P2.5P2.6P2.7COMabcdefgDpP1.0P1.1P1.2P1.3COMabcdefgP1.4P1.5P1.6P1.7ABCDLTRBORBIabcdefg74LS47+5VDpCOMabcdefgABCDLTRBORBIabcdefg74LS47
42、+5VABCDLTRBORBIabcdefg74LS47+5VDpCOMabcdefgABCDLTRBORBIabcdefg74LS47+5V+5V+5V+5V+5V3、動(dòng)態(tài)硬譯碼連接法、動(dòng)態(tài)硬譯碼連接法v在動(dòng)態(tài)硬譯碼連接法下,在動(dòng)態(tài)硬譯碼連接法下,4個(gè)個(gè)LED數(shù)碼管與單片機(jī)的連接圖數(shù)碼管與單片機(jī)的連接圖 : 在動(dòng)態(tài)連接法下,數(shù)碼管公共端均受控。驅(qū)動(dòng)程序的編制充分利用了人眼的視覺(jué)滯留效應(yīng),在動(dòng)態(tài)連接法下,數(shù)碼管公共端均受控。驅(qū)動(dòng)程序的編制充分利用了人眼的視覺(jué)滯留效應(yīng),循環(huán)掃描各數(shù)碼管,使各數(shù)碼管不是連續(xù)顯示,但給人的視覺(jué)印象是連續(xù)地在顯示。每個(gè)數(shù)碼管循環(huán)掃描各數(shù)碼管,使各數(shù)碼管不是連續(xù)顯示,但
43、給人的視覺(jué)印象是連續(xù)地在顯示。每個(gè)數(shù)碼管的顯示時(shí)間不得低于的顯示時(shí)間不得低于1ms,不亮的時(shí)間不能超過(guò),不亮的時(shí)間不能超過(guò)20 ms。 利用人眼的視覺(jué)滯留現(xiàn)象,實(shí)現(xiàn)讓利用人眼的視覺(jué)滯留現(xiàn)象,實(shí)現(xiàn)讓4個(gè)七段個(gè)七段LED數(shù)碼管上不同時(shí)顯示數(shù)碼管上不同時(shí)顯示1234,但人眼看到的效果,但人眼看到的效果卻是同時(shí)顯示卻是同時(shí)顯示1234。 P2.0P2.1P2.2P2.389C51P2.4P2.5P2.6P2.7COMab cd e fgABCDLTRBORBIabcdefg74LS48+5VCOMab cd e fgCOMab cde fgCOMab cd e fg1234P2.0P2.1P2.2P2
44、.389C51P2.4P2.5P2.6P2.7COMab cd e fgABCDLTRBORBIabcdefg74LS48+5VCOMab cd e fgCOMab cde fgCOMab cd e fg例:例: 編程在編程在4個(gè)七段個(gè)七段LED數(shù)碼管上顯示數(shù)碼管上顯示1234。1234START: MOV P2, #11100001B LCALL D2MS MOV P2, #11010010B LCALL D2MS MOV P2, #10110011B LCALL D2MS MOV P2, #01110100B LCALL D2MS SJMP START編程在編程在4個(gè)七段個(gè)七段LED數(shù)碼管
45、上顯示數(shù)碼管上顯示30H,31H, 32H,33H單元中的內(nèi)容。單元中的內(nèi)容。 P2.0P2.1P2.2P2.389C51P2.4P2.5P2.6P2.7COMab cd e fgABCDLTRBORBIabcdefg74LS48+5VCOMab cd e fgCOMab cde fgCOMab cd e fg1234START: MOV R0, #30H MOV R7, #4 MOV R2, #0E0H UP: MOV A, R0 ORL A, R2 MOV P2, A LCALL D2MS INC R0 MOV A, R2 RL A MOV R2, A DJNZ R7, UP SJMP S
46、TART4、動(dòng)態(tài)軟譯碼連接法、動(dòng)態(tài)軟譯碼連接法在動(dòng)態(tài)軟譯碼連接法下,在動(dòng)態(tài)軟譯碼連接法下,4個(gè)個(gè)LED數(shù)碼管與單片機(jī)的連接圖數(shù)碼管與單片機(jī)的連接圖 :驅(qū)驅(qū)動(dòng)動(dòng)器器P2.0P2.1P2.2P2.389C51P3.0P3.1P3.2P3.3COMab cd e fgCOMab cd e fgCOMab cde fgCOMab cd e fg1234P2.4P2.5P2.6P2.7例例1: 編程在編程在4個(gè)七段個(gè)七段LED數(shù)碼管上顯示數(shù)碼管上顯示1234。驅(qū)驅(qū)動(dòng)動(dòng)器器P1.0P1.1P1.2P1.389C51P2.4P2.5P2.6P2.7COMab cd e fgCOMab cd e fgCOMa
47、b cde fgCOMab cd e fg1234P1.4P1.5P1.6P1.7UP: MOV P1, #06H MOV P2, #0FEH LCALL D2Ms MOV P1, #5BH MOV P2, #0FDH LCALL D2MS MOV P1, #4FH MOV P2, #0FBH LCALL D2MS MOV P1, #66H MOV P2, #0F7H LCALL D2MS SJMP UP例例2:編程在:編程在4個(gè)七段個(gè)七段LED數(shù)碼管上顯示數(shù)碼管上顯示30H,31H,32H,33H單元中的內(nèi)容。單元中的內(nèi)容。驅(qū)驅(qū)動(dòng)動(dòng)器器P1.0P1.1P1.2P1.389C51P3.0P3.
48、1P3.2P3.3COMab cd e fgCOMab cd e fgCOMab cde fgCOMab cd e fg1234P1.4P1.5P1.6P1.7START: MOV R0,#30H MOV R7,#4 MOV R2,#0FEH MOV DPTR,#TAB UP: MOV A,R0 MOVC A,A+DPTR MOV P1,A MOV P3,R2 LCALL D2MS INC R0 MOV A,R2 RL A MOV R2,A DJNZ R7,UP SJMP START TAB : DB 3FH,06H,5BH,4FH DB 66H,6DH,7DH,07H DB 7FH,6FH返
49、返 回回 7.3.1 模擬接口概述模擬接口概述 7.3.2 DAC及其接口及其接口 7.3.3 ADC及其接口及其接口 7.3 A/D7.3 A/D、D/AD/A轉(zhuǎn)換接口技術(shù)轉(zhuǎn)換接口技術(shù) 單片機(jī)的外部設(shè)備不一定都是數(shù)字式的,也經(jīng)常會(huì)和模擬單片機(jī)的外部設(shè)備不一定都是數(shù)字式的,也經(jīng)常會(huì)和模擬式的設(shè)備連接。式的設(shè)備連接。 例如單片機(jī)來(lái)控制溫度、壓力時(shí),溫度和壓力都是連續(xù)例如單片機(jī)來(lái)控制溫度、壓力時(shí),溫度和壓力都是連續(xù)變化的,都是模擬量,在單片機(jī)與外部環(huán)境通信的時(shí)候,就變化的,都是模擬量,在單片機(jī)與外部環(huán)境通信的時(shí)候,就需要有一種轉(zhuǎn)換器來(lái)把模擬信號(hào)變?yōu)閿?shù)字信號(hào),以便能夠輸需要有一種轉(zhuǎn)換器來(lái)把模擬信號(hào)變
50、為數(shù)字信號(hào),以便能夠輸送給單片機(jī)進(jìn)行處理。而單片機(jī)送出的控制信號(hào),也必須經(jīng)送給單片機(jī)進(jìn)行處理。而單片機(jī)送出的控制信號(hào),也必須經(jīng)過(guò)變換器變成模擬信號(hào),才能為控制電路所接受。這種變換過(guò)變換器變成模擬信號(hào),才能為控制電路所接受。這種變換器就稱為數(shù)模器就稱為數(shù)模(D/A)轉(zhuǎn)換器和模數(shù)轉(zhuǎn)換器和模數(shù)(A/D)轉(zhuǎn)換器。轉(zhuǎn)換器。 CPU與模擬外設(shè)之間的接口電路稱為模擬接口。與模擬外設(shè)之間的接口電路稱為模擬接口。 在這一節(jié)里將介紹單片機(jī)與在這一節(jié)里將介紹單片機(jī)與 A/D及及D/A轉(zhuǎn)換器接口,以及有轉(zhuǎn)換器接口,以及有關(guān)的應(yīng)用。關(guān)的應(yīng)用。 7.3.1 7.3.1 模擬接口概述模擬接口概述一、一、DAC介紹介紹1DA
51、C結(jié)構(gòu):結(jié)構(gòu):DAC芯片上集成有芯片上集成有D/A轉(zhuǎn)換電路和輔助電路。轉(zhuǎn)換電路和輔助電路。2DAC的參數(shù):描述的參數(shù):描述DA轉(zhuǎn)換器性能的參數(shù)很多,主要有以下幾個(gè):轉(zhuǎn)換器性能的參數(shù)很多,主要有以下幾個(gè):(1) 分辨率分辨率(Resolution) (2) 偏移誤差偏移誤差(OffsetError) (3) 線性度線性度(Linearity) (4) 精度精度(Accuracy) (5) 轉(zhuǎn)換速度轉(zhuǎn)換速度(ConvemionRate) (6) 溫度靈敏度溫度靈敏度(TemperatureSensitivity) 7.3.2 DAC7.3.2 DAC及其接口及其接口DAC0832 集成化的集成化的
52、D/A轉(zhuǎn)換器有兩類不同的芯轉(zhuǎn)換器有兩類不同的芯片:一類是不便和微處理器微計(jì)算機(jī)片:一類是不便和微處理器微計(jì)算機(jī)接口的,這類芯片只有數(shù)字輸入、模擬接口的,這類芯片只有數(shù)字輸入、模擬輸出等端子,不帶使能端及其他控制輸出等端子,不帶使能端及其他控制端。端。 另一類另一類D/A芯片是為微機(jī)系統(tǒng)設(shè)計(jì)的,芯片是為微機(jī)系統(tǒng)設(shè)計(jì)的,因 而 帶 有 使 能 端 等 控 制 輸 入 , 以 便因 而 帶 有 使 能 端 等 控 制 輸 入 , 以 便和微機(jī)接口。和微機(jī)接口。 能與微機(jī)接口的能與微機(jī)接口的D/A芯片也有許多種,芯片也有許多種,其中有的是不帶數(shù)據(jù)鎖存器的,這類其中有的是不帶數(shù)據(jù)鎖存器的,這類D/A轉(zhuǎn)器
53、與微機(jī)連接時(shí)不夠方便。也有的是轉(zhuǎn)器與微機(jī)連接時(shí)不夠方便。也有的是帶有數(shù)據(jù)鎖存器的,目前應(yīng)用較廣泛,帶有數(shù)據(jù)鎖存器的,目前應(yīng)用較廣泛,下 面 通 過(guò)下 面 通 過(guò) 典 型 芯 片 來(lái) 介 紹 單 片 機(jī)典 型 芯 片 來(lái) 介 紹 單 片 機(jī)與這類與這類DA轉(zhuǎn)換器的接口。轉(zhuǎn)換器的接口。一、一、DAC介紹介紹1DAC結(jié)構(gòu):結(jié)構(gòu):DAC芯片上集成有芯片上集成有D/A轉(zhuǎn)換電路和輔助電路。轉(zhuǎn)換電路和輔助電路。2DAC的參數(shù):描述的參數(shù):描述DA轉(zhuǎn)換器性能的參數(shù)很多,主要有以下幾個(gè):轉(zhuǎn)換器性能的參數(shù)很多,主要有以下幾個(gè):(1) 分辨率分辨率(Resolution) (2) 偏移誤差偏移誤差(OffsetEr
54、ror) (3) 線性度線性度(Linearity) (4) 精度精度(Accuracy) (5) 轉(zhuǎn)換速度轉(zhuǎn)換速度(ConvemionRate) (6) 溫度靈敏度溫度靈敏度(TemperatureSensitivity) 分辨率反映了數(shù)字量在最低位上變化分辨率反映了數(shù)字量在最低位上變化1位位時(shí)輸出模擬量的最小變化。時(shí)輸出模擬量的最小變化。 一般用相對(duì)值表示。對(duì)于一般用相對(duì)值表示。對(duì)于8位位D/A轉(zhuǎn)換器轉(zhuǎn)換器來(lái)說(shuō),分辨率為最大輸出幅度的來(lái)說(shuō),分辨率為最大輸出幅度的0.39,即為,即為1/256。而對(duì)于。而對(duì)于10位位D/A轉(zhuǎn)換器來(lái)說(shuō),分辨率轉(zhuǎn)換器來(lái)說(shuō),分辨率可以提高到可以提高到0.1,即,即
55、1/1024。 7.3.2 DAC7.3.2 DAC及其接口及其接口一、一、DAC介紹介紹1DAC結(jié)構(gòu):結(jié)構(gòu):DAC芯片上集成有芯片上集成有D/A轉(zhuǎn)換電路和輔助電路。轉(zhuǎn)換電路和輔助電路。2DAC的參數(shù):描述的參數(shù):描述DA轉(zhuǎn)換器性能的參數(shù)很多,主要有以下幾個(gè):轉(zhuǎn)換器性能的參數(shù)很多,主要有以下幾個(gè):(1) 分辨率分辨率(Resolution) (2) 偏移誤差偏移誤差(OffsetError) (3) 線性度線性度(Linearity) (4) 精度精度(Accuracy) (5) 轉(zhuǎn)換速度轉(zhuǎn)換速度(ConvemionRate) (6) 溫度靈敏度溫度靈敏度(TemperatureSensiti
56、vity) 偏移誤差是指輸入數(shù)字量為偏移誤差是指輸入數(shù)字量為0時(shí),輸出模擬時(shí),輸出模擬量對(duì)量對(duì)0的偏移值。這種誤差一般可在的偏移值。這種誤差一般可在D/A轉(zhuǎn)換器轉(zhuǎn)換器外部用電位器調(diào)節(jié)到最小。外部用電位器調(diào)節(jié)到最小。7.3.2 DAC7.3.2 DAC及其接口及其接口一、一、DAC介紹介紹1DAC結(jié)構(gòu):結(jié)構(gòu):DAC芯片上集成有芯片上集成有D/A轉(zhuǎn)換電路和輔助電路。轉(zhuǎn)換電路和輔助電路。2DAC的參數(shù):描述的參數(shù):描述DA轉(zhuǎn)換器性能的參數(shù)很多,主要有以下幾個(gè):轉(zhuǎn)換器性能的參數(shù)很多,主要有以下幾個(gè):(1) 分辨率分辨率(Resolution) (2) 偏移誤差偏移誤差(OffsetError) (3)
57、 線性度線性度(Linearity) (4) 精度精度(Accuracy) (5) 轉(zhuǎn)換速度轉(zhuǎn)換速度(ConvemionRate) (6) 溫度靈敏度溫度靈敏度(TemperatureSensitivity) 線性度是指線性度是指D/A轉(zhuǎn)換器的實(shí)際轉(zhuǎn)移特性與轉(zhuǎn)換器的實(shí)際轉(zhuǎn)移特性與理想直線之間的最大誤差,或最大偏移。一般理想直線之間的最大誤差,或最大偏移。一般情況下,偏差值應(yīng)小于情況下,偏差值應(yīng)小于0.5LSB。這里。這里L(fēng)SB是是指最低一位數(shù)字量變化所帶來(lái)的幅度變化。指最低一位數(shù)字量變化所帶來(lái)的幅度變化。7.3.2 DAC7.3.2 DAC及其接口及其接口一、一、DAC介紹介紹1DAC結(jié)構(gòu):結(jié)
58、構(gòu):DAC芯片上集成有芯片上集成有D/A轉(zhuǎn)換電路和輔助電路。轉(zhuǎn)換電路和輔助電路。2DAC的參數(shù):描述的參數(shù):描述DA轉(zhuǎn)換器性能的參數(shù)很多,主要有以下幾個(gè):轉(zhuǎn)換器性能的參數(shù)很多,主要有以下幾個(gè):(1) 分辨率分辨率(Resolution) (2) 偏移誤差偏移誤差(OffsetError) (3) 線性度線性度(Linearity) (4) 精度精度(Accuracy) (5) 轉(zhuǎn)換速度轉(zhuǎn)換速度(ConvemionRate) (6) 溫度靈敏度溫度靈敏度(TemperatureSensitivity) 精度為實(shí)際模擬輸出與理想模擬輸出之間精度為實(shí)際模擬輸出與理想模擬輸出之間的最大偏差。除了線性度
59、不好會(huì)影響精度之外,的最大偏差。除了線性度不好會(huì)影響精度之外,參考電源的波動(dòng)等因素都會(huì)影響精度??梢岳韰⒖茧娫吹牟▌?dòng)等因素都會(huì)影響精度。可以理解為線性度是在一定測(cè)試條件下得到的解為線性度是在一定測(cè)試條件下得到的D/A轉(zhuǎn)換轉(zhuǎn)換器的誤差,而精度是指在實(shí)際工作時(shí)的器的誤差,而精度是指在實(shí)際工作時(shí)的DA轉(zhuǎn)轉(zhuǎn)換器的誤差,一般質(zhì)量的換器的誤差,一般質(zhì)量的D/A轉(zhuǎn)換器的精度為滿轉(zhuǎn)換器的精度為滿量程的量程的0.21LSB。7.3.2 DAC7.3.2 DAC及其接口及其接口一、一、DAC介紹介紹1DAC結(jié)構(gòu):結(jié)構(gòu):DAC芯片上集成有芯片上集成有D/A轉(zhuǎn)換電路和輔助電路。轉(zhuǎn)換電路和輔助電路。2DAC的參數(shù):描述
60、的參數(shù):描述DA轉(zhuǎn)換器性能的參數(shù)很多,主要有以下幾個(gè):轉(zhuǎn)換器性能的參數(shù)很多,主要有以下幾個(gè):(1) 分辨率分辨率(Resolution) (2) 偏移誤差偏移誤差(OffsetError) (3) 線性度線性度(Linearity) (4) 精度精度(Accuracy) (5) 轉(zhuǎn)換速度轉(zhuǎn)換速度(ConvemionRate) (6) 溫度靈敏度溫度靈敏度(TemperatureSensitivity) 轉(zhuǎn)換速度即每秒鐘可以轉(zhuǎn)換的次數(shù),其倒轉(zhuǎn)換速度即每秒鐘可以轉(zhuǎn)換的次數(shù),其倒數(shù)為轉(zhuǎn)換時(shí)間。數(shù)為轉(zhuǎn)換時(shí)間。7.3.2 DAC7.3.2 DAC及其接口及其接口一、一、DAC介紹介紹1DAC結(jié)構(gòu):結(jié)構(gòu):
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年律師執(zhí)業(yè)資格考試法律實(shí)務(wù)操作技能測(cè)試題
- 2026年汽車(chē)維修技能等級(jí)考試模擬卷
- 2026年醫(yī)學(xué)專業(yè)研究生入學(xué)考試模擬題及答案詳解
- 2026年法學(xué)基礎(chǔ)與實(shí)踐法律專業(yè)人員綜合知識(shí)題
- 2026年河南林業(yè)職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能考試題庫(kù)及答案1套
- 2026年文學(xué)名著與經(jīng)典文學(xué)作品賞析題庫(kù)
- 2026年人力資源專家人才招聘與評(píng)估方向筆試模擬卷
- 2026年建筑師執(zhí)業(yè)資格考試題
- 2026年國(guó)際貿(mào)易中供應(yīng)商選擇與評(píng)估考題解析
- 2026年汽車(chē)維修工程標(biāo)準(zhǔn)考題
- 江蘇省揚(yáng)州市區(qū)2025-2026學(xué)年五年級(jí)上學(xué)期數(shù)學(xué)期末試題一(有答案)
- 建筑與市政工程地下水控制技術(shù)規(guī)范
- 2024版2026春新教科版科學(xué)三年級(jí)下冊(cè)教學(xué)課件:第一單元4.磁極與方向含2個(gè)微課視頻
- 培訓(xùn)保安課件
- “黨的二十屆四中全會(huì)精神”專題題庫(kù)及答案
- 2026屆福建省寧德市三校高三上學(xué)期1月月考?xì)v史試題(含答案)
- 2026年冀教版初一地理上冊(cè)期末真題試卷+解析及答案
- 2025年文化產(chǎn)業(yè)版權(quán)保護(hù)與運(yùn)營(yíng)手冊(cè)
- 四川省樂(lè)山市高中高三上學(xué)期第一次調(diào)查研究考試數(shù)學(xué)試題【含答案詳解】
- 物流行業(yè)運(yùn)輸司機(jī)安全駕駛與效率績(jī)效評(píng)定表
- 2026年及未來(lái)5年市場(chǎng)數(shù)據(jù)中國(guó)脫硫市場(chǎng)運(yùn)行態(tài)勢(shì)及行業(yè)發(fā)展前景預(yù)測(cè)報(bào)告
評(píng)論
0/150
提交評(píng)論