版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第1章微型計(jì)算機(jī)基礎(chǔ)0微型計(jì)算機(jī)的二進(jìn)制運(yùn)算微型計(jì)算機(jī)的碼制和編碼微型計(jì)算機(jī)的數(shù)制及其轉(zhuǎn)換微型計(jì)算機(jī)的組成體系第1章微型計(jì)算機(jī)基礎(chǔ)1第1章微型計(jì)算機(jī)基礎(chǔ)概述微型計(jì)算機(jī)是一種能對(duì)信息加工處理的機(jī)器,它具有記憶、判斷和運(yùn)算能力,能仿效人類的思維活動(dòng),代替人的部分腦力勞動(dòng),并能對(duì)生產(chǎn)過程實(shí)施某種控制等等。1946年,美國賓夕法尼亞大學(xué)制成世界上第一臺(tái)ENIAC(ElectronicNumericalIntegratorAndComputer)電子計(jì)算機(jī)以來,電子計(jì)算機(jī)經(jīng)歷了電子管、晶體管和集成電路三個(gè)發(fā)展時(shí)代,于20世紀(jì)70年代初出現(xiàn)了第一臺(tái)微型計(jì)算機(jī)。。2第1章微型計(jì)算機(jī)基礎(chǔ)1.1微型計(jì)算機(jī)基礎(chǔ)1.微型化計(jì)算機(jī)裝置以微處理器為核心,配置輔助電路(如RAM、ROM、I/O接口電路)而構(gòu)成的微型化的計(jì)算機(jī)裝置(簡(jiǎn)稱μC),它是具有完成運(yùn)行功能的計(jì)算機(jī)。2.單片微型計(jì)算機(jī)由單塊集成電路芯片構(gòu)成,內(nèi)部包含有計(jì)算機(jī)的基本功能部件:中央處理器CPU,存儲(chǔ)器和I/O接口電路等,只需要與適當(dāng)?shù)能浖屯獠吭O(shè)備相結(jié)合,便可成為微機(jī)控制系統(tǒng)。3第6章人機(jī)交互接口1.1.1微型計(jì)算機(jī)的發(fā)展1.微處理器技術(shù)的發(fā)展第一代,1971年10月,美國Intel公司首先推出Intel4004微處理器。微處理器進(jìn)入4位微處理器和低檔8位微處理器的時(shí)期。1972年3月,Intel公司又推出Intel8008微處理器實(shí)現(xiàn)了8位并行運(yùn)算。第二代,1973年開始,以8位微處理為主的時(shí)期。典型產(chǎn)品有:1973年Intel8080;1974年3月,Motorola公司的MC6800;1975~1976年,Zilog公司的Z80;1976年,Intel8085等。4第6章人機(jī)交互接口第三代,1978年開始,以16位微處理為主的時(shí)期。典型產(chǎn)品有:1978年Intel8086;1979年,Zilog公司的Z8000;1979年,Motorola公司的MC68000等。第四代,1981年開始,以32位微處理為主的時(shí)期。典型產(chǎn)品有:1983年,Zilog公司的Z80000;1984年,Motorola公司的MC68020;1985年,Intel公司的80386等。這一時(shí)期微處理器的集成度達(dá)到了空前規(guī)模。如80386微處理器集成度為27.5萬管/片。自Intel80386芯片推出以來,又出現(xiàn)了許多高性能的32位和64位微處理器,如Motorola的MC68030、MC68040,AMD公司的K6-2、K6-3、K7以及Intel的80486、Pentium、PentiumII、PentiumIII和Pentium4等產(chǎn)品。5第6章人機(jī)交互接口2.單片微型計(jì)算機(jī)的發(fā)展單片微型計(jì)算機(jī)的發(fā)展,以Intel公司1976年推出的8位單片機(jī)為起點(diǎn),大體經(jīng)歷了三個(gè)歷史階段。1974年,美國仙童(Fairchild)公司研制出世界上第一臺(tái)單片微型計(jì)算機(jī)F8,該機(jī)由兩塊集成電路芯片組成,結(jié)構(gòu)獨(dú)特,具有與眾不同的指令系統(tǒng),深受民用電器和儀器儀表領(lǐng)域的歡迎和重視。第一代單片微型計(jì)算機(jī)(1976~1978)。始于1976年,以MCS-48系列為代表。第二代單片微型計(jì)算機(jī)(1978~1982)。以Intel公司的MCS-51系列為代表6圖6-2矩陣式鍵盤結(jié)構(gòu)第6章人機(jī)交互接口第三代單片微型計(jì)算機(jī)(1982~)。技術(shù)特點(diǎn)是全速發(fā)展單片微機(jī)的控制功能。綜合特點(diǎn)為:(1)發(fā)展非總線型單片微機(jī),并與原有的總線型單片機(jī)形成了兩大派系。為了滿足家電控制器的巨大市場(chǎng),將單片機(jī)的并行擴(kuò)展總線省去,推出廉價(jià)型單片微機(jī),并盡可能將一些外圍接口封裝在片內(nèi);(2)為了滿足不使用并行總線而能擴(kuò)展各種外圍器件,推出了串行擴(kuò)展總線。如philips的I2C總線、Motorola的SPL、NS公司的Microwire/PLUS的串行外圍接口等;(3)發(fā)展具有良好控制功能的控制網(wǎng)絡(luò)總線,以實(shí)現(xiàn)串行通信總線難以構(gòu)成的多主強(qiáng)控制功能的網(wǎng)絡(luò)系統(tǒng)。例如汽車電子系統(tǒng)中采用的CAN總線。7第6章人機(jī)交互接口1.1.2微型計(jì)算機(jī)的分類機(jī)主流系列1.單片微機(jī)的分類20世紀(jì)80年代以來,各大電氣及半導(dǎo)體器件廠商紛紛推出自己的產(chǎn)品系列。迄今為止,市場(chǎng)上的單片微機(jī)產(chǎn)品已達(dá)60多個(gè)系列,600余個(gè)品種。從不同的角度有不同的分法。從運(yùn)算位長短分,可分為4位、8位、16位、32位等微機(jī)種類;從使用場(chǎng)合的不同,可分為高端單片機(jī)和低端單片機(jī);從應(yīng)用領(lǐng)域分,可分為家電類單片機(jī)、工控類單片機(jī)、通信類單片機(jī)、軍工類單片機(jī);按是否通用分,有通用型單片機(jī)和專用型單片機(jī)。8第6章人機(jī)交互接口2.單片微型計(jì)算機(jī)的主流系列MCS-51系列單片機(jī)是Intel公司1980年推出的8位單片機(jī)。80C51是MCS-51系列中的一個(gè)子系列,是一族高性能兼容型單片機(jī),Siemens、Philips等公司在80C51基礎(chǔ)上推出了與80C51兼容的新型單片機(jī)統(tǒng)稱80C51系列。其中,Philips公司的80C51系列單片機(jī)性能卓越,產(chǎn)品最齊全,最具有代表性。Intel公司的單片微機(jī)9第6章人機(jī)交互接口Freescale是世界上最大的單片機(jī)廠商,2004年由Motorola公司半導(dǎo)體部更名為FreescaleSemiconductor,并獨(dú)立運(yùn)行。Freescale單片機(jī)的特點(diǎn)之一是在同樣的速度下所用的時(shí)鐘頻率較Intel類單片機(jī)低得多,因而使得高頻噪聲低,抗干擾能力強(qiáng),更適合于工控領(lǐng)域及惡劣的環(huán)境。Freescale公司的單片微機(jī)Atmel公司的單片微機(jī)美國Atmel公司是世界上著名的高性能、低功耗、非易失性存儲(chǔ)器和數(shù)字集成電路的一流半導(dǎo)體制造公司。Atmel公司最令人注目的是E2PROM和閃存(flash)存儲(chǔ)器技術(shù),一直處在世界領(lǐng)先地位。該公司把E2PROM和Flash存儲(chǔ)器技術(shù)巧妙地運(yùn)用于單片機(jī),并采用多種封裝形式和高標(biāo)準(zhǔn)質(zhì)量檢測(cè)。10第6章人機(jī)交互接口MicroChip單片機(jī)的主要產(chǎn)品是PIC16C系列和17C系列8位單片機(jī),CPU采用RISC結(jié)構(gòu),分別僅有33,58條指令,采用Harvard雙總線結(jié)構(gòu),運(yùn)行速度快,低工作電壓,低功耗,較大的輸入輸出直接驅(qū)動(dòng)能力,價(jià)格低,在辦公自動(dòng)化設(shè)備,消費(fèi)電子產(chǎn)品,電訊通信,智能儀器儀表,汽車電子,金融電子,工業(yè)控制等不同領(lǐng)域都有廣泛的應(yīng)用,PIC系列單片機(jī)在世界單片機(jī)市場(chǎng)份額排名中逐年提高,發(fā)展非常迅速。MicroChip公司的單片微機(jī)11第6章人機(jī)交互接口1.1.3微型計(jì)算機(jī)系統(tǒng)的組成原理1.以微處理器為中心的微型計(jì)算機(jī)系統(tǒng)現(xiàn)代微型計(jì)算機(jī)系統(tǒng)組成結(jié)構(gòu)基本上是以馮·諾依曼模型為基礎(chǔ),即以執(zhí)行存儲(chǔ)器中程序而工作。計(jì)算機(jī)執(zhí)行程序是自動(dòng)按序進(jìn)行的,不需人工干預(yù),程序和數(shù)據(jù)由輸入設(shè)備輸入存儲(chǔ)器,執(zhí)行程序所獲得的運(yùn)算結(jié)果由輸出設(shè)備輸出。以微處理器為中心的微型計(jì)算機(jī)系統(tǒng)是在中小型計(jì)算機(jī)基礎(chǔ)上發(fā)展起來的,并以大規(guī)模集成電路技術(shù)為條件的一種新型計(jì)算機(jī),和其他計(jì)算機(jī)相比,其最大特點(diǎn)是采用總線結(jié)構(gòu),其中三總線結(jié)構(gòu)尤為普遍,目前已成為微型計(jì)算機(jī)的一種結(jié)構(gòu)。12第6章人機(jī)交互接口微處理器MPU是通過AB、DB和CB三總線同外圍的大規(guī)模集成電路ROM存儲(chǔ)器、RAM存儲(chǔ)器及I/O接口電路相連進(jìn)行工作的。13第6章人機(jī)交互接口1.1.2微型計(jì)算機(jī)的分類機(jī)主流系列1.單片微機(jī)的分類20世紀(jì)80年代以來,各大電氣及半導(dǎo)體器件廠商紛紛推出自己的產(chǎn)品系列。迄今為止,市場(chǎng)上的單片微機(jī)產(chǎn)品已達(dá)60多個(gè)系列,600余個(gè)品種。從不同的角度有不同的分法。從運(yùn)算位長短分,可分為4位、8位、16位、32位等微機(jī)種類;從使用場(chǎng)合的不同,可分為高端單片機(jī)和低端單片機(jī);從應(yīng)用領(lǐng)域分,可分為家電類單片機(jī)、工控類單片機(jī)、通信類單片機(jī)、軍工類單片機(jī);按是否通用分,有通用型單片機(jī)和專用型單片機(jī)。14第6章人機(jī)交互接口1.1.2微型計(jì)算機(jī)的分類機(jī)主流系列1.單片微機(jī)的分類20世紀(jì)80年代以來,各大電氣及半導(dǎo)體器件廠商紛紛推出自己的產(chǎn)品系列。迄今為止,市場(chǎng)上的單片微機(jī)產(chǎn)品已達(dá)60多個(gè)系列,600余個(gè)品種。從不同的角度有不同的分法。從運(yùn)算位長短分,可分為4位、8位、16位、32位等微機(jī)種類;從使用場(chǎng)合的不同,可分為高端單片機(jī)和低端單片機(jī);從應(yīng)用領(lǐng)域分,可分為家電類單片機(jī)、工控類單片機(jī)、通信類單片機(jī)、軍工類單片機(jī);按是否通用分,有通用型單片機(jī)和專用型單片機(jī)。15第6章人機(jī)交互接口1.1.2微型計(jì)算機(jī)的分類機(jī)主流系列1.單片微機(jī)的分類20世紀(jì)80年代以來,各大電氣及半導(dǎo)體器件廠商紛紛推出自己的產(chǎn)品系列。迄今為止,市場(chǎng)上的單片微機(jī)產(chǎn)品已達(dá)60多個(gè)系列,600余個(gè)品種。從不同的角度有不同的分法。從運(yùn)算位長短分,可分為4位、8位、16位、32位等微機(jī)種類;從使用場(chǎng)合的不同,可分為高端單片機(jī)和低端單片機(jī);從應(yīng)用領(lǐng)域分,可分為家電類單片機(jī)、工控類單片機(jī)、通信類單片機(jī)、軍工類單片機(jī);按是否通用分,有通用型單片機(jī)和專用型單片機(jī)。16第6章人機(jī)交互接口1.1.2微型計(jì)算機(jī)的分類機(jī)主流系列1.單片微機(jī)的分類20世紀(jì)80年代以來,各大電氣及半導(dǎo)體器件廠商紛紛推出自己的產(chǎn)品系列。迄今為止,市場(chǎng)上的單片微機(jī)產(chǎn)品已達(dá)60多個(gè)系列,600余個(gè)品種。從不同的角度有不同的分法。從運(yùn)算位長短分,可分為4位、8位、16位、32位等微機(jī)種類;從使用場(chǎng)合的不同,可分為高端單片機(jī)和低端單片機(jī);從應(yīng)用領(lǐng)域分,可分為家電類單片機(jī)、工控類單片機(jī)、通信類單片機(jī)、軍工類單片機(jī);按是否通用分,有通用型單片機(jī)和專用型單片機(jī)。17第6章人機(jī)交互接口1.1.2微型計(jì)算機(jī)的分類機(jī)主流系列1.單片微機(jī)的分類20世紀(jì)80年代以來,各大電氣及半導(dǎo)體器件廠商紛紛推出自己的產(chǎn)品系列。迄今為止,市場(chǎng)上的單片微機(jī)產(chǎn)品已達(dá)60多個(gè)系列,600余個(gè)品種。從不同的角度有不同的分法。從運(yùn)算位長短分,可分為4位、8位、16位、32位等微機(jī)種類;從使用場(chǎng)合的不同,可分為高端單片機(jī)和低端單片機(jī);從應(yīng)用領(lǐng)域分,可分為家電類單片機(jī)、工控類單片機(jī)、通信類單片機(jī)、軍工類單片機(jī);按是否通用分,有通用型單片機(jī)和專用型單片機(jī)。18第6章人機(jī)交互接口1.1.2微型計(jì)算機(jī)的分類機(jī)主流系列1.單片微機(jī)的分類20世紀(jì)80年代以來,各大電氣及半導(dǎo)體器件廠商紛紛推出自己的產(chǎn)品系列。迄今為止,市場(chǎng)上的單片微機(jī)產(chǎn)品已達(dá)60多個(gè)系列,600余個(gè)品種。從不同的角度有不同的分法。從運(yùn)算位長短分,可分為4位、8位、16位、32位等微機(jī)種類;從使用場(chǎng)合的不同,可分為高端單片機(jī)和低端單片機(jī);從應(yīng)用領(lǐng)域分,可分為家電類單片機(jī)、工控類單片機(jī)、通信類單片機(jī)、軍工類單片機(jī);按是否通用分,有通用型單片機(jī)和專用型單片機(jī)。19第6章人機(jī)交互接口1.1.2微型計(jì)算機(jī)的分類機(jī)主流系列1.單片微機(jī)的分類20世紀(jì)80年代以來,各大電氣及半導(dǎo)體器件廠商紛紛推出自己的產(chǎn)品系列。迄今為止,市場(chǎng)上的單片微機(jī)產(chǎn)品已達(dá)60多個(gè)系列,600余個(gè)品種。從不同的角度有不同的分法。從運(yùn)算位長短分,可分為4位、8位、16位、32位等微機(jī)種類;從使用場(chǎng)合的不同,可分為高端單片機(jī)和低端單片機(jī);從應(yīng)用領(lǐng)域分,可分為家電類單片機(jī)、工控類單片機(jī)、通信類單片機(jī)、軍工類單片機(jī);按是否通用分,有通用型單片機(jī)和專用型單片機(jī)。20(2)反轉(zhuǎn)法
掃描法需要逐列的掃描,根據(jù)被按鍵的位置不同,每次掃描的次數(shù)也不一樣。如果被按鍵位于最后一列時(shí),則要經(jīng)過多次掃描查詢才能得到該鍵的位置。反轉(zhuǎn)法則克服了掃描法的不足,無論被按鍵位于什么位置,都只需要兩步就可以判斷出鍵的位置。圖6-3線反轉(zhuǎn)法原理圖第一步,將列線設(shè)置為輸出線,行線設(shè)置為輸入線。并將列線置“0”,則行線中為“0”的行就是被按鍵所在的行,如果所有的行線都為“1”,則沒有鍵被按下。第二步,將行、列線的輸入、輸出狀態(tài)反轉(zhuǎn)一下,即將行線設(shè)置為輸出線,列線設(shè)置為輸入線。并將行線置“0”,則列線中為“0”的列就是被按鍵所在的列。由此便確定了被按鍵的位置。第6章人機(jī)交互接口21采用上述掃描鍵盤的工作方式,雖然可以及時(shí)響應(yīng)按鍵信息,但是這種方式不管鍵盤上有無鍵按下,CPU總要不斷地掃描鍵盤,占用很多的CPU處理時(shí)間。為了進(jìn)一步提高CPU的工作效率,可采用中斷掃描工作方式。即當(dāng)鍵盤上有鍵被按下時(shí)才產(chǎn)生中斷請(qǐng)求,CPU響應(yīng)中斷請(qǐng)求后,轉(zhuǎn)去執(zhí)行中斷服務(wù)程序,對(duì)鍵盤進(jìn)行掃描,獲取按鍵的相關(guān)信息。如圖6-4為中斷法的原理圖。(3)中斷法圖6-4中斷法原理圖第6章人機(jī)交互接口226.1.3鍵盤/顯示專用接口Intel82798279是Intel公司生產(chǎn)的專用可編程鍵盤和顯示器接口芯片??蓪?shí)現(xiàn)對(duì)鍵盤/顯示器的自動(dòng)掃描,并識(shí)別鍵盤上閉合鍵的鍵號(hào),不僅可以大大節(jié)省CPU對(duì)鍵盤/顯示器的操作時(shí)間,而且顯示穩(wěn)定,接口程序簡(jiǎn)單。1.Intel8279的引腳及功能介紹Intel8279采用40引腳雙列直插封裝,其引腳排列及功能分別如圖6-5(a)、(b)所示。第6章人機(jī)交互接口23(a)(b)圖6-5Intel8279引腳及功能圖第6章人機(jī)交互接口24(1)數(shù)據(jù)線
DB0~DB7:是雙向三態(tài)數(shù)據(jù)總線,在接口電路中與系統(tǒng)數(shù)據(jù)總線相連,用以傳送CPU和8279之間的數(shù)據(jù)和命令。A0:數(shù)據(jù)選擇輸入端,A0=1時(shí),CPU寫入數(shù)據(jù)為命令字,讀出狀態(tài)字為狀態(tài)字;A0=0時(shí),CPU讀、寫均為數(shù)據(jù)。(2)地址線:片選輸入端,低電平有效。(3)控制線CLK:8279的時(shí)鐘輸入線。IRQ:中斷請(qǐng)求輸出線,高電平有效。第6章人機(jī)交互接口25:顯示熄滅輸出線,低電平有效。當(dāng)=0時(shí)將顯示全熄滅。、:讀、寫輸入控制線,低電平有效。SL0~SL3:掃描輸出線,用來作為掃描鍵盤和顯示的代碼輸出或直接輸出線。RL0~RL7:回復(fù)輸入線,它們是鍵盤或傳感器矩陣的信號(hào)輸入線。SHIFT:來自外部鍵盤或傳感器矩陣的輸入信號(hào)。CNTL/S:控制/選通輸入線,高電平有效。OUTA0~OUTA3:通常作為顯示信號(hào)的高4位輸出線。OUTB0~OUTB3:通常作為顯示信號(hào)的低4位輸出線。第6章人機(jī)交互接口262.Intel8279的工作方式Intel8279有三種工作方式:鍵盤方式、顯示方式和傳感器方式。(1)鍵盤工作方式8279在鍵盤工作方式時(shí),可設(shè)置為雙鍵互鎖方式和N鍵循回方式。(2)顯示方式Intel8279的顯示方式又可分為左端入口和右端入口方式。(3)傳感器方式傳感器方式是把傳感器的開關(guān)狀態(tài)送入傳感器RAM中。第6章人機(jī)交互接口273.Intel8279的命令字及其格式Intel8279的各種工作方式都要通過對(duì)命令寄存器的設(shè)置來實(shí)現(xiàn)。8279共有8種命令,通過這些命令設(shè)置工作寄存器,來選擇各種工作方式。命令寄存器共8位,格式為如上圖,8279的一條命令由兩大部分組成,一部分表征命令類型,為命令特征位,由命令寄存器高3位D7~D5決定。D7~D5三位的狀態(tài)可組合出8種形式,對(duì)應(yīng)8類命令。另一部分為命令的具體內(nèi)容,由D4~D0決定。D7D6D5D4D3D2D1D0第6章人機(jī)交互接口28每種特征所代表的命令如表6.1所示表6.1Intel8279命令特征表D7D6D5代表的命令類型000鍵盤/顯示命令001時(shí)鐘編程命令010讀FIFO/傳感器RAM命令011讀顯示器RAM命令100寫顯示命令101顯示禁止/熄滅命令110清除命令111結(jié)束中斷/出錯(cuò)方式設(shè)置命令第6章人機(jī)交互接口29(1)鍵盤/顯示方式設(shè)置命令字(2)時(shí)鐘編程命令(3)讀FIFO/傳感器RAM命令(4)讀顯示RAM命令(5)寫顯示RAM命令(6)顯示禁止寫入/消隱命令(7)清除命令(8)結(jié)束中斷/出錯(cuò)方式設(shè)置命令第6章人機(jī)交互接口304.Intel8279狀態(tài)格式與狀態(tài)字Intel8279的FIFO狀態(tài)字,主要用于鍵盤和選通工作方式,以指示數(shù)據(jù)緩沖器FIFO/傳感器RAM中的字符數(shù)和有錯(cuò)誤發(fā)生,狀態(tài)字節(jié)的讀出地址和命令輸入地址相同(/CS=0,A0=1)。狀態(tài)字節(jié)格式如下:D7D6D5D4D3D2D1D0其中:狀態(tài)字顯示出8279的工作狀態(tài)。狀態(tài)字和8種命令字共用一個(gè)地址口。當(dāng)A0=1時(shí),從8279命令/狀態(tài)口地址讀出的是狀態(tài)字。狀態(tài)字各位意義如下:D7:為顯示無效特征位D6:為傳感器信號(hào)結(jié)束/錯(cuò)誤特征位D5:為FIFO/傳感器RAM溢出標(biāo)志位D4:為FIFO/傳感器RAM空標(biāo)志位D3:為FIFO/傳感器RAM滿標(biāo)志位D2~D0:表示FIFO/傳感器RAM中的字符個(gè)數(shù),即FIFO/傳感器RAM中數(shù)據(jù)個(gè)數(shù)。第6章人機(jī)交互接口315.Intel8279的數(shù)據(jù)輸入/輸出格式對(duì)8279輸入/輸出數(shù)據(jù)不僅要先確定地址口,而且數(shù)據(jù)存放也要按一定格式,其格式在鍵盤和傳感器方式有所不同。8279的數(shù)據(jù)輸入/輸出口地址由/CS=0、A0=0確定。(1)鍵盤掃描方式數(shù)據(jù)輸入格式
鍵盤的行號(hào)、列號(hào)及控制鍵位置如下:D7D6D5D4D3D2D1D0CNTLSHIFTSL0~SL2RL0~RL7D7:控制鍵“CNTL”狀態(tài)。D6:控制鍵“SHIFT”狀態(tài)。D5D4D3:被按鍵所在列號(hào)(由SL0~SL2)狀態(tài)確定)。D2D1D0:被按鍵所在行號(hào)(由RL0~RL7)狀態(tài)確定)。第6章人機(jī)交互接口32(2)傳感器方式及選通方式數(shù)據(jù)輸入格式
此種方式8位輸入數(shù)據(jù)為RL0~RL7的狀態(tài)。格式如下:D7D6D5D4D3D2D1D0RL7RL6RL5RL4RL3RL2RL1RL06.Intel8279的內(nèi)部譯碼與外部譯碼在鍵盤、顯示器工作方式中SL0SL3為鍵盤列掃描線和動(dòng)態(tài)顯示的位選線。當(dāng)選擇內(nèi)部譯碼(鍵盤顯示方式設(shè)置命令字的D0=1)時(shí),SL0SL3每一時(shí)刻只有一位為低電平輸出,此時(shí),8279只能外接4位顯示器和4×8鍵盤。當(dāng)選擇外部譯碼(鍵盤顯示方式設(shè)置命令字的D0=0)時(shí),SL0SL3呈計(jì)數(shù)分頻式波形輸出,此時(shí),若外接416譯碼器,則譯碼器的16個(gè)輸出可作為外接16位顯示器的位信號(hào);若外接38譯碼器,則譯碼器的8個(gè)輸出與RL0RL7配合可構(gòu)成8×8鍵盤(鍵輸入數(shù)據(jù)格式中只能計(jì)入SL0SL2的8中狀態(tài))。第6章人機(jī)交互接口337.Intel8279與單片機(jī)、鍵盤/顯示器的接口應(yīng)用圖6-68051與8279的一般接口框圖第6章人機(jī)交互接口34圖6-78279應(yīng)用電路第6章人機(jī)交互接口356.1.4鍵盤顯示專用串行接口HD7279A1.HD7279A引腳及功能介紹圖6-8HD279A的引腳圖1.主要特性
(1).串行接口,無需外圍元件可直接驅(qū)動(dòng)LED。
(2).各位獨(dú)立控制譯碼/不譯碼及消隱和閃爍屬性。
(3).(循環(huán))左移/(循環(huán))右移指令。
(4).具有段尋址指令,方便控制獨(dú)立LED。
(5).64鍵鍵盤控制器,內(nèi)含去抖動(dòng)電路。
2.引腳說明:
VDD:正電源VSS:地CS:片選CLK:時(shí)鐘輸入端DATA:串行數(shù)據(jù)輸入/輸出端CLK0:振蕩輸出端KEY:按鍵有效輸出端RES:復(fù)位端SG-SA:段g—段a驅(qū)動(dòng)輸出
DP:小數(shù)點(diǎn)驅(qū)動(dòng)輸出DIG0-7:數(shù)位0-7驅(qū)動(dòng)輸出
RC:RC振蕩器連接端第6章人機(jī)交互接口362.HD7279A的控制指令與時(shí)序HD7279A的控制指令分為二大類——純指令和帶有數(shù)
據(jù)的指令。(1)純控制指令
指令格式為:D7D6D5D4D3D2D1D0①復(fù)位指令:指令代碼為A4H,其功能為清除所有顯示②測(cè)試指令:指令代碼為BFH,其功能為將所有的LED點(diǎn)亮并閃爍,主要用于測(cè)試。③左移指令:指令代碼為A1H,其功能為將所有的顯示左移1位。④右移指令:指令代碼為A0H,其功能與將所有的顯示右移1位。⑤循環(huán)左移指令:指令代碼為A3H,其功能為將所有的顯示循環(huán)左移1位。⑥循環(huán)右移指令:指令代碼為A2H,其功能與循環(huán)左移指令相似,只是方向相反。第6章人機(jī)交互接口37(2)帶數(shù)據(jù)指令帶數(shù)據(jù)指令均由雙字節(jié)組成。①下載數(shù)據(jù)且按方式0譯碼D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D010000a2a1a0dp×××d3d2d1d0×:無影響。命令由二個(gè)字節(jié)組成,前半部分為指令,其中a2,a1,a0表示LED的位地址。命令由二字節(jié)組成,前半部分為指令,其中a2,a1,a0為位地址。d0-d3為數(shù)據(jù),收到此指令時(shí),按以下規(guī)則
進(jìn)行譯碼。
0000:顯01001:顯9
1010:顯-1111:顯空白
小數(shù)點(diǎn)的顯示由DP位控制:DP=1時(shí),小數(shù)點(diǎn)顯示,DP=0時(shí),小數(shù)點(diǎn)不顯示。第6章人機(jī)交互接口38②下載數(shù)據(jù)且按方式1譯碼D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D011001a2a1a0dp×××d3d2d1d0此指令與上一條指令其本相同,所不同的是譯碼方式,該指令的譯碼為按d0—d3值對(duì)應(yīng)的是0—9,A~F。③下載數(shù)據(jù)但不譯碼D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D010010a2a1a0dpABCDEFG其中,a2,a1,a0為位地址,A-G和DP為顯示數(shù)據(jù),分別對(duì)應(yīng)7段LED數(shù)碼管的各段。當(dāng)相應(yīng)的數(shù)據(jù)位為‘1’時(shí),該段點(diǎn)亮,否則不亮。此指令靈活,通過造字形表,可以顯示用戶所需的字符。第6章人機(jī)交互接口39④閃爍控制D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D010001000d8d7d6d5d4d3d2d1此命令控制各個(gè)數(shù)碼管的閃爍屬性。d1~d8分別對(duì)應(yīng)數(shù)碼管1~8,0=閃爍,1=不閃爍。開機(jī)后,缺省的狀態(tài)為各位均不閃爍。⑤消隱控制D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D010011000d8d7d6d5d4d3d2d1此命令控制各個(gè)數(shù)碼管的消隱屬性。d1-d8分別對(duì)應(yīng)數(shù)碼管1-8,1=顯示,0=消隱。第6章人機(jī)交互接口403.HD7279A接口應(yīng)用圖6-13HD7279A與AT89C51的接口電路第6章人機(jī)交互接口41接口子程序?qū)嵗簊bitCS=P1^0;//CS與P1.0相連sbitCLK=P1^1;//CLK與P1.1相連sbitDAT=P1^2;//DAT與P1.2相連sbitKEY=P1^3;//KEY與P1.3相連voidsend_byte(unsignedcharout_byte){//發(fā)送一個(gè)字節(jié)unsignedchari;CS=0;long_delay();for(i=0;i<8;i++){
if(out_byte&0x80){DAT=1;}else{DAT=0;}CLK=1;short_delay();CLK=0;short_delay();out_byte=out_byte*2;}DAT=0;}第6章人機(jī)交互接口42in_byte=in_byte*2;if(DAT){in_byte=in_byte|0x01;}CLK=0;short_delay();}DAT=0;return(in_byte);}unsignedcharreceive_byte(void){//接收一個(gè)字節(jié)unsignedchari,in_byte;DAT=1;//設(shè)為輸入狀態(tài)long_delay();for(i=0;i<8;i++){CLK=1;short_delay();
第6章人機(jī)交互接口436.2LED顯示器接口在單片機(jī)應(yīng)用系統(tǒng)中,常常需要把一些信息顯示出來,以便了解系統(tǒng)的狀態(tài)。最常用的顯示器是LED(發(fā)光二極管顯示器)和LCD(液晶顯示器),這兩種顯示器可顯示數(shù)字、字符及系統(tǒng)的狀態(tài)。6.2.1LED顯示器的結(jié)構(gòu)與原理1.LED顯示器的結(jié)構(gòu)LED(LightEmittingDiode)是發(fā)光二極管的縮寫。常用的LED顯示器有LED狀態(tài)顯示器(俗稱發(fā)光二極管)LED七段顯示器(俗稱數(shù)碼管)LED十六段顯示器。第6章人機(jī)交互接口44常用的LED顯示器,即數(shù)碼管,是由8個(gè)發(fā)光二極管(以下簡(jiǎn)稱段)構(gòu)成,通過不同的組合可用來顯示數(shù)字09、字符AF、H、L、P、R、U、Y、符號(hào)“”及小數(shù)點(diǎn)“”。數(shù)碼管的外型結(jié)構(gòu)如圖6-14所示。數(shù)碼管又分為共陰極和共陽極兩種結(jié)構(gòu),分別如圖6-15(a)和圖6-15(b)。圖6-14數(shù)碼管的外型結(jié)構(gòu)圖圖6-15數(shù)碼管接線方式第6章人機(jī)交互接口452.LED顯示器工作原理共陽極接法:就是將LED顯示器(數(shù)碼管)的8段發(fā)光二極管的陽極(二極管正端)連接在一起。共陰極接法:就是將LED顯示器(數(shù)碼管)的8段發(fā)光二極管的陰極(二極管負(fù)端)連接在一起3.LED顯示器字形編碼一個(gè)LED顯示器(數(shù)碼管)由7段LED和一個(gè)小數(shù)點(diǎn)位DP組成,一共是8位,即8個(gè)發(fā)光二極管。這正好是一個(gè)字節(jié)的長度。所以,可以直接將一個(gè)數(shù)碼管的8段LED與單片機(jī)的8位并行I/O端口相連,使之建立對(duì)應(yīng)關(guān)系。通過控制單片機(jī)對(duì)應(yīng)I/O端口的輸出電平,就可以使數(shù)碼管顯示出相應(yīng)的字符或數(shù)字。第6章人機(jī)交互接口46LED顯示器(數(shù)碼管)各段與段碼各字節(jié)之間的對(duì)應(yīng)關(guān)系為:段碼位D7D6D5D4D3D2D1D0顯示段dpgfedcba6.2.2LED顯示方式根據(jù)LED數(shù)碼管數(shù)量和控制的需要,LED顯示器有靜態(tài)顯示控制和動(dòng)態(tài)顯示控制兩種控制方式。1.靜態(tài)顯示接口靜態(tài)顯示是指各個(gè)LED數(shù)碼管上能穩(wěn)定地同時(shí)顯示各自的字符并維持不變,直到顯示下一個(gè)字符為止。相應(yīng)的發(fā)光二極管恒定導(dǎo)通或恒定截止。第6章人機(jī)交互接口47(1)并行方式擴(kuò)展LED顯示接口圖6-16LED顯示接口電路第6章人機(jī)交互接口48(2)串行方式擴(kuò)展LED顯示接口圖6-174位LED顯示器靜態(tài)控制接口電路第6章人機(jī)交互接口492.動(dòng)態(tài)顯示接口動(dòng)態(tài)顯示是一位一位地輪流點(diǎn)亮各位數(shù)碼管,這種逐位點(diǎn)亮顯示器的方式稱為位掃描。通常,各位數(shù)碼管的段選線相應(yīng)并聯(lián)在一起,由一個(gè)8位的I/O口控制;各位的位選線(公共陰極或陽極)由另外的I/O口線控制。動(dòng)態(tài)方式顯示時(shí),各數(shù)碼管分時(shí)輪流選通,要使其穩(wěn)定顯示必須采用掃描方式,雖然這些字符是在不同的時(shí)刻分別顯示,但由于人眼存在視覺暫留效應(yīng),只要每位顯示間隔足夠短就可以給人同時(shí)顯示的感覺。第6章人機(jī)交互接口50圖6-18LED動(dòng)態(tài)掃描電路第6章人機(jī)交互接口516.2.3LED顯示管理芯片MAX7219MAX7219是MAXIM公司生產(chǎn)的7段共陰極LED數(shù)碼管的驅(qū)動(dòng)芯片,每一片MAX7219最多可驅(qū)動(dòng)8位LED數(shù)碼管或64個(gè)單獨(dú)的發(fā)光二極管。它集BCD碼譯碼器、多路掃描器、段驅(qū)動(dòng)和位驅(qū)動(dòng)電路于一體,內(nèi)含8×8位雙口靜態(tài)SRAM,可保存8位LED數(shù)據(jù)。外圍接口電路簡(jiǎn)單,使用方便,僅需三根I/O口線便可提供串行數(shù)據(jù)DIN、時(shí)鐘信號(hào)CLK和數(shù)據(jù)鎖存信號(hào)LOAD。即可驅(qū)動(dòng)多塊LED進(jìn)行動(dòng)態(tài)顯示,并可串聯(lián)使用。常規(guī)的動(dòng)態(tài)顯示往往具有亮度不夠、閃爍等缺點(diǎn),而靜態(tài)顯示又有硬件電路復(fù)雜,線路板設(shè)計(jì)成本高等缺陷,若采用MAX7219驅(qū)動(dòng)LED,則可克服上述缺點(diǎn),大大簡(jiǎn)化硬件電路和減小軟件的工作量。第6章人機(jī)交互接口521.MAX7219引腳及功能介紹DIN:串行數(shù)據(jù)輸入端DOUT:串行數(shù)據(jù)輸出端,用于級(jí)連擴(kuò)展LOAD:裝載數(shù)據(jù)輸入CLK:串行時(shí)鐘輸入DIG0~DIG7:8位LED位選線,從共陰極LED中吸入電流SEGA~SEGGDP7段驅(qū)動(dòng)和小數(shù)點(diǎn)驅(qū)動(dòng)ISET:通過一個(gè)10k電阻和Vcc相連,設(shè)置段電流第6章人機(jī)交互接口53MAX7219數(shù)據(jù)包格式D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0××××←地址→←數(shù)據(jù)→其中D15~D12位不用,D11~D8位為內(nèi)部5個(gè)控制寄存器和8個(gè)LED顯示數(shù)據(jù)寄存器的地址,D7~D0位為5個(gè)控制寄存器和8個(gè)LED數(shù)碼管待顯示的數(shù)據(jù),因?yàn)榭刂萍拇嫫髋c顯示數(shù)據(jù)寄存器獨(dú)立編址,所以可以通過程序?qū)γ總€(gè)寄存器進(jìn)行操作。一般情況下,程序先送控制命令,后向顯示寄存器送數(shù)據(jù),每16位為一組,從高位地址字節(jié)最高位開始送,直到低位數(shù)據(jù)字節(jié)最后一位。第6章人機(jī)交互接口542.MAX7219寄存器功能及使用MAX7219有14個(gè)內(nèi)部寄存器,分別為8個(gè)位驅(qū)動(dòng)寄存器和6個(gè)狀態(tài)寄存器,命令寄存器被初始化后,如不重新初始化,則7219保持初始化的那些狀態(tài)。表6.10寄存器地址分配表第6章人機(jī)交互接口553.MAX7219接口應(yīng)用第6章人機(jī)交互接口56//管腳定義數(shù)據(jù)發(fā)送及MAX7219初始化子程序。#defineLOAD=P1^0; //MAX7219片選12腳#defineDIN=P3^1; //MAX7219串行數(shù)據(jù)1腳#defineCLK=P3^0; //MAX7219串行時(shí)鐘13腳 //寄存器宏定義#defineDECODE_MODE0x09 //譯碼控制寄存器#defineINTENSITY0x0A //亮度控制寄存器#defineSCAN_LIMIT0x0B //掃描界限寄存器#defineSHUT_DOWN0x0C //關(guān)斷模式寄存器#defineDISPLAY_TEST0x0F //測(cè)試控制寄存器voidWrite7219(unsignedcharaddress,unsignedchardat);voidInitial(void);第6章人機(jī)交互接口57voidWrite7219(unsignedcharaddress,unsignedchardat){unsignedchari;//地址、數(shù)據(jù)發(fā)送子程序LOAD=0;//拉低片選線,選中器件//發(fā)送地址for(i=0;i<8;i++)//移位循環(huán)8次{CLK=0;//清零時(shí)鐘總線DIN=(bit)(address&0x80);//每次取高字節(jié)address<<=1;//左移一位CLK=1;//時(shí)鐘上升沿,發(fā)送地址}for(i=0;i<8;i++)//發(fā)送數(shù)據(jù){CLK=0;DIN=(bit)(dat&0x80);dat<<=1;CLK=1;//時(shí)鐘上升沿,發(fā)送數(shù)據(jù)}LOAD=1;//發(fā)送結(jié)束,上升沿鎖存數(shù)據(jù)}voidInitial(void)//MAX7219初始化,設(shè)置MAX7219內(nèi)部的控制寄存器{Write7219(SHUT_DOWN,0x01);//開啟正常工作模式(0xX1)Write7219(DISPLAY_TEST,0x00); //選擇工作模式(0xX0)Write7219(DECODE_MODE,0xff); //選用全譯碼模式Write7219(SCAN_LIMIT,0x07); //8只LED全用Write7219(INTENSITY,0x04); //設(shè)置初始亮度}第6章人機(jī)交互接口58
6.3LCD液晶顯示接口LCD(liquidcrystaldisplay)液晶顯示器是一種功耗極低的顯示器件,廣泛用于智能儀表、便攜式電子產(chǎn)品的顯示,能夠顯示文字、曲線、圖形等信息,其顯示界面較之?dāng)?shù)碼管有了質(zhì)的提高。,具有低壓、微功耗、無電磁輻射、顯示清晰、體積小、抗干擾能力強(qiáng)等特點(diǎn),在單片機(jī)系統(tǒng)中得到了廣泛的應(yīng)用。6.3.1LCD顯示器的基本原理1.LCD顯示器簡(jiǎn)介LCD顯示器由于類型、用途不同,其性能、結(jié)構(gòu)不可能完全相同,但其基本形態(tài)和結(jié)構(gòu)卻是大同小異。第6章人機(jī)交互接口591)LCD顯示器的結(jié)構(gòu)液晶顯示器的結(jié)構(gòu)圖如圖6-21所示。不同類型的液晶顯示器件其組成可能會(huì)有不同,但是所有液晶顯示器件都可以認(rèn)為是由兩片光刻有透明導(dǎo)電電極的基板,夾持一個(gè)液晶層,封接成一個(gè)偏平盒,有時(shí)在外表面還可能貼裝上偏振片等構(gòu)成。圖6-21液晶顯示器結(jié)構(gòu)圖第6章人機(jī)交互接口60構(gòu)成液晶顯示器件的三大基本部件(1)電極基板(2)液晶材料(3)偏振片2)LCD顯示器的特點(diǎn)液晶顯示器有以下顯著特點(diǎn)。(1)低壓微功耗:工作電壓只有3~5V,工作電流只有幾個(gè)μA/cm2。(2)平板型結(jié)構(gòu):LCD顯示器內(nèi)由兩片平行玻璃組成的夾層盒,面積可大可小,且適合于大批量生產(chǎn),安裝時(shí)占用體積小,減小了設(shè)備體積。(3)被動(dòng)顯示:液晶本身不發(fā)光,而是靠調(diào)制外界光進(jìn)行顯示。因此適合人的視覺習(xí)慣,不會(huì)使人眼睛疲勞。(4)顯示信息量大:LCD顯示器像素很小,相同面積上可容納更多信息。(5)易于彩色化(6)沒有電磁輻射:使用不會(huì)產(chǎn)生電磁輻射,對(duì)環(huán)境無污染,有利健康。(7)壽命長:LCD器件本身無老化問題,壽命極長。第6章人機(jī)交互接口612.LCD顯示器分類在實(shí)際應(yīng)用中,一般是直接使用專用的LCD顯示驅(qū)動(dòng)器和LCD顯示模塊LCM。LCM是把LCD顯示屏、背景光源、線路板和驅(qū)動(dòng)集成電路等部件構(gòu)造成一個(gè)整體,作為一個(gè)獨(dú)立部件使用。其特點(diǎn)是功能較強(qiáng)、易于控制、接口簡(jiǎn)單,在單片機(jī)系統(tǒng)中應(yīng)用較多。LCD顯示模塊LCM按顯示功能可分為:LCD段式顯示模塊、LCD字符型顯示模塊、LCD點(diǎn)陣圖形顯示模塊三類。第6章人機(jī)交互接口626.3.2液晶顯示控制器的原理與應(yīng)用實(shí)例1.單片機(jī)與筆段型LCD的接口圖6-22筆段型接口電路第6章人機(jī)交互接口632.單片機(jī)與字符型LCD的接口字符型液晶顯示模塊是一類專用于顯示字母,數(shù)字,符號(hào)等的點(diǎn)陣型液晶顯示模塊,字符型液晶顯示模塊是由若干個(gè)5×8或5×11點(diǎn)陣塊組成的字符塊集。每一個(gè)字符塊是一個(gè)字符位,每一位都可以顯示一個(gè)字符,字符位之間空有一個(gè)點(diǎn)距的間隔起著字符間距和行距的作用;這類模塊使用的是專用于字符顯示控制與驅(qū)動(dòng)的IC芯片。因此,這類模塊的應(yīng)用范圍僅局限于字符而顯示不了圖形,所以稱其為字符型液晶顯示模塊。第6章人機(jī)交互接口64(1)字符型液晶顯示器HD44780引腳及功能介紹(1)D0~D7:雙向的數(shù)據(jù)總線,LCD數(shù)據(jù)讀寫方式可以分為8位及4位兩種,以8位數(shù)據(jù)進(jìn)行讀寫則D0~D7皆有效,若以4位方式進(jìn)行讀寫,則只用到D7~D4。(2)RS:寄存器選擇控制線,當(dāng)RS=0時(shí),并且做寫入的動(dòng)作時(shí),可以寫入指令寄存器;若RS=0,且做讀取的動(dòng)作時(shí),可以讀取忙碌標(biāo)志及地址計(jì)數(shù)器的內(nèi)容。如果RS=1則用于讀寫數(shù)據(jù)寄存器。(3)R/W:LCD讀寫控制線,R/W=0時(shí),LCD執(zhí)行寫入的動(dòng)作,R/W=1時(shí)則做讀取的動(dòng)作。(4)EN:使能信號(hào),高電平動(dòng)作。(5)Vo:亮度調(diào)整電壓輸入控制引腳,當(dāng)輸入0V時(shí)字符顯示最亮。第6章人機(jī)交互接口65(2)HD44780指令集LCD控制器HD44780內(nèi)有多個(gè)寄存器,通過RS和R/W引腳共同決定選擇哪一個(gè)寄存器,選擇情況如表:RSR/W寄存器及操作00指令寄存器寫入01忙標(biāo)志和地址計(jì)數(shù)器讀出10數(shù)據(jù)寄存器寫入11數(shù)據(jù)寄存器讀出總共有11條指令,它們的格式和功能如下:第6章人機(jī)交互接口66RSR/WD7D6D5D4D3D2D1D00000000001功能:清除屏幕,將顯示緩沖區(qū)DDRAM的內(nèi)容全部寫入空格(ASCII20H)。光標(biāo)復(fù)位,回到顯示器的左上角。地址計(jì)數(shù)器AC清零。2.光標(biāo)復(fù)位命令格式:功能:設(shè)定當(dāng)寫入一個(gè)字節(jié)后,光標(biāo)的移動(dòng)方向以及后面的內(nèi)容是否移動(dòng)。當(dāng)I/D=1時(shí),光標(biāo)從左向右移動(dòng);I/D=0時(shí),光標(biāo)從右向左移動(dòng)。當(dāng)S=1時(shí),內(nèi)容移動(dòng),S=0時(shí),內(nèi)容不移動(dòng)。RSR/WD7D6D5D4D3D2D1D000000000101.清屏命令格式:第6章人機(jī)交互接口673.輸入方式設(shè)置命令格式:RSR/WD7D6D5D4D3D2D1D000000001I/DS功能:設(shè)定當(dāng)寫入一個(gè)字節(jié)后,光標(biāo)的移動(dòng)方向以及后面的內(nèi)容是否移動(dòng)。當(dāng)I/D=1時(shí),光標(biāo)從左向右移動(dòng);I/D=0時(shí),光標(biāo)從右向左移動(dòng)。當(dāng)S=1時(shí),內(nèi)容移動(dòng),S=0時(shí),內(nèi)容不移動(dòng)。4.顯示開關(guān)控制命令格式:RSR/WD7D6D5D4D3D2D1D00000001DCB功能:控制顯示的開關(guān),當(dāng)D=1時(shí)顯示,D=0時(shí)不顯示。控制光標(biāo)開關(guān),當(dāng)C=1時(shí)光標(biāo)顯示,C=0時(shí)光標(biāo)不顯示??刂谱址欠耖W爍,當(dāng)B=1時(shí)字符閃爍,B=0時(shí)字符不閃爍。第6章人機(jī)交互接口685.光標(biāo)移位置命令格式:RSR/WD7D6D5D4D3D2D1D0000001S/CR/L**功能:移動(dòng)光標(biāo)或整個(gè)顯示字幕移位。當(dāng)S/C=1時(shí)整個(gè)顯示字幕移位,當(dāng)S/C=0時(shí)只光標(biāo)移位。當(dāng)R/L=1時(shí)光標(biāo)右移,R/L=0時(shí)光標(biāo)左移。6.功能設(shè)置命令格式:RSR/WD7D6D5D4D3D2D1D000001DLNF**功能:設(shè)置數(shù)據(jù)位數(shù),當(dāng)DL=1時(shí)數(shù)據(jù)位為8位,DL=0時(shí)數(shù)據(jù)位為4位。設(shè)置顯示行數(shù),當(dāng)N=1時(shí)雙行顯示,N=0時(shí)單行顯示。設(shè)置字形大小,當(dāng)F=1時(shí)5×10點(diǎn)陣,F(xiàn)=0時(shí)為5×7點(diǎn)陣。第6章人機(jī)交互接口697.設(shè)置字庫CGRAM地址命令格式:RSR/WD7D6D5D4D3D2D1D00001CGRAM的地址功能:設(shè)置用戶自定義CGRAM的地址,對(duì)用戶自定義CGRAM訪問時(shí),要先設(shè)定CGRAM的地址,地址范疇0~63。8.顯示緩沖區(qū)DDRAM地址設(shè)置命令格式:RSR/WD7D6D5D4D3D2D1D0001DDRAM的地址功能:設(shè)置當(dāng)前顯示緩沖區(qū)DDRAM的地址,對(duì)DDRAM訪問時(shí),要先設(shè)定DDRAM的地址,地址范疇0~127。第6章人機(jī)交互接口709.讀忙標(biāo)志及地址計(jì)數(shù)器AC命令格式:RSR/WD7D6D5D4D3D2D1D001BFAC的值功能:讀忙標(biāo)志及地址計(jì)數(shù)器AC,當(dāng)BF=1時(shí)則表示忙,這時(shí)不能接收命令和數(shù)據(jù);BF=0時(shí)表示不忙。低7位為讀出的AC的地址,值為0~127。10.寫DDRAM或CGRAM命令格式:RSR/WD7D6D5D4D3D2D1D010寫入的數(shù)據(jù)功能:向DDRAM或CGRAM當(dāng)前位置中寫入數(shù)據(jù)。對(duì)DDRAM或CGRAM寫入數(shù)據(jù)之前須設(shè)定DDRAM或CGRAM的地址。第6章人機(jī)交互接口7111.讀DDRAM或CGRAM命令格式:RSR/WD7D6D5D4D3D2D1D011讀出的數(shù)據(jù)功能:從DDRAM或CGRAM當(dāng)前位置中讀郵數(shù)據(jù)。當(dāng)DDRAM或CGRAM讀出數(shù)據(jù)時(shí),先須設(shè)定DDRAM或CGRAM的地址。(3)字符型液晶顯示模塊HD44780的應(yīng)用1)直接訪問方式直接訪問方式是把字符型液晶顯示模塊作為存儲(chǔ)器或I/O接口設(shè)備直接連到單片機(jī)總線上,采用8位數(shù)據(jù)傳輸形式時(shí),數(shù)據(jù)端DB0~DB7直接與單片機(jī)的數(shù)據(jù)線相連,寄存器選擇端RS信號(hào)和讀寫選擇端R/W信號(hào)利用單片機(jī)的地址線控制。使能端E信號(hào)則由單片機(jī)的RD和WR信號(hào)共同控制,以實(shí)現(xiàn)HD44780所需的接口時(shí)序。第6章人機(jī)交互接口722)間接訪問方式間接控制方式是計(jì)算機(jī)把字符型液晶顯示模塊作為終端與計(jì)算機(jī)的并行接口連接,計(jì)算機(jī)通過對(duì)該并行接口的操作間接實(shí)現(xiàn)對(duì)字符型液晶顯示模塊的控制。3.圖形液晶顯示接口圖形液晶顯示器是采用點(diǎn)陣方式來顯示漢字及復(fù)雜圖形,廣泛應(yīng)用于游戲機(jī)、筆記本電腦和彩色電視等設(shè)備中。圖形液晶顯示一般都需與專用液晶顯示控制器配套使用,屬于內(nèi)置式LCD。常用的圖形液晶顯示控制器有SED1520,HD61202,LCD12864,T6963C,HD61830A/B,SED1330/1335/1336/E1330,MSM6255,CL-GD6245等。各類液晶顯示控制器的結(jié)構(gòu)各異,指令系統(tǒng)也不同,但其控制過程基本相同。第6章人機(jī)交互接口7312864液晶顯示模塊是128×64點(diǎn)陣的漢字圖形型液晶顯示模塊,可顯示漢字及圖形,內(nèi)置國標(biāo)GB2312碼簡(jiǎn)體中文字庫(16×16點(diǎn)陣)、128個(gè)字符(8×16點(diǎn)陣)及64×256點(diǎn)陣顯示RAM(GDRAM)??膳cCPU直接接口,提供兩種界面來連接微處理機(jī):8位并行及串行兩種連接方式。具有多種功能:光標(biāo)顯示畫面移位、睡眠模式等。(1)各引腳序號(hào)及其名稱如表6.14所示(2)漢字顯示坐標(biāo)如表6.15所示表6.15漢字顯示坐標(biāo)X坐標(biāo)第一行80H81H82H83H84H85H86H87H第二行90H91H92H93H94H95H96H97H第三行88H89H8AH8BH8CH8DH8EH8FH第四行98H99H9AH9BH9CH9DH9EH9FH第6章人機(jī)交互接口74引腳號(hào)引腳名稱方向功能說明1VSS-模塊的電源地2VDD-模塊的電源正端3V0-LCD驅(qū)動(dòng)電壓輸入端4RS(CS)H/L并行的指令/數(shù)據(jù)選擇信號(hào);串行的片選信號(hào)5R/W(SID)H/L并行的讀寫選擇信號(hào);串行的數(shù)據(jù)口6E(CLK)H/L并行的使能信號(hào);串行的同步時(shí)鐘7DB0H/L數(shù)據(jù)08DB1H/L數(shù)據(jù)19DB2H/L數(shù)據(jù)210DB3H/L數(shù)據(jù)311DB4H/L數(shù)據(jù)412DB5H/L數(shù)據(jù)513DB6H/L數(shù)據(jù)614DB7H/L數(shù)據(jù)715PSBH/L并/串行接口選擇(H:并行模式,L:串行模式)16NC空腳17/RETH/L復(fù)位低電平有效18NC空腳19LED_A-背光源正極(LED+5V)20LED_K-背光源負(fù)極(LED-OV)表6.14LCD12864液晶顯示器引腳序號(hào)及名稱(H:高電平,L:低電平)第6章人機(jī)交互接口75(3)數(shù)據(jù)發(fā)送模式并行模式時(shí)序圖,如圖6-26。圖6-26并行模式時(shí)序圖第6章人機(jī)交互接口76串行模式時(shí)序圖,如圖6-27。圖6-27串行模式時(shí)序圖第6章人機(jī)交互接口77(4)指令集
第6章人機(jī)交互接口78第6章人機(jī)交互接口79第6章人機(jī)交互接口80第6章人機(jī)交互接口81LCD12864顯示實(shí)驗(yàn),硬件設(shè)計(jì)如圖6-28所示。圖6-28LCD12864應(yīng)用硬件接線圖第6章人機(jī)交互接口82第6章人機(jī)交互接口83DelayNus(5);//微秒級(jí)延時(shí)LCD12864_EN(HIGH);}voidLCD12864WriteCommand(unsignedcharcommand){ //向LCD12864寫命令LCD12864_PORT(command);LCD12864_RS(LOW);LCD12864_RW(LOW);LCD12864_EN(LOW);DelayNus(5);//微秒級(jí)延時(shí)LCD12864_EN(HIGH);}voidLCD12864SetXY(unsignedcharx,unsignedchary)//對(duì)LCD12864設(shè)置坐標(biāo)輸入:x橫坐標(biāo)y縱坐標(biāo){switch(y){case1:{LCD12864WriteCommand(0x80|x);}break;case2:{LCD12864WriteCommand(0x90|x);}break;case3:{LCD12864WriteCommand(0x88|x);}break;case4:{LCD12864WriteCommand(0x98|x);}break;default:break;}}第6章人機(jī)交互接口84voidLCD12864PrintfString(unsignedcharx,unsignedchary,unsignedchar*s)//LCD12864打印字符串{LCD12864SetXY(x,y);while(s&&*s){LCD12864WriteByte(*s);s++;}}voidLCD12864ClearScreen(void)//LCD12864清屏{LCD12864WriteCommand(0x01);DelayNus(20);}voidLCD12864Init(void)//LCD12864初始化{LCD12864_MD(HIGH);LCD12864WriteCommand(0x30);//功能設(shè)置,一次送8位數(shù)據(jù),基本指LCD12864WriteCommand(0x0C);//令集,整體顯示,游標(biāo)off,游標(biāo)位置offLCD12864WriteCommand(0x01);//清DDRAMLCD12864WriteCommand(0x02);//DDRAM地址歸位LCD12864WriteCommand(0x80);//設(shè)定DDRAM7位地址000,0000到地址計(jì)數(shù)器ACLCD12864ClearScreen();}第6章人機(jī)交互接口856.4打印機(jī)接口在單片機(jī)應(yīng)用系統(tǒng)中,微型打印機(jī)多用于各種智能化儀表、儀器的輸出設(shè)備。用于打印報(bào)表,票證等場(chǎng)合。6.4.1GP16微型打印機(jī)及接口1.GP16打印機(jī)的接口及功能GP16打印機(jī)由以8039單片機(jī)為主的控制器和Model150Ⅱ型打印機(jī)芯二部分組成。GP16-Ⅱ?yàn)镚P16的改進(jìn)型,控制器為8031單片機(jī)。每一行可打印96個(gè)點(diǎn)跡,共可打印16個(gè)5×7陣的字符。GP16內(nèi)部有三態(tài)鎖存器,能鎖存數(shù)據(jù)總線上的數(shù)據(jù),故GP16可以直接與單片機(jī)數(shù)據(jù)總線相連而不須外加鎖存器。GP16有12根信息線與主機(jī)相連,當(dāng)采用中斷方式控制打印時(shí),其BUSY線可連到主機(jī)的INT0或INT1,CS端與主機(jī)的地址線相連以確定它的設(shè)備地址號(hào)。第6章人機(jī)交互接口86GP16打印機(jī)的接口信號(hào)如表所示12345678910111213141516+5V+5VI/O0I/O1I/O2I/O3I/O4I/O5I/O6I/O7CSWRRDBUSY地地其中:I/O0~I/O7:是雙向三態(tài)數(shù)據(jù)總線,即命令、狀態(tài)和數(shù)據(jù)傳輸線,用于GP16與CPU之間傳輸信息。CS:設(shè)備選擇線。WR:寫信號(hào)線。RD:讀信號(hào)線。BUSY:打印機(jī)狀態(tài)輸出線,高電平表示打印機(jī)忙,BUSY線還可供CPU查詢或作為中斷請(qǐng)求線。第6章人機(jī)交互接口872.GP16打印機(jī)的打印命令和工作方式(1)打印命令及打印方式GP16的打印命令有兩個(gè)字節(jié),格式如下:
第一個(gè)字節(jié)第二個(gè)字節(jié)D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0操作碼點(diǎn)行數(shù)n打印行數(shù)
NNGP16的命令編碼格式。D7D6D5D4功能1000空走紙1001打印字符串1010十六進(jìn)制數(shù)據(jù)打印1011圖形打印第6章人機(jī)交互接口883.GP16與單片機(jī)的接口圖6-29為GP16與8031數(shù)據(jù)總線連接的接口電路,圖中BUSY接INT1(P3.3),因此,接口電路直接可用于中斷方式(INT1)。如要以查詢方式工作時(shí),BUSY可以不連接,通過查詢狀態(tài)字來獲取BUSY的狀態(tài)。根據(jù)圖6-29中的連接方式,GP16打印機(jī)的地址為7FFFH,讀取GP16狀態(tài)字時(shí),8031執(zhí)行如下程序:圖6-29GP16與8031數(shù)據(jù)總線的接口編寫打印如下二行字符串的程序。WELCOME2011第6章人機(jī)交互接口89#include<reg51.h>#defineCOMGP16XBYTE[0x7FFF]sbitCS_P=P2^7;sbitBUSY_P=P3^3;uncharcodeline[]={0x57,0x45,0x4c,0x43,0x4f,0x4d,0x45};//預(yù)定義字符信息“WELCOME”voidprnchar(ucharx)//字符打印函數(shù){P0=x;//輸出一個(gè)ASCII字符CS_P=0;//產(chǎn)生低電平CS_P=1;//產(chǎn)生上升沿while(BUSY_P);//查詢等待打印結(jié)束}voidprnline(void)//行打印函數(shù){uchari;for(i=0;i<=6;i++)//打印輸出一行預(yù)定義信息{P1=line[i];CS_P=0;CS_P=1;while(BUSY_P);}}voidmain(void){COMGP16=0x9A;//置命令字COMGP16=0x02prnline();//打印輸出“WELCOME”prnchar(0x0D);//換行prnchar(0x32);//打印輸出“2011”prnchar(0x30);prnchar(0x31);prnchar(0x31);}第6章人機(jī)交互接口906.4.2TPμP-40A/16A打印機(jī)及接口1.TPμP-40A/16A打印機(jī)的主要性能、接口要求及時(shí)序TPμP-40A/16A是一種超小型的智能點(diǎn)陣式打印機(jī)。TPμP-40A與TPμP-16A的接口與時(shí)序要求完全相同,操作方式相近,硬件電路及插腳完全兼容,只是指令代碼不完全相同。TPμP-16每行可打印16個(gè)字符。TPμP-40A每行可打印40個(gè)字符,字符點(diǎn)陣碼為5×7,內(nèi)部有一個(gè)240種字符的字庫,并有繪圖功能。它們都具有標(biāo)準(zhǔn)的Centronic并行接口標(biāo)準(zhǔn),便于與各種單片機(jī)和智能化儀器儀表聯(lián)機(jī)使用。TPμP-40A/16
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 14.1《故都的秋》課件 2024-2025學(xué)年統(tǒng)編版高中語文必修上冊(cè)-1
- 2025屆山東省高密市高考語文全真模擬密押卷含解析
- 11《反對(duì)黨八股》課件 2024-2025學(xué)年統(tǒng)編版高中語文必修上冊(cè)
- 廣東深圳平湖外國語學(xué)校2025屆高考英語考前最后一卷預(yù)測(cè)卷含解析
- 《設(shè)備油的基礎(chǔ)》課件
- 重慶市第十一中學(xué)2025屆高考數(shù)學(xué)三模試卷含解析
- 現(xiàn)代學(xué)徒制課題:中國特色學(xué)徒制理論內(nèi)涵、育人模式與實(shí)踐路徑的國際比較研究(研究思路模板、技術(shù)路線圖)
- 專題04 完形填空20篇(原卷版)-2024-2025學(xué)年七年級(jí)英語上學(xué)期期末名校真題進(jìn)階練(深圳專用)
- 遼寧省鐵嶺高中2025屆高三下學(xué)期一??荚囌Z文試題含解析
- 重慶市銅梁中學(xué)2025屆高三下學(xué)期第五次調(diào)研考試語文試題含解析
- 冬至節(jié)氣(課件) 小學(xué)主題班會(huì) 23張幻燈片
- 安全工器具使用培訓(xùn)
- 商業(yè)倫理期末復(fù)習(xí)
- 工地項(xiàng)目現(xiàn)場(chǎng)標(biāo)準(zhǔn)、規(guī)范、圖集臺(tái)賬(現(xiàn)場(chǎng)檢查用規(guī)范)全套
- 公園園區(qū)安保服務(wù)方案
- 地下室后澆帶超前止水施工工法
- 專家咨詢服務(wù)合同
- 圍墻格柵施工方案
- 意大利(百得)TBG 系列燃燒機(jī)說明書
- 2023年中國近現(xiàn)代史綱要
- 2023橡膠膜密封儲(chǔ)氣柜運(yùn)行維護(hù)技術(shù)規(guī)程
評(píng)論
0/150
提交評(píng)論