畢業設計(論文)單片機小系統菜單功能程序設計_第1頁
畢業設計(論文)單片機小系統菜單功能程序設計_第2頁
畢業設計(論文)單片機小系統菜單功能程序設計_第3頁
畢業設計(論文)單片機小系統菜單功能程序設計_第4頁
畢業設計(論文)單片機小系統菜單功能程序設計_第5頁
已閱讀5頁,還剩43頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、單片機小系統菜單功能程序設計系 (部): 專 業 班: 姓 名: 學 號:指導教師: 2011年5月 單片機小系統菜單功能程序設計 the menus function program design of little single-chip system 摘 要隨著現代化的腳步,市場經濟的不斷完善,信息技術日益發展,信息量的掌握決定了一個人事業的成敗。21世紀其實無疑不是信息的時代。信息技術的迅猛發展已對我們的生產方式、生活方式、學習方式及思維方式產生了深遠的影響,也帶動了信息顯示技術的發展。 其中液晶顯示屏被廣泛應用于各種不同的領域,包括手機、膝上型電腦、筆記本電腦、電腦監視器、大屏幕電視

2、以及數字廣告屏,液晶顯示在我們的生活中隨處可見,同時,人們也可根據自己的需求選擇顯示出想要顯示的內容。近年來,同樣應用廣泛的菜單選擇系統也離不開顯示技術。通過顯示屏,使得具有單層或多層菜單選擇功的操作系統更加簡潔、優化、便于操作。本設計通過漢字液晶顯示器122232來顯示出一個具有兩級菜單選擇功能的小系統。設計以模擬生活中常見的多功能檢測器為例,詳細分析了單片機在本設計中的應用原理,并分塊給出了整個系統的硬件以及軟件編程思路,使得整個設計清晰簡潔地闡明了單片機小系統在生活中的廣泛應用。因此本課題的研究具有重要的現實意義。 關鍵詞:顯示 單片機 液晶顯示器 菜單選擇 abstractwith t

3、he pace of the modernization, the economy market continues to improve. the information technology is improved day by day, so controlling the amount of information determines ones success or failure. in fact, the 21st century is certainlythe information age. the rapid development of the information t

4、echnology has made a deeply effect in our lifestyle, learning style and thinking style, and at the same time, it has helped to improve the information display technology. among that, liquid crystal display is widely used in a variety of areas, including mobile phones, laptop computers, notebook comp

5、uters, computer monitors, large screen tv and digital advertising screens. liquid crystal display applies everywhere in our lives, at the same time, we can control the content which we want to display in the screen according our needing. in recent years, the menus chose system which also very popula

6、r in peoples life is also rely on the display system. the displays made the menus system more simple and clean. this design simulates the popular menus system in our life. having analyzed the working theory of the scm before designed, it tells us the thoughts of the hardware and software designs. th

7、is makes the design more compact and pellucid to display the scms use in our life. so the subject of this research has an important practical significance.keywords:display scm liquid crystal display menus-chose 目 錄摘要iabstractii緒論11整體方案設計21.1系統總體基本構成21.1.1系統實現方法21.1.2系統思路來源21.2 系統模塊功能21.3 系統工作原理42硬件電

8、路設計52.1系統硬件主要構成52.1.1單片機at89s5x52.1.2 地址鎖存器74ls37382.1.3擴展存儲器ds1230y-150112.1.4液晶顯示器122232112.1.5 編碼器cd4532162.2系統硬件電路模塊172.2.1接口模塊172.2.2 按鍵選擇模塊182.2.3 數據存儲模塊182.2.4 顯示模塊193軟件設計203.1 軟件操作過程及實現的內容203.2 系統軟件主要構成203.2.1主程序的流程圖203.2.2 程序的初始化部分213.2.3 主函數部分213.2.4 按鍵選擇響應部分213.2.5 液晶顯示及命令傳輸部分264系統安裝與調試29

