基于Atmel-View的電子相框?qū)崿F(xiàn)
0 引言
本文引用地址:http://www.ex-cimer.com/article/167067.htm電子相框作為一種以數(shù)字照片的保存、回放和瀏覽為核心功能的產(chǎn)品,迎合了消費(fèi)者的需求。電子相框結(jié)合液晶顯示技術(shù)、電視技術(shù)、數(shù)字存儲(chǔ)技術(shù),日益成為面向時(shí)尚個(gè)性的數(shù)碼相機(jī)、數(shù)碼攝像的最佳伴侶。隨著核心器件NandFlash和LCD屏的降價(jià),必將進(jìn)一步刺激電子相框的市場需求。
1 AT76C120處理器簡介
本設(shè)計(jì)采用Atmel公司的AT76C120體系結(jié)構(gòu)來構(gòu)建應(yīng)用。此架構(gòu)采用ARM7TDMI CPU最大頻率78MHz,支持JPG圖片瀏覽、MP3音頻功能、MPEG視頻功能、可遙控電視功能,USB2.0接口和各類閃存卡的支持等,是一款高性能的數(shù)碼圖像和視頻的處理體系。
2 Atmel-View框架分析
Atmel-View是Atmel公司為AT76C120開發(fā)板定制的應(yīng)用程序,它已提供所有功能的低層次實(shí)現(xiàn),是一套成熟的可擴(kuò)展的Application解決方案。其與Command Shell、底層驅(qū)動(dòng)Lib共同構(gòu)成整個(gè)軟件系統(tǒng)。
Command Shell主要用于動(dòng)態(tài)非編譯功能調(diào)試,在程序運(yùn)行時(shí)直接通過串口進(jìn)行命令操作,這樣大大降低開發(fā)過程的調(diào)試時(shí)間,是便捷有效的輔助開發(fā)手段。
各驅(qū)動(dòng)模塊的API主要由底層驅(qū)動(dòng)Lib 來實(shí)現(xiàn)。Atmel-View的功能實(shí)現(xiàn)主要是基于Lib中API的運(yùn)用和組織。表1列出了Atmel-View中相關(guān)模塊及其功能。
表1 Atmel-View相關(guān)功能模塊
模塊 | 功能 |
DCF模塊 | 提供文件操作相關(guān)功能函數(shù) |
Font模塊 | 作為字庫,以頭文件形式加載 |
Infrared模塊 | 提供紅外遙控器控制的相關(guān)功能函數(shù) |
Main模塊 | 系統(tǒng)初始化工作和程序主入口 |
Menu模塊 | 菜單系統(tǒng)的實(shí)現(xiàn) |
Mp3模塊 | 提供Mp3播放功能的實(shí)現(xiàn) |
Ppt模塊 | 提供文件夾、文件列表功能的實(shí)現(xiàn) |
Setting模塊 | 對于各項(xiàng)功能參數(shù)的設(shè)定在此模塊記錄和讀取 |
Strings模塊 | 記錄對應(yīng)于菜單項(xiàng)的各項(xiàng)功能和其他功能的字符串值 |
View模塊 | 提供圖片瀏覽、圖片幻燈和視頻播放等功能的實(shí)現(xiàn) |
Bmp-icons模塊 | 以頭文件形式存儲(chǔ)所有圖標(biāo)圖片轉(zhuǎn)換成的對象 |
board_sh120ek模塊 | 卡板初始化驅(qū)動(dòng)相關(guān) |
3 功能概述及流程
基于Atmel-View的電子相框應(yīng)用主要提供如下功能:
JPEG圖片瀏覽、JPEG圖片幻燈放映、JPEG縮略圖模式瀏覽、對各類卡的讀寫支持、MP4視頻放映、MP3背景音樂、MP3播放器、文件和文件夾瀏覽。
在上述功能基礎(chǔ)上需要在UI上加以組織、整合,并面向新的需求進(jìn)行實(shí)現(xiàn)。圖2所示為帶有藍(lán)牙模塊支持的UI功能流程圖,分析了基于Atmel-View的UI過程。流程圖1從電子相框啟動(dòng)開始到各個(gè)功能結(jié)點(diǎn)為止把整個(gè)菜單系統(tǒng)的框架和基本內(nèi)容給勾勒了出來。首先進(jìn)行藍(lán)牙模塊的初始化工作,設(shè)置卡上默認(rèn)文件傳輸位置。隨后,搜索存儲(chǔ)卡中Jpeg文件,開始幻燈放映,放映幻燈期間若有藍(lán)牙傳輸請求則在圖片切換間隙掛起Atmel-View進(jìn)程(防止資源重入沖突),傳輸結(jié)束繼續(xù)放映直至用戶退出播放。之后將正式從Main模塊進(jìn)入菜單系統(tǒng)模塊,啟動(dòng)菜單包含了3個(gè)子菜單:選卡菜單、系統(tǒng)設(shè)置菜單和藍(lán)牙設(shè)置菜單。選卡菜單項(xiàng)包括卡板所支持的所有存儲(chǔ)卡項(xiàng),選擇已插的存儲(chǔ)卡項(xiàng)進(jìn)入下級(jí)功能菜單。功能菜單項(xiàng)提供圖片、Mp3、視頻、文件瀏覽這4項(xiàng)功能。系統(tǒng)設(shè)置菜單主要進(jìn)行全局的配置設(shè)定:語言設(shè)定、幻燈效果設(shè)定、背景音樂(開/關(guān))設(shè)定。藍(lán)牙設(shè)置菜單進(jìn)行藍(lán)牙模塊的設(shè)置和啟用?!伴_/關(guān)”項(xiàng)決定是否啟用藍(lán)牙傳輸; “設(shè)用戶名”項(xiàng)利用軟鍵盤設(shè)置本設(shè)備藍(lán)牙名稱。
流程圖2具體就圖片瀏覽功能模塊進(jìn)行了流程刻畫。存儲(chǔ)卡中有Jpeg圖片,則首先進(jìn)入Thumbnail模式,一頁顯示多幅圖片的縮略圖。期間接受藍(lán)牙傳輸請求并進(jìn)行相應(yīng)處理。然后進(jìn)行全屏圖片瀏覽,手動(dòng)切換圖片。在Thumbnail模式及圖片瀏覽過程可調(diào)出設(shè)置菜單,進(jìn)行幻燈效果、文件操作、文件排序等功能,設(shè)置幻燈切圖間隔和啟動(dòng)幻燈放映也在此菜單項(xiàng)中。
流程圖3簡要描繪了在菜單(菜單都通過MenuMode來調(diào)用)過程中和藍(lán)牙模塊間的交互方式。在進(jìn)行按鍵響應(yīng)操作流程前,先和藍(lán)牙模塊進(jìn)程間通信,監(jiān)聽藍(lán)牙傳輸請求。若有藍(lán)牙傳輸請求,則提示藍(lán)牙傳輸進(jìn)行中并等待藍(lán)牙文件傳輸(藍(lán)牙傳輸受紅外遙控模塊影響,所以傳輸過程關(guān)閉紅外接收不進(jìn)行按鍵響應(yīng),至傳輸完畢開啟紅外接收)。
圖3 帶藍(lán)牙模塊UI功能流程
電磁爐相關(guān)文章:電磁爐原理
評(píng)論