程序和小訣竅
發(fā)布時(shí)間:2012/6/13 19:56:47 訪問(wèn)次數(shù):1021
LCD有三個(gè)顯示界面:開(kāi)機(jī)界面小小收音機(jī),日歷鐘界XC18V02VQ44C面和收音機(jī)控制界面見(jiàn)圖7。開(kāi)機(jī)后如果未按下S6顯示開(kāi)機(jī)界面,否則顯示日歷鐘界面。在開(kāi)機(jī)界面時(shí)如果按下調(diào)臺(tái)鍵S1或搜臺(tái)鍵S2則切換到收音機(jī)界面,它顯示收音有關(guān)信息。S1~S5鍵的功能在兩個(gè)界面不一樣,程序中鍵處理是要執(zhí)行對(duì)收音機(jī)控制功能還是日歷鐘的設(shè)定功能取決于S6鍵是彈起還是按下?tīng)顟B(tài)。另外顯示界面數(shù)據(jù)更新也是由它決定:彈起為更新收音機(jī)界面數(shù)據(jù),按下為更新日歷鐘界面數(shù)據(jù)。而幾個(gè)界面具有共同的位于LCD最下方的日歷時(shí)間行,它的數(shù)據(jù)總是要更新。所以,程序中關(guān)于數(shù)據(jù)更新部分較多。在界面圖形繪制上是采用基本頁(yè)列坐標(biāo)寫數(shù)的辦法,在H_ASHROM中的專漠表中按需要建立一些自編的符號(hào)和漢字,例如立體聲就是一架錄放機(jī),真臺(tái)就是一個(gè)三單元天線等,按讀取收音機(jī)模塊狀態(tài)寄存器的結(jié)果顯示。而那個(gè)調(diào)頻模擬刻度指針是這樣制作的:由于調(diào)頻接收范圍87—108MHz,按lOOkHz間隔搜索(這個(gè)在5807編程中已經(jīng)設(shè)定好),那么從87.0~108.0最多有(108-87)×10=210個(gè)頻率點(diǎn),液晶水平只有1 28個(gè)像素點(diǎn),就是每點(diǎn)一個(gè)頻率也放不下。所以取210的一半就是1 05個(gè)像素點(diǎn),每點(diǎn)代表兩個(gè)頻率,就按這樣在第1頁(yè)位置畫出標(biāo)尺。
標(biāo)尺起點(diǎn)位于14點(diǎn)處。畫調(diào)諧模擬指針就是根據(jù)每次按調(diào)諧鍵S1或搜索鍵S2操作5807調(diào)臺(tái)或搜臺(tái)后,從5807讀出頻率點(diǎn)chanl,把它除以2后的值作為指針的劃線位置,就可以畫出指針了。也就是:
Pin=chanl》l:
LcdSewy(Pin, 2)∥在第2頁(yè)畫指針
LcdWriData(Oxfe):
模擬指針位置是標(biāo)度尺下邊也就是第2頁(yè),當(dāng)然在劃線前先進(jìn)行一次擦除原有指針的操作。界面中信號(hào)強(qiáng)度指示和音量指示的方法和頻率刻度類似,涉及數(shù)量少,就不多說(shuō)了。
程序中關(guān)于存臺(tái)和回放的實(shí)現(xiàn):載用的辦法是,搜索到電臺(tái)以后,在M8的EEPROM中把電臺(tái)的上述頻率點(diǎn)按先后存起來(lái),存放地址是Ox10—Ox19.可以存10個(gè)臺(tái)。在Oxla單元存放存臺(tái)位置,就是下一個(gè)存臺(tái)單元地址(存臺(tái)指針)。那么按下存臺(tái)鍵以后,先在Oxla讀出存臺(tái)指針,然后按指針位置把頻率點(diǎn)寫入EEPROM.也寫入新的存臺(tái)指針。當(dāng)存滿10個(gè)臺(tái)后,繼續(xù)存就又從Oxl0開(kāi)始。回放則是順序循環(huán)讀出Oxl0—Ox19中的頻率點(diǎn),再調(diào)諧到備點(diǎn)就行了。當(dāng)然在編程中一定要設(shè)定熔絲位BOD,使EEPROM在斷電時(shí)能可靠保護(hù)數(shù)據(jù)。
標(biāo)尺起點(diǎn)位于14點(diǎn)處。畫調(diào)諧模擬指針就是根據(jù)每次按調(diào)諧鍵S1或搜索鍵S2操作5807調(diào)臺(tái)或搜臺(tái)后,從5807讀出頻率點(diǎn)chanl,把它除以2后的值作為指針的劃線位置,就可以畫出指針了。也就是:
Pin=chanl》l:
LcdSewy(Pin, 2)∥在第2頁(yè)畫指針
LcdWriData(Oxfe):
模擬指針位置是標(biāo)度尺下邊也就是第2頁(yè),當(dāng)然在劃線前先進(jìn)行一次擦除原有指針的操作。界面中信號(hào)強(qiáng)度指示和音量指示的方法和頻率刻度類似,涉及數(shù)量少,就不多說(shuō)了。
程序中關(guān)于存臺(tái)和回放的實(shí)現(xiàn):載用的辦法是,搜索到電臺(tái)以后,在M8的EEPROM中把電臺(tái)的上述頻率點(diǎn)按先后存起來(lái),存放地址是Ox10—Ox19.可以存10個(gè)臺(tái)。在Oxla單元存放存臺(tái)位置,就是下一個(gè)存臺(tái)單元地址(存臺(tái)指針)。那么按下存臺(tái)鍵以后,先在Oxla讀出存臺(tái)指針,然后按指針位置把頻率點(diǎn)寫入EEPROM.也寫入新的存臺(tái)指針。當(dāng)存滿10個(gè)臺(tái)后,繼續(xù)存就又從Oxl0開(kāi)始。回放則是順序循環(huán)讀出Oxl0—Ox19中的頻率點(diǎn),再調(diào)諧到備點(diǎn)就行了。當(dāng)然在編程中一定要設(shè)定熔絲位BOD,使EEPROM在斷電時(shí)能可靠保護(hù)數(shù)據(jù)。
LCD有三個(gè)顯示界面:開(kāi)機(jī)界面小小收音機(jī),日歷鐘界XC18V02VQ44C面和收音機(jī)控制界面見(jiàn)圖7。開(kāi)機(jī)后如果未按下S6顯示開(kāi)機(jī)界面,否則顯示日歷鐘界面。在開(kāi)機(jī)界面時(shí)如果按下調(diào)臺(tái)鍵S1或搜臺(tái)鍵S2則切換到收音機(jī)界面,它顯示收音有關(guān)信息。S1~S5鍵的功能在兩個(gè)界面不一樣,程序中鍵處理是要執(zhí)行對(duì)收音機(jī)控制功能還是日歷鐘的設(shè)定功能取決于S6鍵是彈起還是按下?tīng)顟B(tài)。另外顯示界面數(shù)據(jù)更新也是由它決定:彈起為更新收音機(jī)界面數(shù)據(jù),按下為更新日歷鐘界面數(shù)據(jù)。而幾個(gè)界面具有共同的位于LCD最下方的日歷時(shí)間行,它的數(shù)據(jù)總是要更新。所以,程序中關(guān)于數(shù)據(jù)更新部分較多。在界面圖形繪制上是采用基本頁(yè)列坐標(biāo)寫數(shù)的辦法,在H_ASHROM中的專漠表中按需要建立一些自編的符號(hào)和漢字,例如立體聲就是一架錄放機(jī),真臺(tái)就是一個(gè)三單元天線等,按讀取收音機(jī)模塊狀態(tài)寄存器的結(jié)果顯示。而那個(gè)調(diào)頻模擬刻度指針是這樣制作的:由于調(diào)頻接收范圍87—108MHz,按lOOkHz間隔搜索(這個(gè)在5807編程中已經(jīng)設(shè)定好),那么從87.0~108.0最多有(108-87)×10=210個(gè)頻率點(diǎn),液晶水平只有1 28個(gè)像素點(diǎn),就是每點(diǎn)一個(gè)頻率也放不下。所以取210的一半就是1 05個(gè)像素點(diǎn),每點(diǎn)代表兩個(gè)頻率,就按這樣在第1頁(yè)位置畫出標(biāo)尺。
標(biāo)尺起點(diǎn)位于14點(diǎn)處。畫調(diào)諧模擬指針就是根據(jù)每次按調(diào)諧鍵S1或搜索鍵S2操作5807調(diào)臺(tái)或搜臺(tái)后,從5807讀出頻率點(diǎn)chanl,把它除以2后的值作為指針的劃線位置,就可以畫出指針了。也就是:
Pin=chanl》l:
LcdSewy(Pin, 2)∥在第2頁(yè)畫指針
LcdWriData(Oxfe):
模擬指針位置是標(biāo)度尺下邊也就是第2頁(yè),當(dāng)然在劃線前先進(jìn)行一次擦除原有指針的操作。界面中信號(hào)強(qiáng)度指示和音量指示的方法和頻率刻度類似,涉及數(shù)量少,就不多說(shuō)了。
程序中關(guān)于存臺(tái)和回放的實(shí)現(xiàn):載用的辦法是,搜索到電臺(tái)以后,在M8的EEPROM中把電臺(tái)的上述頻率點(diǎn)按先后存起來(lái),存放地址是Ox10—Ox19.可以存10個(gè)臺(tái)。在Oxla單元存放存臺(tái)位置,就是下一個(gè)存臺(tái)單元地址(存臺(tái)指針)。那么按下存臺(tái)鍵以后,先在Oxla讀出存臺(tái)指針,然后按指針位置把頻率點(diǎn)寫入EEPROM.也寫入新的存臺(tái)指針。當(dāng)存滿10個(gè)臺(tái)后,繼續(xù)存就又從Oxl0開(kāi)始;胤艅t是順序循環(huán)讀出Oxl0—Ox19中的頻率點(diǎn),再調(diào)諧到備點(diǎn)就行了。當(dāng)然在編程中一定要設(shè)定熔絲位BOD,使EEPROM在斷電時(shí)能可靠保護(hù)數(shù)據(jù)。
標(biāo)尺起點(diǎn)位于14點(diǎn)處。畫調(diào)諧模擬指針就是根據(jù)每次按調(diào)諧鍵S1或搜索鍵S2操作5807調(diào)臺(tái)或搜臺(tái)后,從5807讀出頻率點(diǎn)chanl,把它除以2后的值作為指針的劃線位置,就可以畫出指針了。也就是:
Pin=chanl》l:
LcdSewy(Pin, 2)∥在第2頁(yè)畫指針
LcdWriData(Oxfe):
模擬指針位置是標(biāo)度尺下邊也就是第2頁(yè),當(dāng)然在劃線前先進(jìn)行一次擦除原有指針的操作。界面中信號(hào)強(qiáng)度指示和音量指示的方法和頻率刻度類似,涉及數(shù)量少,就不多說(shuō)了。
程序中關(guān)于存臺(tái)和回放的實(shí)現(xiàn):載用的辦法是,搜索到電臺(tái)以后,在M8的EEPROM中把電臺(tái)的上述頻率點(diǎn)按先后存起來(lái),存放地址是Ox10—Ox19.可以存10個(gè)臺(tái)。在Oxla單元存放存臺(tái)位置,就是下一個(gè)存臺(tái)單元地址(存臺(tái)指針)。那么按下存臺(tái)鍵以后,先在Oxla讀出存臺(tái)指針,然后按指針位置把頻率點(diǎn)寫入EEPROM.也寫入新的存臺(tái)指針。當(dāng)存滿10個(gè)臺(tái)后,繼續(xù)存就又從Oxl0開(kāi)始;胤艅t是順序循環(huán)讀出Oxl0—Ox19中的頻率點(diǎn),再調(diào)諧到備點(diǎn)就行了。當(dāng)然在編程中一定要設(shè)定熔絲位BOD,使EEPROM在斷電時(shí)能可靠保護(hù)數(shù)據(jù)。
上一篇:元件選擇
上一篇:各元件調(diào)試
熱門點(diǎn)擊
- 電磁轉(zhuǎn)差離合器
- 正向傳輸導(dǎo)納yfS的頻率特性例
- 使用PNP晶體管的渥爾曼電路
- 功率損耗的計(jì)算
- 采用達(dá)林頓連接的高輸入阻抗放大電路
- 共發(fā)射極放大電路的工作點(diǎn)
- 高增益、高輸入阻抗放大電路
- 采用光MOS的模擬開(kāi)關(guān)
- 源極跟隨器+OP放大器
- 電動(dòng)機(jī)的無(wú)功補(bǔ)償
推薦技術(shù)資料
- 硬盤式MP3播放器終級(jí)改
- 一次偶然的機(jī)會(huì)我結(jié)識(shí)了NE0 2511,那是一個(gè)遠(yuǎn)方的... [詳細(xì)]
- 全集成直接飛行時(shí)間(dToF)傳感器
- 2025年半導(dǎo)體市場(chǎng)發(fā)展趨勢(shì)未
- GW2A系列FPGA芯片應(yīng)用參數(shù)
- DDR類儲(chǔ)存器接口解決方案
- 2.5G bps MIPI D
- 新一代 Arora-V系列FPGA產(chǎn)品詳情
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究