9、4.1系統硬件的安裝294.2系統硬件的檢查294.3系統軟件的調試294.3.1調試的整個過程294.3.2 程序的編譯304.3.3程序的調試30結論31致謝33參考文獻34附錄1 系統原理圖135附錄2 系統軟件總程序36緒 論 單片機正以低廉的成本、強大的功能、較高的可靠性被廣泛地應用于家電設備、儀器儀表、工業控制及城市建設等各個領域中.縱觀我們現在生活的各個領域,從導彈的導航裝置,到飛機上各種儀表的控制,從計算機的網絡通訊與數據傳輸,到工業自動化過程的實時控制和數據處理,以及我們生活中廣泛使用的各種智能ic卡、電子寵物等,這些都離不開單片機。而智能菜單選擇系統的應用也隨著單片機的發展

10、漸漸滲透到了我們生活中的每一個角落。現在市場上各類依靠菜單選擇系統來操作完成的產品較多,但目前的菜單選擇系統還有著較大可發展升級的空間。隨著信息化社會的迅速發展,菜單選擇系統正在由單一向多元化、由簡單模式向智能等多方面發展。該課題使我們能夠掌握菜單選擇系統的基本原理和設計方法,并對液晶顯示屏這個行業有了較為深刻的了解和認識,同時對大學期間所學習的一些理論知識進行了實踐,使我們對所學過的理論知識有了新的認識。通過對該課題的設計研究可以熟練掌握51單片機軟硬件開發工具的使用方法,為以后從事相關行業的工作積累了不少有用知識。目前我國的信息行業發展迅速,使得將來應用更加廣泛的智能菜單系統以及作為主要平

11、面顯示媒介的lcd顯示屏的作用也越來越廣泛,相關的從業人員也會越來越緊缺。但同時應該清楚的認識到我國在這兩個領域的技術雖然發展迅速但和世界先進水平還有一定的差距。因此本課題不論是對自己的就業還是對我國單片機技術的發展都有著非常現實與積極的意義。1整體方案設計1.1 系統總體基本構成本系統以單片機at89s5x為控制核心,由單片機數據存儲模塊、鍵盤按鍵選模塊、接口模塊和lcd顯示模塊組成,它們共同完成菜單由一級選擇進入下一級并顯示出內容的任務。其中,對系統進行核心控制的模塊由單片機at89s5x和一些具有復位、振蕩作用的電路組成;數據存儲模塊是由數據存儲器ds1230y-150和地址鎖存器74l

12、s373進行數據的存儲;按鍵選擇模塊由8-3優先編碼器和完成鍵盤接口的芯片組成;接口模塊則由按鍵接口部分和122232串口顯示接口display_s組成;lcd顯示模塊由液晶顯示器122232來完成實現字符的顯示。1.1.1 系統實現方法整個菜單呈樹形拓撲結構,每個節點的父節點都是唯一的,由此可以確定其在菜單樹中的位置,總體思路就是以固定格式建立一個變量庫和一個菜單庫,以編號作為各個變量和菜單的主關鍵字1、4-6。變量庫中專門存放液晶顯示所涉及的變量,每個變量有一個變量編號;菜單庫中專門存放各個菜單的內容,每個菜單有一個菜單編號,菜單中所涉及的變量可以從變量庫中抽取。執行文件的任務就是對菜單庫

13、和變量庫進行解碼操作,完成液晶顯示和鍵盤響應的功能。1.1.2系統思路來源由于液晶顯示器(lcd)具有功耗低、體積小、驅動電壓低、價格低、所含信息多等優點,它在許多微機控制系統中被用作顯示終端、人機接口等設備。由文獻2可知清華大學與北京自動化設計院聯合研制的全數字大電流可控整流電源中正是采用80c196kc單片機控制hd61202進行液晶顯示作為人機接口設備。單片機與液晶顯示和鍵盤結合,組成現場控制系統,與上位機聯合對生產設備進行監控并進行相應的參數設置。本設計在參考了以上設計的基本原理后決定也采用液晶顯示器來顯示并實現多層菜單選擇的功能。1.2 系統模塊功能其中,核心控制模塊單片機通過控制器

