freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)控制的液晶顯示萬(wàn)年歷設(shè)計(jì)-資料下載頁(yè)

2025-06-22 02:05本頁(yè)面
  

【正文】 ~FDH,其中奇數(shù)為讀操作,偶數(shù)為寫(xiě)操作;再一類為突發(fā)方式下的RAM寄存器,在此方式下可一次性讀、寫(xiě)所有的RAM的31個(gè)字節(jié)。 要特別說(shuō)明的是備用電源B1,可以用電池或者超級(jí)電容器()。雖然DS1302在主電源掉電后的耗電很小,但是,如果要長(zhǎng)時(shí)間保證時(shí)鐘正常,最好選用小型充電電池。如果斷電時(shí)間較短(幾小時(shí)或幾天)時(shí),就可以用漏電較小的普通電解電容器代替。100 μF就可以保證1小時(shí)的正常走時(shí)。DS1302在第一次加電后,必須進(jìn)行初始化操作。初始化后就可以按正常方法調(diào)整時(shí)間。 12864液晶的介紹n 12864液晶的分類(1)ST7920類 這種控制器帶中文字庫(kù),為用戶免除了編制字庫(kù)的麻煩,該控制器的液晶還支持畫(huà)圖方式。該類液晶支持68時(shí)序8位和4位并口以及串口。(2)KS0108類 這種控制器指令簡(jiǎn)單,不帶字庫(kù)。支持68時(shí)序8位并口。(3)T6963C類 這種控制器功能強(qiáng)大,帶西文字庫(kù)。有文本和圖形兩種顯示方式。有文本和圖形兩個(gè)圖層,并且支持兩個(gè)圖層的疊加顯示。支持80時(shí)序8位并口。(4)COG類 常見(jiàn)的控制器有S6B0724和ST7565,這兩個(gè)控制器指令兼容。支持68時(shí)序8位并口,80時(shí)序8位并口和串口。COG類液晶的特點(diǎn)是結(jié)構(gòu)輕便,成本低。12864是一種圖形點(diǎn)陣液晶顯示器,它主要由行驅(qū)動(dòng)器/列驅(qū)動(dòng)器及12864全點(diǎn)陣液晶顯示器組成??赏瓿蓤D形顯示,也可以顯示84個(gè)(1616點(diǎn)陣)漢字。 12864管腳功能管腳名稱LEVER管腳功能描述VSS0電源地VDD+電源電壓V0液晶顯示器驅(qū)動(dòng)電壓D/I(RS)H/LD/I=“H”,表示DB7∽DB0為顯示數(shù)據(jù)D/I=“L”,表示DB7∽DB0為顯示指令數(shù)據(jù)R/WH/LR/W=“H”,E=“H”數(shù)據(jù)被讀到DB7∽DB0R/W=“L”,E=“H→L”數(shù)據(jù)被寫(xiě)到IR或DREH/LR/W=“L”,E信號(hào)下降沿鎖存DB7∽DB0R/W=“H”,E=“H”DDRAM數(shù)據(jù)讀到DB7∽DB0DB0H/L數(shù)據(jù)線DB1H/L數(shù)據(jù)線DB2H/L數(shù)據(jù)線DB3H/L數(shù)據(jù)線DB4H/L數(shù)據(jù)線DB5H/L數(shù)據(jù)線DB6H/L數(shù)據(jù)線DB7H/L數(shù)據(jù)線CS1H/LH:選擇芯片(右半屏)信號(hào)CS2H/LH:選擇芯片(左半屏)信號(hào)RETH/L復(fù)位信號(hào),低電平復(fù)位VOUT10VLCD驅(qū)動(dòng)負(fù)電壓LED+LED背光板電源LEDLED背光板電源n 12864液晶的內(nèi)部功能器件及相關(guān)功能在使用12864LCD前先必須了解以下功能器件才能進(jìn)行編程。12864內(nèi)部功能器件及相關(guān)功能如下:1. 指令寄存器(IR)IR是用于寄存指令碼,與數(shù)據(jù)寄存器數(shù)據(jù)相對(duì)應(yīng)。當(dāng)D/I=0時(shí),在E信號(hào)下降沿的作用下,指令碼寫(xiě)入IR。2.?dāng)?shù)據(jù)寄存器(DR) DR是用于寄存數(shù)據(jù)的,與指令寄存器寄存指令相對(duì)應(yīng)。當(dāng)D/I=1時(shí),在下降沿作用下,圖形顯示數(shù)據(jù)寫(xiě)入DR,或在E信號(hào)高電平作用下由DR讀到DB7∽DB0數(shù)據(jù)總線。DR和DDRAM之間的數(shù)據(jù)傳輸是模塊內(nèi)部自動(dòng)執(zhí)行的。3.忙標(biāo)志:BFBF標(biāo)志提供內(nèi)部工作情況。BF=1表示模塊在內(nèi)部操作,此時(shí)模塊不接受外部指令和數(shù)據(jù)。BF=0時(shí),模塊為準(zhǔn)備狀態(tài),隨時(shí)可接受外部指令和數(shù)據(jù)。利用STATUS READ指令,可以將BF讀到DB7總線,從檢驗(yàn)?zāi)K之工作狀態(tài)。4.顯示控制觸發(fā)器DFF此觸發(fā)器是用于模塊屏幕顯示開(kāi)和關(guān)的控制。DFF=1為開(kāi)顯示(DISPLAY OFF),DDRAM的內(nèi)容就顯示在屏幕上,DFF=0為關(guān)顯示(DISPLAY OFF)。DDF的狀態(tài)是指令DISPLAY ON/OFF和RST信號(hào)控制的。5.XY地址計(jì)數(shù)器XY地址計(jì)數(shù)器是一個(gè)9位計(jì)數(shù)器。高3位是X地址計(jì)數(shù)器,低6位為Y地址計(jì)數(shù)器,XY地址計(jì)數(shù)器實(shí)際上是作為DDRAM的地址指針,X地址計(jì)數(shù)器為DDRAM的頁(yè)指針,Y地址計(jì)數(shù)器為DDRAM的Y地址指針。X地址計(jì)數(shù)器是沒(méi)有記數(shù)功能的,只能用指令設(shè)置。Y地址計(jì)數(shù)器具有循環(huán)記數(shù)功能,各顯示數(shù)據(jù)寫(xiě)入后,Y地址自動(dòng)加1,Y地址指針從0到63。6.顯示數(shù)據(jù)RAM(DDRAM)DDRAM是存儲(chǔ)圖形顯示數(shù)據(jù)的。數(shù)據(jù)為1表示顯示選擇,數(shù)據(jù)為0表示顯示非選擇。DDRAM與地址和顯示位置的關(guān)系見(jiàn)DDRAM地址表。7.Z地址計(jì)數(shù)器Z地址計(jì)數(shù)器是一個(gè)6位計(jì)數(shù)器,此計(jì)數(shù)器具備循環(huán)記數(shù)功能,它是用于顯示行掃描同步。當(dāng)一行掃描完成,此地址計(jì)數(shù)器自動(dòng)加1,指向下一行掃描數(shù)據(jù),RST復(fù)位后Z地址計(jì)數(shù)器為0。Z地址計(jì)數(shù)器可以用指令DISPLAY START LINE預(yù)置。因此,顯示屏幕的起始行就由此指令控制,即DDRAM的數(shù)據(jù)從哪一行開(kāi)始顯示在屏幕的第一行。此模塊的DDRAM共64行,屏幕可以循環(huán)滾動(dòng)顯示64行。n 12864LCD的指令系統(tǒng)模塊控制芯片提供兩套控制命令,基本指令和擴(kuò)充指令如下: 指令表1:(RE=0:基本指令) 指 令 碼指令功 能RSR/WD7D6D5D4D3D2D1D0清除顯示0000000001將DDRAM填滿20H,并且設(shè)定DDRAM的地址計(jì)數(shù)器(AC)到00H地址歸位000000001X設(shè)定DDRAM的地址計(jì)數(shù)器(AC)到00H,并且將游標(biāo)移到開(kāi)頭原點(diǎn)位置。這個(gè)指令不改變DDRAM 的內(nèi)容顯示狀態(tài)開(kāi)/關(guān)0000001DCBD=1: 整體顯示 ONC=1: 游標(biāo)ONB=1:游標(biāo)位置反白允許進(jìn)入點(diǎn)設(shè)定00000001I/DS指定在數(shù)據(jù)的讀取與寫(xiě)入時(shí),設(shè)定游標(biāo)的移動(dòng)方向及指定顯示的移位游標(biāo)或顯示移位控制000001S/CR/LXX設(shè)定游標(biāo)的移動(dòng)與顯示的移位控制位。這個(gè)指令不改變DDRAM 的內(nèi)容功能設(shè)定00001DLXREXXDL=0/1:4/8位數(shù)據(jù)RE=1: 擴(kuò)充指令操作RE=0: 基本指令操作設(shè)定CGRAM地址0001AC5AC4AC3AC2AC1AC0設(shè)定CGRAM 地址設(shè)定DDRAM地址0010AC5AC4AC3AC2AC1AC0設(shè)定DDRAM 地址(顯示位址)第一行:80H-87H第二行:90H-97H讀取忙標(biāo)志和地址01BFAC6AC5AC4AC3AC2AC1AC0讀取忙標(biāo)志(BF)可以確認(rèn)內(nèi)部動(dòng)作是否完成,同時(shí)可以讀出地址計(jì)數(shù)器(AC)的值寫(xiě)數(shù)據(jù)到RAM10數(shù)據(jù)將數(shù)據(jù)D7——D0寫(xiě)入到內(nèi)部的RAM (DDRAM/CGRAM/IRAM/GRAM)讀出RAM的值11數(shù)據(jù)從內(nèi)部RAM讀取數(shù)據(jù)D7——D0(DDRAM/CGRAM/IRAM/GRAM)指令表2:(RE=1:擴(kuò)充指令) 指 令 碼指令功 能RSR/WD7D6D5D4D3D2D1D0待命模式0000000001進(jìn)入待命模式,執(zhí)行其他指令都終止待命模式卷動(dòng)地址開(kāi)關(guān)開(kāi)啟000000001SRSR=1:允許輸入垂直卷動(dòng)地址SR=0:允許輸入IRAM和CGRAM地址反白選擇00000001R1R0選擇2行中的任一行作反白顯示,并可決定反白與否。初始值R1R0=00,第一次設(shè)定為反白顯示,再次設(shè)定變回正常睡眠模式0000001SLXXSL=0:進(jìn)入睡眠模式SL=1:脫離睡眠模式擴(kuò)充功能設(shè)定00001CLXREG0CL=0/1:4/8位數(shù)據(jù)RE=1: 擴(kuò)充指令操作RE=0: 基本指令操作G=1/0:繪圖開(kāi)關(guān)設(shè)定繪圖RAM地址0010AC60AC50AC4AC3AC3AC2AC2AC1AC1AC0AC0設(shè)定繪圖RAM先設(shè)定垂直(列)地址AC6AC5…AC0再設(shè)定水平(行)地址AC3AC2AC1AC0將以上16位地址連續(xù)寫(xiě)入即可備注:當(dāng)IC1在接受指令前,微處理器必須先確認(rèn)其內(nèi)部處于非忙碌狀態(tài),即讀取BF標(biāo)志時(shí),BF需為零,方可接受新的指令。如果在送出一個(gè)指令前并不檢查BF標(biāo)志,那么在前一個(gè)指令和這個(gè)指令中間必須延長(zhǎng)一段較長(zhǎng)的時(shí)間,即是等待前一個(gè)指令確實(shí)執(zhí)行完成。4 單片機(jī)系統(tǒng)的軟件設(shè)計(jì) 由于該單片機(jī)系統(tǒng)由五個(gè)模塊組成,在程序的編寫(xiě)過(guò)程中采用模塊化編程的方法,所以系統(tǒng)的程序設(shè)計(jì)部分同樣是由五個(gè)模塊組成。現(xiàn)將各模塊的程序框圖及主要程序代碼介紹如下。 單片機(jī)控制模塊該模塊接受來(lái)自時(shí)終模塊的時(shí)間信息、溫度檢測(cè)模塊的溫度信息、按鍵模塊的調(diào)節(jié)信息來(lái)控制12864液晶模塊的顯示。其程序流程圖如下:開(kāi)始調(diào)用液晶顯示函數(shù)顯示開(kāi)機(jī)圖畫(huà)調(diào)用液晶顯示、時(shí)鐘、溫度檢測(cè)函數(shù)顯示萬(wàn)年歷正常走時(shí)模式時(shí)間設(shè)置信息 主程序流程圖其主要的程序是main函數(shù),如下:void main(){ SFR_Init()。 CAL_Init()。 GUI_Init()。 TR0=1。 TR1=1。 while(1) { GetTime(amp。sys)。 //獲得時(shí)間(來(lái)自DS1302時(shí)鐘模塊) LCD_ShowTemp()。 //顯示溫度(來(lái)自DS18B20溫度檢測(cè)模塊) LCD_ShowWNL()。 //顯示萬(wàn)年歷(控制液晶模塊顯示) Time_Set()。 //時(shí)間設(shè)置(接受來(lái)自按鍵模塊的信息) } } 備注:上面流程圖中的校時(shí)模塊是調(diào)時(shí)、調(diào)分、調(diào)秒、調(diào)年、調(diào)月、調(diào)日模式的組合,各模式之間通過(guò)判斷按鍵1是否按下來(lái)切換。其工作過(guò)程和我們通常所說(shuō)的狀態(tài)機(jī)有些相似。 按鍵模塊的軟件設(shè)計(jì)該模塊通過(guò)按鍵給單片機(jī)輸入信息,調(diào)節(jié)萬(wàn)年歷的時(shí)間。按鍵檢測(cè)部分是該模塊的核心,通過(guò)單片機(jī)的中斷來(lái)檢測(cè)按鍵是否按下,其程序流程圖如下:NY開(kāi)始按鍵1是否按下按鍵2是否按下按鍵3是否按下返回命令萬(wàn)年歷顯示正常走時(shí)模式Y(jié)NNNY加一Y減一 按鍵模塊流程圖其程序代碼如下:void timer1() interrupt 3 //按鍵掃描{ TH1= (10000)/256。 TL1= (10000)%256。 keyinput()。 // 設(shè)置 if (keyvalueamp。0x10) { State_Flag=TRUE。 keyvalue amp。= 0xef。 //清鍵值,保證一直按下只執(zhí)行一次按鍵動(dòng)作。 } if (keyvalueamp。0x20 ) //加 { Inc_Flag=TRUE。 keyvalue amp。= 0xdf。 //清鍵值,保證一直按下只執(zhí)行一次按鍵動(dòng)作。 } if (keyvalueamp。0x40) //減 { Dec_Flag=TRUE。 keyvalue amp。= 0xbf。 //清鍵值,保證一直按下只執(zhí)行一次按鍵動(dòng)作。 } } 溫度檢測(cè)模塊的軟件設(shè)計(jì)該模塊是以DS18B20為溫度轉(zhuǎn)換芯片,現(xiàn)提供其工作流程圖如下,程序代碼見(jiàn)附錄。NY初始化DS18B20發(fā)送跳過(guò)ROM指令發(fā)送溫度轉(zhuǎn)換指令延時(shí)等待,溫度轉(zhuǎn)化完畢發(fā)送復(fù)位指令發(fā)送讀取RAM指令讀取DS18B20溫度值全部DS18B20都訪問(wèn)完結(jié)束 溫度檢測(cè)模塊流程圖 時(shí)鐘模塊的軟件設(shè)計(jì)該模塊使用的DS1302時(shí)鐘芯片同樣是達(dá)拉斯公司生產(chǎn)的單總線芯片,同樣,這里只給出程序流程圖,程序代碼見(jiàn)附錄。NYYN初始化DS1302等待初始時(shí)間設(shè)置命令寫(xiě)操作按照新時(shí)間走時(shí)讀取當(dāng)前時(shí)間數(shù)據(jù)將時(shí)間數(shù)據(jù)送入單片機(jī)時(shí)間調(diào)整命令 時(shí)鐘模塊流程圖 液晶顯示模塊的軟件設(shè)計(jì)我們拿到一個(gè)液晶,并不是馬上就能使用,必須得先寫(xiě)驅(qū)動(dòng)程序。包括液晶初始化程序、漢字顯示程序、圖片顯示程序、寫(xiě)指令、寫(xiě)數(shù)據(jù)等。其主要程序流程圖如下:開(kāi)始LCD初始化延時(shí)等待開(kāi)左半屏顯示左半屏內(nèi)容開(kāi)右半屏顯示右半屏內(nèi)容 顯示模塊流程圖其初始化程序如下:void LCD12864_init(void){ LCD12864_RST=0。 delayus(50)。 LCD12864_RST=1。 LCDSel(0)。 //left and right WriteCmdToLCD12864(LCD_OFF)。 WriteCmdToLCD12864(LCD_ON)。}向12864寫(xiě)命令如下:void WriteCmdToLCD12864(unsigned char cmd){ WaitLCD()。 LCD12864_RS=0。 //the mand LCD12864_RW=0。 //write LCD12864_DATA_PORT=cmd。 LCD12864_EN=1。 。 LCD12864_EN=0。}向12864寫(xiě)數(shù)據(jù)代碼如下:void WriteDatToLCD12864(unsigned char dat){ WaitLCD()。 LCD12864_RS=1。 //the data LCD12864_RW=0。 //write LCD12864_DATA_PORT=dat。 LCD12864_EN=1。 。 LCD12864_EN=0。}該單片機(jī)模塊經(jīng)過(guò)Keil C51的程序編譯和Protues的硬件仿真,實(shí)現(xiàn)了以下功能。12864液晶顯示開(kāi)機(jī)畫(huà)面 開(kāi)機(jī)畫(huà)面12864液晶顯示萬(wàn)年歷正常走時(shí)、溫度畫(huà)面 萬(wàn)年歷畫(huà)面12864液晶顯示校時(shí)模式(反顯),以調(diào)時(shí)模式為例 調(diào)時(shí)畫(huà)面5 總結(jié)經(jīng)過(guò)將近三個(gè)月的單片機(jī)畢業(yè)設(shè)計(jì),終于完成了我的單片機(jī)控制液晶顯示萬(wàn)年歷設(shè)計(jì),雖然有部分功能尚未實(shí)現(xiàn),沒(méi)有達(dá)到設(shè)計(jì)的要求,但是總體上完成了一個(gè)從硬件到軟件完整的設(shè)計(jì)流程。本次設(shè)計(jì)中有一些不足。首先是沒(méi)有做PCB板,沒(méi)有完成實(shí)物電路;其次是實(shí)現(xiàn)功能太簡(jiǎn)單。這是由于自己以前系統(tǒng)開(kāi)發(fā)經(jīng)驗(yàn)不夠,對(duì)1286DS18B20芯片不是特別熟悉,技術(shù)上生疏。所以這部分在答辯前沒(méi)有實(shí)現(xiàn),但答辯后,我會(huì)繼續(xù)利用空閑時(shí)間完善設(shè)計(jì)。通過(guò)本次設(shè)計(jì),我發(fā)現(xiàn)自己存在很多不足,雖然以前還做過(guò)各種單片機(jī)的設(shè)計(jì),但這次設(shè)計(jì)是自己獨(dú)立完成的,依然讓我長(zhǎng)進(jìn)很多。對(duì)于一個(gè)真正的嵌入式工程師來(lái)說(shuō),不僅要有好的技術(shù)而且要有很好的想象力和前瞻性,能夠適應(yīng)日夜變化的生活需要。我真真正正的意識(shí)到,在以后的學(xué)習(xí)中,要理論聯(lián)系實(shí)際,把我們所學(xué)到的理論知識(shí)運(yùn)用到實(shí)際中,技術(shù)只有在經(jīng)常的實(shí)際運(yùn)用中才能提高,這就是我在這次設(shè)計(jì)中的最大收獲。參考文獻(xiàn)[1]——原理與應(yīng)用[第2版].北京航空航天大學(xué)出版社,2006. [2]周潤(rùn)景、2006.[3][M]..[4]雷志勇、,(5)[5],2006.[6]宮鵬,宮鑰,2011年6月.[7]楊明極,陳方縣,2010年第34卷第04期.[8]葛健,董浩斌,2010年5期.[9]張宇,張?jiān)粕?009年4月第二期.[10]Mehdi MP3 Decoder Implemented in a Xilinx Virtex4 FPGA. Tabriz University, Tabriz, Iran.[11]汪永好,2009年30期.[12]宋紅星,.[13]王道乾,劉定智,2007年4月.[14]田茂,鮮于李可,2009年第14期.[15] Terry OS JITTER MEASUREMENTS AT LARGE NODE COUNTS USING A BLUE GENE/L. November 30, 2009.致 謝 首先,感謝郭秀梅郭老師。本次設(shè)計(jì)是在郭老師的指導(dǎo)下完成的,在整個(gè)設(shè)計(jì)過(guò)程中她給了我很大的幫助。在論文題目制定時(shí),郭老師肯定了我的題目大方向,在我的設(shè)計(jì)過(guò)程中遇到困難時(shí),是郭老師幫我分析,是我渡過(guò)了難關(guān)。在完成初稿后,老師認(rèn)真檢查了我的文章,指出了我存在的很多問(wèn)題。感謝郭老師的細(xì)心指導(dǎo),才能讓我順利完成畢業(yè)論文。同時(shí),也感謝在整個(gè)論文寫(xiě)作過(guò)程中幫助過(guò)我的每個(gè)人。
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1