單片機(jī)液晶屏顯示仿手機(jī)鍵盤按鍵字符_第1頁(yè)
單片機(jī)液晶屏顯示仿手機(jī)鍵盤按鍵字符_第2頁(yè)
單片機(jī)液晶屏顯示仿手機(jī)鍵盤按鍵字符_第3頁(yè)
單片機(jī)液晶屏顯示仿手機(jī)鍵盤按鍵字符_第4頁(yè)
單片機(jī)液晶屏顯示仿手機(jī)鍵盤按鍵字符_第5頁(yè)
已閱讀5頁(yè),還剩14頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、武漢理工大學(xué)單片機(jī)應(yīng)用實(shí)踐課程設(shè)計(jì)課程設(shè)計(jì)任務(wù)書學(xué)生姓名: 專業(yè)班級(jí):電 信 指導(dǎo)教師: 工作單位: 武 題目: 液晶屏顯示仿手機(jī)鍵盤按鍵字符初始條件:(1)Proteus軟件;(2)課程設(shè)計(jì)輔導(dǎo)書:?jiǎn)纹瑱C(jī)課程設(shè)計(jì)指導(dǎo)(3)先修課程:?jiǎn)纹瑱C(jī)原理,電子設(shè)計(jì)EDA。要求完成的主要任務(wù):(包括課程設(shè)計(jì)工作量及其技術(shù)要求,以及說(shuō)明書撰寫等具體要求)(1)課程設(shè)計(jì)時(shí)間: 1周;(2)課程設(shè)計(jì)題目:液晶屏顯示仿手機(jī)鍵盤按鍵字符;(3)本課程設(shè)計(jì)統(tǒng)一技術(shù)要求:按照要求題目進(jìn)行邏輯分析,設(shè)計(jì)出各模塊邏輯功能,編寫C語(yǔ)言程序,上機(jī)調(diào)試、仿真,完成實(shí)物,對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行分析;(4)課程設(shè)計(jì)說(shuō)明書按學(xué)?!罢n程設(shè)計(jì)工作

2、規(guī)范”中的“統(tǒng)一書寫格式”撰寫,并標(biāo)明參考文獻(xiàn)至少5篇;(5)寫出本次課程設(shè)計(jì)的心得體會(huì)(至少500字)。時(shí)間安排:第19周指導(dǎo)教師簽名:年月日系主任(或責(zé)任教師)簽名:年月日目錄1.課程設(shè)計(jì)原理11.1proteus軟件簡(jiǎn)介11.2proteus功能特點(diǎn)11.3protues軟件資源豐富22.課程設(shè)計(jì)要求23. 設(shè)計(jì)原理及基本元器件介紹33.1 89C51芯片33.2 1602液晶顯示屏33.3矩陣鍵盤44.課程設(shè)計(jì)思路55.程序源代碼及仿真效果55.1鍵盤矩陣掃描程序55.2 1602液晶顯示仿手機(jī)按鍵字符75.3蜂鳴器及定時(shí)器設(shè)置7圖6(b)定時(shí)器流程圖85.4功能鍵處理程序85.4主程

3、序96.仿真及實(shí)物107.心得體會(huì)138.參考文獻(xiàn)14附錄1:矩陣鍵盤掃描程序15附錄2:1602液晶顯示放手機(jī)按鍵字符程序16附錄3:蜂鳴器及定時(shí)器程序17附錄4:功能鍵代碼171.課程設(shè)計(jì)原理1.1proteus軟件簡(jiǎn)介Proteus軟件是英國(guó)Lab Center Electronics公司出版的EDA工具軟件(該軟件中國(guó)總代理為廣州風(fēng)標(biāo)電子技術(shù)有限公司)。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機(jī)及外圍器件。它是目前比較好的仿真單片機(jī)及外圍器件的工具。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計(jì),真

4、正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。是目前世界上唯一將電路仿真軟件、PCB設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺(tái),其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等多種編譯器。1.2proteus功能特點(diǎn)Proteus軟件具有其它EDA工具軟件(例:multisim)的功能。這些功能是:1原理布圖2PCB自動(dòng)或人工布線3SPICE電路仿真革命性的特點(diǎn)1互動(dòng)的電路仿真用戶甚至可以實(shí)時(shí)