14、和存儲器依靠程序中指令的順序周而復始地進行取出指令,分析指令,執行指令來完成整個指令操作;數據存儲模塊通過地址鎖存器74ls373來實現數據地址的存儲;而鍵盤按鍵選擇模塊中的8-3編碼器是138解碼器的反向應用,它通過八個不同狀態的輸入就能實現簡單的三種狀態的輸出,大大優化了硬件部分的選擇需求。本設計中由于鍵盤選擇只有屏號選擇鍵1、2以及上翻頁下翻頁鍵,所以只使用了其中的四個狀態來實現從一級進入或者退出到另一級的功能。接口模塊分為按鍵接口和顯示接口部分,分別通過電阻組和122232串口顯示接口芯片display_s來實現與核心單片機的連接。noyes 圖1-1 液晶顯示及鍵盤響應流程圖初始化是

15、對單片機、液晶和鍵盤的相關參數進行設置,并設定相應外部中斷。液晶顯示模塊中通常每屏液晶顯示表示1個菜單,但由于液晶顯示的行數有限(這里的122232液晶顯示器為2行),所以當1屏不能完全顯示出1個菜單時還需要具有翻屏功能,這里的菜單顯示呈樹形拓撲結構。 圖1-2 菜單顯示樹形拓撲結構 1.3系統工作原理整個設計通過軟件編程及調試設計出一個簡易的多功能檢測器,該檢測器具有多級菜單選擇功能。第一級菜單分為四個頁面,首頁應顯示出的內容為“請選擇測試內容”;第一頁應顯示出的內容為“1電壓”和“2電流”;第二頁應顯示出的內容為“1頻率”和“2運行檢測”;第三頁應顯示出的內容為“1退出”。通過按鍵實現“選

16、1”、“選2”、“上翻頁”以及“下翻頁”來實現按鍵的選擇。當選定“1電壓”、“2電流”或“1頻率”時下一級菜單能分別顯示出具體的電壓、電流、和頻率值。當選擇“運行監測”時,系統會顯示出“運行監測中”的字樣,當選定“1退出”時,系統會顯示出“謝謝使用”的字樣。 整個菜單呈樹形拓撲結構,每個節點的父節點都是唯一的,由此可以確定其在菜單樹中的位置,總體思路就是以固定格式建立一個變量庫和一個菜單庫,以編號作為各個變量和菜單的主關鍵字。變量庫中專門存放液晶顯示所涉及的變量,每個變量有一個變量編號;菜單庫中專門存放各個菜單的內容,每個菜單有一個菜單編號,菜單中所涉及的變量可以從變量庫中抽取。執行文件的任務

17、就是對菜單庫和變量庫進行解碼操作,完成液晶顯示和鍵盤響應的功能。執行文件一旦編制完畢則一勞永逸,改動菜單時再也不用進行修改,除非要添加新的功能。這樣添加菜單或變量時只需順序向菜單庫或變量庫中加入,刪除或修改菜單也只需對菜單庫中相關菜單進行操作,而不影響其它程序,所以實際操作人員可以不必了解執行程序的內容,只需掌握變量庫和菜單庫的結構即可。 圖1-3 菜單顯示執行框圖2硬件電路設計2.1系統硬件主要構成整個系統硬件部分的主電路板主要由核心單片機at89s5x、地址鎖存器74ls373、擴展存儲器ds1230y-150、起控制按鍵選擇作用的一個8-3編碼器以及一些起芯片保護作用的上拉電阻和二極管組

18、成。此外還有負責連接按鍵與單片機的一個按鍵接口單元和負責連接液晶顯示器122232與單片機的一個串口顯示接口芯片dispiay_s。2.1.1單片機at89s5x本設計中所用到的是單片機at89s5x系列中的芯片at89s52,芯片引腳如圖2-1所示。其中,單片機的p0.0至0.7口與地址鎖存器74ls373相連,實現地址線a0a7的低八位鎖存。而p1.0至p1.7口則連接一個上拉電阻,主要起保護作用。其中,p1.3口連接串口顯示接口芯片的sclk端,p1.4口連接std端,p1.6口連接cs端,共同實現串口時鐘、串口數據、片選的功能。at89s5x系列flash單片機有at89s51、at8

19、9s52、at89s53、at89s8252、at89s8253等五種型號,at89s51是其基本型。at89s5x的片內含8k bytes的可反復擦寫的flash只讀程序存儲器和256bytes的隨機存取數據存儲器,器件采用atmel公司的高密度、非易失性存儲技術生產,與標準mcs-51指令系列及8052產品引腳兼容,片內置通用8位中央處理器和flash存儲單元,功能強大的at89s5x單片機適用于許多較為復雜的控制應用場合。其主要特性如下:兼容80c51引腳結構、40個引腳、32個i/o口;4k字節isp flash rom,靈活的isp字節和分頁編程;128字節ram;2個16位定時/計

