




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、摘 要隨著科技的不斷發展,人民對物質生活、精神生活要求的不斷提高,很多最新的服務于人民大眾生活的種種科技產品都隨之出現,電子相冊也隨之誕生。電子相冊是用相關硬件經過加工、焊接而成的區別于軟件類型的電子相冊,它一般由三部分組成:TFT液晶面板,主控芯片,外部相框按鈕。硬件電子相冊有著很多傳統紙質相冊無法比擬的優點:高分辨率,易保存、色彩鮮艷。它擺脫了傳統電子隨著時間流逝,照片色彩褪色、無法辨認的缺點。生動、形象、保存時間長,電子相冊可以設置各種切換模式,從而使照片看起來更具有動感,更能給人美的享受。高級電子相冊還可以單獨為每張照片配置獨立的背景音樂,獨立的現實各種特效,同時電子相冊的保存時間也遠
2、遠大于紙質的相冊,便于再生,不用擔心丟失。由于電子相冊是通過讀取相應格式的圖片顯示在液晶面板上來實現的,從而圖片源可以很方便的在電腦上復制備份,克服了傳統紙質照片的不可再生性。本次畢業設計是基于的單片機電子相冊。本文將從電子相冊概述,功能簡介,硬件電路實現,軟件程序實現等方面來綜合論述電子相冊。本次設計存儲器采用通用的SD卡存儲設備來存儲相應圖片。為了適應SD存儲設備的FAT存儲扇區特點,此次設計采用的SST89E516RD芯片,該芯片有1K的RAM,符合SD每個扇區的需要。關鍵詞: 單片機 SST89E516RD 電子相冊 SD卡 Abstract With the continuous d
3、evelopment of science and technology, the peoples life and the spirit of material life requires unceasing enhancement. A lot of the latest products that serve the people of the public life of all technology products appear and the electronic albums also comes. Electronic album is processed with rela
4、ted hardware and it is different with the software type of electronic albums. It generally consists of three parts: TFT LCD panel ,control chip and external frame button. Hardware electronic albums have many advantages that the traditional paper albums dont have: high resolution, easy to save, brigh
5、t colors. It breaks away from the shortcomings of the traditional electronic albums for example color fading as the time goes by ,hard to identify. It also can set up various switching mode to make the photographs more dynamic and to give us more beauty. Without that , the electronic albums can pres
6、erve for a longer time than the paper albums . Aavanced electronic albums can set the different background music for each photo. Because electionic albums show the photos in the LCD panel by reading the format images ,thus saving the photo is easy and overcome the shortcomings of the traditional alb
7、ums.The graduation design I will realize is the hardware electronic albums. With the so many advantages that the traditional dont have, the electronic albums are instead of the traditional ones step by step. This paper will synthesis elaborates the graduate design in five aspects: the overview of el
8、ectronic albums ,functions, hardware circuit implementation introduction,software program realization, finished thing debugging. This graduation design use the general storage devices-SD card to store the corresponding picture. In order to adapt to the SD storage devices, I choice the SST89E516RD ch
9、ip because it has 1K RAM to meet the needs of the SD card.Keywords:SST89E516RD ;MCU ; Electronic Album;SD Card目 錄摘 要IAbstractII目 錄1引 言3第1章 電子相冊的概述41.1 電子相冊的背景資料4電子相冊的市場前景41.1.2 電子相冊的發展歷程41.2 基于單片機的電子相冊的實現功能概況61.3 基于單片機的電子相冊的設計思路61.3.1 電子相冊的工作原理61.3.2 設計方案的可行性論證6第2章 SST89E516RD單片機概述82.1 SST89E516RD單片
10、機簡介82.2 SST89E516RD引腳介紹82.3 SST89E516RD單片機的內部寄存器112.4 SST89E516RD單片機芯片的原理框圖與各功能模塊圖13第3章 基于單片機的電子相冊的硬件設計153.1 硬件電路總體設計153.2 電子相冊各模塊的電路設計15 電壓轉換電路設計15 晶體振蕩電路設計16 SD卡電路設計16 液晶電路設計18第4章 基于單片機的電子相冊的軟件設計194.1 軟件流程圖194.2 讀寫SD卡子程序設計194.3 液晶控制子程序設計204.4 FAT32結構分析子程序設計204.5 文件處理子程序設計214.6 主程序設計22第5章 基于單片機的電子相
11、冊的系統測試235.1 電子相冊的硬件調試方法235.2 電子相冊的軟件調試方法23總 結24參考文獻25附:基于單片機的電子相冊程序26引 言電子相冊是指能夠不借助于電腦在LCD面板上面顯示數碼照片,還能夠將照片顯示到電視上的高科技電子產品,隨著科技的不斷發展,越來越多的功能集成在電子相冊中,除了播放圖片外,還可以播放MP3,可以邊播放圖片邊聽MP3,它又有一個名稱電子相框,簡易數碼相框只能顯示JPEG格式的圖片,高端的數碼相框則可以播放音樂,同時還可以通過因特網從RSS、照片共享網站甚至電子郵件下載圖片,同時大部分數碼相框可以像幻燈片一樣可調整的時間間隔顯示圖片。電子相冊是傳統紙質相冊的最
12、大的競爭對手,它有著很多傳統電子相冊無法比擬的優點:1.高分辨率,易保存、色彩鮮艷。它擺脫了傳統電子隨著時間流逝,照片色彩褪色、無法辨認的缺點。2.生動、形象、保存時間長。電子相冊可以設置各種切換模式,從而使照片看起來更具有動感,更能給人美的享受。高級電子相冊還可以單獨為每張照片配置獨立的背景音樂,獨立的實現各種特效,同時電子相冊的保存時間也遠遠大于紙質的相冊。3.便于再生,不用擔心丟失。由于電子相冊是通過讀取相應格式的圖片顯示在液晶面板上來實現的,從而圖片源可以很方便的在電腦上復制備份,克服了傳統紙質照片的不可再生性。4.更加的保護環境,順應時代的要求。電子相冊避免了使用紙質來存取照片,而是
13、通過相冊的轉換以數字信息的方式顯示,從而節約了木材資源。電子相冊作為一個新興的電子產品,以其卓越的性能、良好的便攜性以及不斷發展的新技術,必將占據將來相冊行業的半壁江山。因此研究電子相冊具有廣闊的前景和意義. 第1章 電子相冊的概述本章主要介紹了51單片機電子相冊的市場前景和發展現狀以及本設計的可行性,然后側重介紹了此設計的硬件設計和軟件設計的思路。1.1 電子相冊的背景資料電子相冊的市場前景電子相冊是近期隨著科技的不斷發展、人們日常生活所需而隨之產生的新興的的電子產品,目前電子相冊在國外已屬于常見的日常生活所必需的電子產品,在國外家庭已相當普及,技術也日趨成熟。但是在國內,居民對于電子相冊還
14、有點陌生,普及程度遠遠比不上國外,究其原因,我認為有以下幾點:1.價格原因。傳統紙質相冊在深深扎根在人們的日常生活中,價格較之于電子相冊也較容易被接受。普通的紙質相冊一本一般價位在十幾元左右,好的也不會超過百元。而一般的電子相冊價格就會達到好幾百元,這對于普通的家庭是很難接受的。2.推廣力度不夠。電子相冊屬于新興的電子產品,很多用戶,尤其是歲數偏大的人群,跟本就不知道有電子相冊這種電子產品,更不用說較之于傳統相冊的諸多優點了。3.技術成熟度有所不足。國內的電子相冊興起還是近幾年的事情,技術還不夠成熟,用戶可選的牌子也相對較少,所以質量好壞也無從對比。同時技術的尚不成熟也推高了其銷售價格。雖然目
15、前有很多不利因素制約這電子相冊的市場發展,但是隨著技術的不斷進步,電子部件產業的升級,電子相冊的價格再不久的將來肯定會降到一個被人們所接受的程度,同時人們可選的牌子也隨之豐富很多,質量會變得更好。所以我相信電子相冊以其諸多傳統相冊所無法比擬的優點,肯定在將來會占據相冊產業的半壁江山。 電子相冊的發展歷程1.簡單電子相冊最初的電子相冊只具有最簡單的相冊功能。電子相冊剛出現時由于市場前景不明朗,技術尚不成熟,很多功能不健全,此時的電子相冊僅僅只有圖片按照一定時間轉換的功能,而且程序是固化在芯片中,人們不能通過手動來改變轉換時間。同時,由于顯示屏技術的限制,分辨率低,顯示效果不太好。只能讀取本身內存
16、里面的圖片,對常用的u盤,sd/mmc卡等常見存儲器尚不能讀取,這就一定程度上限制了電子相冊的實用性,讀取圖片太少,顯示效果不好,使得電子相冊的市場很小。2.支持外擴展電子相冊支持外擴張電子相冊是最初的電子相冊的升級版本。它克服了電子相冊存儲空間限制的缺點,使得電子相冊的存儲空間大大增加。它支持常用的SD/MMC/MS等常用的存儲介質,同時增加了USB接口,這就大大增加了電子相冊的可用性。U盤是最常用的隨身存取設備,電子相冊增加了USB接口就使得人們可以更加方便的增加或者刪除圖片,人們就可以通過PC從互聯網上下載美麗的圖片到U盤,然后通過U盤顯示在電子相冊上。雖然此時的電子相冊有了一定的改進,
17、但是還有很多的不便,比如圖片沒有特效、不支持背景音樂、顯示效果差等等。3.TFT屏音視頻電子相冊此時的電子相冊經過改進,使得其顯示效果更加的絢麗,同時增加了很多的人性化功能。改進后的電子相冊采用了TFT材質的顯示屏,但是亮度和色飽和度等方面的難題都還未得到解決。考慮到人們的日常所需,此時的電子相冊又增加了對音頻視頻的支持,這使得電子相冊的實用性大大增加,較之于傳統的紙質相冊,它的優點也隨之躍然而出,同時人們此時對電子相冊也有了一定的認可度。雖然增加了音視頻支持,但是支持的音視頻格式少,播放效果不好,不流暢。此時的電子相冊雖然已經有了很大改進,但是諸多的難題還沒有解決。雖然人們對于電子相冊有了一
18、定的認可度,但是由于當時新技術的采用導致了電子相冊價格高昂,人們還不能普遍的接受。4.主流電子相冊此時的電子相冊由TFT屏音視頻相冊改進而來。由于TFT技術的發展,使得電子相冊的顯示效果相比較與上一代有了質的提高。新技術的采用使得屏幕視角更為寬廣,同時亮度和色飽和度等方面的難題也得以完美的解決。非晶硅薄膜晶體管(A-SI)TFT技術的采用,使得TFT的產出良品率和質量都大大提高,這就是使得TFT-LCD的價格大大的降低,電子相冊的價格也隨之大幅度下降,人們對電子相冊的接受程度也大為增加。同時A-SI TFT技術很完美的適應高分辨率的產品需要,使得顯示效果有了驚人的增加,色彩更為艷麗。改進型電子
19、相冊同時也增加了對更多音頻視頻格式的支持,例如MJPEG、MPEG-2、AVI等格式,從而成為如今主流的電子相冊。同時如今的電子相冊也增加了更多的更加人性化的功能,例如 多種圖片切換播放效果、圖片縮放/旋轉、內置高保真音響、紅外遙控等實用的人性化功能。5.未來電子相冊展望隨著當今科技的飛速發展,電子相冊規格也飛速變化。未來時代肯定是智能的時代,電子相冊也會隨著變得更加智能,從某種意義上講已經不是單純的電子相冊,而是電子相冊pc。同時電子相冊也會采用觸摸屏技術,給用戶更好的使用體驗。總之,電子相冊會變得越來越智能,越來越人性,電子相冊的發展前景廣闊。1.2 基于單片機的電子相冊的實現功能概況電子
20、相冊預計要實現的功能是能順利讀取SD卡圖片,然后按照一定的時間間隔顯示在TFT彩色液晶顯示器上,從而來實現一個電子相冊最為基本的功能。本次畢業設計要用到的主要設備是:SD卡,彩色液晶顯示屏,51單片機。經過分析,設計具備上面所述功能的電子相冊主要需要解決3個問題:1.SD卡如何讀取;2.文件系統匹配;3.液晶驅動問題。1.3 基于單片機的電子相冊的設計思路硬件方面我采用32MSD卡,芯片采用型號為SST89E516RD型芯片,2.8存8位液晶顯示器。之所以選取SST89E51類型芯片是考慮到SD扇區匹配問題。先制作最小系統,然后在按照原先設計電路圖添加焊接元器件。本次設計用的是6*11的萬用版
21、。程序設計開發使用常用的51系列開發軟件Keil uVision3。整個軟件劃分為若干模塊,分別調試,最后集成。具體軟件模塊主要有:SD讀取模塊、文件系統模塊、液晶驅動模塊、主程序模塊等。 電子相冊的工作原理單片機電子相冊由單片機、SD卡、液晶顯示器等單元組成。主要完成SD卡與單片機之間的通信。它也是以51系列單片機為核心,配以相應硬件電路,完成圖片定時顯示切換功能。 設計方案的可行性論證電子相冊我選用SST89E516RD單片機作為主控制芯片。它有1k的內部RAM,有硬件SPI接口,最高可用40M晶振。單片機的SPI接口可以設置為4分頻,也就是10MBPS,這就是SD卡和單片機之間的工作速度
22、。在看看一張圖片的數據量,一張圖片的數據大小為320*240*24=225KB,那么這個速度足可以每秒播放45張圖片,所以播放的流暢度有保障。單片機的外圍元件組成了51最小系統。最后用了一個SD/MMC卡槽,方便插入SD/MMC卡,液晶屏幕采用的是2.8寸的彩色液晶屏幕。其中彩色液晶用于圖像的顯示,SD/MMC卡槽用于插入存儲設備,51單片機最小系統用于控制和播放圖像。使用時將SD/MMC卡格式化為FAT32文件系統,然后將BMP格式圖片復制到SD/MMC卡,即可以自動播放。綜上所述,以上方案和技術路線可行。第2章 SST89E516RD單片機概述2.1 SST89E516RD單片機簡介單片機
23、是一種集成在電路芯片,是采用超大規模集成電路技術把具有數據處理能力的中央處理器CPU隨機存儲器RAM、只讀存儲器ROM、多種I/0口和中斷系統、定時器/計時器等功能(可能還包括顯示驅動電路、脈寬調制電路、模擬多路轉換器、A/D轉換器等電路)集成到一塊硅片上構成的一個小而完善的計算機系統。本次畢業設計采用的是SST89E516RD系列單片機,該單片機有1K RAM,可以滿足SD卡對扇區大小的要求。該單片機具有如下特征:a.通用8位8051系列兼容微處理器。與8051的軟件完全兼容,開發工具兼容,封裝與引腳兼容;b.內部RAM共有1K;c.256B 寄存器/數據RAM;d.內含兩塊superfla
24、sh 存儲器(eeprom);e.支持對大64K外部程序和數據存儲空間;f.P1的5、6、7等三個引腳可驅動最大電流(每個可達16ma);g.3個16位定時/計數器(T0,T1,T2);h.標準的每個指令周期12個時鐘,也可以倍頻,以實現每個指令周期6個時鐘;i.TTL和CMOS電平全兼容;j.省電模式(idle 模式 和 powerdown模式,并由外部中斷喚醒)。2.2 SST89E516RD引腳介紹SST89E516RD單片機有40個引腳,大致可以分為四類:電源、時鐘、控制和I/O引腳。以下是單片機引腳(硬件電路中使用的引腳)的簡要說明:1.電源引腳VDD:主電源接+3.3V - +5V
25、。 VSS:接地。2.時鐘電路引腳XTAL1 和XTAL2 XTAL1、XTAL2(19腳、18腳):分別接外部晶體振蕩器的兩端,19引腳片內是反相振蕩發達器輸入和內部時鐘發生電路輸入端。18腳片內是振蕩電路反相放大器的輸出端。 3.控制信號PSEN、ALE/PROG 、EA/VPP和RST PSEN(29腳):程序存儲使能端。是對外部程序的讀選通脈沖,當執行內部程序存儲器時,PSEN被激活(高)。當執行外部程序存儲器代碼時PSEN每個機器周期被激活兩次,除了在每次訪問外部數據存儲器兩個激活被忽略。當RST連續保持高電平或超過10個機器周期,PSEN從高變低的變化使得單片機進入外部主機模式編程
26、狀態。ALE/PROG(30腳):地址鎖存使能端。在訪問外部存儲器時輸出脈沖鎖存地址的低字節。該引腳也是在FLASH編程的脈沖輸入并可用作外部時鐘或者定時。注意每次訪問外部數據時,一個ALE脈沖將被忽略。ALE可以通過置位SFR的auxlilary.0禁止,置位后ALE只能在執行MOVE指令時被激活。EA/VPP(31腳):外部尋址使能端。在訪問整個外部程序存儲器時EA必須外部置低,如果EA為高時將執行內部程序。RST(47腳):復位端。當晶振在運動中,只要復位管腳出現2個機器周期高電平即可復位單片機。當RST輸入高電平時,如果PSEN從高變成低,單片機將外部主機模式,否則進入普通運行模式。4
27、.輸入/輸出引腳P0、P1、P2、P3口 P0.0P0.7(3932腳):八位雙向I/O端口,當作輸出口時每個引腳可以接受LS TTL 電平輸入,可以寫為1使其狀態為懸浮用做高阻輸入。P0也可以在訪問外部程序存儲器時作地址的低字節,在訪問外部數據存儲器時作數據總線,此時通過內部強上拉輸出1。P0在外部主機模式編程時接收代碼,外部主機模式校驗是輸出代碼。在編程校驗或是當作通用I/O口時需要外接上拉。P1.0P1.7(310腳): P1是8位帶內部上拉的雙向I/O口,P1輸出可以驅動LS TTL輸入。向P1口寫入1時P1口被內部上拉為高電平,可用作輸入口。當作為輸入腳時被外部拉低的P1口會因為內部
28、上拉而輸出電流。P15,6,7可以驅動16mA的大電流。P1口在外部主機模式編程和校驗時接收低位地址數據。 P2.0P2.7(2128腳):P2口時8位帶內部上拉的雙向I/O口。向P2口寫入1時P2口被內部上拉為高電平,可用作輸入口。當作為輸入腳時,被外部拉低的P2口會因為內部上拉而輸出電流。在訪問外部程序存儲器和外部數據時分別作為地址高字節和16位地址,此時通過內部強上拉傳送1。P2口在外部主機模式編程和校驗時接收一些控制信號和部分的高位地址數據。 P3.0P3.7(25-32腳):P3口時8位帶內部上拉的雙向I/O口。P3口輸出緩沖器可以驅動LS TTL輸入。向P3口寫入1時P3口被內部上
29、拉為高電平,可用作輸入口。當作為輸入腳時,被外部拉低的P3口會因為內部上拉而輸出電流。P3口在外部主機模式編程和校驗時接收一些控制信號和部分的高地址數據。引腳圖如圖2.1所示:圖2.1 單片機引腳圖2.3 SST89E516RD單片機的內部寄存器SST89E516RD內部CPU是一個字長為二進制8位的中央處理單元,也就是說它對數據的處理是按字節為單位進行的。與微型計算機CPU類似,SST89E516RD內部CPU也是由運算器(ALU)、控制器(定時控制部件等)和專用寄存器組三部分構成。1.算術邏輯部件(ALU)算數邏輯單元的全稱是Arithmetic Logic Unit,是處理器中一個功能模
30、塊,用來執行諸如加減乘除以及寄存器中的值之間的邏輯運算,通常在一般的處理器上被設成一個周期運行一次上升沿。SST89E516RD的ALU是一個性能極強的運算器,它既可以進行加、減、乘、除四則運算,也可以進行與、或、非、異或等邏輯運算,還具有數據傳送、移位、判斷和程序轉移等功能。SST89E516RD ALU為用戶提供了豐富的指令系統和極快的指令執行速度,大部分指令的執行時間為1微妙,乘法指令可達4微妙。2.定時控制部件定時控制部件起著控制器的作用,由定時控制邏輯、指令寄存器和振蕩OSC等電路組成。指令寄存器IR用于存放從程序存儲器中取出的指令碼,定時控制邏輯用于對指令寄存器中的指令碼進行譯碼,
31、并在OSC的配合下產生執行指令的時序脈沖,以完成相應指令的執行。3.專用寄存器組專用寄存器組主要用來指示當前要執行指令的內存地址、存放操作數和指示指令執行后的狀態等。它是任何一臺計算機的CPU不可缺少的的組成部件,其他寄存器的多因機器型號的不同而異。專用寄存器組主要包括程序計數器PC、累加器A、程序狀態字PSW、堆棧指示器SP、數據指針DPTR和通用寄存器B等。4.程序計數器PC程序計數器PC是一個二進制16位的程序地址寄存器,專門用來存放下一條需要執行指令的內存地址,能自動加1。5.累加器A累加器A又記作ACC,是一個具有特殊用途的二進制8位寄存器,專門用來存放操作數或運算結果。在CPU執行
32、某種運算前,兩個操作數中的一個通常應放在累加器A中,運算完成后累加器A中便可以得到運算結果。6.通用寄存器B通用寄存器B是專門為乘法和除法設置的寄存器,也是一個二進制8位的寄存器,由8個觸發器組成。該寄存器在乘法或除法前用來存放乘數或除數,在乘法或除法完成后用于存放乘積的高8位或除法的余數。7.程序狀態字PSWPSW是一個8位標志寄存器,用來存放指令執行后的有關狀態。PSW中各位的狀態通常是在指令執行過程中自動形成的,但也可以由用戶根據需要采用傳送指令加以改變。8.數據指針DPTR數據指針DPTR是一個16位的寄存器,由兩個寄存器DPH和DPL拼成。其中DPH為DPTR的高8為,DPL為DPT
33、R的低8位。DPTR可以用來存放片內ROM的地址,也可以用來存放片外RAM和片外ROM的地址。9.堆棧指針SP堆棧指針SP是一個8位寄存器,能自動加1或減1,專門用來存放堆棧的棧頂地址。遵循“先進后出”或者“后進先出”的原則。2.4 SST89E516RD單片機芯片的原理框圖與各功能模塊圖圖2.2 89e516rd單片機的內部結構SPI接口說明:SPI接口讓MCU和外圍器件或MCU之間做高速同步數據傳送。公用四根線進行數據傳輸:CS片選線、CLK時鐘線、DATI數據輸入引腳、DATOUT數據輸入引腳。SPI通道是定向的字節,每個命令或者數據快都是由8位字節構成,類似SD卡協議,SPI包含了命令
34、、相應和數據塊。如下圖表示SPI主器件和從器件的通信。SCK腳是主模塊的時鐘輸出或從模塊的輸入。寫主器件的SPI數據寄存器后開始產生SPI時鐘。寫入的數據從主器件的MOSI腳轉換到MOSI腳。一個字節數據發送完成后,SPI時鐘發生器將停止,SPIF置位。如果SPI中斷位SPIE和串口中斷使能位ES都置1,將產生SPI中斷請求。外部主器件驅動從模式選擇輸入腳SS#P14為低,SPI模塊變為從模塊。如圖2.3、圖2.4所示是SPI格式圖:圖2.3 CPHA=0時SPI傳輸格式圖2.4 CPHA=1時SPI傳輸格式看門狗定時器:單片機內部有一個可編程的看門狗(WDT),用來防止軟件的死鎖和自動保護,
35、為了保護系統,防止軟件的死鎖。如圖2.5所示是WDT的方框:圖2.5看門狗定時器方框圖第3章 基于單片機的電子相冊的硬件設計本次設計的硬件電路由單片機主控模塊,電源轉化、SD卡模塊、液晶模塊等組成。先從總體電路設計入手,然后詳細介紹各個部分的設計。3.1 硬件電路總體設計硬件設計是整個系統的基礎,要考慮的方方面面很多,硬件設計至關重要,除了實現此設計基本功能以外,主要還要考慮如下幾個因素:1.系統穩定度;2.器件的通用性或易選購性;3.軟件編程的易實現性;4.系統其它功能及性能指標。總體設計流程圖:根據題目要求系統可以分為以下幾個基礎模塊,如圖3.1所示:SST89E516D圖片成功顯示圖片成
36、功顯示電源SD程序液晶驅動文件系統圖3.1硬件總體設計流程圖3.2 電子相冊各模塊的電路設計 電壓轉換電路設計存儲器SD卡與彩色液晶顯示器的工作電壓為3.3v,單片機SST89E516RD工作電壓為5v,使用USB供電的電壓輸出為5v。那么3.3v的電壓就得由電壓轉換而得,轉換方面我使用LM1117-3.3穩壓模塊。該芯片有三個引腳:輸入引腳、輸出引腳、接地引腳。5v電壓從輸入引腳輸入,通過轉換從輸出引腳輸入3.3v電壓,從而成功的將5v電壓轉換為3.3v電壓,轉換電路圖如下:圖3.2電壓轉換電路3.2.2 晶體振蕩電路設計X1和X2分別接單片機的XTAL1和XTAL2口,它們是芯片內振蕩器的
37、輸入和輸出端。本設計的晶體振蕩電路采用的是大小為40MHz的石英晶振。晶振的大小與圖片的播放流暢度有關系。就24位的320*240格式的BMP圖片而言,其文件大小約為225K。設置為四分頻,則速度為10MBPS,足可以播放45張圖片,流暢度可以保證。晶振電路接線圖如下圖3.3所示:圖3.3晶振電路 SD卡電路設計SD卡(Secure Digital Memory Card)是一種為滿足安全性、容量、性能和使用環境等各方面的需求而設計的一種新型存儲器件。它的技術是基于MMC格式發展而來,大小和MMC卡差不多,尺寸為32mm*24mm*2.1mm。SD卡允許在兩種模式下工作,即SD卡模式和SPI模
38、式。SD模式是SD卡標準的讀寫方式,但是在選用SD模式時,往往需要選擇帶有SD卡控制器接口的單片機,或者必須加入額外的SD卡控制單元以支持SD卡的讀寫。然而,一般單片機沒有集成SD卡控制器接口,故選用SPI模式可以說是一種最佳的解決方案,在SPI模式下,通過四條線就可以完成所有的數據交換,采用SPI模式對SD卡進行讀寫操作可大大簡化硬件電路的設計。同時由于SD卡兼容MMC卡讀寫命令,所以,使用MMC卡的命令集。SD卡結構見圖3.4:圖3.4 SD卡內部結構圖3.6是SD/MMC卡引腳簡介,本次設計采用的SD卡,采用的SPI模式。使用了四根數據線和地線電源鍵 4引腳,工作電壓是3.3v。各引腳功
39、能介紹如下:CLK:時鐘信號,每個時鐘周期傳輸一個命令或數據位,頻率可在025Mhz之間變化,SD卡的總線管理器可以不受任何限制的自由產生025Mhz的頻率。CMD:雙向命令和回復線,命令是一次主機到從卡操作的開始,命令可以是主機到單卡尋址,也可以是到所有卡;回復是對之前命令的回答,回復可以來自單卡或者所有卡。DAT03:數據線,數據可以從卡傳向主機也可以從主機傳向卡。在SPI模式下其命令由6個字節構成,其中高位在前。電路圖如圖3.5、圖3.6所示:圖3.5 SD卡引腳圖圖3.6 SD/MMC卡引腳簡介 液晶電路設計畢業設計液晶顯示器我選擇的是2.8存8位彩色液晶,30引腳,液晶使用的是控制器
40、型號是ILI9320。電路圖見下圖3.7所示:圖3.7 LCD電路連接圖第4章 基于單片機的電子相冊的軟件設計軟件模塊主要由讀寫SD卡子程序,液晶控制子程序,FAT32結構分析子程序,文件類型分析處理子程序,主程序等模塊組成,以下是各個子程序的技術要點、詳細介紹以及軟件流程圖。4.1 軟件流程圖電子相冊軟件設計流程圖如圖4.1所示:圖 4.1 軟件系統程序流程圖4.2 讀寫SD卡子程序設計SD卡(Secure Digital Memory Card)是一種為滿足安全性、容量、性能和使用環境的需求而設計的一種新型存儲器件,SD卡支持兩種總線方式:SD方式和SPI方式。其中SD方式采用6線制,使用
41、CLK、CMD、DAT0DAT3進行數據通信。而SPI方式采用4線制,使用CS、CLK、DATIN、DATOUT進行數據通信。其中SD方式的數據傳輸速度比SPI要快,但是SD卡采用SD模式時,單片機要有相應的SD模式接口,或者有相應的SD卡控制單元,但是由于一般單片機都沒有SD模式接口,所以采用單片機對SD卡進行讀寫時,一般都采用SPI方式。SD卡每次通信,傳輸48位,即6個字節的數據。第一個字節是命令,緊接著是4字節的參數,一般用于指定SD的字節地址。最后一個字節是校驗碼。一般,命令也就是用到0x40復位命令、0x41初始化命令、0x51讀扇區命令、0x58寫扇區命令。硬件SPI接口電平上,
42、設置單片機的時鐘線,默認為1,設置數據在時鐘的后沿移位。注意,在初始化階段最好設置為SPI頻率為128分頻,較低速度。等初始化完成再把分頻系統改為4分頻,較高速度,正常使用SD卡。4.3 液晶控制子程序設計彩色液晶,只要使用帶控制器的就可以了。我用的是帶ili9320控制器的320*240分辨率的彩色液晶。當rs=0、rw上升沿跳變時,單片機p2口傳送給彩色液晶的數據時命令。當rs=1、rw上升沿跳變時,單片機p2口傳送給彩色液晶的就是普通數據了。也可以使用帶其他控制器的液晶。這些液晶控制器只要通過設置相應的控制線,發送相應的數據和命令,就可以很方便的使用了。4.4 FAT32結構分析子程序設
43、計了解FAT32系統之前,需要注意一個FAT文件系統的第一個重要的數據結構BPB,它位于該FAT卷得第一個扇區,同時也屬于FAT文件系統基本區域的保留區。這個扇區又叫做“啟動扇區”、“保留扇區”、“0扇區”,眾多的叫法都說明一個相同的問題:該扇區是FAT卷得第一個扇區。FAT是文件系統中另一個重要的數據結構,它是一一對應于數據區簇號的列表。文件系統分配磁盤空間按照簇來分配的。因此,文件占用磁盤空間時,其基本單位不是字節而是簇,即使某個文件只有一個字節,操作系統也會給他分配一個最小單元既一個簇。為了可以將磁盤空間有序地分配給相應的文件,而讀取文件的時候又可以從相應的地址讀出文件,我們把數據區空間
44、分成BPB_BytsPerSec*BPB_SecPerClus字節長的簇來管理,FAT表項的大小與FAT的類型有關,FAT12的表項為12bit,FAT16為16bit,而FAT32則為32bit。對于大文件,需要分配多個簇。同一個文件的數據并不一定完整地存放在磁盤中一個連續的區域內,而往往會分成若干段,像鏈子一樣存放。這種存儲方式稱為文件的鏈式存儲。為了實現文件的鏈式存儲,文件系統必須準確地記錄哪些簇已經被文件占用,還必須為每個已經占用的簇指明存儲后繼內容的下一個簇的簇號,對文件的最后一簇,則要指明本簇無后繼簇。這些都是由FAT表來保存的,FAT表的對應表項中記錄著它所代表的簇的有關信息:諸
45、如是否空,是否是壞簇,是否已經是某個文件的尾簇等。Fat32文件系統由結構信息+文件分配表+數據區組成。結構信息。保存fat32的結構內容。文件分配表,以4字節的大小,記錄簇的鏈式關系。數據區,記錄文件真正的數據。讀取第一扇區,即512字節的內容,我們可以知道“文件分配表的起始地址”,“每簇多少扇區”和分配表的大小。通過計算,我們可以得知根目錄的扇區地址,也就是2簇的扇區地址。根目錄,用32字節大小,記錄文件名和首簇地址等信息。文件存放都是以簇為單位進行存儲的。公式:任何扇區地址=(記錄簇號-2)*每簇多少扇區+根目錄的扇區地址。知道了以上信息,就可以方便的將文件的簇地址轉換為扇區地址。但文件
46、的存放是鏈式結構,我們還要讀下一個簇號,直到簇號為結束簇號:0x0fffffff。最后對讀取的文件內容進行傳輸。4.5 文件處理子程序設計處理圖片文件之前,首先需要了解BMP這種格式的圖片。BMP是一種與硬件設備無關的圖片文件格式,使用非常廣。它采用位映射存儲結構,除了圖像深度可以選以外,不采用其他任何壓縮,因此,BMP所占用的空間很大。BMP文件的圖像深度可選1bit、4bit、8bit以及24bit等。BMP文件存儲數據時,圖像的掃描方式是按從左到右、從下到上的順序。由于BMP文件格式是Windows環境中交換與圖有關的數據的一種標準,因此在windows環境中運行的圖像圖像軟件都支持BM
47、P圖像格式。典型的BMP圖像文件一般由四部分組成:1.BMP文件的四部分:文件頭、信息頭、調色板和數據區。2.位圖文件頭數據結構,它包含BMP圖像文件的類型、顯示內容等信息。3.位圖信息數據結構,它包含BMP圖像的寬、高、壓縮方法、以及定義顏色等信息。4.調色板,這個部分是可選的,有些位圖需要調色板,有些位圖則不需要調色板。5.位圖數據,這部分的內容根據BMP位圖使用的位數不用而不同,在24位圖中直接使用RGB,而其他的小于24位的則需要使用調色板。小于24位的位圖數據實則是調色板的索引值。4.6 主程序設計主程序讀取通過FAT32文件系統,得到根目錄地址,在讀取根目錄的文件記錄達到指定文件的
48、首簇地址。經過地址轉換,轉換成扇區地址。讀取相應數據,經過單片機傳輸在彩色液晶上顯示圖像,顯示完一幅圖像后,延遲一定的延時,繼續顯示下一幅。主程序如下所示:int main(void) Port_Init(); Lcd_Init(); full_display(BLACK); while(Sd_Init()=0) ShowString(0, 100, " 未插入存儲卡!", WHITE, RED, BACKGROUND); SPCR=0X5C;/4分頻【最高速度】,高電平,后沿移位 Fat32_Init();/FAT文件系統初始化 if(File_System=32) Sh
49、owString(0, 100, " FAT32 FileSystem", BLACK, YELLOW, BACKGROUND); if(File_System!=32) ShowString(0, 100, " NO FAT32 FileSystem", WHITE, RED, BACKGROUND); File_Show(); return 1;第5章 基于單片機的電子相冊的系統測試5.1 電子相冊的硬件調試方法 電路板焊接好之后常常會遇到諸多不通電、不導通、無法下載程序等常見的硬件方面的常見問題。對于這類問題,我們應該先對其有一個明確的認識,知道大
50、概是哪里發生了問題,對問題的發生有一個大概的推測,然后依據這個推測逐步檢測。一口氣把所有的原件焊接上去,這樣如果板子出現問題的話,調試的進行將會很困難。焊接順序很重要應該是按照功能劃分的器件進行焊接,焊接一個功能部件,然后進行調試,調試通過焊接下一個部件,這樣容易找到問題的所在。對于常見的硬件問題一般都可以有如下幾種方法進行檢測:1.檢查原理圖是否正確,如果原理圖正確就檢查焊接是否按照原理圖進行的;2.檢查原理圖與元器件上的引腳是否一致;3.用萬用表檢查是否有虛焊,引腳短路現象;4.檢查元器件看是否有損壞或者性能不符合要求等;5.看電源是否故障,是不是電壓值不符合要求、電源負載不足、負載能力差
51、等。5.2 電子相冊的軟件調試方法 本畢業設計軟件共分為五個程序模塊,分別為:SD卡讀寫子程序、液晶控制子程序、FAT結構分析子程序、文件類型讀取分析程序和主程序。對于模塊結構程序,要一個個子程序分別調試。調試時,一定要符合入口條件和出口條件,調試可用單步運行和斷點運行方式,通過檢查用者系統的CPU現場情況、RAM的內容和IO口的狀態,檢測程序執行結果是否符合設計要求。有無循環錯誤、有無機器碼錯誤以及轉移地址的錯誤。同時,還可以發現系統中存在的硬件設計錯誤和軟件算法錯誤。 各程序模塊通過后,則可以把相關功能塊連在一起進行總調。這個階段若有故障,可以考慮各子程序運行時是否破壞了現場,緩沖單元、工
52、作寄存器是否發生沖突,標志位的建立和清除是否有堆棧區是否有溢出,輸入設備的狀態是否正常等等,若用者系統是在開發機的監控程序下運行時,還要考慮用者緩沖單元是否和監控程序的工作單元發生沖突。 當全部調試和修改完成后,將程序固化到SST89E516RD中,進行整機調試。各功能實現則調試完成。總 結隨著科技的發展,電子技術發展也是日新月異,正在逐步引起各方面的重視,從而正在成為信息技術發展的新寵。如今的單片機已經發展了很多的種類,各種型號的都有,價格也很平易近人,這就更使得單片機有了更大的發展空間。單片機已成為計算機發展和應用的一個重要方面。同時它從顛覆了傳統的控制系統設計思路和設計方法,使得完全可以
53、用軟件來進行模仿,這種軟件代替硬件的技術是傳統硬件技術的一種革新。電子相冊隨著嵌入式技術的不斷發展,也在不斷的進行改進,產品種類也將越來越豐富,功能也將越來越人性化,應用也將越來越廣泛。本文主要描述了用型號為SST89E516RD的51單片機實現電子相冊。本次的設計工作,由于時間短,水平有限,還存在很多不足的地方。雖然已經實現了預期的功能,但是還需要在技術水平和可靠性方面進一步改進和完善。經過這次的畢業設計,使我無論是從理論知識還是從實際操作中都學到了很多的知識,它是對我所學專業的一次知識大綜合,使我接觸到了了更多平時沒有接觸過的各種科學儀器設備、元器件,并且獲得了相關的儀器調試經驗,同時也發
54、現了自己的在這方面的很多不足之處,體會到了理論知識對實踐有很大的指導作用。參考文獻1 李蒙,毛建東.單片機原理及應用M.北京:中國輕工業出版社,2010.2.2 常敏,王涵51單片機應用程序開發與實踐M北京:電子工業出版社,20103 王宜懷,劉曉升.嵌入式應用技術基礎教程M.北京:清華大學出版社,2005.07.4 謝瑞和.微型計算機原理與接口技術基礎教程M.北京:科學出版社,2005.08.5 顧治華,陳天煌,忽朝健C語言程序設計CP北京:機械工業出版社,200710.6 湯小丹 ,梁紅兵. 計算機操作系統M.西安:西安電子科技大學出版社,2007.05.7 李朝青單片機原理及接口技術M北
55、京:北京航空航天大學出版社,2005.10.8 候振鵬嵌入式C語言程序設計M北京:北京人民郵電出版社,2007.06.9 龔運新. 單片機C語言開發技術M.北京:清華大學出版社,2006.01.10 邵貝貝,龔光華. 單片機的認識與實踐M. 北京:北京航空航天大學出版社,2006.0111 孫育才. MCS-51系列單片機原理及應用M. 南京:東南大學出版社,2004.12 何立民. 單片機高級教程M北京:北京航空航天大學出版社,2001.13 沙占友,孟志永,王彥朋. 單片機外圍電路設計M. 北京:電子工業出版社,2006.06.14張石.嵌入式系統教程M.北京:機械工業出版社,2010.0
56、1.15 張益貞Visual C+實現MPEG/JPEG編解碼技術. 北京:人民郵電出版社,2002,1116 雷思孝等.單片機原理及實用技術M.西安:西安電子科技大學出版社,2011.07附:基于單片機的電子相冊程序int main(void) Port_Init(); Lcd_Init(); full_display(BLACK); while(Sd_Init()=0) ShowString(0, 100, " 未插入存儲卡!", WHITE, RED, BACKGROUND); SPCR=0X5C;/4分頻【最高速度】,高電平,后沿移位 Fat32_Init();/FAT文件系統初始化 if(File_System=32) ShowString(0, 100, " FAT32 FileSystem", BLACK, YELLOW, BACKGROUND);
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論