<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于單片機利用無(wú)字庫12864液晶模塊自制日歷

基于單片機利用無(wú)字庫12864液晶模塊自制日歷

作者: 時(shí)間:2012-10-08 來(lái)源:網(wǎng)絡(luò ) 收藏

編程

電路雖然簡(jiǎn)單,但是要讓不帶的LCD、1302在M8的統一領(lǐng)導下有條不紊地工作,所以具體編程必須解決以下問(wèn)題。

圖7程序流程

1、讓時(shí)鐘走動(dòng)起來(lái),而且可以通過(guò)按鍵設定或修改當前數據。

2、讓顯示時(shí)鐘芯片當前提供的信息:年月日時(shí)分秒,兩個(gè)顯示界面的按時(shí)刷新。

3、制作字模和圖形界面編程。

以上第1點(diǎn),就是用M8控制1302。我們可以按照它的時(shí)序要求編列一些函數,另外在程序中建立—個(gè)數組DateTme[7]用來(lái)存放從1302讀出的年月日時(shí)分秒,作為數據刷新依據;第2點(diǎn),主要是在LED上顯示這個(gè)數組當前的數據(要注意1302存放日期時(shí)間的格式是BCD碼,所以存取之前必須先進(jìn)行數制轉換)。數據刷新實(shí)際上就是查詢(xún)1302當前“秒”是否等于上次查詢(xún)結果,如不等于則已經(jīng)過(guò)去1秒,在數組記下新秒,刷新顯示“秒”-當然是1秒刷新一次;而且當秒更新為O日寸要更新“分”……·以此類(lèi)推。第3點(diǎn)上次已有敘述使用,畔畔字模的方法,其中編制了8 x 8小數字、1 2×16數字、16×1 6漢字幾種字模用于不同的顯示位置,另外有個(gè)小雞啄米的動(dòng)畫(huà),可以在16點(diǎn)陣字模工具中用鼠標點(diǎn)擊,分別畫(huà)出小雞低頭和小雞抬頭兩個(gè)圖案,在秒刷新時(shí)交替顯示即可。用字模軟件制作好所需的字模后,把所有常量字模數組定義放在頭文件miniClock中,這些數組全部放在FLASH區。

圖形界面的模擬指示針、刻度的制作也不困難,只要事先規劃出水平刻度長(cháng)度,起點(diǎn)和終點(diǎn)坐標畫(huà)出水平線(xiàn),垂直刻度則按照刻度位置畫(huà)出短垂直線(xiàn),指示地則是在刻度上方或下方垂直直線(xiàn),它的位置要計算好,根據時(shí)間數據刷新而改變。

標題“小小鐘”是個(gè)漢字串,用一個(gè)漢字串顯示函數Vold show-string1616(ucharx,uchary,uchar * string,uchar string_length);參數是顯示起始列、頁(yè)、字串指針、字串長(cháng)度,同時(shí)要事先定義—個(gè)以上指針所指的字串數組,此數組的元素是待顯示的字模在字模數組的位置。

整個(gè)程序流程見(jiàn)圖7,左遠是主流程,右邊是年日月時(shí)分秒更新流程。

調試

硬件焊好后,反復檢查無(wú)誤 不插M8、1302和LCD鋰電池,插上穩壓小板,接通USB電源,測試M8插座,1302插座,編程口和LCD的VCC電源應為正常3.3V,拆下穩壓斷電,插上鋰電池,1302插座8腳應為2.4V,插上S5并接通,VCC應為3∨,至此電池沒(méi)有問(wèn)題了。拔掉S5,插上M8、和1302,插上穩壓板和USB電源,如果你從末使用過(guò)這種LCD,不妨自己先編制一些小程序(例如啟動(dòng)、初始化M8和后,用不同的參數運行清屏函數)觀(guān)察液晶顯示是否如同預期,如果沒(méi)有反應要再次檢查程序中對M8引腳定義是否和你的實(shí)際硬件接線(xiàn)一致,這個(gè)小液晶和別的一些液晶不同,不需要硬件調整對比度夏,不會(huì )因此對比度調節不當而不顯示(除非你修改了默認值)。這—關(guān)先過(guò)了再往下走。往M8下載程序,如果一切正常,畫(huà)面會(huì )立即出來(lái)。不過(guò)現在的口期、時(shí)間不對、按動(dòng)S2最下面一行日期時(shí)間的分隔符上會(huì )呈現豎線(xiàn)光標,連續按S2光標會(huì )循環(huán)右移,在光標停下的位置按動(dòng)S1,在上面就會(huì )出現設定值,反復按動(dòng)會(huì )循環(huán)遞增,就這樣逐—調節日期和時(shí)間,如圖5所示。最后按下S3,新的時(shí)間就存入1302了,并能按秒刷新?,F在插上電池,一切就好了。如圖 6所示,可見(jiàn)時(shí)、分已經(jīng)改為新的設定值??梢匀サ舴€壓板,雖然液晶熄滅,可是1302還在悶聲不響地運行,如果你插上開(kāi)關(guān)S5再接通,液晶又亮了。為了節省電池消耗,不要老是開(kāi)著(zhù)它。如同老式懷表,看表前再按開(kāi)蓋子。

單片機相關(guān)文章:單片機教程


單片機相關(guān)文章:單片機視頻教程


單片機相關(guān)文章:單片機工作原理



上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>