20、數器;雙數據寄存器指針;一個全雙工uart串行通信口;2級中斷、6個中斷源;低功耗空閑和省電模式;中斷喚醒省電模式;3級加密位;看門狗電路;時鐘頻率033mhz;pdip、tqip和plcc等三種形式。at89s52有8k字節isp flash rom、256字節ram、3個16位定時/計數器、8個中斷源,其余特性與at89s51相同。at89s53有12k字節isp flash rom、256字節ram、3個16位定時/計數器、9個中斷源、spi串行接口、時鐘頻率0-24mhz,其余特性與at89s8253的電源電壓范圍為2.7-5.5v,兩者的isp flash rom 分別為8k、12k

21、字節,其余特性與at89s53相同。at89s5x系列單片機完全兼容mcs-51、8051、89c51等產品,采用上述單片機的程序在89s5x上照樣運行。at89s52是at89s5x系列單片機中性能居中、很有代表性的產品,其主要特性如下:兼容mcs-51產品;8k字節可擦寫1000次以上的在系統可編程isp flash rom;工作電壓4v-5.5v;256字節ram;32個可編程i/o口;3個16位定時/計數器;8個中斷源;一個全雙工uart串行通信口;靜態工作頻率0-33mhz;休眠和節電保持兩種省電模式;中斷喚醒省電模式;看門狗定時器; 雙數據指針(dptr); 電源關閉標志;靈活的i

22、sp編程(字節和頁兩種方式);3級程序加密; 圖2-1 單片機89c52引腳圖 at89s5x配置了振蕩頻率可為0hz并可通過軟件設置省電模式??臻e模式下,cpu暫停工作,ram定時計數器、串行口、外中斷系統可繼續工作,掉電模式凍結振蕩器而保存ram數據,停止其他功能直至外中斷激活或硬件復位。相對于89c5x增加了isp在線編程功能、內部看門狗定時器、雙數據指針,電源關閉標志和全新的加密算法,工作頻率更高,但價格卻基本不變,甚至更低。單片機的基本組成如下圖所示: 圖2-2 單片機基本組成主要性能參數: 與mcs-51產品指令和引腳完全兼容 8k字節可重擦寫flash閃速存儲器1000次擦寫周期

23、全靜態操作:0hz-24mhz三級加密程序存儲器256x8字節內部ram32個可編程i/o口線3個16位定時/計數器8個中斷源可編程串行uart通道低功耗空閑和掉電模式功能概述:at89s5x提供以下標準功能:8k字節flash閃速存儲器,256字節內部ram,32個i/o口線,3個16位定時/計數器,一個6向量兩級中斷結構,一個全雙工串行通信口,片內振蕩器及時鐘電路。同時,at89s5x可降至0hz的靜態邏輯操作,并支持兩種軟件可選的節電工作模式。空閑方式停止cpu的工作,但允許ram、定時/計數器,串行通信口及中斷系統繼續工作。掉電方式保存ram中的內容,但振蕩器停止工作并禁止其它所有部件

24、工作直到下一個硬件復位。特殊功能寄存器:在at89s5x片內存儲器中,80h-ffh共128個單元為特殊功能寄存器(sfr)。并非所有的地址都被定義,從80h-ffh共128個字節只有一部分被定義,還有相當一部分沒有定義。對沒有定義的單元讀寫將是無效的,讀出的數值將不確定,而寫入的數據也將丟失。不應該將數據“1”寫入未定義的單元,由于這些單元在將來的產品中可能賦予新的功能,在這種情況下,復位后這些單元數值總是“0”。數據存儲器:at89s5x有256個字節的內部ram,80h-ffh高128個字節與特殊功能寄存器地址是重疊的,也就是高128字節的ram和特殊功能寄存器的地址是相同的,但物理上它

