




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、電子信息工程單片機(jī)鍵盤畢業(yè)論文 分類號(hào) 密級 u d c 中國地質(zhì)大學(xué)江城學(xué)院畢業(yè)設(shè)計(jì)(論文)數(shù)顯鍵盤設(shè)計(jì)與制作姓 名: 丁 瀟 專 業(yè): 電子信息工程 班 級: 22000701 學(xué) 號(hào): 2200070112 指導(dǎo)教師: 熊年祿 教授 論文外文題目:digital keyboard design and production 論文主題詞:數(shù)顯鍵盤 單片機(jī)技術(shù) 軟硬件設(shè)計(jì) 設(shè)計(jì)方案 外文主題詞:digital keyboard microcontroller technology software and hardware design design scheme 論文答辯日期: 答辯委員會(huì)
2、主席: 評閱教師: 陳 榮 原創(chuàng)性聲明本人呈交的學(xué)位論文,是在導(dǎo)師的指導(dǎo)下,獨(dú)立進(jìn)行研究工作所取得的成果,所有數(shù)據(jù)、圖片資料真實(shí)可靠。盡我所知,除文中已經(jīng)注明引用的內(nèi)容外,本學(xué)位論文的研究成果不包含他人享有著作權(quán)的內(nèi)容。對本論文所涉及的研究工作做出貢獻(xiàn)的其他個(gè)人和集體,均已在文中以明確的方式標(biāo)明。本學(xué)位論文的知識(shí)產(chǎn)權(quán)歸屬于培養(yǎng)單位。本人簽名: 日期: 摘 要隨著我國社會(huì)科技經(jīng)濟(jì)的蓬勃發(fā)展,以及電子信息技術(shù)與機(jī)械行業(yè)的發(fā)展和人們生活水平的提高,數(shù)顯鍵盤在各個(gè)領(lǐng)域得到全面地應(yīng)用。它在給我們平時(shí)生活以及科研應(yīng)用帶來方便的同時(shí),也暴露出了很多的問題?,F(xiàn)今市場上存在很多數(shù)顯鍵盤的應(yīng)用產(chǎn)品,要么顯示不穩(wěn)定
3、,要么鍵盤不能及時(shí)響應(yīng),且價(jià)格較高等缺點(diǎn)。市場急需要一種能及時(shí)響應(yīng),顯示穩(wěn)定且性價(jià)比可以接受的數(shù)顯鍵盤產(chǎn)品。本文從數(shù)顯鍵盤的技術(shù)簡介以及國內(nèi)外研究狀態(tài)開始,論述了鍵盤設(shè)計(jì)制作方法。然后由元器件的選擇開始,結(jié)合單片機(jī)技術(shù),就設(shè)計(jì)數(shù)顯鍵盤所用技術(shù)進(jìn)行了全面的介紹和討論,最后討論了數(shù)顯鍵盤的制作結(jié)果及分析解決問題的方法。由于好的數(shù)顯鍵盤設(shè)計(jì)方案同鍵盤設(shè)計(jì)者的實(shí)際設(shè)計(jì)制作經(jīng)驗(yàn)有很大關(guān)系,鑒于作者能力經(jīng)驗(yàn)的不足,論文中很多論述及設(shè)計(jì)制作方案還有疏漏及不完整的地方,相信會(huì)在今后的學(xué)習(xí)工作中改進(jìn)。關(guān)鍵詞: 數(shù)顯鍵盤 單片機(jī)技術(shù) 硬件設(shè)計(jì) 軟件設(shè)計(jì) abstract along with our countr
4、y social science and technology economy of booming development, and electronic information technology and machinery industry development and the improvement of peoples living standard, digital keyboard in various fields get comprehensive application. it gives us peacetime life bring convenience and
5、research applications at the same time, also exposed a lot of problems. there are many on the market today, the application of digital keyboard or product showed no stable, or keyboard cannot respond to, and the price higher shortcomings. markets need a timely response, show stable and cost-effectiv
6、e acceptable digital keyboard products.this article from the technology introduction and keyboard display research at home and abroad, this paper discusses the state began keyboard design method. then the components choice, combined with the single chip microcomputer, start designing digital keyboar
7、d technology used a comprehensive introduction and discussion, finally discussed the digital keyboard production results and analysis methods to solve the problems.due to good digital keyboard design scheme of actual design with the keyboard designer production experience has the very big relations,
8、 given the lack of ability experience, the author in this paper and many designmanufacture plan and omissions and incomplete place, believe in future study improve work. key word: digital keyboard microcontroller technology hardware design software design 目 錄1 引言11.1 研究背影及意義11.2 國內(nèi)外研究現(xiàn)狀及發(fā)展趨勢22 電路總體設(shè)
9、計(jì)方案32.1 總體的結(jié)構(gòu)框架圖32.2 總體設(shè)計(jì)方案的確定42.3 元器件的選擇4 at89s51單片機(jī)芯片功能4 7段數(shù)碼管83 電路設(shè)計(jì)相關(guān)技術(shù)分析123.1 單片機(jī)技術(shù)12 單片機(jī)介紹12 單片機(jī)的發(fā)展歷史14 單片機(jī)的應(yīng)用領(lǐng)域153.2 數(shù)碼顯示技術(shù)16 led顯示原理17 led顯示器接口方法19 led顯示器的顯示方式194 系統(tǒng)硬件設(shè)計(jì)224.1 單片機(jī)及其外圍主要電路的設(shè)計(jì)224.2 鍵盤電路設(shè)計(jì)245 系統(tǒng)軟件設(shè)計(jì)265.1 系統(tǒng)軟件設(shè)計(jì)概述265.2 鍵盤控制模塊設(shè)計(jì)276 實(shí)驗(yàn)結(jié)果及分析296.1 運(yùn)行情況分析296.2 問題的發(fā)現(xiàn)及分析297 結(jié)論和展望307.1 結(jié)
10、論307.2 展望30結(jié)束語31致 謝32參考文獻(xiàn)33附錄1 引言1.1 研究背影及意義1隨著我國社會(huì)經(jīng)濟(jì)的蓬勃發(fā)展,以及電子信息技術(shù)與機(jī)械行業(yè)的發(fā)展以和人們生活水平的提高。數(shù)顯鍵盤在各個(gè)領(lǐng)域得到全面地應(yīng)用。它在給我們平時(shí)生活以及科研應(yīng)用帶來方便的同時(shí),也暴露出了很多的問題?,F(xiàn)今市場上存在很多數(shù)顯鍵盤的應(yīng)用產(chǎn)品,但存在著顯示不穩(wěn)定,鍵盤不能及時(shí)響應(yīng),且價(jià)格較高等缺點(diǎn)。市場急需要一種能及時(shí)響應(yīng),顯示穩(wěn)定且性價(jià)比可以接受的數(shù)顯鍵盤產(chǎn)品。目前各種儀表中,通常運(yùn)用的是led顯示器和小型鍵盤。常見的工作方式有兩種:一是直接使用系統(tǒng)中的cpu對顯示器進(jìn)行動(dòng)態(tài)掃描和鍵盤檢測;二是使用專用的顯示鍵盤芯片。但是
11、這兩種方式存在著不能及時(shí)響應(yīng)和性價(jià)比低等缺點(diǎn)。于是,作者設(shè)計(jì)了一種性價(jià)比更為優(yōu)越的數(shù)顯鍵盤,因此本設(shè)計(jì)具有一定的實(shí)用意義。鍵盤顯示接口,是單片機(jī)應(yīng)用系統(tǒng)中最常用的基本接口電路。鍵盤即為按有序排列組成的并帶有相關(guān)輸入功能電路的一組鍵體開關(guān),cpu通過對鍵盤輸出信號(hào)的高低電平來識(shí)別信息,再通過各種譯碼方式,最后在顯示器上顯示其輸入的信息。數(shù)顯鍵盤是單片機(jī)應(yīng)用系統(tǒng)中的常見應(yīng)運(yùn)器件,本文主要設(shè)計(jì)制作一種基于mcs-51單片機(jī)的鍵盤控制及鍵號(hào)數(shù)碼顯示電路。設(shè)計(jì)制作中運(yùn)用了最基本的理論知識(shí),且設(shè)計(jì)簡單,容易實(shí)現(xiàn),所以這種數(shù)顯鍵盤能廣泛的應(yīng)用于各種智能化儀表中,具有一定實(shí)用意義。此外通過設(shè)計(jì)和制作數(shù)顯鍵盤,
12、可以使作者更加熟悉單片機(jī)及接口電路的基本原理,提高自己設(shè)計(jì)制作實(shí)用電子產(chǎn)品的能力。通過設(shè)計(jì)基于mcs-51單片機(jī)鍵盤控制及鍵號(hào)數(shù)碼顯示電路,希望能降低智能化儀表的制作成本。通過該制作,同時(shí)也期望能優(yōu)化智能化儀表,保證顯示的穩(wěn)定,提高鍵盤的及時(shí)響應(yīng)特性。1.2 國內(nèi)外研究現(xiàn)狀及發(fā)展趨勢數(shù)顯鍵盤一般包括一個(gè)鍵盤主體、顯示模塊以及用于連接的硬件電路,其控制核心是微處理器(cpu)。目前微處理器廣泛應(yīng)運(yùn)于研究高精度、高性能、多功能的測量儀器,隨著單片機(jī)的出現(xiàn),引發(fā)了儀器儀表行業(yè)的根本性變革,形成了智能化儀器這一新一代的測量儀器。它解決了很多傳統(tǒng)儀器不能或者不易解決的問題,簡化了電路,降低了成本,同時(shí)也
13、提高儀表的穩(wěn)定性和可靠性。鍵盤是由機(jī)械打字機(jī)的操作部分衍生而來,已經(jīng)具有了一個(gè)世紀(jì)的歷史。鍵盤的布局格式形成于電子打字機(jī)的時(shí)代。近年來,隨著集成電路與大規(guī)模集成電路的發(fā)展,鍵盤已經(jīng)被廣泛用于辦公自動(dòng)化設(shè)備,鍵盤操作也已從過去的只適用于少數(shù)專業(yè)人員使用發(fā)展到現(xiàn)在大多數(shù)人都能使用的簡易操作方式。顯示裝置可以分為多種類型,由最初的只能顯示單純簡單數(shù)字字符發(fā)展到現(xiàn)在的,能夠顯示復(fù)雜完整的各種圖形。如今市場上更是出現(xiàn)了種類繁多的產(chǎn)品,如可伸縮式屏幕、觸控屏幕、超小的媒體播放器以及新型的戶外顯示屏等。數(shù)顯鍵盤集合二者于一體。目前國內(nèi)外生產(chǎn)研制的鍵盤,主要便于操作方便,拓展功能,進(jìn)一步降低生產(chǎn)成本,便于普及
14、等方向發(fā)展。例如使用無線鍵盤,可遠(yuǎn)距離操縱計(jì)算機(jī)或機(jī)械,在諸如手機(jī)等產(chǎn)品中嵌入了軟鍵盤等。2 電路總體設(shè)計(jì)方案2.1 總體的結(jié)構(gòu)框架圖鍵盤的功能是實(shí)現(xiàn)人機(jī)對話及實(shí)時(shí)將控制信號(hào)輸入,由此得出的鍵盤結(jié)構(gòu)框架圖如圖2.1所示。由圖可見由矩陣結(jié)構(gòu)鍵盤將輸入控制信號(hào)輸入單片機(jī),一方面由單片機(jī)輸出顯示編碼信號(hào),啟動(dòng)顯示驅(qū)動(dòng)電路,使led顯示屏顯示相應(yīng)信息,另一方面輸出相應(yīng)控制信號(hào),驅(qū)動(dòng)被控器件,完成相應(yīng)的受控功能。本文側(cè)重于前者的研究。圖2.1 總體結(jié)構(gòu)框架圖2.2 總體設(shè)計(jì)方案的確定系統(tǒng)設(shè)計(jì)以mcs-51系列單片機(jī)中的ats51作為cpu,它將數(shù)據(jù)存儲(chǔ)器、程序存儲(chǔ)器、1/o口擴(kuò)展、串行口通訊、等多種功能
15、模塊集成于一體p1口。單片機(jī)由p0口輸出顯示的bcd編碼信號(hào),驅(qū)動(dòng)led的7段碼譯碼器cd4511,由兩位led顯示管顯示。2.3 元器件的選擇電路設(shè)計(jì)中,使用以下各種器件,現(xiàn)分述其功能如下。 at89s51單片機(jī)芯片功能 本設(shè)計(jì)選用at89s51單片機(jī)芯片作為cpu,at89s51管腳采用雙列直排結(jié)構(gòu)。其管腳排列及功能如圖2.2所示。其主要特性及功能描述如下。圖2.2 at89s51引腳排列圖1.主要特性 1 與mcs-51單片機(jī)產(chǎn)品兼容 2 4k字節(jié)在系統(tǒng)可編程flash存儲(chǔ)器 3 1000次擦寫周期 4 全靜態(tài)工作:0hz33mhz 5 32個(gè)可編程i/o口線 6 2個(gè)16位定時(shí)器/計(jì)數(shù)
16、器 7 6個(gè)中斷源 8 全雙工uart串行通道 9 低功耗空閑和掉電模式 10 掉電后中斷可喚醒 11 看門狗定時(shí)器 12 雙數(shù)據(jù)指針 13 靈活的isp編程(字或字節(jié)模式) 14 4.0-5.5v電壓工作范圍2.內(nèi)部結(jié)構(gòu)at89s51的內(nèi)部結(jié)構(gòu)如圖2.3所示圖 2.3 at89s51 內(nèi)部結(jié)構(gòu)圖由圖可見,它可以劃分為cpu、存儲(chǔ)器、并行口、串行口、定時(shí)/計(jì)數(shù)器和中斷邏輯幾個(gè)部分。(1)cpusfr)(2)at89s512.4所示)(3)at89s51256b數(shù)據(jù)存儲(chǔ)器ram和4kb的程序存儲(chǔ)器rom。除此之外,還可以在片外擴(kuò)展ram和rom,并且和有64kb的尋址范圍。(4)at89s51s
17、fr的串行數(shù)據(jù)緩沖器sbuf中的數(shù)據(jù)。(5)at89s514個(gè)(p0、p1、p2、p38位并行i/o端口,共32個(gè)引腳。p0口雙向i/o口,用于分時(shí)傳送低8位地址和8位數(shù)據(jù)信號(hào);p1、p2、p3i/o口;其中p2口還用于傳送高8位地址信號(hào);p3口每一引腳還具有特殊功能(圖2-5),用于特殊信號(hào)的輸入輸出和控制信號(hào),如表2.1所示。(6)at89s5116位可編程定時(shí)器/計(jì)數(shù)器t0、t1216-1。工作方式和定時(shí)器或計(jì)數(shù)器的選擇由指令來確定。(7)5個(gè)獨(dú)立的中斷源,即兩個(gè)外部中斷,兩個(gè)定時(shí)器/計(jì)數(shù)器中斷以及一個(gè)串行口中斷。圖 2.4 at89s51的時(shí)鐘電路表 2.1 p3口引腳的特殊功能3.外
18、部特性(引腳功能)at89s51的引腳功能如圖2.2所示,各腳的功能如下。at89s51芯片有40條引腳,雙列直插式封裝2.2所示:(1)vcc 40 +5v(2)vss 20 (3)xtal1(19)xtal2(18)(4)p0口(3932)i/o口,既可作地址/數(shù)據(jù)總線口用,也可作普通i/o口用。(5)p1口(18)i/o口。(6)p2口(2128)8位,也可作普通i/o口用。(7)p3口(1017)i/o口,也可按每位定義的第二功能操作。(8)ale/prog(30)ale為有效高電平,則p0口輸出地址低8位,可以用ale信號(hào)作外部地址鎖存信號(hào)。公式(21)fale 1/6foscpro
19、g是對eprom編程時(shí)的編程脈沖輸入端。(9)rst/vpd(9)at89s51接能電源后,在時(shí)鐘電路作用下,該腳上出現(xiàn)兩個(gè)機(jī)器周期以上的高電平,使內(nèi)部復(fù)位。第二功能是vpd,即備用電源輸入端。當(dāng)主電源vcc發(fā)生故障,降低到低電平規(guī)定值時(shí),vpd將為ram提供備用電源,發(fā)保證存儲(chǔ)在ram中的信號(hào)不丟失。(10)ea/vpp 31 :內(nèi)部和外部程序存儲(chǔ)器選擇線。ea 0時(shí)訪問外部rom 0000hffffh;ea 1時(shí),地址0000h0fffh空間訪問內(nèi)部rom,地址1000hffffh空間訪問外部rom。(11)psen(29)7段數(shù)碼管,結(jié)構(gòu)如圖2.5所示。圖 2.5 7段數(shù)碼管結(jié)構(gòu)圖1.
20、led器件發(fā)光的基本原理發(fā)光二極管 light emitting diode,led ,是一種把電能變成光能的特種器件,當(dāng)電流通過它的時(shí)候,便可以產(chǎn)生可視的光。發(fā)光二極管的結(jié)構(gòu)主要由pn結(jié)芯片,電極和光學(xué)系統(tǒng)構(gòu)成。我們知道,發(fā)光是一種能量轉(zhuǎn)化現(xiàn)象。當(dāng)系統(tǒng)受到外界激發(fā)后,會(huì)從穩(wěn)定的低能態(tài)躍遷到不穩(wěn)定的高能態(tài);當(dāng)系統(tǒng)由不穩(wěn)定的高能態(tài)重新回到穩(wěn)定的低能態(tài)時(shí),能量差以光的形式輻射出來,就會(huì)產(chǎn)生發(fā)光現(xiàn)象。當(dāng)在pn結(jié)上加以正向電壓之后,p區(qū)的空穴注入至n區(qū),n區(qū)的電子注入至p區(qū),相互注入的電子與空穴相遇后即產(chǎn)生復(fù)合,這些少數(shù)載流子在結(jié)的注入和復(fù)合中產(chǎn)生輻射而發(fā)光。它是自發(fā)輻射發(fā)光,不需要較高的注入電流產(chǎn)生
21、粒子數(shù)反轉(zhuǎn)分布,也不需要光學(xué)諧振腔,發(fā)射的是非相干光。led器件的驅(qū)動(dòng)led器件的發(fā)光機(jī)理可以知道,當(dāng)向led器件施加正向電壓時(shí),流過器件的正向電流使其發(fā)光。因此led的驅(qū)動(dòng)就是要使它的pn結(jié)處于正偏置,同時(shí)為了控制它的發(fā)光強(qiáng)度,還要解決正向電流的調(diào)節(jié)問題。具體的驅(qū)動(dòng)方式有直流驅(qū)動(dòng),恒流驅(qū)動(dòng),脈沖驅(qū)動(dòng)和掃描驅(qū)動(dòng)等,本課題led器件的驅(qū)動(dòng)為掃描驅(qū)動(dòng)。:1) 脈沖驅(qū)動(dòng),采用向led器件重復(fù)通斷供電的方法使之點(diǎn)燃,就是通常所說的脈沖驅(qū)動(dòng)方式。采用這種方式時(shí)應(yīng)該注意兩個(gè)問題脈沖電流幅值的確定和重復(fù)頻率的選擇。首先,要想獲得與直流驅(qū)動(dòng)方式相當(dāng)?shù)陌l(fā)光強(qiáng)度,脈沖驅(qū)動(dòng)電流的平均值。就應(yīng)該與直流驅(qū)動(dòng)的電流值相同
22、。所以脈沖驅(qū)動(dòng)時(shí),脈沖電流的幅值應(yīng)該比直流驅(qū)動(dòng)電流大t/t倍。其次是脈沖重復(fù)頻率的問題,通過視覺暫留特性的分析,己經(jīng)知道脈沖重復(fù)頻率必須高于24hz,否則會(huì)產(chǎn)生閃爍現(xiàn)象。脈沖驅(qū)動(dòng)的主要應(yīng)用有兩個(gè)方面:掃描驅(qū)動(dòng)和占空比驅(qū)動(dòng)。2) 掃描驅(qū)動(dòng)現(xiàn)行顯示方式多為掃描方式。掃描顯示的原理是基于人類眼睛的視覺暫留效應(yīng):要顯示行輪流顯示,只要刷新頻率不小于24幀/秒,人們不會(huì)有閃爍的感覺。但由于每行顯示占有的時(shí)間相對的少,所以亮度難于發(fā)揮到最佳值。以每個(gè)掃描周期t掃描16行為例:首先輸出第一行點(diǎn)陣數(shù)據(jù)到列驅(qū)動(dòng)寄存器,再發(fā)出行驅(qū)動(dòng)信號(hào),延時(shí)一段時(shí)間,關(guān)閉行驅(qū)動(dòng)。完成第一行掃描。然后以同樣方式掃描第二行,第三行一
23、直到第l6行,完成一幀的顯示。掃描驅(qū)動(dòng)是通過數(shù)字邏輯電路,使若干led器件輪流導(dǎo)通,用以節(jié)省控制驅(qū)動(dòng)電路。led顯示屏是將發(fā)光燈按行或按列布置的,驅(qū)動(dòng)時(shí)也就按行按列驅(qū)動(dòng)。在掃描驅(qū)動(dòng)方式下可以按行掃描,按列控制;也可以按列掃描,按行控制。所謂“掃描”的含義,就是指一行一行地循環(huán)接通整行的led器件,而不問這一行的哪一列的led器件是否應(yīng)該點(diǎn)亮,某一列的led器件是否應(yīng)該點(diǎn)亮,由所謂的列控制電路來。2cd4511是一個(gè)用于驅(qū)動(dòng)共陰極 led (數(shù)碼管)顯示器的 bcd 碼七段碼譯碼器,特點(diǎn):具有bcd轉(zhuǎn)換、消隱和鎖存控制、七段譯碼及驅(qū)動(dòng)功能的cmos電路能提供較大的拉電流??芍苯域?qū)動(dòng)led顯示器。
24、圖 2.6 cd4511管腳排列圖cd4511 是一片 cmos bcd鎖存/7 段譯碼/驅(qū)動(dòng)器,引腳排列如圖 2-6 所示。其中a b c d 為 bcd 碼輸入,a為最低位。lt為燈測試端,加高電平時(shí),顯示器正常顯示,加低電平時(shí),顯示器一直顯示數(shù)碼“8”,各筆段都被點(diǎn)亮,以檢查顯示器是否有故障。bi為消隱功能端,低電平時(shí)使所有筆段均消隱,正常顯示時(shí), b1端應(yīng)加高電平。另外 cd4511有拒絕偽碼的特點(diǎn),當(dāng)輸入數(shù)據(jù)越過十進(jìn)制數(shù)9 1001 時(shí),顯示字形也自行消隱。le是鎖存控制端,高電平時(shí)鎖存,低電平時(shí)傳輸數(shù)據(jù)。ag是 7 段輸出,可驅(qū)動(dòng)共陰led數(shù)碼管。另外,cd4511顯示數(shù)“6”時(shí),
25、a段消隱;顯示數(shù)“9”時(shí),d段消隱,所以顯示6、9這兩個(gè)數(shù)時(shí),字形不太美觀圖是 cd4511一位計(jì)數(shù)顯示電路,若要多位計(jì)數(shù),只需將計(jì)數(shù)器級聯(lián),每級輸出接一只 cd4511 和 led 數(shù)碼管即可。所謂共陰 led 數(shù)碼管是指 7 段 led 的陰極是連在一起的,在應(yīng)用中應(yīng)接地。限流電阻要根據(jù)電源電壓來選取,電源電壓5v時(shí)可使用300的限流電阻。功能如下: bi:4腳是消隱輸入控制端,當(dāng)bi 0 時(shí),不管其它輸入端狀態(tài)如何,七段數(shù)碼管均處于熄滅(消隱)狀態(tài),不顯示數(shù)字。 lt:3腳是測試輸入端,當(dāng)bi 1,lt 0 時(shí),譯碼輸出全為1,不管輸入 dcba 狀態(tài)如何,七段均發(fā)亮,顯示“8”。它主要
26、用來檢測數(shù)碼管是否損壞。 le:鎖定控制端,當(dāng)le 0時(shí),允許譯碼輸出。 le 1時(shí)譯碼器是鎖定保持狀態(tài),譯碼器輸出被保持在le 0時(shí)的數(shù)值。 a1、a2、a3、a4、為8421bcd碼輸入端。 a、b、c、d、e、f、g:為譯碼輸出端,輸出為高電平1有效。 cd4511的內(nèi)部有上拉電阻,在輸入端與數(shù)碼管筆段端接上限流電阻就可工作用cd4511實(shí)現(xiàn)led與單片機(jī)的并行接口方法如下圖:圖 2.7 cd4511的一位計(jì)數(shù)顯示電路3 電路設(shè)計(jì)相關(guān)技術(shù)分析3.1 單片機(jī)技術(shù)3單片機(jī)是一種集成在電路芯片,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器cpu隨機(jī)存儲(chǔ)器ram、只讀存儲(chǔ)器rom、多
27、種i/o口和中斷系統(tǒng)、定時(shí)器/計(jì)時(shí)器等功能(可能還包括顯示驅(qū)動(dòng)電路、脈寬調(diào)制電路、模擬多路轉(zhuǎn)換器、a/d轉(zhuǎn)換器等電路)集成到一塊硅片上構(gòu)成的一個(gè)小而完善的計(jì)算機(jī)系統(tǒng)。單片微型計(jì)算機(jī)簡稱單片機(jī),是典型的嵌入式微控制器(microcontroller unit),常用英文字母的縮寫mcu表示單片機(jī),它最早是被用在工業(yè)控制領(lǐng)域。單片機(jī)由芯片內(nèi)僅有cpu的專用處理器發(fā)展而來。最早的設(shè)計(jì)理念是通過將大量外圍設(shè)備和cpu集成在一個(gè)芯片中,使計(jì)算機(jī)系統(tǒng)更小,更容易集成進(jìn)復(fù)雜的而對體積要求嚴(yán)格的控制設(shè)備當(dāng)中。intel的z80是最早按照這種思想設(shè)計(jì)出的處理器,從此以后,單片機(jī)和專用處理器的發(fā)展便分道揚(yáng)鑣。 早
28、期的單片機(jī)都是8位或4位的。其中最成功的是intel的8031,因?yàn)楹唵慰煽慷阅懿诲e(cuò)獲得了很大的好評。此后在8031上發(fā)展出了mcs51系列單片機(jī)系統(tǒng)?;谶@一系統(tǒng)的單片機(jī)系統(tǒng)直到現(xiàn)在還在廣泛使用。隨著工業(yè)控制領(lǐng)域要求的提高,開始出現(xiàn)了16位單片機(jī),但因?yàn)樾詢r(jià)比不理想并未得到很廣泛的應(yīng)用。90年代后隨著消費(fèi)電子產(chǎn)品大發(fā)展,單片機(jī)技術(shù)得到了巨大提高。隨著intel i960系列特別是后來的arm系列的廣泛應(yīng)用,32位單片機(jī)迅速取代16位單片機(jī)的高端地位,并且進(jìn)入主流市場。而傳統(tǒng)的8位單片機(jī)的性能也得到了飛速提高,處理能力比起80年代提高了數(shù)百倍。目前,高端的32位單片機(jī)主頻已經(jīng)超過300mhz
29、,性能直追90年代中期的專用處理器,而普通的型號(hào)出廠價(jià)格跌落至1美元,最高端的型號(hào)也只有10美元。當(dāng)代單片機(jī)系統(tǒng)已經(jīng)不再只在裸機(jī)環(huán)境下開發(fā)和使用,大量專用的嵌入式操作系統(tǒng)被廣泛應(yīng)用在全系列的單片機(jī)上。而在作為掌上電腦和手機(jī)核心處理的高端單片機(jī)甚至可以直接使用專用的windows和linux操作系統(tǒng)。 單片機(jī)比專用處理器更適合應(yīng)用于嵌入式系統(tǒng),因此它得到了最多的應(yīng)用。事實(shí)上單片機(jī)是世界上數(shù)量最多的計(jì)算機(jī)。現(xiàn)代人類生活中所用的幾乎每件電子和機(jī)械產(chǎn)品中都會(huì)集成有單片機(jī)。手機(jī)、電話、計(jì)算器、家用電器、電子玩具、掌上電腦以及鼠標(biāo)等電腦配件中都配有1-2部單片機(jī)。而個(gè)人電腦中也會(huì)有為數(shù)不少的單片機(jī)在工作。
30、汽車上一般配備40多部單片機(jī),復(fù)雜的工業(yè)控制系統(tǒng)上甚至可能有數(shù)百臺(tái)單片機(jī)在同時(shí)工作!單片機(jī)的數(shù)量不僅遠(yuǎn)超過pc機(jī)和其他計(jì)算的總和,甚至比人類的數(shù)量還要多。 單片機(jī)又稱單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。相當(dāng)于一個(gè)微型的計(jì)算機(jī),和計(jì)算機(jī)相比,單片機(jī)只缺少了i/o設(shè)備。概括的講:一塊芯片就成了一臺(tái)計(jì)算機(jī)。它的體積小、質(zhì)量輕、價(jià)格便宜、為學(xué)習(xí)、應(yīng)用和開發(fā)提供了便利條件。同時(shí),學(xué)習(xí)使用單片機(jī)是了解計(jì)算機(jī)原理與結(jié)構(gòu)的最佳選擇。 單片機(jī)內(nèi)部也用和電腦功能類似的模塊,比如cpu,內(nèi)存,并行總線,還有和硬盤作用相同的存儲(chǔ)器件,不同的是它的這些部件性能都相對我們的
31、家用電腦弱很多,不過價(jià)錢也是低的,一般不超過10元即可.用它來做一些控制電器一類不是很復(fù)雜的工作足矣了。我們現(xiàn)在用的全自動(dòng)滾筒洗衣機(jī)、排煙罩、vcd等等的家電里面都可以看到它的身影!.它主要是作為控制部分的核心部件。 它是一種在線式實(shí)時(shí)控制計(jì)算機(jī),在線式就是現(xiàn)場控制,需要的是有較強(qiáng)的抗干擾能力,較低的成本,這也是和離線式計(jì)算機(jī)的(比如家用pc)的主要區(qū)別。 單片機(jī)是靠程序運(yùn)行的,并且可以修改。通過不同的程序?qū)崿F(xiàn)不同的功能,尤其是特殊的獨(dú)特的一些功能,這是別的器件需要費(fèi)很大力氣才能做到的,有些則是花大力氣也很難做到的。一個(gè)不是很復(fù)雜的功能要是用美國50年代開發(fā)的74系列,或者60年代的cd400
32、0系列這些純硬件來搞定的話,電路一定是一塊大pcb板!但是如果要是用美國70年代成功投放市場的系列單片機(jī),結(jié)果就會(huì)有天壤之別!只因?yàn)閱纹瑱C(jī)的通過你編寫的程序可以實(shí)現(xiàn)高智能,高效率,以及高可靠性! 由于單片機(jī)對成本是敏感的,所以目前占統(tǒng)治地位的軟件還是最低級匯編語言,它是除了二進(jìn)制機(jī)器碼以上最低級的語言了,既然這么低級為什么還要用呢?很多高級的語言已經(jīng)達(dá)到了可視化編程的水平為什么不用呢?原因很簡單,就是單片機(jī)沒有家用計(jì)算機(jī)那樣的cpu,也沒有像硬盤那樣的海量存儲(chǔ)設(shè)備。一個(gè)可視化高級語言編寫的小程序里面即使只有一個(gè)按鈕,也會(huì)達(dá)到幾十k的尺寸!對于家用pc的硬盤來講沒什么,可是對于單片機(jī)來講是不能接
33、受的。 單片機(jī)在硬件資源方面的利用率必須很高才行,所以匯編雖然原始卻還是在大量使用。一樣的道理,如果把巨型計(jì)算機(jī)上的操作系統(tǒng)和應(yīng)用軟件拿到家用pc上來運(yùn)行,家用pc的也是承受不了的。 可以說,二十世紀(jì)跨越了三個(gè)“電”的時(shí)代,即電氣時(shí)代、電子時(shí)代和現(xiàn)已進(jìn)入的電腦時(shí)代。不過,這種電腦,通常是指個(gè)人計(jì)算機(jī),簡稱pc機(jī)。它由主機(jī)、鍵盤、顯示器等組成。還有一類計(jì)算機(jī),大多數(shù)人卻不怎么熟悉。這種計(jì)算機(jī)就是把智能賦予各種機(jī)械的單片機(jī)(亦稱微控制器)。顧名思義,這種計(jì)算機(jī)的最小系統(tǒng)只用了一片集成電路,即可進(jìn)行簡單運(yùn)算和控制。因?yàn)樗w積小,通常都藏在被控機(jī)械的“肚子”里。它在整個(gè)裝置中,起著有如人類頭腦的作用,
34、它出了毛病,整個(gè)裝置就癱瘓了?,F(xiàn)在,這種單片機(jī)的使用領(lǐng)域已十分廣泛,如智能儀表、實(shí)時(shí)工控、通訊設(shè)備、導(dǎo)航系統(tǒng)、家用電器等。各種產(chǎn)品一旦用上了單片機(jī),就能起到使產(chǎn)品升級換代的功效,常在產(chǎn)品名稱前冠以形容詞“智能型”,如智能型洗衣機(jī)等?,F(xiàn)在有些工廠的技術(shù)人員或其它業(yè)余電子開發(fā)者搞出來的某些產(chǎn)品,不是電路太復(fù)雜,就是功能太簡單且極易被仿制。究其原因,可能就卡在產(chǎn)品未使用單片機(jī)或其它可編程邏輯器件上。1、976-1978 初級8位單片機(jī) intel mcs-48 系列 2、978-1983 高檔8位單片機(jī) intel mcs-51系列: ?51子系列:8031/8051/8751 52子系列:8032
35、/8052/8752低功耗型80c31高性能型80c252廉價(jià)型89c2051/10513、983- 90年代初 16位單片機(jī) intel mcs-96 系列8098/8096、80c198/80c1964、0年代初-至今 16位單片機(jī)高檔32位單片機(jī)單片機(jī)作為微型計(jì)算機(jī)的一個(gè)重要的分支,應(yīng)用面很廣,發(fā)展也很快,1971年intel公司首次宣布4004的4位微處理器,1974年12月仙童 fair?child 公司即推出8位單片機(jī)f8(需另加一塊3851芯片,還不能真正稱的上為單片機(jī))。隨后,?mostek公司和仙童公司一起推出了與f8兼容的3870單片機(jī)系列。intel公司在1976年9月推
36、出了mcs-48單片機(jī)系列(包括8048/8748/8035等);gi(general?instrument?crop1977年10月宣布了pic1650單片機(jī)系列;在1978年rockwell公司也推出了r6500/1系列(與6502微處理器兼容)。這些單片機(jī)都有8位cpu、若干個(gè)并行i/o口、8位定時(shí)器/計(jì)數(shù)器、容量有限的ram和rom,以及簡單中斷處理等功能。motorola?公司和zilog公司的單片機(jī)問世稍晚一些,但產(chǎn)品性能較高,單片機(jī)還有串行i/o、多極中斷處理等功能,片內(nèi)的ram和rom容量較大,有的還帶有a/d轉(zhuǎn)換接口。motorola公司在1978年下半年宣布了與6800微處
37、理器兼容的6801單片機(jī)(在此之前,先推出了雙片式的6802);zilog公司在同年10月也推出了z8單片機(jī)系列(包括8051/8751/8031等)。到1982年mostek?公司和intel公司先后推出了16位單片機(jī)mk68200(與68000微處理器兼容)和mcs-96系列。1987年intel公司又推出了性能是8096的2.5倍新型單片機(jī)80296。綜上所述,可以把單片機(jī)的發(fā)展劃分為四個(gè)階段:第一階段(1974年開始):單片機(jī)初級階段。因工藝限制,單片機(jī)采用雙片的形式,而且功能比較簡單,如仙童公司的f8實(shí)際上只包括了8位cpu、64ram和2個(gè)并行i/o口,因此,還需加一塊3851(由
38、1k?rom、定時(shí)/計(jì)數(shù)器和2個(gè)并行i/o口構(gòu)成)才能組成一臺(tái)完整微型計(jì)算機(jī)。第二階段(1976年開始):低性能單片機(jī)階段。以intel?公司的mcs-48為列,采用了單片結(jié)構(gòu)。即在一塊芯片內(nèi)就含有8位cpu、并行i/o口、8位定時(shí)/計(jì)數(shù)器、ram和rom等,但無串行i/o口,中斷處理也比較簡單,片內(nèi)ram和rom容量較小,且尋址范圍有限,一般都不大于4k字節(jié)。第三階段(1978年開始):高性能單片機(jī)階段。這一類單片機(jī)帶有串行i/o,有多極中斷處理,定時(shí)/計(jì)數(shù)器為16位,片內(nèi)的ram和rom相對增大,且尋址范圍可達(dá)64k字節(jié),有的片內(nèi)還帶有a/d轉(zhuǎn)換接口。這類單片機(jī)有intel?公司的mcs-
39、51,motorola公司的6801和zilog公司z8等。由于這類單片機(jī)應(yīng)用的領(lǐng)域較廣,目前還在不斷改進(jìn)和發(fā)展著。第四階段(1982年開始):16位單片機(jī)階段。16位單片機(jī)除了cpu位16位外,ram和rom容量進(jìn)一步增大,實(shí)時(shí)處理的能力更強(qiáng)。如intel?公司的mcs-96,其集成度已為120000管子/片,主振幅12mhz,片內(nèi)ram為232字節(jié),rom為8k字節(jié),中斷處理為8級,而且片內(nèi)帶有多通道10位a/d轉(zhuǎn)換和高速輸入/輸出部件(hsio),實(shí)時(shí)處理的能力很強(qiáng)。根據(jù)1989年5月的統(tǒng)計(jì),包括單片信號(hào)處理機(jī)在內(nèi),單片機(jī)有70幾個(gè)系列463個(gè)機(jī)種。 單片機(jī)的應(yīng)用領(lǐng)域目前單片機(jī)滲透到我們
40、生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒有單片機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動(dòng)化過程的實(shí)時(shí)控制和數(shù)據(jù)處理,廣泛使用的各種智能ic卡,民用豪華轎車的安全保障系統(tǒng),錄象機(jī)、攝象機(jī)、全自動(dòng)洗衣機(jī)的控制,以及程控玩具、電子寵物等等,這些都離不開單片機(jī)。更不用說自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械了。因此,單片機(jī)的學(xué)習(xí)、開發(fā)與應(yīng)用將造就一批計(jì)算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。 單片機(jī)廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理及過程控制等領(lǐng)域,大致可分如下幾個(gè)范疇:1.在智能儀器儀表上的應(yīng)用單片機(jī)具有體積小、功耗低、控制
41、功能強(qiáng)、擴(kuò)展靈活、微型化和使用方便等優(yōu)點(diǎn),廣泛應(yīng)用于儀器儀表中,結(jié)合不同類型的傳感器,可實(shí)現(xiàn)諸如電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長度、硬度、元素、壓力等物理量的測量。采用單片機(jī)控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起采用電子或數(shù)字電路更加強(qiáng)大。例如精密的測量設(shè)備(功率計(jì),示波器,各種分析儀)。2.在工業(yè)控制中的應(yīng)用用單片機(jī)可以構(gòu)成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)。例如工廠流水線的智能化管理,電梯智能化控制、各種報(bào)警系統(tǒng),與計(jì)算機(jī)聯(lián)網(wǎng)構(gòu)成二級控制系統(tǒng)等。3.在家用電器中的應(yīng)用可以這樣說,現(xiàn)在的家用電器基本上都采用了單片機(jī)控制,從電飯褒、洗衣機(jī)、電冰箱、空調(diào)機(jī)、彩電
42、、其他音響視頻器材、再到電子秤量設(shè)備,五花八門,無所不在。4.在計(jì)算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用現(xiàn)代的單片機(jī)普遍具備通信接口,可以很方便地與計(jì)算機(jī)進(jìn)行數(shù)據(jù)通信,為在計(jì)算機(jī)網(wǎng)絡(luò)和通信設(shè)備間的應(yīng)用提供了極好的物質(zhì)條件,現(xiàn)在的通信設(shè)備基本上都實(shí)現(xiàn)了單片機(jī)智能控制,從手機(jī),電話機(jī)、小型程控交換機(jī)、樓宇自動(dòng)通信呼叫系統(tǒng)、列車無線通信、再到日常工作中隨處可見的移動(dòng)電話,集群移動(dòng)通信,無線電對講機(jī)等。5.單片機(jī)在醫(yī)用設(shè)備領(lǐng)域中的應(yīng)用單片機(jī)在醫(yī)用設(shè)備中的用途亦相當(dāng)廣泛,例如醫(yī)用呼吸機(jī),各種分析儀,監(jiān)護(hù)儀,超聲診斷設(shè)備及病床呼叫系統(tǒng)等等。此外,單片機(jī)在工商,金融,科研、教育,國防航空航天等領(lǐng)域都有著十分廣泛的用途。
43、led顯示器、lcd顯示器及crt顯示器三種類型。 led(light emiting diode)是發(fā)光二極管的縮寫, led顯示器是由發(fā)光二極管構(gòu)成的,俗稱數(shù)碼管。 led顯示原理led顯示器由七個(gè)發(fā)光二極管組成,稱七段led顯示器,排列形狀如圖3.1所示。此外,顯示器中還有一個(gè)圓點(diǎn)發(fā)光二極管(dp),用于顯示小數(shù)點(diǎn)。通過七段發(fā)光二極管亮暗的不同組合,可以顯示多種數(shù)字(09)af、afled顯示器中的發(fā)光二極管共有兩種連接方法:1、陽極接法: 各發(fā)光二極管的陽極連接在一起,接到數(shù)碼管的位控端(公共端),再接+5v;各發(fā)光二極管的陰極分別連接到數(shù)碼管的段控端(ag、dp3.1。2、陰極接法
44、: 各發(fā)光二極管的陰極連接在一起,接到數(shù)碼管的位控端(公共端),再接地;各發(fā)光二極管的陽極分別連接到數(shù)碼管的段控端(ag、dpled顯示器提供代碼,由于這些代碼是為顯示字形的,因此稱之為字形代碼。七段發(fā)光二極管,再加上一個(gè)小數(shù)點(diǎn)位,共計(jì)led顯示器的字形代碼正好為一個(gè)字節(jié)。各代碼位的對應(yīng)關(guān)系如表3.1所示。表3.1 代碼為與顯示段關(guān)系代碼位d7d6d5d4d3d2d1d0顯示段dpgfedcba用led顯示器顯示十六進(jìn)制數(shù)字形代碼如表3.2、3.3 led顯示器接口方法1、硬件為主的接口方法必須使用地址譯碼器、鎖存器或i/o接口電路,還需專用的譯碼驅(qū)動(dòng)器,通過譯碼器把一位十六進(jìn)制數(shù)(四位二進(jìn)制
45、)譯碼為相應(yīng)的字形代碼,然后由驅(qū)動(dòng)器提供足夠的功率去驅(qū)動(dòng)led。 電路圖如圖3.2所示。圖3.2 led顯示器以硬件為主的接口方法2、軟件為主的接口方法主要以軟件查表來代替硬件譯碼,也需簡單的硬件電路配合。電路圖如圖3.3所示。圖3.3 led顯示器以軟件為主的接口方法 led顯示器的顯示方式1、ed靜態(tài)顯示方式 led顯示器各位數(shù)碼管的位控線(公共端)連接在一起并接地(共陰極)或+5v(共陽極);各位數(shù)碼管的段選線(adp缺點(diǎn):占有較多i/o口線及較多鎖存器。六位led數(shù)碼管共陽與共陰接法靜態(tài)顯示方式如圖3.4所示。圖3.4 六位led數(shù)碼管靜態(tài)顯示方式2、led動(dòng)態(tài)顯示方式 將led顯示器
46、各位數(shù)碼管的所有段控端(adpi/o口控制,形成段選線多路復(fù)用,而各位數(shù)碼管的共陽極或共陰極要分別由相應(yīng)的i/o口線控制,實(shí)現(xiàn)各位的分時(shí)選通。 由于各位數(shù)碼管的段選線并聯(lián),段選碼的輸出對各位數(shù)碼管的來說都是相同的。因此,同一時(shí)刻,如果各位的位選線都處于選通狀態(tài)的話,6位led將顯示相同的字符。 若需要各位數(shù)碼管顯示出與本位相應(yīng)的顯示字符,就必須采用掃描顯示方式,即在某一時(shí)刻,只讓某一位數(shù)碼管的位選線處于選通狀態(tài),而其它各位數(shù)碼管的位選線處于關(guān)閉狀態(tài),同時(shí),段選線上輸出相應(yīng)位要顯示字符的字型碼。這樣,在同一時(shí)刻,6位led中只有選通的那一位數(shù)碼管顯示出字符,而其它各位數(shù)碼管則是熄滅的,如此循環(huán)下
47、去,就可以使各位數(shù)碼管顯示出將要顯示的字符。 特點(diǎn):硬件電路簡化,但由于led導(dǎo)通時(shí)間太短,亮度不足,應(yīng)增加驅(qū)動(dòng)器已提高驅(qū)動(dòng)能力,而且顯示位數(shù)控制在led的電路圖如圖3.5所示。圖3.5 六位led數(shù)碼管動(dòng)態(tài)顯示方式4 系統(tǒng)硬件設(shè)計(jì)4.1 單片機(jī)及其外圍主要電路的設(shè)計(jì)圖 4.1 51單片機(jī)鍵盤控制及鍵號(hào)數(shù)碼顯示硬件電路51單片機(jī)鍵盤控制及鍵號(hào)數(shù)碼顯示硬件電路如圖4.1所示,51單片機(jī)的p1口控制鍵盤,其中p1.0,p1.1,p1.2,p1.5,p1.6,再與電源vcc(+5v)74hc21(四輸入與門)的輸入端口相連,其輸出端與51單片機(jī)的外中斷0輸入端p3.2相連。因?yàn)閜1口通過指令設(shè)置為0
48、xf0,即“11110000”,四列線均為“0”,如果沒有鍵按下,則四個(gè)行線均為高電平?;蜷T74hc21輸出為高電平。當(dāng)有任意一個(gè)鍵被按下時(shí), 74hc21的四個(gè)輸入端總有一個(gè)輸入為低電平。此時(shí)的74hc21的功能為:只要有一個(gè)輸入端為低電平,則其輸出端為低電平。此下降沿觸發(fā)51單片機(jī)的外中斷0而引發(fā)中斷服務(wù)(搜索中斷鍵號(hào)),所以對鍵盤控制方式采用的是中斷搜索方式。鍵號(hào)的數(shù)碼顯示方式采用p0口輸出,輸出的兩位bcd碼分別由p0.1p0.7送入到兩片4511譯碼器的abcd端,如圖4.2所示。dc4511為四位bcd碼輸入,譯碼后產(chǎn)生7段數(shù)碼管顯示信號(hào)驅(qū)動(dòng)數(shù)碼管進(jìn)行鍵號(hào)顯示。如圖4.2所示。圖4
49、.2 鍵號(hào)的數(shù)碼顯示電路圖4511的6腳,2腳,1腳,7腳為8421bcd碼的輸入端,引腳為輸入使能端,低電平有效。b1為工作使能端,高電平有效。其控制功能見表4-1。表4-1 b1端控制功能表輸 入 端輸 出 端b1ltled c b a g f e d c b a 110 0 0 0 1 0 0 0 0 1 1 0110 0 0 1 0 1 0 1 1 0 1 1110 0 0 1 1 1 0 0 1 1 1 1 110 010 0 0 0 0 0 0 0100 1 1 1 1 1 1 1 當(dāng)控制地址為0xbfff時(shí),(即p2狀態(tài)為10111111),與配合,驅(qū)動(dòng)74hc02至4511的第
50、5腳le端,打開4511的鎖存器,鍵號(hào)的顯示由p0口輸出。見圖4-1。p0p0.3,p0.2,p0.1,p0.04511-1的d、c、b、ap0的p0.7,p0.6,p0.5,p0.44511-2的d、c、b、a.2 鍵盤電路設(shè)計(jì)為了減少鍵盤與單片機(jī)接口時(shí)所占用 i/o 口線的數(shù)目,在鍵數(shù)較多時(shí),通常都將鍵盤排列成列矩陣式,如圖4.3所示:每一水平線與垂直線的交叉處不相通,而是通過一個(gè)按鍵來連通。利用這種行列矩陣結(jié)構(gòu)只需n個(gè)行線和m個(gè)列線即可組成m乘n個(gè)按鍵的鍵盤,則鍵盤與微機(jī)連線為m加n根。鍵數(shù)越多,這種鍵盤的優(yōu)點(diǎn)越明顯。圖4-5表示4乘4矩陣鍵盤,這個(gè)矩陣鍵盤的四條平行線接到接口的d7d4
51、,列線接到接口的d3d0上。在采用這種矩陣式非編碼鍵盤的單片機(jī)系統(tǒng)中,鍵盤處理程序首先執(zhí)行確認(rèn)有無鍵盤按下的程序段,其工作過程為:cpu由d3d0口輸出全“0”使所有的列線輸出低電平,然后取出d7d4的狀態(tài),判斷是否為全“1”,若鍵盤上沒有鍵盤閉合,行,列線之間是斷開的,所有行線d7d4均為高電平;若有鍵按下閉合時(shí),則對應(yīng)的行線和列線短路,則行線的輸入即為列線的輸出。當(dāng)確認(rèn)有穩(wěn)定的鍵按下后,下一步就要識(shí)別那一個(gè)按鍵被按下。對鍵的識(shí)別通常采用逐行 逐列 掃描的查詢法。判斷鍵盤中哪一個(gè)鍵按下,由列線逐列置低電平后,檢查行輸入狀態(tài)。其方法是:依次給列線送低電平,然后查所有行線狀態(tài),如果全為“1”,則
52、所按下之鍵不在此列。如果不全為“1”,則所按下的必在此列,而且是在與低電平行線相交的交點(diǎn)上的哪個(gè)鍵。最后確定鍵盤上每個(gè)鍵的鍵值。鍵值賦值的最直接辦法是將列,行線按二進(jìn)制順序排列,當(dāng)某一鍵按下時(shí),鍵盤掃描程序執(zhí)行到該列置0電平,讀出各行狀態(tài)為非全“1”狀態(tài),這時(shí)的行列數(shù)據(jù)組合成鍵值。如圖中鍵盤值從左至右,從上至下依次是77、7b、7d、7e;b7、bb、bd、be;e7、eb、ed、ee。這種負(fù)邏輯表示往往不夠直觀,因而采取行列線加反相器或軟件求反的方法把鍵盤改成正邏輯,這時(shí)鍵值依次為88、82、81;48、44、42、41;18、14、12、11。不論是正邏輯還是負(fù)邏輯,這種鍵盤的鍵值表示方式
53、分散度大且不等距,用散轉(zhuǎn)指令進(jìn)入鍵處理程序不太方便。對于不是4 乘4或8乘4,8乘8鍵盤,使用也不太容易,所以在許多場合,還需要進(jìn)一步的程序處理,以依次排列鍵值。.1 系統(tǒng)軟件設(shè)計(jì)概述鍵盤控制程序采用外中斷的方式進(jìn)入,即有人按下任意一個(gè)鍵,則外中斷0啟動(dòng),外中斷0的中斷服務(wù)程序主要采用兩級循環(huán)程序嵌套的方式。鍵盤號(hào)碼變量為一個(gè)無符號(hào)的8位nkeynumber。外循環(huán)中首先將p1.3設(shè)置為0,p1其它端口設(shè)置為1,再讀入p1口狀態(tài),進(jìn)入內(nèi)循環(huán)程序。第一步測試p1.4是否為0,(見圖5.1及掃描鍵盤子程序scan_key.h)。若是,則是0號(hào)鍵被按下,將鍵號(hào)0送nkeynumber,退出。若不是,
54、則檢查p1.5是否為0,若是,是4號(hào)鍵被按下,則將鍵號(hào)4送nkeynumber,退出。若不是,則檢查p1.6是否為0一直檢查到p1.7。若沒查到鍵號(hào),則退出內(nèi)循環(huán),進(jìn)入外循環(huán),再將p1.2置0,p11,再讀入p1口狀態(tài),又進(jìn)入內(nèi)循環(huán),再分別查1,5,9,13nkeynumber,若沒查到鍵號(hào),則退出內(nèi)循環(huán),進(jìn)入外循環(huán),將p1.1置0, p11,讀入p1口狀態(tài),又進(jìn)入內(nèi)循環(huán),再分別查2,6,10,14nkeynumber,若沒查到鍵號(hào),則退出內(nèi)循環(huán),進(jìn)入外循環(huán),最后將p1.0置0,查找最后的四個(gè)鍵號(hào)。當(dāng)查找到鍵號(hào)后,對nkeynumber進(jìn)行210nkeynumber/10 4,即取得nkeyn
55、umber除以10后取整再左移4位,由p0.7p0.4輸出鍵盤號(hào)碼的十位給4511-,將nkeynumber%10取余數(shù),即鍵盤號(hào)碼的個(gè)位由p0.3p0.0輸出給4511-。5.2 鍵盤控制模塊設(shè)計(jì)鍵盤控制模塊程序流程圖如圖5.1所示,詳細(xì)程序見附錄:圖5.1 鍵盤控制模塊程序流程圖顯示程序流程圖見圖5.2,詳細(xì)程序見附錄。圖5.2 顯示模塊流程圖6 實(shí)驗(yàn)結(jié)果及分析6.1 運(yùn)行情況分析硬件電路連接,軟件編程完成之后,需要對系統(tǒng)進(jìn)行運(yùn)行調(diào)試。調(diào)試時(shí),主要靠按鍵控制。接通電源后,按下不同的鍵,數(shù)碼顯示管會(huì)顯示不同的數(shù)字。6.2 問題的發(fā)現(xiàn)及分析在數(shù)顯鍵盤的調(diào)試過程了,發(fā)現(xiàn)了一些問題:共陰極七段數(shù)碼顯示管3,8引腳為公共端,一般應(yīng)都接地。但是,如果將3,8兩個(gè)引腳都同時(shí)接地,卻不能正
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年韓語TOPIK中級考試真題卷:歷年真題對比分析與備考策略試題
- 2025年咖啡師職業(yè)資格考試模擬試卷:咖啡店?duì)I銷策略案例分析試題
- 利用AI技術(shù)提升營銷效果
- 2025年小學(xué)教師資格《綜合素質(zhì)》教師禮儀與溝通模擬試題集(含答案)
- 立秋節(jié)氣的地理智慧
- 寒露節(jié)氣與品牌傳承
- 通信初級工復(fù)習(xí)題與答案
- 變電檢修工練習(xí)題庫含參考答案
- 產(chǎn)品監(jiān)制合同范本
- 企業(yè)商務(wù)合同范例
- GB/T 4154-1993氧化鑭
- 水泥混凝土路面試驗(yàn)檢測的要點(diǎn)
- 運(yùn)輸供應(yīng)商年度評價(jià)表
- 室內(nèi)消防及給排水管道安裝施工方案方案
- 無創(chuàng)呼吸機(jī)參數(shù)調(diào)節(jié)課件
- 《過零丁洋》公開課件
- 文件傳閱單范本
- 電工培養(yǎng)計(jì)劃表
- 部編版五年級道德與法治下冊課程綱要
- Q∕SY 02006-2016 PVT取樣技術(shù)規(guī)程
- 初中物理公式MicrosoftWord文檔
評論
0/150
提交評論