5、采用諸如RAM,ROM,鍵盤,馬達(dá),LED,LCD,AD/DA,部分SPI器件,部分IIC器件。2仿真處理器及其外圍電路可以仿真51系列、AVR、PIC、ARM、等常用主流單片機(jī)。還可以直接在基于原理圖的虛擬原型上編程,再配合顯示及輸出,能看到運(yùn)行后輸入輸出的效果。配合系統(tǒng)配置的虛擬邏輯分析儀、示波器等,Proteus建立了完備的電子設(shè)計(jì)開發(fā)環(huán)境。1.3protues軟件資源豐富1Proteus可提供的仿真元器件資源:仿真數(shù)字和模擬、交流和直流等數(shù)千種元器件,有30多個(gè)元件庫(kù)。2Proteus可提供的仿真儀表資源 :示波器、邏輯分析儀、虛擬終端、SPI調(diào)試器、I2C調(diào)試器、信號(hào)發(fā)生器、模式發(fā)生

6、器、交直流電壓表、交直流電流表。理論上同一種儀器可以在一個(gè)電路中隨意的調(diào)用。3除了現(xiàn)實(shí)存在的儀器外,Proteus還提供了一個(gè)圖形顯示功能,可以將線路上變化的信號(hào),以圖形的方式實(shí)時(shí)地顯示出來(lái),其作用與示波器相似,但功能更多。這些虛擬儀器儀表具有理想的參數(shù)指標(biāo),例如極高的輸入阻抗、極低的輸出阻抗。這些都盡可能減少了儀器對(duì)測(cè)量結(jié)果的影響。4Proteus可提供的調(diào)試手段 Proteus提供了比較豐富的測(cè)試信號(hào)用于電路的測(cè)試。這些測(cè)試信號(hào)包括模擬信號(hào)和數(shù)字信號(hào)。2.課程設(shè)計(jì)要求本次的課程設(shè)計(jì)我們做的是1602液晶屏顯示仿手機(jī)鍵盤按鍵字符,它的設(shè)計(jì)要求簡(jiǎn)單來(lái)說(shuō)如下所示。電路仿照手機(jī)鍵盤在每個(gè)按鍵上集成

7、了多個(gè)按鍵字符,可選擇輸入電話號(hào)碼或英文字符,當(dāng)選擇號(hào)碼輸入時(shí),屏幕顯示“TEL>”,直接按下各按鍵時(shí),各鍵位對(duì)應(yīng)的數(shù)字字符將顯示在液晶屏上。當(dāng)選擇英文輸入時(shí),屏幕提示“ENG>”,多數(shù)按鍵上都排有多個(gè)字符,當(dāng)依次按下不同按鍵時(shí),各按鍵的第一個(gè)英文字符將直接顯示在液晶屏上,在一個(gè)按鍵上連續(xù)按下時(shí)如果時(shí)間間隔小于1.5秒,可循環(huán)選擇該鍵中其他字符,如果同一按鍵按下時(shí)間間隔大于1.5秒,則最近顯示的字符將被確認(rèn)顯示在液晶屏上,如果在某鍵上連續(xù)快速按下(<1.5秒)選擇了某個(gè)字符,當(dāng)快速按下鍵盤中其他的按鍵(<1.5秒)時(shí),該鍵上最后選擇的字符將被確認(rèn)顯示在液晶屏上。3. 設(shè)

8、計(jì)原理及基本元器件介紹3.1 89C51芯片(1)器件介紹AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。(2)原件引腳圖如圖1所示:圖1 89C51芯片引腳圖3.2 1602液晶

9、顯示屏(1)元件介紹1602液晶也叫1602字符型液晶,它是一種專門用來(lái)顯示字母、數(shù)字、符號(hào)等的點(diǎn)陣型液晶模塊。它由若干個(gè)5X7或者5X11等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符,每位之間有一個(gè)點(diǎn)距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用,正因?yàn)槿绱怂运荒芎芎玫仫@示圖形(用自定義CGRAM,顯示效果也不好)。1602LCD是指顯示的內(nèi)容為16X2,即可以顯示兩行,每行16個(gè)字符液晶模塊(顯示字符和數(shù)字)。(2)引腳圖如圖2所示圖2 1602顯示屏引腳圖3.3矩陣鍵盤本實(shí)驗(yàn)所用鍵盤為仿手機(jī)4×3鍵盤,所以采用的是4×3的矩陣鍵盤,橫向,縱向分別掃