25、們是分開的。當一條指令訪問7fh以上的內部地址單元時,指令中使用的尋址方式是不同的,也即尋址方式決定是訪問高128字節ram還是訪問特殊功能寄存器。如果指令是直接尋址方式則為訪問特殊功能寄存器。例如,下面的直接尋址指令訪問特殊功能寄存器0a0h(即p2口)地址單元。mov 0a0h,#data間接尋址指令訪問高128字節ram,例如,下面的間接尋址指令中,r0的內容為0a0h,則訪問數據字節地址為0a0h,而不是p2口(0a0h)。mov r0,#data堆棧操作也是間接尋址方式,所以,高128位數據ram亦可作為堆棧區使用。2.1.2 地址鎖存器74ls373 本設計中地址鎖存器的p0.0至

26、p0.7口分別與單片機的p0.0至p0.7口相連,共同實現低八位地址線a0至a7位的儲存。 74ls373是帶有三態門的八d鎖存器,當使能信號線oe為低電平時,三態門處于導通狀態,允許1q-8q輸出到out1-out8,當oe端為高電平時,輸出三態門斷開,輸出線out1-out8處于浮空狀態。g稱為數據打入線,當74ls373用作地址鎖存器時,首先應使三態門的使能信號oe為低電平,這時,當g端輸入端為高電平時,鎖存器輸出(1q-8q)狀態和輸入端(1d-8d)狀態相同;當g端從高電平返回到低電平(下降沿)時,輸入端(1d-8d)的數據鎖入1q-8q的八位鎖存器中。當使用74ls373作為地址鎖

27、存器時,它們的g端可直接與單片機的鎖存控制信號端ale相連,在ale下降沿進行地址鎖存。 373的輸出端o0o7可直接與總線相連。當三態允許控制端oe為低電平時,o0o7為正常邏輯狀態,可用來驅動負載或總線。當oe為高電平時,o0o7呈高阻態,即不驅動總線,也不為總線的負載,但鎖存器內部的邏輯操作不受影響。當鎖存允許端le為高電平時,o隨數據d而變。當le為低電平時,o被鎖存在已建立的數據電平。當le端施密特觸發器的輸入滯后作用,使交流和直流噪聲抗擾度被改善400mv。其引出端符號:d0d7 數據輸入端oe 三態允許控制端(低電平有效)le 鎖存允許端o0o7 輸出端芯片引腳圖及內部結構原理圖

28、如下: 圖2-3 74ls373引腳圖其中,1腳是輸出使能,是低電平有效,當1腳是高電平時,不管輸入3、4、7、8、13、14、17、18如何,也不管11腳(鎖存控制端,g)如何,輸出2(q0)、5(q1)、6(q2)、9(q3)、12(q4)、15(q5)、16(q6)、19(q7)全部呈現高阻狀態(或者叫浮空狀態);當1腳是低電平時,只要11腳(鎖存控制端,g)上出現一個下降沿,輸出2(q0)、5(q1)、6(q2)、9(q3)、12(q4)、15(q5)、16(q6)、19(q7)立即呈現輸入腳3、4、7、8、13、14、17、18的狀態.鎖存端le 由高變低時,輸出端8 位信息被鎖存,

29、直到le 端再次有效。 當三態門使能信號oe為低電平時,三態門導通,允許q0q7輸出,oe為高電平時,輸出懸空。當74ls373用作地址鎖存器時,應使oe為低電平,此時鎖存使能端c為高電平時,輸出q0q7 狀態與輸入端d1d7狀態相同;當c發生負的跳變時,輸入端d0d7 數據鎖入q0q7。51單片機的ale信號可以直接與74ls373的c連接。 圖2-4 內部結構原理圖 1d8d為8個輸入端;1q8q為8個輸出端;g是數據鎖存控制端;當g=1時,鎖存器輸出端同輸入端;當g由“1”變為“0”時,數據輸入鎖存器中;oe為輸出允許端;當oe=“0”時,三態門打開;當oe=“1”時,三態門關閉,輸出呈

