




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、安徽財經(jīng)大學(xué)信息工程學(xué)院本科畢業(yè)設(shè)計課程設(shè)計題目:移動手機(jī)液晶顯示 學(xué) 院 管理科學(xué)與工程學(xué)院 專 業(yè) 電子信息工程 姓 名 劉穩(wěn) 學(xué) 號 20134424 任課老師 許曉麗老師 1 摘要Nokia7110是國內(nèi)第一款支持WAP上網(wǎng)的手機(jī)。是國內(nèi)手機(jī)上網(wǎng)的開先河者。當(dāng)時擁有7110的人大多數(shù)都有科技真奇妙的感覺。這款手機(jī)具有一塊龐大的單色屏幕,可以說是當(dāng)時市場上最大最清晰的。 自動滑蓋按鈕給當(dāng)時的消費(fèi)者已夢幻的感覺。最神奇的是它可以上網(wǎng)了,經(jīng)過一個很復(fù)雜的設(shè)置后,手機(jī)可以瀏覽新聞,甚至可以收發(fā)email。諾基亞7110雙頻GSM900/1800媒體電話在法國戛納召開的GSM世界大會上亮相,就曾
2、因?yàn)槠湫阅艹憾疝Z動。諾基亞7110媒體電話是提供增值服務(wù)和獲取網(wǎng)上內(nèi)容的理想平臺。人們對手機(jī)的需求,在不犧牲重量、體積和性能的前提下,必須滿足用戶在閱讀信息、易于輸入內(nèi)容、快速獲取信息等方面不斷增長的需要。這就是我這次的課程設(shè)計題目:nokia7110的液晶屏菜單控制程序。1.1 目的和意義用SED1565為主控芯片設(shè)計一個Nokia7110液晶屏的仿真系統(tǒng),該系統(tǒng)具有3項(xiàng)功能,分別是LED閃爍控制、A/D轉(zhuǎn)換控制及蜂鳴器輸出。1.2 本系統(tǒng)主要研究內(nèi)容(1)nokia7110的液晶屏的程序設(shè)計與調(diào)試;(2)如何在液晶屏控制led閃爍及A/D轉(zhuǎn)換控制;(3)如何提取字模,并在液晶屏上顯示
3、出來。2 系統(tǒng)分析2.1 系統(tǒng)組成單片機(jī)AT89C51液晶屏顯示器控制芯片SED1565A/D轉(zhuǎn)換和蜂鳴輸出2.2 系統(tǒng)工作原理控制模塊數(shù)模轉(zhuǎn)換模塊蜂鳴輸出模塊顯示模塊電源3 系統(tǒng)硬件設(shè)計3.1 系統(tǒng)硬件總體設(shè)計(有幾個模塊,每個模塊的功能)3.2子系統(tǒng)(模塊)一(此模塊的組成器件及作用)1Nokia7110液晶屏電路圖組成器件:SED1565控制芯片作用:可支持顯示各種不同的畫面,最大分辨率為132*65。3.3子系統(tǒng)(模塊)二2 8051單片機(jī)組成器件:8051單片機(jī)作用:單片機(jī)又稱單片微控制器,它不是完成某一個邏輯功能的芯片,而是把一個計算機(jī)系統(tǒng)集成到一個芯片上。相當(dāng)于一個微型的計算機(jī),
4、和計算機(jī)相比,單片機(jī)只缺少了I/O設(shè)備。概括的講:一塊芯片就成了一臺計算機(jī)。它的體積小、質(zhì)量輕、價格便宜、為學(xué)習(xí)、應(yīng)用和開發(fā)提供了便利條件。同時,學(xué)習(xí)使用單片機(jī)是了解計算機(jī)原理與結(jié)構(gòu)的最佳選擇。3.4子系統(tǒng)(模塊)三 3ADC0832組成器件:ADC0832作用:ADC0832 為8位分辨率 A/D轉(zhuǎn)換芯片,其最高分辨可達(dá)256級,可以適應(yīng)一般的模擬量轉(zhuǎn)換要求。其內(nèi)部電源輸入與參考電壓的復(fù)用,使得芯片的模擬電壓輸入在05V之間。芯片轉(zhuǎn)換時間僅為32S,據(jù)有雙數(shù)據(jù)輸出可作為數(shù)據(jù)校驗(yàn),以減少數(shù)據(jù)誤差,轉(zhuǎn)換速度快且穩(wěn)定性能強(qiáng)。獨(dú)立的芯片使能輸入,使多器件掛接和處理器控制變的更加方便。通過DI 數(shù)據(jù)輸
5、入端,可以輕易的實(shí)現(xiàn)通道功能的選擇。4 系統(tǒng)軟件設(shè)計4.1 系統(tǒng)軟件總體設(shè)計程序設(shè)計與調(diào)試液晶屏顯示驅(qū)動程序液晶屏演示程序設(shè)計執(zhí)行菜單功能程序設(shè)計5 系統(tǒng)使用說明5.1 系統(tǒng)安裝及配置說明5.1.1系統(tǒng)運(yùn)行環(huán)境基于8051的proteus仿真。Proteus是電路分析與實(shí)物仿真及印制電路板軟,它可以仿真、分析各種模擬電路與集成電路。軟件提供了大量模擬與數(shù)字元器件及外部設(shè)備。各種虛擬儀器,特別是它具有對單片機(jī)及其外圍電路組成的綜合系統(tǒng)的交互仿真功能。5.1.2系統(tǒng)安裝及配置5.2 系統(tǒng)操作說明(1)Nokia7110液晶屏簡介由圖所示的Nokia7110液晶屏顯示區(qū)域示意圖可知,顯示的起始序列映
6、射到SED1565為第18列(即為0x12列),而不是此前類似液晶屏所默認(rèn)的第0列。這一點(diǎn)在設(shè)計驅(qū)動時要注意。本例液晶屏引腳功能說明如表格所示。(2)演示程序設(shè)計Nokia7110液晶屏起始列為18(0x12),由于SED1565的列地址高4位設(shè)置命令為0001XXXX,低4位設(shè)置命令為0000XXXX,將起始列(18->0x12)組合到列地址高4位與低4位命令后可得:0001-0001與0000-0010,即0x11與0x02,因而源程序中列地址高4位與低4位設(shè)置命令的定義如下:起始列的程序設(shè)計:Ox12 = 18 = 0001 00100001 0001 與 0000 00100x1
7、1 0x02#define COL_H4 0x11#define COL_L4 0x01#define LINE 0x04(3)在顯示驅(qū)動程序中,Show Char函數(shù)負(fù)責(zé)完成5x7的點(diǎn)陣字符的顯示功能,這部分代碼要仔細(xì)閱讀。在此基礎(chǔ)上,演示程序所完成的新任務(wù)是在液晶屏上顯示菜單項(xiàng)設(shè)計與功能執(zhí)行。主程序中定義的菜單分別以下三項(xiàng):Flash LEDs:執(zhí)行該菜單時,連接在P3端口的3只LED將持續(xù)閃爍顯示。Disp A/D Value:執(zhí)行該項(xiàng)菜單時,ADC0832的CH0通道模擬信號A/D轉(zhuǎn)換值將刷新顯示在液晶屏上。Sounder Output:執(zhí)行該項(xiàng)菜單時蜂鳴器輸出。(4)在菜單顯示程序中
8、,主要提供了鍵盤掃描函數(shù)Scan-key()和菜單刷新函數(shù)Refresh-Menu(),前者掃描“上移鍵”、"下移鍵"和“執(zhí)行鍵”,根據(jù)當(dāng)前位置將當(dāng)前菜單項(xiàng)索引保存于變量Curr-Menu,對于刷新菜單的函數(shù)Refresh-Menu(),它總是將當(dāng)前選中的菜單反向顯示,其它菜單顯示則正常。選擇不同的菜單項(xiàng)后,菜單功能執(zhí)行函數(shù)Execute-MENU()根據(jù)功能號Func-NO(1、2、3)分別完成“LED閃爍控制”、“A/D轉(zhuǎn)換值顯示”和“聲音輸出”。6 結(jié)論 在設(shè)計這個實(shí)驗(yàn)時遇到很多的問題,比如不知道SED1565的命令集,不知道如何取字模,不知道如何設(shè)置SED1565的
9、起始地址;程序代碼中也有很多不懂的地方,雖然是書上的一個簡單的例子,但是看程序的時候總是云里霧里,比如最基本的點(diǎn)陣都看不懂(后來才知道這時最基礎(chǔ)的),字符顯示函數(shù)時怎么回事,還有那個我認(rèn)為的最難的反相顯示字符那一塊。最后是在胡新同學(xué)的幫助下,整整兩個晚上的耐心教導(dǎo),我才算弄會了這個實(shí)驗(yàn),給胡新點(diǎn)贊7附錄程序程序主要分為4個模塊分別為:1. Nokia7110液晶演示2. ADC0832模數(shù)轉(zhuǎn)換程序3.Nokia7110液晶頭文件(SED1565)4 .Nokia7110顯示驅(qū)動程序(SED1565) 1名稱: Nokia7110液晶演示/-/說明: 本例在Nokia7110液晶演示了3項(xiàng)菜單功
10、能,分別是LED閃爍控制,A/D/轉(zhuǎn)換控制,蜂鳴器輸出./ /-#include <reg51.h>#include <intrins.h>#include <string.h>#include <stdio.h>#include "Nokia7110.h"code char Text17 =/本例標(biāo)題及菜單項(xiàng)等"Norkia 7110 DEMO","-","1.Flash LEDs ","2.Disp A/D Value","3.Sou
11、nder Output","-"/按鍵引腳定義#define K_UP() (P0 & (1<<0)=0x00)/上移#define K_DOWN() (P0 & (1<<1)=0x00)/下移#define K_OK() (P0 & (1<<2)=0x00)/執(zhí)行sbit BEEP = P05;/蜂鳴器char disp_buff17;/液晶顯示緩沖float AD_Result;volatile INT8U Pre_Key = 0x00, Curr_Menu = 1,Pre_Menu = 0, Fun
12、c_NO = 0;volatile INT8U Key_Changed = 0;enum WHITE = 0, BLACK = 1;extern INT8U Get_AD_Result();/-/ 延時函數(shù)/-void delay_ms(INT16U x) INT8U t; while(x-) for(t = 0; t < 120; t+);/-/ 按鍵掃描,獲取當(dāng)前菜單項(xiàng)/-void Scan_Key()/-/ 刷新菜單顯示/-void Refresh_Menu()/-/ 執(zhí)行菜單功能/-void Execute_MENU()/-/ 主程序/-void main()/-/ 定時器控制蜂
13、鳴器輸出/-void T0_INT() interrupt 1 2名稱: ADC0832模數(shù)轉(zhuǎn)換程序/-#include <reg51.h>#include <intrins.h>#include <string.h>#define INT8U unsigned char#define INT16U unsigned int/ADC0832引腳定義sbit CS = P11;/片選線(電路中固定連接低電平)sbit CLK = P14;/時鐘鐘線sbit DIO = P15;/數(shù)據(jù)線/-/ 獲取AD轉(zhuǎn)換結(jié)果 ( 0通道 )/-INT8U Get_AD_Res
14、ult()3名稱: Nokia7110液晶頭文件(SED1565)/-#define INT8U unsigned char#define INT16U unsigned int#define _XTAL_FREQ 4000000UL/-/ SEG1565顯示地址控制命令/-#define PAGE 0xB0 /頁地址/SED1565最大分辨率為132*65,在驅(qū)動Nokia7710時,其起始列為第18列,而不是0列/由于SED1565的列地址高4位命令為0001XXXX,低3位命令為0000XXXX/將起始列(18->0x12)組合到列地址高4位與低4位命令后,可得:0001-0001
15、與0000-0010/即0x11與0x02,故有如下定義#define COL_H4 0x11 /列地址高四位#define COL_L4 0x02 /列地址低四位#define LINE 0x40 /行地址/-/ 函數(shù)聲明/-void SPI_MasterInit();void Nokia_Reset();void Nokia_Init();void Nokia_CLS();void Write_Norkia_Command(INT8U cmd);void Write_Nokia_Data(INT8U cd);void Set_Nokia_LCD_POS(INT8U page, INT8U
16、col) ;void Show_Char(INT8U c, INT8U reverse); void Show_String(INT8U *str,INT8U reverse);4名稱: Nokia7110顯示驅(qū)動程序(SED1565) (不帶字庫,96*64)/-#include <reg51.h>#include <intrins.h>#include <string.h>#include <stdio.h>#include "Nokia7110.h"#define INT8Uunsigned char#define IN
17、T16Uunsigned int/SPI接口存儲器引腳定義sbit CS= P20;/片選線sbit DC= P21;/數(shù)據(jù)/命令選擇線sbit RESET= P22;/復(fù)位線sbit SCLK= P23;/串行時鐘sbit SDATA= P24;/串行數(shù)據(jù)線/-/ASCII字符5x7點(diǎn)陣庫(每個字符5字節(jié)點(diǎn)陣數(shù)據(jù))/-code INT8U ASCII_FONT = 0x00,0x00,0x00,0x00,0x00, /20 空格0x00,0x00,0x5f,0x00,0x00, /21 !0x00,0x07,0x00,0x07,0x00, /22 "extern void dela
18、y_ms(INT16U x);/-/ 從當(dāng)前地址讀取一字節(jié)數(shù)據(jù)/-INT8U ReadByte()/-/ 向當(dāng)前地址寫入一字節(jié)數(shù)據(jù)/-void WriteByte(INT8U dat)/-/ 清屏/-void Nokia_CLS() /-/ 復(fù)位Nokia LCD/-void Nokia_Reset() /-/ 初始化Nokia LCD/-void Nokia_Init() Nokia_Reset();/復(fù)位Nokia LCDWrite_Norkia_Command(0xA6);/正常顯示模式(0xA7為反相模式)Write_Norkia_Command(0xA3);/液晶偏壓設(shè)置(1/9 0xA2 - 1/7 0xA3)Write_Norkia_Command(0xA1);/段驅(qū)動方向選擇,0xA1為反向,0xA0為正常)Write_Norkia_Command(0xC0);/行輸出方向,C0為正常,C1為反向Write_Norkia_Command(0x22);/電阻率設(shè)置(V5電壓控制)Write_Nor
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基礎(chǔ)網(wǎng)格管理員管理辦法
- 新疆儲備草暫行管理辦法
- 周至縣四小河流管理辦法
- 藝術(shù)展覽場合記人員聘用合同協(xié)議
- 園區(qū)學(xué)校宿舍征用方案
- 場營銷行業(yè)跨界合作保密合同
- 稅務(wù)辦事大廳裝修方案
- 貧困安置房裝修方案
- 市政單位給水排水方案
- 汽車交互面試題及答案
- DB11/T 147-2015-檢查井蓋結(jié)構(gòu)、安全技術(shù)規(guī)范
- JJG 875-2019數(shù)字壓力計行業(yè)標(biāo)準(zhǔn)
- 創(chuàng)新型QC成果課件
- 公務(wù)用車定點(diǎn)維修服務(wù)質(zhì)量保障方案
- 柴油錘擊樁施工方案樣本
- 教師培訓(xùn)成果分享課件
- 罐區(qū)安全培訓(xùn)課件
- 大理市房地產(chǎn)市場調(diào)研報告
- 《輔行訣五臟用藥法要》解讀
- 領(lǐng)導(dǎo)干部報告?zhèn)€人有關(guān)事項(xiàng)檢討14篇
- 計算機(jī)組成原理(本全)白中英課件
評論
0/150
提交評論