10、描從而可以引出7個(gè)輸入到P1口,矩陣鍵盤采用的復(fù)位按鍵有四個(gè)管腳,分別為A、B、C、D,AB按下導(dǎo)通,CD按下導(dǎo)通,對(duì)角線的管腳按下導(dǎo)通但AC,BD不按下即導(dǎo)通,所以鍵盤的接線接線如圖3所示。圖3 矩陣鍵盤線路連接圖4.課程設(shè)計(jì)思路 本程序綜合了鍵盤矩陣掃描與1602字符液晶屏顯示功能,仿照手機(jī)鍵盤在同一按鍵上集成多個(gè)字符輸入功能時(shí),其設(shè)計(jì)難點(diǎn)在于輸入英文字符時(shí),同鍵時(shí)間間隔小于1.5秒的連按處理,而數(shù)字字符由于每鍵均為第一個(gè)且僅有一個(gè),因而設(shè)計(jì)相對(duì)簡(jiǎn)單的多。 對(duì)于英文字符輸入,每當(dāng)所輸入字符屬同一按鍵時(shí),隨即啟動(dòng)定時(shí)器開始計(jì)時(shí),每次計(jì)時(shí)超過(guò)1.5秒時(shí)停止計(jì)時(shí),主程序中探測(cè)到同一按鍵再次按下時(shí)

11、,代碼判斷兩次連按的時(shí)間間隔是否在1.5秒以內(nèi),如果在該時(shí)間以內(nèi)則認(rèn)為是循環(huán)選擇同一按鍵上的多個(gè)字符,否則將確認(rèn)輸入最后選擇的字符。主程序在每次確認(rèn)輸入一個(gè)字符后停止定時(shí)器且將計(jì)時(shí)間隔變量tSpan歸零,只有遇到同鍵按下時(shí)才啟動(dòng)定時(shí)器。 定時(shí)器溢出中斷程序控制tSpan變量累加,當(dāng)tSpan累加至50時(shí),即超過(guò)2.5秒時(shí)禁止溢出中斷,如果此時(shí)不禁止中斷,繼續(xù)使之累加下去,可能使某次連按過(guò)程中一次較長(zhǎng)的暫停使計(jì)時(shí)變量tSpan不斷累加而超過(guò)255后,再次從零開始累加計(jì)時(shí),本來(lái)是一次較長(zhǎng)的停頓因此將被誤判為一次較短的時(shí)間間隔。 對(duì)于鍵盤掃描程序的相關(guān)細(xì)節(jié),可參考程序后面所附詳細(xì)注釋仔細(xì)分析研究。5

12、.程序源代碼及仿真效果5.1鍵盤矩陣掃描程序(1) 思路分析:鍵盤采用的是4×3的矩陣鍵盤,采用掃描的方式檢測(cè)是否有鍵以及那個(gè)鍵按下,按行列串行掃描。最后得到結(jié)果。(2) 設(shè)計(jì)框圖如圖4所示:開始橫向掃描是否等于0xFFN縱向掃描是否等于0xFFN無(wú)按鍵按下根據(jù)掃描結(jié)果判斷按鍵結(jié)束圖4 鍵盤矩陣掃描程序設(shè)計(jì)框圖(3) 程序運(yùn)行如附錄1所示。5.2 1602液晶顯示仿手機(jī)按鍵字符(1) 設(shè)計(jì)思路:1602液晶顯示采用查表的方式,首先按照鍵值,先進(jìn)行英文數(shù)字判斷,再按同鍵位內(nèi)部字符索引,輸入緩沖空間。(2) 設(shè)計(jì)框圖如圖5:開始選擇英文/中文輸入按鍵值查找同一案件的內(nèi)部索引同鍵位連續(xù)按鍵

13、的間隔判定輸出鍵值結(jié)束 圖5 按鍵字符顯示框圖(3)程序代碼運(yùn)行如附錄二所示。5.3蜂鳴器及定時(shí)器設(shè)置(1) 設(shè)計(jì)思路:蜂鳴器當(dāng)按鍵按動(dòng)時(shí)發(fā)出聲音,設(shè)定延時(shí)時(shí),定時(shí)器 定時(shí)器溢出中斷程序控制tSpan變量累加,當(dāng)tSpan累加至50時(shí),即超過(guò)2.5秒時(shí)禁止溢出中斷,如果此時(shí)不禁止中斷,繼續(xù)使之累加下去,可能使某次連按過(guò)程中一次較長(zhǎng)的暫停使計(jì)時(shí)變量tSpan不斷累加而超過(guò)255后,再次從零開始累加計(jì)時(shí),本來(lái)是一次較長(zhǎng)的停頓因此將被誤判為一次較短的時(shí)間間隔。開始(2) 設(shè)計(jì)流程如圖6所示:開始設(shè)置延時(shí)50ms有無(wú)鍵按下N將tSpan設(shè)定為50,即2.5msY報(bào)警按鍵間隔大于50?不報(bào)警Y結(jié)束不置零