30、高阻狀態。 表2-1 74ls373芯片真值表 在mcs-51單片機系統中,常采用74ls373作為地址鎖存器使用。其中輸入端1d8d接至單片機的p0口,輸出端提供的是低8位地址,g端接至單片機的地址鎖存允許信號ale。輸出允許端oe接地,表示輸出三態門一直打開。2.1.3擴展存儲器ds1230y-150本設計中,由于沒有用到那么多的存儲空間,所以作為外用擴展存儲器的芯片ds1230y-150基本上沒用上,但在電路板中它的p2.0至p2.7口與單片機相連,存儲地址線的高八位,作為一個擴展存儲。同時,它還是一個32k的掉電不丟失數據的ram存儲器。 主要引腳功能: a0-a14 地址輸入dq0-

31、dq7 數據輸入/數據輸出 ce 芯片使能端(片選) we 寫使能端(寫ram) oe 輸出使能端(讀ram) vcc 電壓(5v)gnd 接地端 nc 懸空端 圖2-5 芯片引腳圖2.1.4液晶顯示器122232該液晶顯示系列的中文模塊可以顯示字母、數字符號、中文字型及圖形,具有繪圖及文字畫面混合顯示功能。它提供三種控制接口,分別是8位微處理器接口,4位微處理器接口及串行接口(ocmj4x16a/b無串行接口)。所有的功能,包含顯示ram,字型產生器,都包含在一個芯片里面,只要一個最小的微處理系統,就可以方便操作模塊。內置2m-位中文字型rom (cgrom) 總共提供8192 個中文字型(

32、16x16點陣),16k-位半寬字型rom (hcgrom)總共提供126個符號字型(16x8 點陣),64 x 16-位字型產生ram,另外繪圖顯示畫面提供一個64x256點的繪圖區域(gdram),可以和文字畫面混和顯示。提供多功能指令:畫面清除(display clear)、光標歸位(return home)、顯示打開/關閉(display on/off)、光標顯示/隱藏(cursor on/off)、顯示字符閃爍(display character blink)、光標移位(cursor shift)、顯示移位(displayshift)、垂直畫面卷動(vertical line scr

33、oll)、反白顯示(by_line reverse display)、待命模式(standbymode)。12223dots實物圖如圖所示: 圖2-6 液晶顯示器122232實物圖12232種內置8192個16*16點漢字庫和128個16*8點ascii字符集圖形點陣液晶顯示器,它主要由行驅動器/列驅動器及12832全點陣液晶顯示器組成??赏瓿蓤D形顯示,也可以顯示7.52個(1616點陣)漢字。與外部cpu接口采用并行或串行方式控制。主要技術參數和性能:電源:vdd:+3.0+5.5v(電源低于4.0伏led背光需另外供電)。顯示內容:122(列)32(行)點。16k rom(hcgrom)總

34、共提供128個字符(168點陣)。2mhz頻率。全屏幕點陣。2m rom(cgrom)總共提供8192個漢字(1616點陣)。工作溫度: 0+60,存儲溫度:-20+70。 圖2-7 外形尺圖 液晶顯示器在設計中與單片機的串口連接圖如下圖2-8所示: 圖2-8 串口連接圖串行模式引腳說明: 表2-2 122232引腳說明ocmj12232c_1的c3與r8間有3個焊接點,連p點與中間點為并行模式,連s點與中間點為串行模式。lcd122232的幾種內部工作模式如下:(1) 忙標志bf:bf標志提供內部工作情況.bf=1表示模塊在進行內部操作,此時模塊不接受外部指令和數據.bf=0時,模塊為準備狀

35、態,隨時可接受外部指令和數據。利用status rd 指令,可以將bf讀到db7總線,從而檢驗模塊之工作狀態。(2) 字型產生rom(cgrom)字型產生rom(cgrom)提供8192個觸發器是用于模塊屏幕顯示開和關的控制。dff=1為開顯示(display on),ddram 的內容就顯示在屏幕上,dff=0為關顯示(display off)。dff的狀態是指令display on/off和rst信號控制的。(3) 顯示數據ram(ddram):模塊內部顯示數據ram提供642個位元組的空間,最多可控制4行16字(64個字)的中文字型顯示(本模塊只用到其中的7.5*2個),當寫入顯示數據r

