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

正文內(nèi)容

基于at89c系列的電子萬(wàn)年歷畢業(yè)論文-文庫(kù)吧

2025-06-12 23:01 本頁(yè)面


【正文】 據(jù)存儲(chǔ)器,訪問(wèn)液晶顯示器就像訪問(wèn)數(shù)據(jù)存儲(chǔ)器的一個(gè)單元一樣,采用這種方式能充分發(fā)揮單片機(jī)的總線讀寫(xiě)功能,便于升級(jí)和擴(kuò)展。而非總線方式是直接利用IO口進(jìn)行讀寫(xiě),較靈活,不便于升級(jí)。這里采用總線式接口方式。接口時(shí)要注意顯示器的功能信號(hào)E是高電平有效,所以要取反。這里使用的液晶顯示器為L(zhǎng)CD1602為字符點(diǎn)陣式液晶顯示器??梢燥@示162個(gè)字符,而要顯示日期字符有23個(gè),可以滿(mǎn)足要求。DS1302的引腳排列,其中Vcc1為后備電源,VCC2為主電源。在主電源關(guān)閉的情況下,也能保持時(shí)鐘的連續(xù)運(yùn)行。DS1302由Vcc1或Vcc2兩者中的較大者供電。當(dāng)Vcc2大于Vcc1+,Vcc2給DS1302供電。當(dāng)Vcc2小于Vcc1時(shí),DS1302由Vcc1供電。X1和X2是振蕩源。RST是復(fù)位/片選線,通過(guò)把RST輸入驅(qū)動(dòng)置高電平來(lái)啟動(dòng)所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)RST為高電平時(shí),所有的數(shù)據(jù)傳送被初始化,允許對(duì)DS1302進(jìn)行操作。如果在傳送過(guò)程中RST置為低電平,則會(huì)終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行時(shí),在Vcc,RST必須保持低電平。只有在SCLK為低電平時(shí),才能將RST置為高電平。I/O為串行數(shù)據(jù)輸入輸出端(雙向),后面有詳細(xì)說(shuō)明。SCLK為時(shí)鐘輸入端。 下圖為DS1302的引腳功能圖:(一) 引腳功能(如圖 6) VCC1.VCC2:電源引腳 。 其中VCC2接主電源 .VCC1接備用電源。 GND:接地。輸出數(shù)據(jù)。XX2:。晶振引腳。RST為復(fù)位端,高電平時(shí)允許I/O端進(jìn)行數(shù)據(jù)傳輸,低電平則禁止數(shù)據(jù)傳送且使I/O端呈高阻狀態(tài);I/O為串行數(shù)據(jù)輸入、輸出端,所有輸入、輸出數(shù)據(jù)的傳送順序均以最低位LSB打頭,最高位MSB結(jié)束;SCLK為同步時(shí)鐘脈沖端,其上升沿將I/O端數(shù)據(jù)按位寫(xiě)入DS1302,下降沿使DS1302按位輸出數(shù)據(jù)至I/O端;VCCVCC1為主電源和備份電源端,當(dāng)主電源VCC2大于備份電源VCC1+0.2V時(shí),由VCC2對(duì)芯片供電,否則,由VCC1對(duì)芯片供電。工作電壓范圍為2.5~5.5 V,工作電源和備份電源雙引腳輸入,功耗很低,當(dāng)工作電壓為2.5 V時(shí)正常工作,所需電流不超過(guò)300 nA。另外,如果選擇了涓流充電功能,在正常情況下,主電源還可對(duì)備份電源進(jìn)行慢速充電,有效延長(zhǎng)了備份電源的使用壽命,保證了系統(tǒng)時(shí)間的連續(xù)可靠運(yùn)行。內(nèi)部有振蕩器。若采用外部振蕩信號(hào)時(shí)。32768Hz的信號(hào)從 X1腳輸入.x2腳懸空。 CE:片選端,高電平有效 ,在有些早期資料中該引腳標(biāo)成爪ST,實(shí)際功能一樣。CE端接通控制邏輯,當(dāng)其為‘0”時(shí) ,IO引腳變?yōu)楦咦杞貭顟B(tài),所有的數(shù)據(jù)傳送中止,當(dāng)其為‘1’時(shí),允許數(shù)據(jù)傳送。CE由‘0’至‘1’時(shí)。SCIX必須為“0”。 DS1302的內(nèi)部主要由移位寄存器、指令和控制邏輯、振蕩分頻電路、實(shí)時(shí)時(shí)鐘以及RAM組成。每次操作時(shí),必須首先把CE置為高電平。再把提供地址和命令信息的8位裝入移位寄存器。數(shù)據(jù)在SCLK的上升沿串行輸入。無(wú)論是讀周期還是寫(xiě)周期發(fā)生,也無(wú)論傳送方式是單字節(jié)還是多字節(jié),開(kāi)始8位將指定內(nèi)部何處被進(jìn)行訪問(wèn)。在開(kāi)始 8個(gè)時(shí)鐘周期把含有地址信息的命令字裝入移位寄存器之后。緊隨其后的時(shí)鐘在讀操作時(shí)輸出數(shù)據(jù).DS1302與微處理器的接口電路如下圖所示。該微處理器采用宏晶科技推出AT89C51單片機(jī)作為主控芯片,該產(chǎn)品具有片內(nèi)資源豐富、超強(qiáng)抗干擾、高抗靜電、超低功耗、寬電壓、不怕電源抖動(dòng)、在系統(tǒng)可編程、加密性強(qiáng)、無(wú)法解密、可降低單片機(jī)時(shí)鐘對(duì)外部電磁輻射等特點(diǎn),其良好的性能保證了各個(gè)器件的協(xié)調(diào)可靠工作及控制要求。在電路中單片機(jī)的P1.7控制DS1302的復(fù)位輸入端,P1.4與數(shù)據(jù)輸入/輸出引腳相連,P1.3用來(lái)作為 DS1302的輸入時(shí)鐘SCLK控制端。由于單片機(jī)復(fù)位時(shí),所有單片機(jī)的端口均為高電平,如果直接用單片機(jī)的某一口線同DS1302的RST相連,則影響了系統(tǒng)加電時(shí)對(duì)DS1302的初始化,從而造成 DS1302計(jì)時(shí)的不穩(wěn)定。因此,本主電源(5 V)接 VCC2,備份電池采用可充電鎘鎳電池(3.6 V)接 VCC1,可啟用內(nèi)部涓流充電器在主電壓正常時(shí)向電池充電,以延長(zhǎng)電池使用時(shí)間。備份電池也可用1微法以上的超容量電容代替,但需要注意的是備份電池電壓應(yīng)略低于主電源工作電壓。 1. 鍵盤(pán)接口介紹(1) 獨(dú)立式鍵盤(pán)獨(dú)立式鍵盤(pán)是指直接用I/O口線構(gòu)成單個(gè)按鍵電路,每個(gè)按鍵占用一條I/O口線,當(dāng)某個(gè)鍵閉合時(shí),相應(yīng)的I/O口線變?yōu)榈碗娖剑?dāng)CPU查詢(xún)到為低電平的I/O口線時(shí),就可以判別出與其對(duì)應(yīng)的鍵處于釋放狀態(tài)。(2) 行列式鍵盤(pán) 將I/O口線的一部分作為行線,另一部分作為行線,按鍵設(shè)置在行線的交叉點(diǎn)上。CPU通過(guò)其電平的高低來(lái)判別鍵是否被按下。但每根線上接有4個(gè)按鍵,任何鍵按下都有可能使其電平變低,到底是哪個(gè)鍵按下呢?這是采用了“時(shí)分復(fù)用”的方法,即在一個(gè)查詢(xún)周期里把時(shí)間分為4個(gè)間隔,每個(gè)時(shí)間間隔對(duì)應(yīng)一個(gè)鍵,在哪個(gè)時(shí)間間隔查到低電平,則代表是與之相對(duì)應(yīng)的鍵被按下?!?。 ~,則只有與之對(duì)應(yīng)的鍵按下時(shí),才能使行線為低電平,此時(shí)其他列線都輸出高電平,與它們對(duì)應(yīng)的鍵按下,不能使行線電平變低,所以就實(shí)現(xiàn)了行線的時(shí)分復(fù)用。 由于行列式鍵盤(pán)的按鍵數(shù)量比較多,為了使程序簡(jiǎn)潔,一般在鍵處理程序中,給予每個(gè)鍵一個(gè)鍵號(hào),由從列線I/O口輸出的數(shù)據(jù)和從行線I/O口讀入的數(shù)據(jù)得到按鍵的鍵號(hào),然后由該鍵號(hào)通過(guò)散轉(zhuǎn)表進(jìn)入各按鍵的服務(wù)程序。2.設(shè)置電路介紹設(shè)置電路的功能主要是把時(shí)間和日期設(shè)置到當(dāng)前的時(shí)間,可以在系統(tǒng)運(yùn)行中進(jìn)行。用4個(gè)獨(dú)立式按鍵完成,分別接到單片機(jī)P1口的高4位。第1個(gè)按鈕表示是否進(jìn)行設(shè)置,按下時(shí)表示設(shè)置,并且每按一次,在顯示器上分別在年、月、日等日期時(shí)間上跳轉(zhuǎn),表示對(duì)相應(yīng)的項(xiàng)進(jìn)行更改;第2個(gè)按鈕按下表示對(duì)第1個(gè)按鈕選中的項(xiàng)進(jìn)行加1操作;第3個(gè)按鈕按下表示進(jìn)行減1操作;第4個(gè)按鈕按下表示停止設(shè)置。只有在第1個(gè)按鈕按時(shí)才可進(jìn)行加減操作。其電路如圖3所示。其中電容的作用是消除按鍵的抖動(dòng),也可用雙穩(wěn)態(tài)觸發(fā)器去除按鍵時(shí)的抖動(dòng),同時(shí)為了提高可靠性,硬件去抖動(dòng)的同時(shí),還可以用軟件去抖動(dòng)的方法。 第三章 系統(tǒng)軟件設(shè)計(jì)系統(tǒng)軟件設(shè)計(jì)主要包括主程序設(shè)計(jì)、日期數(shù)據(jù)采集子模塊程序設(shè)計(jì)、按鍵處理子模塊程序設(shè)計(jì)和顯示子模塊程序設(shè)計(jì)等。主程序主要完成器件的初始化,并判斷有無(wú)按鍵按下,并根據(jù)判斷的結(jié)果調(diào)用相應(yīng)的子模塊程序;日期數(shù)據(jù)采集子模塊程序完成相應(yīng)的數(shù)據(jù)采集、處理和保存 ,按鍵處理子模塊程序完成日期的設(shè)置,而顯示子模塊程序只要把上述子模塊儲(chǔ)存的數(shù)據(jù)送去顯示即可。程序流程圖液晶模塊內(nèi)部的控制器共有11條控制指令,如表1所示,指令指令碼 說(shuō)明 RS R/W D0 D1 D2 D3 D4 D5 D6 D7 清屏 0000000001清顯示,光標(biāo)回位 光標(biāo)返回 000000001*ADD=0時(shí),回原位 輸入方式 00000001I/DS決定是否移動(dòng)以及移動(dòng)方向 顯示開(kāi)關(guān) 000001DCBD顯示,C光標(biāo),B光標(biāo)閃爍 移位 000001S/CR/L**移動(dòng)光標(biāo)及整體顯示 功能設(shè)置 00001DLNF**DL數(shù)據(jù)位數(shù),N行數(shù),F字體CGRAM地址設(shè)置 0001A5 A4 A3 A2 A1 A0設(shè)置CGRAM的地址DDRAM地址設(shè)置 001A6 A5 A4 A3 A2 A1 A0設(shè)置DDRAM的地址忙標(biāo)志/讀地址計(jì)數(shù)器 01BFAC6 AC5 AC4 AC3 AC2 C1 AC0讀出忙標(biāo)志位(BF)及AC值CGRAM/DDRAM數(shù)據(jù)寫(xiě) 10寫(xiě)數(shù)據(jù)將內(nèi)容寫(xiě)入RAM中CGRAM/DDRAM數(shù)據(jù)讀 11讀數(shù)據(jù)將內(nèi)容從RAM中讀出補(bǔ)充說(shuō)明 I/D:1增量方式、0減量方式S:1位移S/C:1顯示移位、0光標(biāo)移位R/L:1右移、0左移DL:18位、04位N:12行、01行F:15X10字體、05X7字體BF:1正在執(zhí)行內(nèi)部操作、0可接收指令 DDRAM:顯示數(shù)據(jù)RAMCGRAM:字符發(fā)生器RAMACG:CGRAM地址ADD:DDRAM地址及光標(biāo)地址 它的讀寫(xiě)操作、屏幕和光標(biāo)的操作都是通過(guò)指令編程來(lái)實(shí)現(xiàn)的。(說(shuō)明:1為高電平、0為低電平)指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置 指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H 指令3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動(dòng)方向,高電平右移,低電平左移S: 屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無(wú)效 指令4:顯示開(kāi)關(guān)控制。 D:控制整體顯示的開(kāi)與關(guān),高電平表示開(kāi)顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開(kāi)與關(guān),高電平表示有光標(biāo),低電平表示無(wú)光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍 指令5:光標(biāo)或顯示移位 S/C:高電平時(shí)移動(dòng)顯示的文字,低電平時(shí)移動(dòng)光標(biāo) 指令6:功能設(shè)置命令 DL:高電平時(shí)為4位總線,低電平時(shí)為8位總線 N:低電平時(shí)為單行顯示,高電平時(shí)雙行顯示 F: 低電平時(shí)顯示5x7的點(diǎn)陣字符,高電平時(shí)顯示5x10的點(diǎn)陣字符 指令7:字符發(fā)生器RAM地址設(shè)置 指令8:DDRAM地址設(shè)置 指令9:讀忙信號(hào)和光標(biāo)地址 BF:忙標(biāo)志位,高電平表示忙,此時(shí)模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。 指令10:寫(xiě)數(shù)據(jù) 指令11:讀數(shù)據(jù) 液晶顯示模塊是一個(gè)慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時(shí)要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,表2是HS1624的內(nèi)部顯示地址.顯示位置12345678910111213141516第1行808182838485868788898A8B8C8D8E8F第2行C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF即,第1行的顯示地址應(yīng)為:80H+顯示位置;第2行的顯示地址應(yīng)為:C0H+顯示位置。2. 控制器接口時(shí)序說(shuō)明(HD44780及兼容芯片)讀操作時(shí)序?qū)懖僮鲿r(shí)序3. 液晶程序 時(shí)鐘模塊設(shè)計(jì)對(duì)年、月、1時(shí)、分、秒進(jìn)行計(jì)時(shí) DS1302所進(jìn)行的一切工作必須先由 CPU向 DS1302發(fā)送命令字節(jié),命令字節(jié)格式如圖 3所示。各位定義如下:命令字節(jié)的最高位 7必須為 “1”,否則禁止對(duì) DS1302進(jìn)行操作。第 6位是時(shí) 鐘/日歷或 RAM 選擇位,如它為 “1,可對(duì) 內(nèi)部 RAM讀寫(xiě),如它為“0”可對(duì)時(shí)鐘/日歷操作。此處所謂 日歷型數(shù)據(jù)即數(shù)據(jù)格式為壓縮型 BCD碼,且數(shù)值必須在它的定義域內(nèi);例如,“月份”的定義域 為 1~12,“秒”的定義域?yàn)?0~59等等。所謂RAM 型數(shù)據(jù) 即指一般 16進(jìn)制數(shù)據(jù)。位 5至位 1為 DS1302內(nèi)部寄存器地址。
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1