14、置零 圖6(a)蜂鳴器流程圖結(jié)束圖6(b)定時(shí)器流程圖(3)代碼如附錄三所示。5.4功能鍵處理程序(1) 設(shè)計(jì)思路:設(shè)置及一個(gè)輸入內(nèi)容標(biāo)識(shí):標(biāo)識(shí)為一輸入英文,否則為中文。中文英文標(biāo)識(shí)為1?開始(2) 設(shè)計(jì)框圖如圖7:圖7 功能鍵處理框圖(3)設(shè)計(jì)程序鍵附錄四所示5.4主程序(1) 設(shè)計(jì)思路:先設(shè)置輸入方式,然后掃描鍵盤看哪個(gè)按鍵按下,經(jīng)過(guò)延時(shí)查表等操作判定輸入字符,然后通過(guò)液晶輸出。開始(2) 設(shè)計(jì)框圖:有按鍵按下時(shí)英文判定輸入方式及輸入字符輸出結(jié)束圖8 總程序框圖(3)主程序代碼如下所示6.仿真及實(shí)物仿真如圖9所示:圖9(2)實(shí)物如圖10所示:圖10(a)實(shí)物反面圖圖10(b)實(shí)物正面圖7.

15、心得體會(huì)通過(guò)該課程設(shè)計(jì),我對(duì)單片機(jī)這種簡(jiǎn)單而又實(shí)用的工具有了更深刻的了解,對(duì)于線路的焊接也更加的熟練,相對(duì)于從前,對(duì)于電路的設(shè)計(jì)也更加的熟練,在仿真開始時(shí),對(duì)于proteus的運(yùn)用十分不熟練,但隨著查閱資料以及詢問同學(xué)后,我慢慢的掌握了軟件的運(yùn)用。在編程時(shí),遇到了很大的問題,C語(yǔ)言運(yùn)用的不熟練對(duì)于課設(shè)造成了很大的障礙,但在同學(xué)及書記的幫助下,我慢慢的克服了這個(gè)困難,將程序編譯出來(lái)。在本次課程設(shè)計(jì)過(guò)程中,我有很大的收獲,這不僅僅是理論知識(shí)上的完善,而且在自學(xué)能力和動(dòng)手能力上有了新的飛躍,設(shè)計(jì)中,我感覺到自己知識(shí)極度匱乏,上網(wǎng)查閱資料,翻閱各類相關(guān)書籍,完全靠自己設(shè)計(jì),這讓我的思維邏輯更加清晰。在

16、操作中我基本掌握了proteus的基本知識(shí),為以后進(jìn)一步的深入學(xué)習(xí)做好了鋪墊。通過(guò)這次的課程設(shè)計(jì),我的實(shí)踐能力又加強(qiáng)了,對(duì)于綜合性的設(shè)計(jì)以及動(dòng)手課程不再是那么畏懼了。通過(guò)這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過(guò)程中遇到問題,可以說(shuō)得是困難重重,但任何事情難免會(huì)遇到過(guò)各種各樣的問題,同時(shí)在設(shè)計(jì)的過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠牢固。通過(guò)本次課程設(shè)計(jì),我基本上掌握了單片機(jī)的基本運(yùn)用及編程思路,這對(duì)于我的成長(zhǎng)的價(jià)值是非常大的,對(duì)于以后的學(xué)習(xí)也具有莫大的幫助,希望以后能更加努力,將自己的專業(yè)能力提高到更高的高度。8.參考文獻(xiàn)1李廣弟等.單片機(jī)基礎(chǔ)M.北京航空航天出版社,2001.2王東峰等.單片機(jī)C語(yǔ)言應(yīng)用100例M.電子工業(yè)出版社,2009.3陳海宴.51單片機(jī)原理及應(yīng)用M

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論