36、am時,可分別顯示cgrom與cgram的字型;此模塊可顯示三種字型,分別是瘦長的英數字型(16*8)、cgram字型及cgrom的中文字型,三種字型的選擇,由在ddram中寫入的編碼選擇,在000f的編碼中將選擇cgram的字定義字型,107f的編碼中將選擇瘦長數字的字型,至于a0以上的編碼將自動的結合下一個位元組,組成兩個位元組的編碼形成中文字型的編碼(a140d75f)。 (4) 字型產生ram(cgram):字型產生ram提供圖像定義(造字)功能, 可以提供四組1616點的自定義圖像空間,使用者可以將內部字型沒有提供的圖像字型自行定義到cgram中,便可和cgrom中的定義一樣的通過d

37、dram顯示在熒屏中。(5) 地址計數器ac:地址計數器是用來貯存ddram/cgram之一的地址,它可由設定指令暫存器來改變,之后只要讀取或是寫入ddram/cgram的值時,地址計數器的值就會自動加一,當rs為“0”時而r/w為“1”時,地址計數器的值會被讀取到db6db0中。部分管腳功能說明: 圖2-9 外部管腳功能描述串口讀寫時序圖: 圖2-10 串口時序圖2.1.5 編碼器cd4532cd4532 8-3編碼器是138解碼器的反向應用,它通過八個不同狀態的輸入就能實現簡單的三種狀態的輸出,大大優化了硬件部分的選擇需求。其中,芯片的其中三根引腳與單片機的p1.o、p1.1、p1.2連接

38、,實現編碼后三個狀態的輸出。而d0、d1、d2、d3、d4腳則與按鍵板上的其中四個按鍵k1、k2、k3、k4連接,實現四種狀態的選擇:選1、選2、上翻頁、下翻頁。其真值表如下所示: 表2-3 真值表由真值表中可以看出當端口選定的值為#1h時,表示k1鍵選通,此時執行下翻頁功能;當選定的值為#03時,k1鍵選通,此時執行上翻頁功能;當值為#04時,k4鍵選通,此時執行的是選1功能;當值為#02時,k2鍵選通,此時執行的是選2功能。由此可以實現按鍵選擇功能。 根據cd4532的真值表,要是編碼電路正常工作,ei、gs應該接高電平,vdd接高電平,vss接低電平,輸入端d4-d1分別接比較電路的四個

39、運放輸出端,d0接高電平,d7-d5則接低電平。 圖圖2-11 引腳圖 2.2系統硬件電路模塊整個系統硬件可以分為單片機數據存儲模塊、按鍵選擇模塊、接口模塊和液晶顯示模塊。每個模塊執行其相應的功能,共同組成了一個基于單片機設計的多字符顯示系統。2.2.1接口模塊接口模塊主要由兩部分組成,一部分串行連接單片機芯片和按鍵板,一部分則連接單片機芯片和液晶顯示屏。第一部分按鍵接口部分的原理圖如下圖所示,其中復位鍵與單片機rest引腳相連,其它四個鍵k1、k2、k3、k4分別與四個10k的上拉電阻組成四個電路回路,當按下其中一個鍵時,此回路與+5v導通,并通過8-3編碼器cd4532響應到單片機p1.0

40、-p1.2引腳上,經過程序的選擇以此實現按鍵功能。 圖2-12 按鍵部分接口原理圖 第二部分液晶顯示器接口部分的原理圖如下,通過cs引腳與單片機的p1.6引腳相連,實現片選功能;sid腳與單片機的p1.4腳相連,作為初始化中的串口數據;而sclk則與單片機的p1.3腳相連,作為串口時鐘。 圖2-13 顯示部分接口原理圖2.2.2 按鍵選擇模塊按鍵選擇模塊主要通過芯片cd4532來實現按鍵狀態的選擇。cd4532是一個8-3編碼器,以三根地址線來實現八種不同的按鍵狀態。這部分原理內容在硬件芯片部分已做介紹。芯片通過與單片機的p1.0、p1.1、p1.2口相連來實現三根地址線的輸入。當按鍵盤中的某

41、一特定按鍵按下之后,通過接口部分回路的導通,由d1、d2、d3、d4引腳的狀態值來判斷地址線的狀態,進而響應到單片機中。2.2.3 數據存儲模塊數據顯示模塊主要由單片機的p0口、地址鎖存器74ls373、擴展數據存儲器ds1230y-150和32k外部數據存儲器組成。由單片微機原理與應用的學習,我們知道,要想擴展數據存儲器就要將存儲器芯片的oe和we分別與單片機系統的rd和wr相連,然后只要運用movxa,dptr和movx dptr,a這兩條指令將要顯示的字符數據由單片機中的程序存儲器中取出放入74ls373數據存儲器中,然后,再運用movx a,dptr將要顯示的數據從74ls373數據存

