版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
車用單片機(jī)原理(含實(shí)驗(yàn)與實(shí)訓(xùn))1串口通信的概念2串行通信口的結(jié)構(gòu)與相關(guān)寄存器單擊此處添加標(biāo)題單擊此處添加標(biāo)題3串口的工作方式01串口通信的概念第一節(jié)串口通信的概念
計(jì)算機(jī)與外界的信息交換稱為通信。通信的基本方式有并行通信和串行通信兩種。
(一)并行通信和串行通信
并行通信是將構(gòu)成一組數(shù)據(jù)的各位同時(shí)進(jìn)行傳送,并排傳輸,如8位數(shù)據(jù)或16位數(shù)據(jù)并行傳送。其特點(diǎn)是傳送速度快,但當(dāng)距離較遠(yuǎn)、位數(shù)較多時(shí),會(huì)導(dǎo)致通信線路復(fù)雜且成本高。串行通信是按位進(jìn)行順序傳送,其特點(diǎn)是通信線路簡(jiǎn)單,只需一對(duì)傳輸線就可以實(shí)現(xiàn)通信,從而降低成本,特別適合于遠(yuǎn)距離通信。缺點(diǎn)是傳送速度慢。一、概述第一節(jié)串口通信的概念
第一節(jié)串口通信的概念(二)串行通信的兩種方式
串行通信可以分為兩種方式:異步通信和同步通信。MCS-51系列單片機(jī)采用異步通信方式。
異步傳送的特點(diǎn)是數(shù)據(jù)在線路上的傳送不連續(xù)。傳送時(shí)數(shù)據(jù)以一個(gè)字符為單位進(jìn)行傳送。它用一個(gè)起始位表示字符的開(kāi)始,用停止位表示字符的結(jié)束。一個(gè)字符又稱為一幀信息,每幀數(shù)據(jù)由起始位、數(shù)據(jù)位、奇偶校驗(yàn)位和停止位4部分組成。起始位為0,占1位;數(shù)據(jù)位可以是5位、6位、7位或8位,傳送時(shí)低位在先、高位在后;奇偶校驗(yàn)位占1位(也可不要);最后是停止位,用信號(hào)1來(lái)表示一幀的結(jié)束,可以是1位、1位半或2位。字符間用空閑位填充(高電平),用于等待傳送。第一節(jié)串口通信的概念第一節(jié)串口通信的概念(1)起始位起始位位于數(shù)據(jù)幀的開(kāi)頭,用于向接收設(shè)備表示開(kāi)始傳輸一幀數(shù)據(jù),占1位,起始位始終為低電平。(2)數(shù)據(jù)位數(shù)據(jù)位在起始位之后,是通信中要傳輸?shù)臄?shù)據(jù)信息,一般數(shù)據(jù)位的數(shù)據(jù)可以配置為5~8位,低位在前高位在后。(3)可編程位可編程位在數(shù)據(jù)位之后,用于檢驗(yàn)傳輸?shù)臄?shù)據(jù)有無(wú)錯(cuò)誤,通常采用偶校驗(yàn)或奇校驗(yàn),還可以用于多機(jī)通信中,。(4)停止位停止位在一幀數(shù)據(jù)的末尾,用于向接收設(shè)備表示一幀數(shù)據(jù)傳輸?shù)慕Y(jié)束,占1位或者2位,始終為高電平,一幀數(shù)據(jù)傳輸結(jié)束后,可以接著再傳送起始位,開(kāi)始第二幀數(shù)據(jù)傳輸,也可以等待,等待期間數(shù)據(jù)線都為高電平(空閑位)轉(zhuǎn)態(tài),如果要傳送下一幀,只要讓數(shù)據(jù)線由高電平變?yōu)榈碗娖剑ㄆ鹗嘉唬?,接收設(shè)備就開(kāi)始接收下一幀數(shù)據(jù)。第一節(jié)串口通信的概念
同步通信中數(shù)據(jù)以塊為單位連續(xù)進(jìn)行傳送,相比于異步通信,在發(fā)送開(kāi)始和結(jié)束時(shí),不需要添加啟動(dòng)位和停止位,可以提高數(shù)據(jù)傳輸速度,多用在計(jì)算機(jī)與一些高速設(shè)備之間,發(fā)送端和接收端同用一個(gè)時(shí)鐘源控制,提高通信的速率,如下圖所示。
如果發(fā)送的數(shù)據(jù)塊之間有間隔時(shí)間,則發(fā)送同步字符填充。第一節(jié)串口通信的概念二、串行通信的數(shù)據(jù)傳送方向按照信號(hào)傳輸?shù)姆较蚝屯瑫r(shí)性,一般把傳送方式分為單工方式、半雙工方式和全雙工方式3種。如下圖所示:其中:A端為發(fā)送站,B端為接收站。第一節(jié)串口通信的概念(1)單工方式:通信雙方一方固定為發(fā)送方,另一方固定為接收方,數(shù)據(jù)只能是單向傳輸;
(2)半雙工方式:通信雙方只使用一根數(shù)據(jù)線,每一方都有發(fā)送器和接收器,可以在兩個(gè)方向上傳送,但通信雙方不能同時(shí)接收或發(fā)送數(shù)據(jù),只能交替進(jìn)行;(3)全雙工方式:通信雙方使用兩根數(shù)據(jù)線,分別用于不同方向的數(shù)據(jù)傳輸,通信雙方能夠同時(shí)收發(fā)數(shù)據(jù)。02串行通信口的結(jié)構(gòu)與相關(guān)寄存器第二節(jié)串行通信口的結(jié)構(gòu)與相關(guān)寄存器一、串行通信口的結(jié)構(gòu)
串行通信口的結(jié)構(gòu)
第二節(jié)串行通信口的結(jié)構(gòu)與相關(guān)寄存器一、串行通信口的結(jié)構(gòu)(一)兩個(gè)數(shù)據(jù)緩沖器SBUF
8051單片機(jī)中有兩個(gè)串行口數(shù)據(jù)緩沖器SBUF,一個(gè)用于發(fā)送數(shù)據(jù),一個(gè)用于接收數(shù)據(jù),兩個(gè)數(shù)據(jù)緩沖器在物理上相互獨(dú)立,兩個(gè)SBUF公用一個(gè)地址99H,可以通過(guò)字節(jié)尋址,不可以位尋址。發(fā)送SBUF用來(lái)發(fā)送串行數(shù)據(jù),只能寫入不能讀,接收SBUF用來(lái)接收數(shù)據(jù),只能讀不能寫入,通過(guò)讀指令或者寫指令就可以區(qū)別是對(duì)哪個(gè)SBUF進(jìn)行操作,從而實(shí)現(xiàn)全雙工通信,并且相互之間不會(huì)干擾。第二節(jié)串行通信口的結(jié)構(gòu)與相關(guān)寄存器一、串行通信口的結(jié)構(gòu)(二)發(fā)送控制器
發(fā)送控制器是在三態(tài)輸出門電路和定時(shí)器T1的作用下,將發(fā)送SBUF中并行輸出數(shù)據(jù)轉(zhuǎn)化為串行數(shù)據(jù),并在數(shù)據(jù)中添加起始位、奇偶校驗(yàn)位、停止位。當(dāng)上述過(guò)程完成后,可以將TI置為1,向CPU發(fā)送中斷請(qǐng)求。(三)接收控制器
接收控制器可以將從RXD引腳讀入的串行數(shù)據(jù)轉(zhuǎn)為并行數(shù)據(jù),并過(guò)濾數(shù)據(jù)中的起始位,可編程位、停止位。當(dāng)上述過(guò)程完成后,可以將RI置為1,向CPU發(fā)出中斷請(qǐng)求。第二節(jié)串行通信口的結(jié)構(gòu)與相關(guān)寄存器一、串行通信口的結(jié)構(gòu)
(四)輸入移位寄存器輸入移位寄存器在接收控制器的控制下,將外界輸入的數(shù)據(jù)逐位移入接收SBUF。
(五)定時(shí)器T1T1用作波特率發(fā)生器,產(chǎn)生串行通信收發(fā)數(shù)據(jù)所需的移位脈沖,在發(fā)送數(shù)據(jù)過(guò)程中,對(duì)應(yīng)移位脈沖的下降沿,在接收數(shù)據(jù)過(guò)程中,對(duì)應(yīng)移位脈沖的上升沿,移位脈沖的頻率越高,接收和傳送數(shù)據(jù)的速率越快。第二節(jié)串行通信口的結(jié)構(gòu)與相關(guān)寄存器二、串行通信口的控制寄存器(一)串行控制寄存器SCON
SM0、SM1:由軟件置位或清零,用于選擇串行口的四種工作方式;
SM2:多機(jī)通信控制位;
REN:允許串行接收控制位;
TB8、RB8:發(fā)送或接收數(shù)據(jù)中的第9位;
TI、RI:發(fā)送中斷標(biāo)志位和接收中斷標(biāo)志位。第二節(jié)串行通信口的結(jié)構(gòu)與相關(guān)寄存器
SM2為多機(jī)通信控制位。在方式2和方式3中,如果SM2=1,則接收到的第9位數(shù)據(jù)(RB8)為0時(shí)不啟動(dòng)接收中斷標(biāo)志RI(即RI=0),并且將接收到的前8位數(shù)據(jù)丟棄;RB8為1時(shí),才將接收到的前8位數(shù)據(jù)送入SBUF,并置位RI,產(chǎn)生中斷請(qǐng)求。當(dāng)SM2=0時(shí),則不論第9位數(shù)據(jù)為0或1,都將前8位數(shù)據(jù)裝入SBUF中,并產(chǎn)生中斷請(qǐng)求。在方式0時(shí),SM2必須為0。第二節(jié)串行通信口的結(jié)構(gòu)與相關(guān)寄存器
REN為允許串行接收控制位。若REN=0,則禁止接收;REN=1,則允許接收,該位由軟件置位或復(fù)位。
TB8為發(fā)送數(shù)據(jù)的D8位。在方式2和方式3時(shí),TB8就是所要發(fā)送數(shù)據(jù)的第9位。在多機(jī)通信中,以TB8位的狀態(tài)表示主機(jī)發(fā)送的是地址還是數(shù)據(jù):TB8=0為數(shù)據(jù)、TB8=1為地址TB8位也可用作數(shù)據(jù)的奇偶校驗(yàn)位,該位由軟件置位或者復(fù)位。第二節(jié)串行通信口的結(jié)構(gòu)與相關(guān)寄存器
RB8為接收數(shù)據(jù)的D8位。在方式2和方式3時(shí),接收到的第9位數(shù)據(jù)可作為奇偶校驗(yàn)位或地址幀或數(shù)據(jù)幀的標(biāo)志。方式1時(shí),若SM2=0,則RB8是接收到的停止位。在方式0時(shí),不使用RB8位。
TI為發(fā)送中斷標(biāo)志位。在方式0時(shí),當(dāng)發(fā)送數(shù)據(jù)第8位結(jié)束后,或在其它方式發(fā)送停止位后,由內(nèi)部硬件使TI置位,向CPU請(qǐng)求中斷。CPU在響應(yīng)中斷后,必須用軟件清零。
此外,TI也可供查詢使用。第二節(jié)串行通信口的結(jié)構(gòu)與相關(guān)寄存器
RI
為接收中斷標(biāo)志位。在方式0時(shí),當(dāng)接收數(shù)據(jù)的第8位結(jié)束后,或在其它方式下接收到停止位的中間位置時(shí)由內(nèi)部硬件使RI置位,向CPU請(qǐng)求中斷。同樣,在CPU響應(yīng)中斷后,也必須用軟件清零。RI也可供查詢方式使用。SCON的所有位都可以按位操作“清零”或“置1”。第二節(jié)串行通信口的結(jié)構(gòu)與相關(guān)寄存器(二)電源控制寄存器PCON
PCON的最高位SMOD是串行口波特率系數(shù)控制位。當(dāng)SMOD=1時(shí),波特率增大一倍。
其余各位與串行口工作無(wú)關(guān)。03串口的工作方式第三節(jié)串口的工作方式
串行通信口有4種基本工作方式,由串行控制SCON寄存器的設(shè)置,可以控制串行口工作在其中一種方式。
一、方式0
串行口工作方式0是移位寄存器方式,下頁(yè)是其結(jié)構(gòu)示意圖。數(shù)據(jù)從RxD引腳上接收或發(fā)送;一幀信息由8位數(shù)據(jù)組成,低位在前,高位在后(如下圖);波特率固定,為fosc/12;同步脈沖從TxD引腳輸出。
移位寄存器方式用于51單片機(jī)通過(guò)串行口擴(kuò)展并行I/O口。第三節(jié)串口的工作方式第三節(jié)串口的工作方式(一)方式0輸出
CPU執(zhí)行一條寫SBUF的指令,如“MOVSBUF,A”,就啟動(dòng)了發(fā)送過(guò)程。指令執(zhí)行期間送來(lái)的寫信號(hào)打開(kāi)三態(tài)門1,將經(jīng)內(nèi)部總線送來(lái)的8位并行數(shù)據(jù)寫入發(fā)送數(shù)據(jù)緩沖器SBUF。寫信號(hào)的同時(shí)啟動(dòng)發(fā)送控制器。此后,CPU與串行口并行工作。經(jīng)過(guò)一個(gè)機(jī)器周期后,發(fā)送控制端SEND有效(高電平),打開(kāi)門5和門6,允許RXD引腳發(fā)送數(shù)據(jù),TXD引腳輸出同步移位脈沖。
在時(shí)鐘信號(hào)S6觸發(fā)產(chǎn)生的內(nèi)部移位脈沖作用下,發(fā)送數(shù)據(jù)緩沖器中的數(shù)據(jù)逐位串行輸出。第三節(jié)串口的工作方式因?yàn)槭敲恳粋€(gè)機(jī)器周期從RXD上發(fā)送一位數(shù)據(jù),所以波特率為fosc/12。S6同時(shí)形成同步移位脈沖,一個(gè)機(jī)器周期從TXD上輸出一個(gè)脈沖。8位數(shù)據(jù)(一幀)發(fā)送完畢后,SEND恢復(fù)低電平狀態(tài),停止發(fā)送數(shù)據(jù)。且發(fā)送控制器硬件置位發(fā)送中斷標(biāo)志TI=1,向CPU申請(qǐng)中斷。如要再次發(fā)送數(shù)據(jù),必須用軟件將TI標(biāo)志清零,并再次執(zhí)行寫SBUF指令。第三節(jié)串口的工作方式(二)方式0輸入在RI=0的條件下,將REN(SCON.4)置1就啟動(dòng)一次接收過(guò)程。此時(shí)RXD為串行數(shù)據(jù)接收端,TXD依然輸出同步移位脈沖。
REN置1啟動(dòng)了接收控制器。經(jīng)過(guò)一個(gè)機(jī)器周期,接收控制端RECV有效(高電平),打開(kāi)門6,允許TXD輸出同步移位脈沖。該脈沖控制外接芯片逐位輸入數(shù)據(jù),波特率為fosc/12。在內(nèi)部移位脈沖作用下,RXD上的串行數(shù)據(jù)逐位移入移位寄存器。第三節(jié)串口的工作方式
當(dāng)8位數(shù)據(jù)(一幀)全部移入移位寄存器后,接收控制器使RECV失效,停止輸出移位脈沖,并發(fā)出“裝載SBUF”信號(hào),打開(kāi)三態(tài)門2,將8位數(shù)據(jù)并行送入接收數(shù)據(jù)緩沖器SBUF中保存。與此同時(shí),接收控制器硬件置接收中斷標(biāo)志RI=1,向CPU申請(qǐng)中斷。CPU響應(yīng)中斷后,用軟件使RI=0,使移位寄存器開(kāi)始接收下一幀信息,然后通過(guò)讀接收緩沖器的指令,例如“MOVA,SBUF
”,讀取SBUF中的數(shù)據(jù)。在執(zhí)行這條指令時(shí),CPU發(fā)出的“讀SBUF”信號(hào)打開(kāi)三態(tài)門3,數(shù)據(jù)經(jīng)內(nèi)部總線進(jìn)入CPU。第三節(jié)串口的工作方式第三節(jié)串口的工作方式二、方式1
方式1為8位異步通信接口方式,其結(jié)構(gòu)示意圖如下頁(yè)所示。RxD為接收端,TxD為發(fā)送端,一幀信息由10位組成,起始位、數(shù)據(jù)位(8位)和停止位。
方式1的波特率可變,由定時(shí)器/計(jì)數(shù)器T1的溢出率以及SMOD位的狀態(tài)決定,且發(fā)送波特率與接收波特率可以不同。第三節(jié)串口的工作方式第三節(jié)串口的工作方式(一)方式1輸出
CPU執(zhí)行一條“寫SBUF”的指令便啟動(dòng)了串行口發(fā)送過(guò)程,數(shù)據(jù)從TxD輸出。在指令執(zhí)行期間,CPU送來(lái)“寫SBUF”信號(hào),將并行數(shù)據(jù)送入SBUF,并啟動(dòng)發(fā)送控制器。經(jīng)一個(gè)機(jī)器周期,發(fā)送控制端的SEND、DATA相繼有效,通過(guò)輸出控制門從TxD上逐位輸出一幀信息。一幀信息發(fā)送完畢后,SEND、DATA端失效,發(fā)送控制器硬件置發(fā)送中斷標(biāo)志TI=1,向CPU申請(qǐng)中斷。發(fā)送指令:MOVSBUF,A第三節(jié)串口的工作方式第三節(jié)串口的工作方式(二)方式1輸入當(dāng)允許接收控制位REN
被置1時(shí),接收器開(kāi)始工作,跳變檢測(cè)器以所選波特率的16倍
速率采樣
RxD引腳。當(dāng)采樣到從1到0的負(fù)跳變時(shí),啟動(dòng)接收控制器接收數(shù)據(jù)。由于發(fā)送、接收雙方各自使用自己的時(shí)鐘,兩者的頻率總有少許差異。為了避免這種影響,控制器將1位的傳送時(shí)間分成16等份,位檢測(cè)器在7、8、9三個(gè)狀態(tài),也就是在信號(hào)中央采樣RxD三次。而且,三次采樣中至少兩次相同的值被確認(rèn)為數(shù)據(jù),這是為了減少干擾的影響。第三節(jié)串口的工作方式如果接收到的起始位的值不是0,則起始位無(wú)效,復(fù)位接收電路。如果起始位為0,則開(kāi)始接收本幀其它各位數(shù)據(jù)。控制器發(fā)出內(nèi)部移位脈沖,將RxD上的數(shù)據(jù)逐位移入移位寄存器,當(dāng)8位數(shù)據(jù)及停止位全部移入后,將根據(jù)以下?tīng)顟B(tài),進(jìn)行響應(yīng)操作。第三節(jié)串口的工作方式
①如果RI=0、SM2=0,則接收控制器發(fā)出“裝載SBUF”信號(hào),將8位數(shù)據(jù)裝入接收數(shù)據(jù)緩沖器SBUF,停止位裝入RB8,并置RI=1,向CPU申請(qǐng)中斷。②如果RI=0、SM2=1,那么只有停止位為1才發(fā)生上述操作。③RI=0、SM2=1且停止位為0,所接收的數(shù)據(jù)不裝入SBUF,數(shù)據(jù)將會(huì)丟失。④如果RI=1,則所接收的數(shù)據(jù)在任何情況下都不裝入SBUF,即數(shù)據(jù)丟失。第三節(jié)串口的工作方式
無(wú)論出現(xiàn)哪一種情況,跳變檢測(cè)器將繼續(xù)采樣RxD引腳的負(fù)跳變,以便接收下一幀信息。接收裝置采用移位寄存器和SBUF雙緩沖結(jié)構(gòu),以避免在接收后一幀數(shù)據(jù)之前,CPU尚未及時(shí)響應(yīng)中斷而將前一幀數(shù)據(jù)取走所造成的數(shù)據(jù)重疊問(wèn)題。
采用雙緩沖器結(jié)構(gòu),可使前、后兩幀數(shù)據(jù)進(jìn)入SBUF的時(shí)間間隔最少有10個(gè)機(jī)器周期。所以,在后一幀數(shù)據(jù)送入SBUF之前,CPU應(yīng)該有足夠的時(shí)間將前一幀數(shù)據(jù)取走。第三節(jié)串口的工作方式
第三節(jié)串口的工作方式
三、方式2與方式3
方式2與方式3都是9位異步通信接口,其結(jié)構(gòu)示意圖與方式1相同。發(fā)送或接收的一幀信息由11位組成,其中1位起始位、9位數(shù)據(jù)位和1位停止位。方式2與方式3僅波特率不同,方式2的波特率為
fosc/32,SMOD=1,或
fosc/64,SMOD=0而方式3的波特率由定時(shí)器/計(jì)數(shù)器T1及SMOD決定。第三節(jié)串口的工作方式
在方式2、方式3時(shí),發(fā)送、接收數(shù)據(jù)的過(guò)程與方式1基本相同,所不同的僅在于對(duì)第9位數(shù)據(jù)TB8、RB8的處理上。發(fā)送時(shí),第9位數(shù)據(jù)由SCON中的TB8位提供;接收數(shù)據(jù)時(shí),當(dāng)9位數(shù)據(jù)全部移入移位寄存器之后,將前8位數(shù)據(jù)裝入SBUF,而將第9位數(shù)據(jù)裝入SCON中的RB8位。第三節(jié)串口的工作方式
方式2與方式3—發(fā)送過(guò)程第三節(jié)串口的工作方式
方式2與方式3—接收過(guò)程第三節(jié)串口的工作方式五、波特率的設(shè)置
串行口的4種工作方式對(duì)應(yīng)著三種波特率。
方式0:波特率固定為fosc/12;
方式2:波特率由振蕩頻率fosc和SMOD(PCON.7)所決定。其對(duì)應(yīng)公式為
波特率=2SMOD×fosc/64
當(dāng)SMOD=0時(shí),波特率為fosc/64;當(dāng)SMOD=1時(shí),波特率為fosc/32。
第三節(jié)串口的工作方式
方式1和方式3:波特率由定時(shí)器/計(jì)數(shù)器T1的溢出率和SMOD決定,即:
波特率=2SMOD×T1的溢出率/32定時(shí)器/計(jì)數(shù)器T1的溢出率計(jì)算:
溢出率=1/溢出時(shí)間=1/(機(jī)器周期×T1計(jì)數(shù)值)=1/(12/fosc×T1計(jì)數(shù)值)=(fosc/12)/T1計(jì)數(shù)值第三節(jié)串口的工作方式
◆方式1和方式3:
溢出率=(fosc/12)/T1計(jì)數(shù)值=(fosc/12)/(2n–計(jì)數(shù)初值)(1)當(dāng)T1工作于方式0:13位計(jì)數(shù)方式溢出率=(fosc/12)/(213–計(jì)數(shù)初值)(2)當(dāng)T1工作于方式1:16位計(jì)數(shù)方式溢出率=(fosc/12)/(216–計(jì)數(shù)初值)
(3)當(dāng)T1工作于方式2:8位自動(dòng)重裝計(jì)數(shù)方式溢出率=(fosc/12)/(28–計(jì)數(shù)初值)第三節(jié)串口的工作方式
方式1和方式3:波特率=2SMOD×(fosc/12)/(2n–計(jì)數(shù)初值)/32實(shí)際應(yīng)用中,通常是先確定波特率,然后求出T1的計(jì)數(shù)初值,即:
T1計(jì)數(shù)初值=2n–2SMOD×(fosc/12)/波特率/32如:波特率1200bps、T1工作于方式2、SMOD位為0、晶振頻率fosc=11.0592MHz,則T1計(jì)數(shù)初值為:T1計(jì)數(shù)初值=256–(11.0592×106/12)/1200/32=232=0E8H第三節(jié)串口的工作方式
方式1和方式3:實(shí)際應(yīng)用中,常用的波特率和T1的計(jì)數(shù)初值關(guān)系如下:波特率foscSMOD位工作方式T1計(jì)數(shù)初值62.5K12MHz12FFH19.2K11.0592MHz12FDH9.6K11.0592MHz02FDH4.8K11.0592MHz02FAH2.4K11.0592MHz02F4H1.2K11.0592MHz02E8H車用單片機(jī)原理(含實(shí)驗(yàn)與實(shí)訓(xùn))1數(shù)碼管顯示器及其接口2鍵盤接口設(shè)計(jì)單擊此處添加標(biāo)題單擊此處添加標(biāo)題3LCD1602液晶顯示器接口設(shè)計(jì)01數(shù)碼管顯示器及其接口第一節(jié)數(shù)碼管顯示器及其接口
一、LED數(shù)碼管的顯示原理
LED數(shù)碼管一般由8個(gè)或者7個(gè)發(fā)光二極管組成,每一個(gè)發(fā)光二極管稱為一段,因此,LED數(shù)碼管一般稱為8段數(shù)碼管或者7段數(shù)碼管,8段數(shù)碼管相比于7段數(shù)碼管多了一個(gè)小數(shù)點(diǎn)如圖7-1(a)所示。
根據(jù)LED發(fā)光二極管連接方式的不同,LED數(shù)碼管分為共陽(yáng)極和共陰極,如圖(b)(c)所示。共陽(yáng)極LED顯示器內(nèi)部的發(fā)光二極管的陽(yáng)極是共同接一個(gè)+5V的電源,當(dāng)發(fā)光二極管的陰極接低電平時(shí),相應(yīng)的發(fā)光二極管被點(diǎn)亮。同樣,共陰極LED顯示器內(nèi)部的發(fā)光二極管的陰極共同連接地,當(dāng)發(fā)光二極管的陽(yáng)極接高電平時(shí),相應(yīng)的發(fā)光二極管被點(diǎn)亮。第一節(jié)數(shù)碼管顯示器及其接口
圖7-1LED數(shù)碼管第一節(jié)數(shù)碼管顯示器及其接口
顯示字符共陰極共陽(yáng)極顯示字符共陰極共陽(yáng)極03FHC0HB7CH83H106HF9HC39HC6H25BHA4HD5EHA1H34FHB0HE79H86H466H99HF71H8EH56DH92HP73H8CH67DH82HU3EHC1H707HF8HГ31HCEH87FH80HY6EH91H96FH90H8.FFH00HA77H88H“滅”00HFFH為使LED數(shù)碼管顯示不同字符,要把某些段點(diǎn)亮,就要為數(shù)碼管各段提供一字節(jié)的二進(jìn)制碼,即字型碼(也稱段碼)。習(xí)慣上以“a”段對(duì)應(yīng)字型碼字節(jié)的最低位。各字符段碼見(jiàn)表5-1。第一節(jié)數(shù)碼管顯示器及其接口
LED數(shù)碼管有兩種顯示方式:靜態(tài)顯示和動(dòng)態(tài)顯示兩種顯示方式。(一)靜態(tài)顯示方式
無(wú)論多少位LED數(shù)碼管,都同時(shí)處于顯示狀態(tài)。
多位LED數(shù)碼管工作于靜態(tài)顯示方式時(shí),各位共陰極(或共陽(yáng)極)連接在一起并接地(或接+5V);每位數(shù)碼管段碼線(a~dp)分別與一個(gè)8位I/O口鎖存器輸出相連。如果送往各個(gè)LED數(shù)碼管所顯示字符的段碼一經(jīng)確定,則相應(yīng)I/O口鎖存器鎖存的段碼輸出將維持不變,直到送入下一個(gè)顯示字符段碼。靜態(tài)顯示方式顯示無(wú)閃爍,亮度較高,軟件控制較易。第一節(jié)數(shù)碼管顯示器及其接口
圖5-7為4位LED數(shù)碼管靜態(tài)顯示電路,各數(shù)碼管可獨(dú)立顯示,只要向控制各位I/O口鎖存器送相應(yīng)顯示段碼,該位就能保持相應(yīng)的顯示字符。
這樣在同一時(shí)間,每一位顯示的字符可各不相同。靜態(tài)顯示方式占用I/O口端口線較多。圖5-7電路,要占用4個(gè)8位I/O口(或鎖存器)。如數(shù)碼管數(shù)目增多,則需增加I/O口數(shù)目。第一節(jié)數(shù)碼管顯示器及其接口
圖7-2數(shù)碼管靜態(tài)顯示第一節(jié)數(shù)碼管顯示器及其接口
【案例】
單片機(jī)控制兩只數(shù)碼管,靜態(tài)顯示兩個(gè)數(shù)字“1”和“2”。本例的原理電路如圖7-3所示。單片機(jī)利用P1口與P2口分別控制兩個(gè)LED數(shù)碼管DS0與DS1的段碼,兩個(gè)數(shù)碼管的公共端,共陽(yáng)極接+5V電源,數(shù)碼管DS0與DS1始終處于導(dǎo)通狀態(tài),可以靜態(tài)顯示“1”和“2”。第一節(jié)數(shù)碼管顯示器及其接口
參考程序:#include<reg5l.h>voidmain(){P1=0xf9;
//將數(shù)字“2”的段碼(共陽(yáng)極)送Pl口P2=0xa4;
//將數(shù)字“1”的段碼(共陽(yáng)極)送P2口while(1);}圖7-3數(shù)碼管靜態(tài)顯示案例第一節(jié)數(shù)碼管顯示器及其接口
(二)動(dòng)態(tài)顯示方式
顯示位數(shù)較多時(shí),靜態(tài)顯示所占的I/O口多,這時(shí)常采用動(dòng)態(tài)顯示。為節(jié)省I/O口,通常將所有顯示器段碼線相應(yīng)段并聯(lián)在一起,由一個(gè)8位I/O口控制,各顯示位公共端分別由另一單獨(dú)I/O口線控制。第一節(jié)數(shù)碼管顯示器及其接口圖7-4:8位8段LED動(dòng)態(tài)顯示器電路示意圖。其中單片機(jī)發(fā)出的段碼占用1個(gè)8位I/O(1)端口,而位選控制使用I/O(2)端口中8位口線。動(dòng)態(tài)顯示就是單片機(jī)向段碼線輸出欲顯示字符的段碼。每一時(shí)刻,只有1位位選線有效,即選中某一位顯示,其他各位位選線都無(wú)效。每隔一定時(shí)間逐位輪流點(diǎn)亮各數(shù)碼管(掃描方式),由于數(shù)碼管余輝和人眼的“視覺(jué)暫留”作用,只要控制好每位數(shù)碼管顯示時(shí)間和間隔,則可造成“多位同時(shí)亮”的假象,達(dá)到同時(shí)顯示效果。第一節(jié)數(shù)碼管顯示器及其接口
圖7-4數(shù)碼管動(dòng)態(tài)顯示第一節(jié)數(shù)碼管顯示器及其接口
各位數(shù)碼管輪流點(diǎn)亮的時(shí)間間隔(掃描間隔)應(yīng)根據(jù)實(shí)際情況定。發(fā)光二極管從導(dǎo)通到發(fā)光有一定的延時(shí),如果點(diǎn)亮?xí)r間太短,發(fā)光太弱,人眼無(wú)法看清;時(shí)間太長(zhǎng),產(chǎn)生閃爍現(xiàn)象,且此時(shí)間越長(zhǎng),占用單片機(jī)時(shí)間也越多。另外,顯示位數(shù)增多,也將占用單片機(jī)大量時(shí)間,因此動(dòng)態(tài)顯示實(shí)質(zhì)是以執(zhí)行程序時(shí)間來(lái)?yè)Q取I/O端口減少。第一節(jié)數(shù)碼管顯示器及其接口
【案例】
各位數(shù)碼管輪流點(diǎn)亮的時(shí)間間隔(掃描間隔)應(yīng)根據(jù)實(shí)際情況定。發(fā)光二極管從導(dǎo)通到發(fā)光有一定的延時(shí),如果點(diǎn)亮?xí)r間太短,發(fā)光太弱,人眼無(wú)法看清;時(shí)間太長(zhǎng),產(chǎn)生閃爍現(xiàn)象,且此時(shí)間越長(zhǎng),占用單片機(jī)時(shí)間也越多。另外,顯示位數(shù)增多,也將占用單片機(jī)大量時(shí)間,因此動(dòng)態(tài)顯示實(shí)質(zhì)是以執(zhí)行程序時(shí)間來(lái)?yè)Q取I/O端口減少。本例原理電路與仿真圖7-5所示。圖7-58只數(shù)碼管分別滾動(dòng)顯示單個(gè)數(shù)字1~8第一節(jié)數(shù)碼管顯示器及其接口
參考程序:#include<reg51.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedintucharcodedis_code[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88};//共陽(yáng)數(shù)碼管段碼表voiddelay(uinty)//延時(shí)子函數(shù){uchari;while(y--)for(i=0;i<110;i++);}第一節(jié)數(shù)碼管顯示器及其接口
voidmain(){ucharj=0x80;while(1){for(i=0;i<8;i++){P2=0xff;//關(guān)閉數(shù)碼管顯示j=_crol_(j,1);//_crol_(j,1)——將j循環(huán)左移1位P0=dis_code[i];//P0口輸出段碼P2=j;//P2口輸出位控碼delay(500);第二節(jié)鍵盤接口設(shè)計(jì)
鍵盤是單片機(jī)應(yīng)用系統(tǒng)中最常用的開(kāi)關(guān)量輸入設(shè)備,通過(guò)鍵盤輸入數(shù)據(jù)或命令,可以與單片機(jī)進(jìn)行人機(jī)交互。鍵盤按其結(jié)構(gòu)形式可分為編碼鍵盤和非編碼鍵盤。編碼鍵盤采用硬件方法完成鍵盤識(shí)別功能,這種鍵盤硬件電路較復(fù)雜,一般使用在計(jì)算機(jī)鍵盤中。非編碼鍵盤是由軟件完成鍵盤識(shí)別功能的,這種鍵盤硬件電路較為簡(jiǎn)單,在單片機(jī)應(yīng)用系統(tǒng)中使用較多。下面介紹主要的非編碼鍵盤的工作原理及其工作方式。第二節(jié)鍵盤接口設(shè)計(jì)
一、鍵盤工作原理
1、鍵輸入原理
鍵盤是一組按鍵的集合,鍵盤中的每個(gè)按鍵都是一個(gè)常開(kāi)的開(kāi)關(guān)電路,當(dāng)所設(shè)置的功能鍵或數(shù)字鍵按下時(shí),則處于閉合狀態(tài)。對(duì)于一組鍵或一個(gè)鍵盤,需要通過(guò)接口電路與單片機(jī)相連,以便將鍵的開(kāi)關(guān)狀態(tài)通知單片機(jī)。
單片機(jī)可以采用查詢方式或中斷方式檢查有無(wú)鍵輸入以及是哪一個(gè)鍵按下,并轉(zhuǎn)入執(zhí)行該鍵的功能程序,執(zhí)行完后再返回到原始狀態(tài)。第二節(jié)鍵盤接口設(shè)計(jì)
2、鍵輸入過(guò)程與軟件應(yīng)解決的問(wèn)題
鍵盤是一組按鍵的集合,鍵盤中的每個(gè)按鍵都是一個(gè)常開(kāi)的開(kāi)關(guān)電路,當(dāng)所設(shè)置的功能鍵或數(shù)字鍵按下時(shí),則處于閉合狀態(tài)。對(duì)于一組鍵或一個(gè)鍵盤,需要通過(guò)接口電路與單片機(jī)相連,以便將鍵的開(kāi)關(guān)狀態(tài)通知單片機(jī)。單片機(jī)可以采用查詢方式或中斷方式檢查有無(wú)鍵輸入以及是哪一個(gè)鍵按下,并轉(zhuǎn)入執(zhí)行該鍵的功能程序,執(zhí)行完后再返回到原始狀態(tài)。第二節(jié)鍵盤接口設(shè)計(jì)
3、鍵輸入過(guò)程與軟件應(yīng)解決的問(wèn)題
無(wú)論是按鍵還是鍵盤,大部分都是利用機(jī)械觸點(diǎn)的合、斷作用。機(jī)械觸點(diǎn)在閉合及斷開(kāi)瞬間由于彈性作用的影響,均存在抖動(dòng)過(guò)程,從而使電壓信號(hào)也出現(xiàn)抖動(dòng),如下圖所示。抖動(dòng)時(shí)間長(zhǎng)短與開(kāi)關(guān)的機(jī)械特性有關(guān),一般為5~10ms。第二節(jié)鍵盤接口設(shè)計(jì)
3、鍵輸入過(guò)程與軟件應(yīng)解決的問(wèn)題
按鍵的閉合穩(wěn)定時(shí)間,由操作人員的按鍵動(dòng)作所確定,一般為十分之幾到幾秒的時(shí)間。為了保證CPU對(duì)鍵的一次閉合僅做一次鍵的輸入處理,就必須去除抖動(dòng)的影響。通常去抖動(dòng)影響的方法有硬件和軟件兩種。在硬件上,采取在鍵輸出端加R-S觸發(fā)器或單穩(wěn)態(tài)電路構(gòu)成去抖動(dòng)電路。第二節(jié)鍵盤接口設(shè)計(jì)
3、鍵輸入過(guò)程與軟件應(yīng)解決的問(wèn)題
在軟件上采取的措施是:在檢測(cè)到有鍵按下時(shí),執(zhí)行一個(gè)10ms左右的延時(shí)程序后,再次判斷該鍵電平是否仍保持閉合狀態(tài)(被按下?tīng)顟B(tài)),若仍保持為閉合狀態(tài)電平,則確認(rèn)該鍵“被按下”,否則認(rèn)為是干擾信號(hào),從而去除了抖動(dòng)影響。
實(shí)際應(yīng)用中,為簡(jiǎn)化電路,通常采用軟件消抖方法。第二節(jié)鍵盤接口設(shè)計(jì)
二、鍵盤的接口電路
常用的鍵盤接口有兩種形式:獨(dú)立式鍵盤接口和矩陣式鍵盤接口。
1、獨(dú)立式鍵盤的工作方式獨(dú)立式鍵盤比較簡(jiǎn)單,每個(gè)按鍵單獨(dú)接一條單片機(jī)I/O輸入線,所有按鍵都有一個(gè)共同的電源或者接地端,通過(guò)檢測(cè)單片機(jī)I/O輸入線輸入電平信號(hào)的狀態(tài),就可以判斷出哪些按鍵已經(jīng)閉合;獨(dú)立鍵盤中各個(gè)按鍵之間是相互獨(dú)立、相互之間不影響。第二節(jié)鍵盤接口設(shè)計(jì)
獨(dú)立式鍵盤有兩種工作方式,分別為查詢式和中斷式,圖7-6(a)所示為查詢方式的獨(dú)立式鍵盤接口電路,每個(gè)按鍵直接與單片機(jī)的I/O口線相連,單片機(jī)通過(guò)I/0口讀取相應(yīng)信號(hào)線的電平狀態(tài),即可識(shí)別出按下的按鍵。圖7-6(b)所示為中斷方式的獨(dú)立式鍵盤接口電路,與查詢方式每隔一段時(shí)間就要去讀取I/O輸入信號(hào)不同,中斷方式中只有按鍵閉合觸發(fā)中斷后,I/O口才會(huì)讀取信號(hào),處理按鍵信息,所以程序處理效率高。第二節(jié)鍵盤接口設(shè)計(jì)
圖7-6鍵盤的工作方式第二節(jié)鍵盤接口設(shè)計(jì)
獨(dú)立式按鍵就是各按鍵相互獨(dú)立、每個(gè)按鍵各接一根單片機(jī)輸入口線,一根輸入線上的按鍵是否按下不會(huì)影響其他輸入線上按鍵的工作狀態(tài)。因此,通過(guò)檢測(cè)輸入線的電平狀態(tài)就可以容易地判斷出哪個(gè)按鍵被按下了。獨(dú)立式按鍵電路配置靈活,軟件結(jié)構(gòu)簡(jiǎn)單。但每個(gè)按鍵需要占用一根輸入口線,在按鍵數(shù)量較多時(shí),輸入口線占用量較大,電路結(jié)構(gòu)亦顯得很繁雜,故此種鍵盤適用于按鍵較少或操作速度要求較高的場(chǎng)合。
第二節(jié)鍵盤接口設(shè)計(jì)
2、矩陣式鍵盤的工作方式由于獨(dú)立式鍵盤中每個(gè)按鍵都需要對(duì)應(yīng)一個(gè)單獨(dú)的IO口,在按鍵較多的情況下,會(huì)占用大量的I/O資源,所以獨(dú)立式按鍵不適合在按鍵較多的場(chǎng)景下使用。矩陣式鍵盤又被稱為行列鍵盤,由行線和列線組成,按鍵位于由行、列線組成的交叉點(diǎn)上。一個(gè)4x4的行列結(jié)構(gòu)就可以構(gòu)成一個(gè)16位矩陣式按鍵鍵盤如圖7-7所示。與獨(dú)立式鍵盤相比,矩陣式鍵盤可以節(jié)省很多硬件資源,所以矩陣式鍵盤接口多用于按鍵數(shù)目較多的場(chǎng)合。第二節(jié)鍵盤接口設(shè)計(jì)
圖7-7矩陣鍵盤第二節(jié)鍵盤接口設(shè)計(jì)矩陣鍵盤一般采用掃描法對(duì)矩陣式鍵盤的按鍵進(jìn)行識(shí)別,可分兩步進(jìn)行:第一步,檢測(cè)是否有按鍵閉合:第二步,如果有鍵閉合,識(shí)別出具體的按鍵。第一步:檢測(cè)是否有按鍵閉合。首先把P1.0-P1.3口的4個(gè)列線置為低電平,然后檢查P1.4-P1.7口各行線電平是否都為高電平,如果不全為高電平,則說(shuō)明有按鍵閉合,如果全為高電平則沒(méi)有按鍵閉合。當(dāng)檢測(cè)到有按鍵按下時(shí),進(jìn)入到第二步,判斷是哪個(gè)按鍵閉合。第二節(jié)鍵盤接口設(shè)計(jì)第二步:識(shí)別哪個(gè)按鍵閉合。在第一步中,檢測(cè)到有按鍵按下時(shí),是不能判別是哪個(gè)按鍵按下。例如當(dāng)按鍵1閉合時(shí),P1.4會(huì)從第一條行線讀到一個(gè)低電平,但此時(shí)不能確定是第一行哪個(gè)按鍵閉合,因?yàn)槿绻恍械陌存I0、2或3按下,第一條行線也會(huì)呈現(xiàn)低電平,為了識(shí)別矩陣鍵盤中具體閉合的按鍵,采用掃描法,先將第一列線置為低電平,其余各列線置為高電平,此時(shí)P1.4讀到低電平說(shuō)明按鍵0閉合,P.17讀到低電平說(shuō)明C按鍵閉合,然后再把第二列線置為低電平,其余列線置為高電平,再檢測(cè)按鍵1、5、9、D4對(duì)于行線的輸出電平,其他按鍵依次類推。第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)
一、液晶顯示器簡(jiǎn)介液晶顯示器(LiquidCrystalDisplay,LCD)具有省電、體積小、抗干擾能力強(qiáng)等優(yōu)點(diǎn),LCD顯示器分為字段型、字符型和點(diǎn)陣圖形型。
1、液晶顯示原理
液晶顯示的原理是利用液晶的物理特性,通過(guò)電壓對(duì)其顯示區(qū)域進(jìn)行控制,有電就有顯示,這樣就可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅(qū)動(dòng)、易于實(shí)現(xiàn)全彩色顯示的特點(diǎn),目前已經(jīng)被廣泛應(yīng)用在便攜式電腦、數(shù)字?jǐn)z像機(jī)、PDA移動(dòng)通信工具等眾多領(lǐng)域。第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)
一、液晶顯示器簡(jiǎn)介
2、液晶顯示器的分類
液晶顯示的分類方法有很多種,通??砂雌滹@示內(nèi)容分為筆畫(huà)式、字符式、點(diǎn)陣式等。除了黑白顯示外,液晶顯示器還有多灰度有彩色顯示等。如果根據(jù)驅(qū)動(dòng)方式來(lái)分,可以分為靜態(tài)驅(qū)動(dòng)、單純矩陣驅(qū)動(dòng)和主動(dòng)矩陣驅(qū)動(dòng)三種。第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)
字段型。以長(zhǎng)條狀組成字符顯示,主要用于數(shù)字顯示,也可用于顯示西文字母或某些字符,廣泛用于電子表、計(jì)算器、數(shù)字儀表中。字符型。專門用于顯示字母、數(shù)字、符號(hào)等。一個(gè)字符由5×7或5×10的點(diǎn)陣組成,在單片機(jī)系統(tǒng)中已廣泛使用。點(diǎn)陣圖形型。廣泛用于圖形顯示,如筆記本電腦、彩色電視和游戲機(jī)等。它是在平板上排列的多行列的矩陣式的晶格點(diǎn),點(diǎn)大小與多少?zèng)Q定了顯示的清晰度。第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)
二、1602字符型LCD簡(jiǎn)介
LCD1602工作電壓4.5-5.5V,典型5V,工作電流2mA。標(biāo)準(zhǔn)的14引腳(無(wú)背光)或16個(gè)引腳(有背光)的外形及引腳分布如圖7-8所示。(a)LCD1602的外形(b)LCD1602的引腳圖7-8LCD1602外形及引腳第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)
引腳包括8條數(shù)據(jù)線、3條控制線和3條電源線,見(jiàn)下表。通過(guò)單片機(jī)向模塊寫入命令和數(shù)據(jù),就可對(duì)顯示方式和顯示內(nèi)容做出選擇。編號(hào)符號(hào)引腳說(shuō)明1VSSVSS為地電源2VDDVDD接5V正電源3VEE液晶顯示器對(duì)比度調(diào)整端,可接0-5V電壓調(diào)節(jié)顯示對(duì)比度4RSRS為寄存器選擇,RS=1時(shí)選擇數(shù)據(jù)寄存器、RS=0時(shí)選擇指令寄存器。5R/W讀寫信號(hào)線,高電平時(shí)進(jìn)行對(duì)液晶顯示器讀操作,低電平時(shí)對(duì)液晶顯示器進(jìn)行寫操作。6EE端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。7-14D0-D78位雙向數(shù)據(jù)線,用于輸入顯示數(shù)據(jù)15BLA背光源正極16BLK背光源負(fù)極第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)三、1602字符型LCD簡(jiǎn)介顯示字符首先要解決待顯示字符的ASCII碼產(chǎn)生。用戶只需在C51程序中寫入欲顯示的字符常量或字符串常量,C51程序在編譯后會(huì)自動(dòng)生成其標(biāo)準(zhǔn)的ASCII碼,然后將生成的ASCII碼送入顯示用數(shù)據(jù)存儲(chǔ)器DDRAM,內(nèi)部控制電路就會(huì)自動(dòng)將該ASCII碼對(duì)應(yīng)的字符在LCD1602顯示出來(lái)。第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)三、1602字符型LCD簡(jiǎn)介讓液晶顯示器顯示字符,首先對(duì)其進(jìn)行初始化設(shè)置:對(duì)有、無(wú)光標(biāo)、光標(biāo)移動(dòng)方向、光標(biāo)是否閃爍及字符移動(dòng)方向等進(jìn)行設(shè)置,才能獲得所需顯示效果。對(duì)LCD1602的初始化、讀、寫、光標(biāo)設(shè)置、顯示數(shù)據(jù)的指針設(shè)置等,都是單片機(jī)向LCD1602寫入命令字來(lái)實(shí)現(xiàn)。命令字見(jiàn)下表。第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)三、1602字符型LCD簡(jiǎn)介序號(hào)選擇狀態(tài)指令控制字指令說(shuō)明RSR/WED7D6D5D4D3D2D1D0100100000001清屏20010000001×光標(biāo)歸位3001000001I/DS進(jìn)入模式設(shè)置400100001DCB顯示器ON/OFF控制50010001S/CR/L××顯示器或光標(biāo)移動(dòng)方向6001001DLNF××功能設(shè)定700101CGRAM地址(6位)設(shè)定CGRAM地址80011DDRAM地址(7位)設(shè)定DDRAM地址9011BFAC的內(nèi)容7位(AC0~AC6)讀取忙碌信號(hào)或地址10101寫入到液晶顯示模塊的8位數(shù)據(jù)(D7~D0)數(shù)據(jù)寫入11111讀出的8位顯示數(shù)據(jù)(D7~D0)讀出數(shù)據(jù)表LCD1602命令字第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)1、清屏指令清屏指令的指令編碼如下:RSR/WED7D6D5D4D3D2D1D000100000001具體功能如下:1)清除顯示屏所有的顯示內(nèi)容,清顯示指令將空位字符碼20H送入全部DDRAM位址中,使DDRAM中的內(nèi)容全部清除。2)DDRAM地址計(jì)數(shù)器AC=0。3)游標(biāo)或者閃爍回到原點(diǎn),返回到地址00H(顯示屏左上角)。第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)2、光標(biāo)返回指令
光標(biāo)返回指令編碼如下:RSR/WED7D6D5D4D3D2D1D00010000001X(0或1)具體功能如下:1)光標(biāo)所在位的字符回到顯示屏左上角第一個(gè)顯示位。2)歸位元指令置位址計(jì)數(shù)器AC=0。3)DDRAM中的內(nèi)容不做改變。第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)3、顯示模式設(shè)置指令
顯示模式設(shè)置指令的指令編碼如下:RSR/WED7D6D5D4D3D2D1D0001000001I/DS具體功能如下:1)當(dāng)I/D=1時(shí),完成一個(gè)字符碼傳送后,光標(biāo)右移,AC自動(dòng)加1;當(dāng)I/D=0時(shí),完成一個(gè)字符碼傳送后,光標(biāo)左移,AC自動(dòng)減1。2)當(dāng)S=1時(shí),顯示屏的全部顯示移動(dòng)一位,I/D=1時(shí)全部向右移動(dòng)一位,I/D=0時(shí)全部向左移動(dòng)一位;S=0,全部顯示不發(fā)生移位。
第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)4、顯示開(kāi)關(guān)及光標(biāo)設(shè)置指令
顯示開(kāi)關(guān)及光標(biāo)設(shè)置指令的指令編碼如下:RSR/WED7D6D5D4D3D2D1D000100001DCB具體功能如下:1)當(dāng)D=1時(shí),顯示屏開(kāi)顯示;當(dāng)D=0時(shí),顯示屏關(guān)顯示;關(guān)顯示后,顯示數(shù)據(jù)仍保持在DDRAM中,立即開(kāi)顯示可以再現(xiàn)。2)當(dāng)C=1時(shí),光標(biāo)顯示;當(dāng)C=0時(shí),光標(biāo)不顯示,不顯示游標(biāo)并不影響模塊其它顯示功能。3)當(dāng)B=1時(shí),光標(biāo)所指位置上,交替顯示全黑點(diǎn)陣和顯示字符,產(chǎn)生閃爍效果;當(dāng)B=0時(shí),光標(biāo)不閃爍。第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)5、光標(biāo)和字符移位指令
光標(biāo)和字符移位指令的指令編碼如下:RSR/WED7D6D5D4D3D2D1D00010001S/CR/LXX
光標(biāo)和字符移位指令可使游標(biāo)或顯示在沒(méi)有讀寫顯示數(shù)據(jù)的情況下,向左或向右移動(dòng),具體功能如下:1)S/C:光標(biāo)或字符移位選擇控制位。S/C=1移動(dòng)顯示字符,S/C=0移動(dòng)光標(biāo)。2)R/L:移動(dòng)方向選擇控制位。R/L=0左移,R/L=1右移。第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)6、功能設(shè)置指令
功能設(shè)置指令的指令編碼如下:RSR/WED7D6D5D4D3D2D1D0001001DLNF××具體功能如下:1)DL是數(shù)據(jù)接口寬度標(biāo)志。當(dāng)DL=1時(shí),8位數(shù)據(jù)總線DB7-DB0;DL=0,4位數(shù)據(jù)總線D7-D4,D3-D0不用,使用此方式傳送數(shù)據(jù),需分兩次進(jìn)行。2)N是顯示行數(shù)標(biāo)志。當(dāng)N=1時(shí),兩行顯示模式;當(dāng)N=0時(shí),單行顯示模式。3)F是顯示字符點(diǎn)陣字體標(biāo)志;當(dāng)F=1時(shí):5×10點(diǎn)陣+光標(biāo)顯示模式;當(dāng)F=0時(shí):5×7點(diǎn)陣+光標(biāo)顯示模式。第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)7、CGRAM地址設(shè)置指令
CGRAM地址設(shè)置指令的指令編碼如下:RSR/WED7D6D5D4D3D2D1D000101CGRAM地址(6位)
具體功能如下:
該指令將6位的CGRAM地址寫入地址指針計(jì)數(shù)器AC內(nèi),隨后的讀寫操作則是針對(duì)CGRAM的讀寫操作。第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)8、DDRAM地址設(shè)置指令
DDRAM地址設(shè)置指令的指令編碼如下:RSR/WED7D6D5D4D3D2D1D00011DDRAM地址(7位)具體功能如下:該指令將7位的DDRAM地址寫入地址指針計(jì)數(shù)器AC內(nèi),隨后的讀寫操作則是針對(duì)DDRAM中該地址的讀寫操作第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)9、讀忙標(biāo)志BF和AC地址指令
讀忙標(biāo)志BF和AC地址指令的指令編碼如下:RSR/WED7D6D5D4D3D2D1D0011BFAC的內(nèi)容7位(AC0~AC6)具體功能如下:1)當(dāng)RS=0和R/W=1時(shí),在E信號(hào)高電平的作用下,從BF和AC6~AC0被讀到數(shù)據(jù)總線DB7~DB0的相應(yīng)位。2)BF是內(nèi)部操作忙標(biāo)志。當(dāng)BF=1時(shí),表示模塊內(nèi)部正忙,此時(shí)模塊不接收單片機(jī)發(fā)送過(guò)來(lái)的指令和數(shù)據(jù),當(dāng)BF=0時(shí),表示模塊內(nèi)部空閑,可以接受單片機(jī)發(fā)送的指令和數(shù)據(jù)。3)AC6-AC0是地址計(jì)數(shù)器AC內(nèi)的當(dāng)前內(nèi)容,由于地址計(jì)數(shù)器AC中地址為CGROM、CGRAM和DDRAM的公用,因此當(dāng)前AC內(nèi)容所指區(qū)域由前一條指令操作區(qū)域決定;當(dāng)只有BF=0時(shí),從DB7~DB0讀取的數(shù)據(jù)才有效。第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)10、寫數(shù)據(jù)到CGRAM或DDRAM指令
寫數(shù)據(jù)到CGRAM或DDRAM指令的指令編碼如下:RSR/WED7D6D5D4D3D2D1D0101寫入到液晶顯示模塊的8位數(shù)據(jù)(D7~D0)
具體功能如下:
寫數(shù)據(jù)到CGRAM或DDRAM指令功能是將用戶自定義字符的字模數(shù)據(jù)寫到已經(jīng)設(shè)置好的CGRAM的地址中,或者是將欲顯示字符的字符碼寫入DDRAM,讓顯示屏顯示字符。欲寫入的數(shù)據(jù)D7~D0首先暫存在DR中,再由模塊的內(nèi)部操作自動(dòng)寫入地址指針?biāo)付ǖ腃GRAM單元或者DDRAM單元中。第三節(jié)LCD1602液晶顯示器接口設(shè)計(jì)11、從CGRAM或DDRAM中讀數(shù)據(jù)指令
從CGRAM或DDRAM中讀
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 玉溪師范學(xué)院《數(shù)據(jù)結(jié)構(gòu)與算法》2021-2022學(xué)年期末試卷
- 玉溪師范學(xué)院《模擬電子技術(shù)實(shí)驗(yàn)》2021-2022學(xué)年期末試卷
- 道路運(yùn)輸企業(yè)主要負(fù)責(zé)人理論考試題及答案-知識(shí)題庫(kù)
- 國(guó)際金融實(shí)務(wù)教案
- 第一新聲-2024年中國(guó)CRM市場(chǎng)研究報(bào)告
- 2024年玻璃石材家具項(xiàng)目成效分析報(bào)告
- 2024屆河北省石家莊市晉州一中第一次高中畢業(yè)生復(fù)習(xí)統(tǒng)一檢測(cè)試題數(shù)學(xué)試題
- 2024屆廣西壯族自治區(qū)桂林市人教A版高中數(shù)學(xué)試題高三二輪函數(shù)的圖象與性質(zhì)測(cè)試
- 2024屆廣西欽州市第三中學(xué)高三數(shù)學(xué)試題3月25日第4周測(cè)試題
- 采購(gòu)合同履約檢查方案
- 《整式的加減》第2課時(shí)示范課教學(xué)設(shè)計(jì)【數(shù)學(xué)七年級(jí)上冊(cè)北師大】
- 個(gè)人簡(jiǎn)歷制作指導(dǎo)培訓(xùn)課件
- 千年菩提路解說(shuō)詞
- 小學(xué)科學(xué)校本課程教材
- 煤礦隱蔽致災(zāi)因素普查課件
- 通用版高中化學(xué)二輪復(fù)習(xí)專題課件原子結(jié)構(gòu)
- 國(guó)開(kāi)電大 Matlab語(yǔ)言及其應(yīng)用 實(shí)驗(yàn)任務(wù)Simulink系統(tǒng) 建模與仿真實(shí)驗(yàn)報(bào)告
- 《金融學(xué)(第三版)》第12章 現(xiàn)代貨幣的創(chuàng)造機(jī)制
- 2023屆高考作文模擬寫作-“引體向上”與“低姿匍匐”課件
- 呼出氣一氧化氮測(cè)定-課件
- 2022年09月上海圖書(shū)館(上??茖W(xué)技術(shù)情報(bào)研究所)2022年公開(kāi)招考16名工作人員沖刺卷(3套)答案詳解㈠
評(píng)論
0/150
提交評(píng)論