42、儲器中取出來即可。數據存儲模塊原理圖如下圖所示: 圖2-14 存儲模塊原理圖2.2.4 顯示模塊 lcd顯示屏由兩片控制器控制,每個內部都帶32*80位的緩沖區,分別對應左、右半屏。該模塊將顯示屏依行分為4頁,每一頁包含8行,80列(只有前61列有效),每一列的8行即構成一個字節。對應地將顯示ram分為4頁來尋址。當確定要在屏幕上某頁某列寫某個內容時,只需使cpu將對應的數據寫入顯示ram的同一頁同一列的地址處即可,然后該模塊就會自動將顯示ram內容送往液晶屏,以完成相應的顯示。因此,smg12232模塊類似于常見的鍵盤顯示接口芯片8279。由于它內部不僅有自己的顯示ram區用于存儲欲寫到液晶

43、屏上的數據,而且有自己的操作控制。因此它能根據主控cpu寫入到該模塊的各種命令字及顯示ram數據,自動對液晶屏進行一系列操作而不再需要主控cpu的參與。3軟件設計3.1 軟件操作過程及實現的內容 本設計通過按鍵部分的信息輸入、單片機部分的信息處理以及液晶顯示屏部分的信息顯示,在軟件的編程上最終實現兩級可選擇菜單的內容顯示。首頁部分顯示設計作者及設計內容;第一級分為三頁,在“選擇測試內容”字樣提醒之后,第一頁顯示出“1電壓”和“2電流”,第二頁顯示“1頻率”和“2運行檢測”,第三頁“1退出”;頁面之間的切換通過“上翻頁”、“下翻頁”按鍵來實現。第二級為第一級各個選項對應的內容:“電壓值為220v

44、”、“電流值為50a”、“頻率值為300w”、“運行測試中”和“謝謝使用”。由第一級進入第二級通過“選1”和“選2”鍵來實現。3.2 系統軟件主要構成本設計的軟件部分主要由初始化部分、主程序部分、按鍵響應部分、液晶顯示部分。整個系統的硬件需要軟件的驅動,才能實現相應的功能。軟件的控制著硬件,讓其按照指定的要求,執行相應的功能。3.2.1主程序的流程圖noyes首先通過初始化對單片機、液晶顯示器和鍵盤的相關參數進行設置,并設定相應外部中斷。當按下某一鍵盤按鍵后,鍵盤通過接口程序得到響應,并在單片機系中經過判斷所要執行的操作,然后將要執行并顯示的內容通過顯示部分的接口程序顯示到液晶屏上,完成從按鍵

45、到選擇顯示內容的操作。主程序的流程圖如所示。 圖3-1 主程序流程3.2.2 程序的初始化部分初始化部分完成對硬件的相關參數的設置,選擇時鐘,傳輸數據及信號在單片機中的連接路徑。其中,p1.3口、p1.4口和p1.6口分別設置為lcd顯示器的串口時鐘、串口數據和片選。地址計數器設為50h,初始化地址的起始值為0。初始化程序段如下: sclk equ p1.3 ;串口時鐘 (1/0)選擇sid equ p1.4 ;串口數據cs equ p1.6 ;片選 信號=1count equ 50h org 0000h; ljmp main; org 030h;3.2.3 主程序部分通過對a進行基本指令操作,并不斷長調用write_com子程序,以實現顯示功能。其中,顯示過程中沒有使用光標顯示功能。主程序如下: main: mov a,#34h;34h-擴充指令操作 lcallwrite_com mov a,#30h;30h-基本指令操作 lcallwrite_com lcall clr_lcd;清除顯示mov a,#06h;指定在資料寫入或讀取時,光 標移動方向 lcallwrite_com ;ddram 的地址計數器(ac)加1 mov a,#0ch;開顯示,關光標,不閃爍 lcall write_com3.2.4 按鍵選擇響應部分按鍵響應部分是

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論