基于ATmega16A的智能小車+程序有解釋_第1頁
基于ATmega16A的智能小車+程序有解釋_第2頁
基于ATmega16A的智能小車+程序有解釋_第3頁
基于ATmega16A的智能小車+程序有解釋_第4頁
基于ATmega16A的智能小車+程序有解釋_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

畢業(yè)論文簡易數(shù)碼相機(jī)設(shè)計系別電子信息工程系專業(yè)電子信息工程班級07電本1班學(xué)號學(xué)生姓名指導(dǎo)教師(簽名)完成時間年月摘要本文介紹了一種以32位基于ARM核心的STM32F103VCT6微控制器設(shè)計的簡易數(shù)碼相機(jī)。該系統(tǒng)由基于ARM核心的微控制器系統(tǒng)、文件存儲系統(tǒng)、觸摸屏、DS1302時鐘芯片、TFT液晶顯示器、以O(shè)V7725圖像傳感器為主的攝像系統(tǒng)等單元電路組成。該系統(tǒng)所用到的圖像采集系統(tǒng)采用OV7725CMOSVGA圖像傳感器,利用AL422FIFO數(shù)據(jù)緩沖存儲器對圖像數(shù)據(jù)進(jìn)行采集。它的核心處理器采用價格低廉,性能可靠,外設(shè)豐富的基于ARM核心的微控制器。該系統(tǒng)主要工作原理是圖像傳感器將圖像數(shù)據(jù)傳輸?shù)紽IFO數(shù)據(jù)緩沖器,由微控制器采集數(shù)據(jù)緩沖器數(shù)據(jù)進(jìn)行處理,分別實現(xiàn)圖像在TFT液晶屏顯示和在SD中存儲的功能。研究表明該系統(tǒng)使用方便、簡易快捷、性能可靠,可應(yīng)用于娛樂、生活、監(jiān)控等領(lǐng)域。在市場經(jīng)濟(jì)體制中,尤其在娛樂、生活的行業(yè)中,更省錢、省心,更能提高企業(yè)效率,降低了生產(chǎn)成本,帶來更好的經(jīng)濟(jì)效益,可作為電子產(chǎn)品進(jìn)行開發(fā)研制,具有很好的推廣價值。關(guān)鍵詞:ARMCortex-M3文件系統(tǒng)圖像傳感器觸摸屏FIFOTheDesignOfSimpleDigitalCameraAbstractThispaperintroducesaARM-based32-bitSTM32F103VCT6MCUtodesignasimplecamera.ThissystemconsistsofARM-basedMCUsystem,Filestoragesystem,Touchscreen,DS1302Clockchip,TFTLCD,andbythemainofOV7725imagesensorasashootingsystemsunitcircuitetc.WhattheuseofthesystemistheimageacquiredsystemwhichinvolvesaCMOSVGAimagesensoroftheOV7725Camera-Chip,andbringsaboutAL422FIFOdatabuffermemoryusingtheimagedataacquired.Thecorecontrollerwithlowprice,reliableperformanceandrichperipheralresourcesofARM-basedMCU.ThesystempresstheimagesensoracquiredimagedatatoFIFObuffer,andthecorecontrollerprocessedimagedatatodisplayontheTFTLCDorsaveintheSDcard.Thestudyshowsthatthissystemhasthecharacteristicsofeasytosue,easyandfast,reliableperformance.Anditcanbeusedsomesocialfieldssuchasentertainment,life,security,etc.Inthemarketeconomicsystem,especiallyintheentertainmentandlifeindustry,Usingitcanbemuchmoresavingstaffs,thatyoucannotonlysavemoneybutalsomeetlesstroubles..What’smore,itcanimprovethecompany’sefficiency,reducethecostofproduction,andbringeconomicbenefits.Soitcanbeusedastheelectronicproducttomakedevelopment.Inmyopinion,ithasagoodvalueofpromotion.Keyword:ARMCortex-M3FileSystemImageSensorTouchScreenFIFO摘要本文介紹了一種以32位基于ARM核心的STM32F103VCT6微控制器設(shè)計的簡易數(shù)碼相機(jī)。該系統(tǒng)由基于ARM核心的微控制器系統(tǒng)、文件存儲系統(tǒng)、觸摸屏、DS1302時鐘芯片、TFT液晶顯示器、以O(shè)V7725圖像傳感器為主的攝像系統(tǒng)等單元電路組成。該系統(tǒng)所用到的圖像采集系統(tǒng)采用OV7725CMOSVGA圖像傳感器,利用AL422FIFO數(shù)據(jù)緩沖存儲器對圖像數(shù)據(jù)進(jìn)行采集。它的核心處理器采用價格低廉,性能可靠,外設(shè)豐富的基于ARM核心的微控制器。該系統(tǒng)主要工作原理是圖像傳感器將圖像數(shù)據(jù)傳輸?shù)紽IFO數(shù)據(jù)緩沖器,由微控制器采集數(shù)據(jù)緩沖器數(shù)據(jù)進(jìn)行處理,分別實現(xiàn)圖像在TFT液晶屏顯示和在SD中存儲的功能。研究表明該系統(tǒng)使用方便、簡易快捷、性能可靠,可應(yīng)用于娛樂、生活、監(jiān)控等領(lǐng)域。在市場經(jīng)濟(jì)體制中,尤其在娛樂、生活的行業(yè)中,更省錢、省心,更能提高企業(yè)效率,降低了生產(chǎn)成本,帶來更好的經(jīng)濟(jì)效益,可作為電子產(chǎn)品進(jìn)行開發(fā)研制,具有很好的推廣價值。關(guān)鍵詞:ARMCortex-M3文件系統(tǒng)圖像傳感器觸摸屏FIFOTheDesignOfSimpleDigitalCameraAbstractThispaperintroducesaARM-based32-bitSTM32F103VCT6MCUtodesignasimplecamera.ThissystemconsistsofARM-basedMCUsystem,Filestoragesystem,Touchscreen,DS1302Clockchip,TFTLCD,andbythemainofOV7725imagesensorasashootingsystemsunitcircuitetc.WhattheuseofthesystemistheimageacquiredsystemwhichinvolvesaCMOSVGAimagesensoroftheOV7725Camera-Chip,andbringsaboutAL422FIFOdatabuffermemoryusingtheimagedataacquired.Thecorecontrollerwithlowprice,reliableperformanceandrichperipheralresourcesofARM-basedMCU.ThesystempresstheimagesensoracquiredimagedatatoFIFObuffer,andthecorecontrollerprocessedimagedatatodisplayontheTFTLCDorsaveintheSDcard.Thestudyshowsthatthissystemhasthecharacteristicsofeasytosue,easyandfast,reliableperformance.Anditcanbeusedsomesocialfieldssuchasentertainment,life,security,etc.Inthemarketeconomicsystem,especiallyintheentertainmentandlifeindustry,Usingitcanbemuchmoresavingstaffs,thatyoucannotonlysavemoneybutalsomeetlesstroubles..What’smore,itcanimprovethecompany’sefficiency,reducethecostofproduction,andbringeconomicbenefits.Soitcanbeusedastheelectronicproducttomakedevelopment.Inmyopinion,ithasagoodvalueofpromotion.Keyword:ARMCortex-M3FileSystemImageSensorTouchScreenFIFO目錄目錄 1TOC\o"1-2"\h\z\u第一章 引言 21.1課題背景與來源 21.2課題意義 31.3課題設(shè)計內(nèi)容和方案 4第二章 系統(tǒng)概述 42.1系統(tǒng)組成 42.2系統(tǒng)的功能介紹及操作說明 5第三章硬件組成與設(shè)計 63.1整體電路圖 73.2電源電路 93.3主控芯片 93.4功能按鍵介紹 103.5TFT液晶顯示器 113.6觸摸屏 133.7圖像采集模塊 183.8SD卡 243.9時鐘、存儲電路 293.10USB2.0通信 32第四章軟件設(shè)計 384主程序流程圖 38第五章系統(tǒng)測試與分析 415.1系統(tǒng)設(shè)計過程 41第六章結(jié)束語 45參考文獻(xiàn) 46附錄 471整體電路圖 472圖像采集電路圖 483TFT液晶電路圖 48致謝 49引言1.1課題背景與來源單片機(jī)自問世以來,迄今已有三十年了,其產(chǎn)品琳瑯滿目,產(chǎn)家也眾多紛紜,功能也是五花八門。由于單片機(jī)集成度高、功能強、可靠性好、體積小、功耗低、使用方便、價格低廉等一系列優(yōu)點,目前已經(jīng)滲入到人們工作和生活的方方面面,幾乎是“無處不在,無所不為”。單片機(jī)的應(yīng)用領(lǐng)域已逐漸從面向工業(yè)控制、通訊、智能儀表等迅速發(fā)展到企業(yè)單位、家庭消費產(chǎn)品。然而隨著科技的進(jìn)步、自動化產(chǎn)業(yè)的要求越來越高,尤其在運行速度快的領(lǐng)域,低端單片機(jī)已不能滿足產(chǎn)品設(shè)計的要求。數(shù)碼相機(jī)發(fā)展到今天,從應(yīng)用層面可以說已進(jìn)入商業(yè)化運營階段。在數(shù)字時代來臨之前,在生活中,人們?yōu)榱肆裟蠲篮玫幕貞?,使用膠片相機(jī)拍照留念,膠片相機(jī)使用的儲存方式直接將圖像儲存在膠卷上,再把膠卷送到照相洗印加工處將其打印出來。隨著人們生活娛樂水平的提高,膠卷相機(jī)在市場上深受攝影愛好者的購買。但膠卷只能一次性使用、不易保存,并且照片張數(shù)有限,對于剛接觸攝像的人,很容易使照片曝光,從而增加了成本。沖洗照片過程復(fù)雜、時間長,沖洗照片需要到特定的照相館通過專業(yè)人士才能把照片沖洗出來,這給急需要照片的人帶來了困難,而且對于現(xiàn)場拍攝的人員無法清晰的查看當(dāng)時所拍攝的照片是否符合標(biāo)準(zhǔn)、是否滿足攝像者的要求。由于種種原因使得膠卷相機(jī)已經(jīng)不能滿足攝影愛好者的要求。隨著數(shù)碼時代的到來,為了滿足攝影者要求,數(shù)碼相機(jī)逐漸進(jìn)入人們的眼球,把人們帶入了另一個嶄新的攝影空間。數(shù)碼相機(jī)使用固定的圖像傳感器,將拍攝到的景物轉(zhuǎn)換以數(shù)字格式存放的圖像,圖像存儲到可重復(fù)的存儲卡或者其他介質(zhì)上,存儲介質(zhì)容量大小不同,從而使得拍攝的照片張數(shù)也是可以變動的,攝影愛好者不再被照片數(shù)量有限、成本大的問題所困擾,從而擺脫了膠卷相機(jī)帶來的煩惱,這樣大大滿足了攝影愛好者的要求。1.2課題意義如今數(shù)碼相機(jī)已暢銷消費電子市場,由于數(shù)碼相機(jī)采用了尖端技術(shù)和高端設(shè)備,在市場上,部分?jǐn)?shù)碼相機(jī)功能還不夠完善,功能完善的數(shù)碼相機(jī)價格昂貴,使得部分?jǐn)z影愛好者可望而不可及。因此,設(shè)計一種簡單實用、功能俱全、性能穩(wěn)定具有良好性能價格比的簡易數(shù)碼相機(jī)是可以的。最近幾年,基于從ARMv6開始的新設(shè)計理念,ARM進(jìn)一步擴(kuò)展了它的CPU設(shè)計,成果就是ARMv7架構(gòu)的閃亮登場,其中Cortex系列M3認(rèn)準(zhǔn)了舊世代單片機(jī)的應(yīng)用而量身定制。在這些應(yīng)用中,尤其是對于實時控制系統(tǒng),低成本、低功耗、極速中斷反應(yīng)以及高處理效率領(lǐng)域,Cortex-M3都能擔(dān)當(dāng)此任。ARMCortex-M3MCU應(yīng)用領(lǐng)域逐步擴(kuò)大,且價格便宜,所以選擇由ARMCortex-M3MCU來設(shè)計完成簡易數(shù)碼相機(jī)。膠卷相機(jī)具有瞬間捕捉功能,在數(shù)碼相機(jī)出現(xiàn)之前深受人們的歡迎,但由于膠卷原因,在大場合需要到大數(shù)量膠卷,攜帶不方便,而且對于攝影新手,往往因為拍照技術(shù)有限,從而浪費了很多膠卷,降低了拍照的成功率,增加了成本。數(shù)碼相機(jī)克服了這個困難,將圖像以數(shù)字格式儲存在可重復(fù)使用的介質(zhì)上,便于保存和打印。但市場上的數(shù)碼相機(jī)價格,使人只可遠(yuǎn)觀而不能褻瀆,為了滿足部分人群的要求,研究出一款良好性價比的數(shù)碼相機(jī)是必要的,本設(shè)計采用最新推出ARMCortex-M3內(nèi)核的STM32F103VCT6進(jìn)行設(shè)計,大大降低了控制芯片成本,通過微控制器自帶USB2.0全速通信接口,直接與PC機(jī)進(jìn)行通信,將SD卡中數(shù)據(jù)內(nèi)容上傳到PC機(jī)上,避免了使用讀卡器的煩惱。1.3課題設(shè)計內(nèi)容和方案設(shè)計一個簡易數(shù)碼相機(jī),包含以下主要功能:1.通信:系統(tǒng)通過USB2.0連接PC機(jī),可查看SD卡中內(nèi)容2.顯示:將采集的圖像快速的顯示在液晶屏上,實時采集性3.時鐘:通過時鐘芯片,顯示時間并準(zhǔn)確地記錄照片拍攝的時間4.存儲:將拍攝的照片以BMP格式存儲到SD中5.瀏覽:系統(tǒng)可以瀏覽SD卡的圖片,可以進(jìn)行打開、刪除6.觸摸:人機(jī)交流工程均由觸摸屏來完成系統(tǒng)概述2.1系統(tǒng)組成整個系統(tǒng)以STM32F103VCT6微控制器作為主處理芯片,對輸入、輸出設(shè)備進(jìn)行控制,展開外圍功能。本系統(tǒng)主要由以幾個模塊組成:微控制器系統(tǒng)(USB2.0全速接口)、TFT顯示、圖像采集電路、觸摸屏功能、SD存儲、時鐘及數(shù)據(jù)記錄模塊、LED及電機(jī)控制模塊等。系統(tǒng)圖框如圖2所示:指示燈及電機(jī)控制STM32F103VCT6微控制器指示燈及電機(jī)控制STM32F103VCT6微控制器圖像采集SD卡LCD顯示SD卡LCD顯示時鐘及數(shù)據(jù)記錄觸摸屏?xí)r鐘及數(shù)據(jù)記錄觸摸屏USB2.0通信USB2.0通信圖2系統(tǒng)組成框圖2.2系統(tǒng)的功能介紹及操作說明本系統(tǒng)的特點和可實現(xiàn)的功能以及具體的操作說明主要有:1、人機(jī)交流操作,均由觸摸屏完成。2、系統(tǒng)上電后,初始化由進(jìn)度條顯示,通過觸摸屏進(jìn)入主操作界面。3、主操作界面以圖標(biāo)形式展示,分別觸摸各自圖標(biāo)可以進(jìn)入各自子操作界面。主操作界面有時間顯示、聲音開關(guān),可以查看年、月、日、時、分、秒、星期,也可以通過觸摸屏對時間進(jìn)行設(shè)置調(diào)整,。4、進(jìn)入Mysystem界面,可顯示控制器型號、文件系統(tǒng)、SD卡容量等。5、進(jìn)入Mycamera界面,需連接圖像傳感器模塊,點擊相應(yīng)觸摸按鈕,可拍攝照片,對攝像頭進(jìn)行拉伸進(jìn)行聚焦,拍照模式可以選擇古典、淡藍(lán)、彩色。拍攝照片時,指示燈會閃爍。6、進(jìn)入USB界面,需連接PC機(jī),否則無法進(jìn)入此功能。USB自動檢測,可對SD卡內(nèi)的任何文件進(jìn)行打開、刪除、儲存等。7、進(jìn)入Picture界面,需插入SD卡。對SD卡內(nèi)的BMP格式圖片進(jìn)行瀏覽,在LCD界面生成圖片列表,通過觸摸按鈕可以上下選擇圖片并進(jìn)行打開。打開顯示圖片后,可以上下瀏覽圖片并且可以刪除圖片。8、復(fù)用三個機(jī)械按鍵,分別用于拍攝、鏡頭拉近、鏡頭伸出,在拍攝照片時,更人性化。第三章硬件組成與設(shè)計硬件設(shè)計包括整個系統(tǒng)的電路圖,以及各個模塊的詳細(xì)電路圖和其功能,涉及到的一些芯片的詳細(xì)資料。下面將整個系統(tǒng)從整體到局部分別做個介紹,首先介紹的是整體電路圖,然后再對各個模塊單獨介紹。3.1整體電路圖整體電路圖如下圖圖3-1所示。電路圖設(shè)計比較復(fù)雜,首先數(shù)碼相機(jī)屬于手持消費電子,既要考慮PCB板的體積大小,也要考慮到高頻電路布線的注意事項。其次,整個電路系統(tǒng)必須符合低功耗,否則整個系統(tǒng)無法在低能源下長久工作。經(jīng)過幾個方案的比較最終采用了32位基于ARM核心的微控制器STM32F103VCT6為主控制器,其他外圍設(shè)備也選擇了能在3.3V電壓下正常工作的芯片模塊。其中,串口轉(zhuǎn)換芯片選擇3.0V~5.5V、低功耗的、提升到1Mbps的MAX3232,串口不僅可以用來進(jìn)行程序調(diào)試,最主要的功能:利用下載軟件通過串口進(jìn)行下載執(zhí)行程序。下面就依次介紹電源電路,主控芯片,功能按鍵介紹,TFT液晶顯示器,觸摸屏,圖像采集模塊和時鐘、存儲模塊。圖3-1整體電路圖3.2電源電路整個系統(tǒng)屬于低功耗系統(tǒng),因此電源模塊無需使用大功率供電,電源可以直接使用干電池供電,考慮到用于聚焦的減速直流電機(jī)工作電壓在5VDC左右,而主控制器及其他外圍器件均工作在2.7V~3.7VDC之間,總體考慮可以使用4節(jié)1.5V的干電池作為電源,因會使用到USB接口,直接使用主機(jī)電源供電,電源入口首先使用100uF的電解電容除去直流電源的低頻噪聲,0.1uF獨石電容除去高頻噪聲,從而起到穩(wěn)定電壓的作用。穩(wěn)定電壓經(jīng)過AMS1117-3.3V低壓線性穩(wěn)壓器,輸出電流能達(dá)到1A,滿足了整個系統(tǒng)的電流要求,穩(wěn)壓器輸出再次使用一個100uF的電解電容和0.1uF的獨石電容進(jìn)行高、低頻濾波,便可以得到使系統(tǒng)正常工作的穩(wěn)定電壓,具體電路如圖3-2:圖3-2電源電路圖3.3主控芯片單片機(jī)是電子設(shè)計中經(jīng)常用到的主控芯片,也是大家比較熟悉的芯片,本系統(tǒng)設(shè)計中采用的是意法半導(dǎo)體公司生產(chǎn)的型號為STM32F103VCT6的微控制器,它是32位基于ARM核心的控制器,具有256K字節(jié)的閃存程序存儲器。STM32F103x是意法半導(dǎo)體公司生產(chǎn)的基于ARMCortex-M3處理器核的微控制器。Cortex-M3是基于ARMv7-M體系結(jié)構(gòu)的32位標(biāo)準(zhǔn)處理器,具有低功耗、少門數(shù)、短中斷延遲、低調(diào)試成本等眾多優(yōu)點。它是專門為在微控制器系統(tǒng)、汽車電控系統(tǒng)、工業(yè)控制系統(tǒng)和無線網(wǎng)絡(luò)等對功耗和成本敏感的嵌入式應(yīng)用領(lǐng)域?qū)崿F(xiàn)高系統(tǒng)性能而設(shè)計的,大大簡化了編程的復(fù)雜性,集高性能、低功耗、低成本于一體。STM32F103x微控制器采用了先進(jìn)的Cortex-M3內(nèi)核結(jié)構(gòu),具有豐富的性能出眾的片上外設(shè),包括16通道的12位A/D轉(zhuǎn)換器、7通道的DMA控制器、16位定時器、USART接口、CAN接口(2.0B)和USB2.0全速接口(12Mbps)等。在系統(tǒng)存儲區(qū)內(nèi)存放著內(nèi)嵌的自舉程序,由ST在生產(chǎn)線上寫入,用于通過可用的串行接口對閃存存儲器進(jìn)行重新編程。本系統(tǒng)使用的主控芯片封裝為LQFP100,體積小,適合手持消費電子。單片機(jī)的引腳圖如圖3-3圖3-3單片機(jī)引腳圖3.4功能按鍵介紹功能按鍵主要有3個,本系統(tǒng)人機(jī)交流過程均通過觸摸屏完成,三個機(jī)械按鍵在CAMERA界面下主要起到復(fù)用的功能,因在拍攝過程中,考慮到部分人員不方便使用到觸摸屏,因此S4鍵的功能:拍攝,S2、S3鍵的功能:聚焦。3.5TFT液晶顯示器在應(yīng)用系統(tǒng)中,為了設(shè)計出更直觀、更人性化的產(chǎn)品,設(shè)計者通常在產(chǎn)品上加上指示燈或者顯示器,如數(shù)碼管、單色液晶屏,然而此類顯示體積大、顏色單一乏味,不能滿足色彩多樣的顯示。相對而言,TFT液晶顯示器顯得格外的占優(yōu)勢。TFT液晶顯示器,價格合理,外觀漂亮,更節(jié)約電能,顯示功能也更強大,因而設(shè)計選用TFT液晶顯示器。液晶顯示屏以其低功耗、體積小、顯示內(nèi)容豐富、超薄輕巧、使用方便等諸多優(yōu)點,在儀器儀表、電子設(shè)備、家用電器等低功耗應(yīng)用系統(tǒng)中得到越來越廣泛的應(yīng)用。3.5.1電路設(shè)計本設(shè)計中用到的液晶為3.2寸TFT液晶顯示器,驅(qū)動芯片使用ILI9320控制器,顯示范圍320X240,26萬色彩,標(biāo)準(zhǔn)i80時序,16位并行接口。單片機(jī)控制接口,只需5個控制IO口和16個數(shù)據(jù)IO口,即完成液晶的顯示過程。TFT液晶顯示亮度及對比度,直接由ILI9320的顯示寄存器和電源寄存器設(shè)置,無須添加復(fù)雜的外圍電路。引腳圖如下圖圖3-5-1所示:圖3-5-1TFT液晶顯示器引腳圖3.5.2TFT液晶引腳及其功能介紹TFT液晶共25個引腳,各個引腳功能如下:第1、25腳:VSS為地電源。第2、3腳:VDD接3.3V正電源。第4腳:CS為片選信號,低電平時選擇和允許訪問ILI9320、高電平時禁止訪問ILI9320第5腳:RS為寄存器選擇信號,低電平時選擇命令或狀態(tài)寄存器、高電平時選擇控制寄存器。第6腳:WR為寫信號線,低電平時進(jìn)行寫操作。當(dāng)RS和WR共同為低電平時可以寫入控制指令,當(dāng)RS為高電平WR為低電平時可以寫入數(shù)據(jù)。第7腳:RD為讀信號線,低電平時進(jìn)行讀操作。當(dāng)RS為高電平WR為低電平時可以讀出數(shù)據(jù)。第8腳:RESET為復(fù)位端,低電平時對ILI9320控制器復(fù)位到初始化。第9~24腳:DB00~DB15為16位雙向數(shù)據(jù)線,進(jìn)行數(shù)據(jù)傳輸。ILI9320一共提供了18位雙向數(shù)據(jù)線,在設(shè)計應(yīng)用中只用了16位數(shù)據(jù)線,剛好符合RGB(565)格式。I8018位/16位系統(tǒng)總線,寫寄存器時序圖如圖3-5-2:圖3-5-2ILI9320寫寄存器時序I8018位/16位系統(tǒng)總線,讀寄存器時序圖如圖3-5-3:圖3-5-33.6觸摸屏本設(shè)計用到的觸摸屏大小為3.2寸,與3.2寸TFT液晶顯示屏配套,屬于電阻式觸摸屏,電阻式觸摸屏和控制系統(tǒng)都比較便宜,反應(yīng)靈敏度也很好,是一種對外界完全隔離的工作環(huán)境,不怕灰塵和水汽,能適應(yīng)各種惡劣的環(huán)境。它可以用任何物體來觸摸,穩(wěn)定性能較好。采用專業(yè)觸摸屏控制芯片ADS7843對觸摸點進(jìn)行采集,將觸摸屏模擬量轉(zhuǎn)換成數(shù)字量,單片機(jī)通過簡單的數(shù)據(jù)端口便可以與ADS7843通信采集到觸摸點。3.6.1觸摸屏原理觸摸屏包含上下疊合的兩個透明層,四線和八線觸摸屏由兩層具有相同表面電阻的透明阻性材料組成,五線和七線觸摸屏由一個阻性層和一個導(dǎo)電層組成,通常還要用一種彈性材料來將兩層隔開。當(dāng)觸摸屏表面受到的壓力(如通過筆尖或手指進(jìn)行按壓)足夠大時,頂層與底層之間會產(chǎn)生接觸。所有的電阻式觸摸屏都采用分壓器原理來產(chǎn)生代表X坐標(biāo)和Y坐標(biāo)的電壓。如圖3,分壓器是通過將兩個電阻進(jìn)行串聯(lián)來實現(xiàn)的。上面的電阻(R1)連接正參考電壓(VREF),下面的電阻(R2)接地。兩個電阻連接點處的電壓測量值與下面那個電阻的阻值成正比。為了在電阻式觸摸屏上的特定方向測量一個坐標(biāo),需要對一個阻性層進(jìn)行偏置:將它的一邊接VREF,另一邊接地。同時,將未偏置的那一層連接到一個ADC的高阻抗輸入端。當(dāng)觸摸屏上的壓力足夠大,使兩層之間發(fā)生接觸時,電阻性表面被分隔為兩個電阻。它們的阻值與觸摸點到偏置邊緣的距離成正比。觸摸點與接地邊之間的電阻相當(dāng)于分壓器中下面的那個電阻。因此,在未偏置層上測得的電壓與觸摸點到接地邊之間的距離成正比。觸摸屏原理圖如圖3-6-1:圖3-6-1觸摸屏原理圖本設(shè)計使用的是四線觸摸屏,原理如圖3-6-2:圖3-6-2四線觸摸屏原理圖3.6.2ADS7843簡介ADS7843是Burn-Brown公司生產(chǎn)的專門于四線電阻觸摸屏數(shù)模轉(zhuǎn)換芯片,內(nèi)部有一個多通道內(nèi)置12位模數(shù)轉(zhuǎn)換、低導(dǎo)通電阻模擬開關(guān)的串行接口芯片。工作電壓2.7~5.0V。在125KHz傳輸頻率和+2.7V電源供電下,典型功耗值為750μW。該參考電壓(VREF)可在1V和+Vcc之間變化,提供相應(yīng)的輸入電壓范圍為0V至VREF。該器件包括一個典型的關(guān)機(jī)模式可降低功耗到0.5μW。ADS7843可操作在低至2.7V下。低功耗,高速度,以及板載開關(guān)使得在電池供電系統(tǒng)里使用ADS7843更為合理,例如電阻式觸摸屏和其它便攜式設(shè)備。該ADS7843是在一個采用SSOP-16封裝,在-40℃至+85℃溫度范圍。它通過標(biāo)準(zhǔn)SPI協(xié)議和CPU通信,操作簡單,精度高圖3-6-3ADS7843內(nèi)部電路圖一、ADS7843引腳及其功能:ADS7843共有16個引腳,如圖圖3-6-4:圖3-6-4ADS7843引腳圖二、引腳描述:電源(+Vcc,GND):電源供應(yīng),2.7V~5.0V,電源端使用0.1uF電容對高頻噪聲進(jìn)行濾波。電壓參考(VREF):參考電壓輸入。參考電壓的穩(wěn)定,直接影響到觸摸屏電壓的采集。同樣使用一個0.1uF電容進(jìn)行濾波。模擬輸入(X+,Y+,X-,Y-):X,Y坐標(biāo)輸入,即ADC通道1和通道2。附加模擬輸入(IN3,IN4):附加模擬輸入1,輸入2,即ADC通道3和通道4.中斷輸出(/PENIRQ):中斷輸出端(外部需要加上一個10KΩ至100KΩ的上拉電阻)。數(shù)據(jù)輸出(DOUT):串行數(shù)據(jù)輸出。數(shù)據(jù)輸出在DCLK下降沿時有效。當(dāng)CS為高電平時,輸出為高阻抗。忙標(biāo)志(BUSY):系統(tǒng)忙輸出端當(dāng)CS為高電平時,輸出為高阻抗。數(shù)據(jù)輸入(DIN):串行數(shù)據(jù)輸入。如果CS為低電平,數(shù)據(jù)輸入在DCLK上升沿有效。片選信號(/CS):片選信號輸入端。控制轉(zhuǎn)換時間和使能串行輸入、輸出寄存器。數(shù)據(jù)時鐘(DCLK):外部時鐘輸入。時鐘工作用于SAR轉(zhuǎn)換程序和同步串行輸入、輸出數(shù)據(jù)。三、ADS7843與單片機(jī)通信連接單片機(jī)與ADS7843通信,只需使用到5個IO口,其中包括串行數(shù)據(jù)輸入(DIN)、串行數(shù)據(jù)輸出(DOUT)、時鐘(DCLK)、片選端(/CS)、中斷輸出端(/PENIRQ)。當(dāng)觸摸屏被按下時(即有觸摸事件發(fā)生),則ADS7843向主控芯片發(fā)中斷請求,主控芯片設(shè)置PA3管腳作為輸入,下降沿觸發(fā)外部中斷。典型電路圖如圖3-6-5:圖3-6-5ADS7843典型應(yīng)用四、ADS7843控制字及數(shù)字傳輸格式ADS7843的控制字如表3-6-6:Bit7(MSB)Bit6Bit5Bit4Bit3Bit2Bit1Bit0(LSB)SA2A1A0MODESER/DFRPD1PD0表3-6-6ADS7843控制字其中S為數(shù)據(jù)傳輸起始標(biāo)志位,該位必為"1"。A2~A0進(jìn)行通道選擇如圖3-6-7、圖3-6-8:圖3-6-7當(dāng)SER/DFR為0,ADS7843通道選擇圖3-6-8當(dāng)SER/DFR為1,ADS7843通道選擇MODE用來選擇A/D轉(zhuǎn)換的精度:"1"選擇8位,"0"選擇12位。SER/DFR選擇參考電壓的輸入模式。PD1、PD0選擇省電模式:●"00"省電模式允許,在兩次A/D轉(zhuǎn)換之間掉電,且中斷允許;●"01"同"00",只是不允許中斷;●"10"保留;●"11"禁止省電模式。為了完成一次電極電壓切換和A/D轉(zhuǎn)換,需要先通過串口往ADS7843發(fā)送控制字,轉(zhuǎn)換完成后再通過串口讀出電壓轉(zhuǎn)換值。標(biāo)準(zhǔn)的一次轉(zhuǎn)換需要24個時鐘周期,如圖3-6-9。由于串口支持雙向同時進(jìn)行傳送,并且在一次讀數(shù)與下一次發(fā)控制字之間可以重疊,所以轉(zhuǎn)換速率可以提高到每次16個時鐘周期。如果條件允許,CPU可以產(chǎn)生15個CLK的話(比如FPGAs和ASICs),轉(zhuǎn)換速率還可以提高到每次15個時鐘周期。圖3-6-9 由于ADS7843觸摸屏專業(yè)控制芯片采集速度快,在現(xiàn)實應(yīng)用中,難免會出現(xiàn)數(shù)據(jù)轉(zhuǎn)換采集的誤差,所以在軟件設(shè)計中,必須對ADS7843采集的數(shù)字量進(jìn)行數(shù)字濾波,這樣才能保證觸摸點準(zhǔn)確無誤的采集。3.7圖像采集模塊圖像采集模塊需要用到感光器件,感光器件是數(shù)碼相機(jī)的核心部件,與傳統(tǒng)相機(jī)相比,傳統(tǒng)相機(jī)使用膠卷作為其記錄信息的載體,而數(shù)碼相機(jī)的膠卷就是其成像感光器件,而且是與相機(jī)一體的,是數(shù)碼相機(jī)的心臟。感光器件是數(shù)碼相機(jī)的核心,也是最關(guān)鍵的技術(shù)。數(shù)碼相機(jī)的發(fā)展道路,可以說就是感光器的發(fā)展道路。目前數(shù)碼相機(jī)的核心成像部件有兩種:一種是廣泛使用的CCD(電荷藕合)元件;另一種是CMOS(互補金屬氧化物導(dǎo)體)器件。由兩種感光器件的工作原理可以看出,CCD的優(yōu)勢在于成像質(zhì)量好,但是由于制造工藝復(fù)雜,只有少數(shù)的廠商能夠掌握,所以導(dǎo)致制造成本居高不下,特別是大型CCD,價格非常高昂。在相同分辨率下,CMOS價格比CCD便宜,但是CMOS器件產(chǎn)生的圖像質(zhì)量相比CCD來說要低一些。CMOS影像傳感器的優(yōu)點之一是電源消耗量比CCD低,CCD為提供優(yōu)異的影像品質(zhì),付出代價即是較高的電源消耗量,為使電荷傳輸順暢,噪聲降低,需由高壓差改善傳輸效果。但CMOS影像傳感器將每一畫素的電荷轉(zhuǎn)換成電壓,讀取前便將其放大,利用3.3V的電源即可驅(qū)動,電源消耗量比CCD低。CMOS影像傳感器的另一優(yōu)點,是與周邊電路的整合性高,可將ADC與訊號處理器整合在一起,使體積大幅縮小,例如,CMOS影像傳感器只需一組電源,CCD卻需三或四組電源,由于ADC與訊號處理器的制程與CCD不同,要縮小CCD套件的體積很困難。在功耗和價格方面考慮,本設(shè)計采用了低功耗、價格合理的CMOS圖像傳感器,型號為OV7725。3.7.1電路設(shè)計圖像采集模塊設(shè)計比較復(fù)雜,調(diào)試起來也比較麻煩,而且很容易受到高頻信號的干擾,圖像轉(zhuǎn)換為數(shù)字量后,要實時在TFT液晶顯示器上顯示圖像,由于數(shù)據(jù)量大,必須高速傳輸數(shù)據(jù),每一幅圖像的每個數(shù)據(jù)都是缺一不可的,因此要確保數(shù)據(jù)在高速傳輸過程中,能夠準(zhǔn)確的讀取,才能達(dá)到實時性標(biāo)準(zhǔn)。在此模塊中,使用OV7725COMSVGA圖像傳感器采集圖像,利用AL422FIFO數(shù)據(jù)緩沖器對OV7725輸出的數(shù)據(jù)進(jìn)行存儲,從而解決了采集速度不夠高,高速傳輸總出現(xiàn)數(shù)據(jù)為被讀取的問題。如圖3-7-1:圖3-7-1圖像采集模塊電路圖像采集模塊需要提供一個高速的時鐘,才能使圖像傳感器將采集的模擬量轉(zhuǎn)換為數(shù)字量,而STM32F103X系列微控制器正好有時鐘輸出功能,微控制器允許時鐘信號到外部MCO引腳。共有以下四個時鐘信號可被選作MCO時鐘:系統(tǒng)時鐘(SYSCLK)、片內(nèi)時鐘(HSI)、片外時鐘(HSE)、除2的PLL時鐘。時鐘的選擇由時鐘配置寄存器(RCC_CFGR)中的MCO[2:0]位控制。本設(shè)計使用了片外時鐘(HSE)作為圖像采集模塊的時鐘,即外部晶振8MHz。3.7.2OV7725OV7725CAMERACHIP-TM圖像傳感器,體積小、工作電壓低,提供單片VGA攝像頭和影像處理器的所有功能。通過SCCB總線控制,可以輸出整幀、子采樣、取窗口等方式的各種分辨率8位影響數(shù)據(jù)。該產(chǎn)品VGA圖像最高達(dá)到60幀/秒。用戶可以完全控制圖像質(zhì)量、數(shù)據(jù)格式和傳輸方式。所有圖像處理功能過程包括伽瑪曲線、白平衡、飽和度、色度等都可以通過SCCB接口編程。OmmiVision圖像傳感器應(yīng)用獨有的傳感器技術(shù),通過減少或消除光學(xué)或電子缺陷如固定圖案噪聲、托尾、浮散等,提高圖像質(zhì)量,得到清晰的穩(wěn)定的彩色圖像。功能特性:●高靈敏度適合低照度應(yīng)用●標(biāo)準(zhǔn)的SCCB接口,兼容I2C接口●RawRGB,RGB(GRB4:2:2,RGB565/555/444),YUV(4:2:2)和YCbCr(4:2:2)輸出格式●支持VGA,QVGA,和從CIF到40x30的各種尺寸●VarioPixel子采樣方式●自動影響控制功能包括:自動曝光控制、自動增益控制、自動白平衡,自動消除燈光條紋、自動黑電平校準(zhǔn).圖像質(zhì)量控制包括色飽和度、色相、伽瑪、銳度和ANTI_BLOOM●ISP具有消除噪聲和壞點補償功能●鏡頭失光補償●飽和度自動調(diào)節(jié)(UV調(diào)整)●邊緣增強自動調(diào)節(jié)●降噪自動調(diào)節(jié)OV7725圖像傳感器引腳如下圖圖3-7-2:圖3-7-2OV7725圖像傳感器引腳 引腳描述如下:ADVDD、ADGND:ADC電源、ADC地AVDD、AGND:模擬電源、模擬地DVDD:數(shù)字電源DOVDD、DOGND:I/O電源(1.7V~3.3V)、數(shù)字地D0~D9:數(shù)據(jù)位0~9RSTB:系統(tǒng)輸入復(fù)位,低電平有效VREFH:電壓參考,用0.1uF電容與地相接FSIN:SCL:SCCB時鐘口SDA:SCCB數(shù)據(jù)口VREFN:電壓參考,用0.1uF電容與地相接HREF:行同步PWDN:POWERDOWN模式選擇0:工作1:POWERDOWNVSYNC:幀同步PCLK:像素時鐘XCLK:系統(tǒng)輸入時鐘3.7.3AL422存儲器AL422是由AverLogic公司推出的視頻幀存儲器,存儲容量為384kx8Bits,存儲結(jié)構(gòu)為先進(jìn)先出(FIFO),因而其接口非常簡單,容量很大、并且可存儲一幀圖像的完整信息的幀存儲器芯片。AL422的工作頻率可達(dá)50MHz。該芯片主要特點如下:●具有384kx8BitsFIFO,支持VGA,CLLR,NTSC,PAL和HDTV分辨率;●可進(jìn)行獨立的讀/寫操作(可接受不同的1/0數(shù)據(jù)率);●可高速異步串行存取,讀寫時鐘周期為20ns;●內(nèi)含輸出使能控制,并能夠自行刷新數(shù)據(jù);●工作電壓為5V或3.3V,采用標(biāo)準(zhǔn)的28腳SOP封裝AL422存儲器引腳圖如圖3-7-3:圖3-7-3AL422存儲器引腳圖AL422存儲器共有28個引腳功能描述如下:DI7~DI0:數(shù)據(jù)輸人腳,當(dāng)WE為低電平時,數(shù)據(jù)在WCK的上升沿輸人。DO7~DO0:數(shù)據(jù)輸出腳,當(dāng)RE為低電平時,數(shù)據(jù)在RCK的上升沿被讀出。WCK:寫時鐘信號輸人,寫數(shù)據(jù)輸入與此時鐘信號同步,當(dāng)WE為低電平時,寫數(shù)據(jù)在WCK的上升沿輸人,隨著時鐘信號輸人的增加,內(nèi)部寫地址指針計數(shù)器自動加1。RCK:讀時鐘信號輸人,當(dāng)OE信號為低電平時,讀數(shù)據(jù)在RCK的上升沿輸出。WE:寫使能信號輸人,WE用于控制數(shù)據(jù)輸入的使能/禁止,當(dāng)WE為低電平時,輸人數(shù)據(jù)在WCK的上升沿被獲取,當(dāng)WE為高電平時,存儲器不接受數(shù)據(jù)輸人,即禁止數(shù)據(jù)寫人。RE:該端口為讀使能信號輸人引腳,其主要作用是用于控制數(shù)據(jù)的輸出操作。當(dāng)RE為低電平時,系統(tǒng)將在RCK的上升沿輸出數(shù)據(jù),同時內(nèi)部讀地址指針自動加1。OE:輸出使能信號輸人。該腳主要用干控制數(shù)據(jù)輸出的使能/禁止。當(dāng)OE為低電平時,允許數(shù)據(jù)輸出;當(dāng)OE為高電平時,禁止數(shù)據(jù)輸出。WRST:寫復(fù)位輸人,該復(fù)位信號用于將寫地址指針初始化為0.RRST:讀復(fù)位輸人,該復(fù)位信號用于將讀地址指針初始化為0。DEC:去藕電容腳,當(dāng)電源電壓為5V時,該腳接1uF或2.2uF電容到地;當(dāng)電源電壓為3.3V時,該腳可直接與3.3V相連,同時應(yīng)接一個0.1uF的旁路電容。3.7.4圖像傳感器使用到了OV7725攝取圖像,再由AL422對OV7725輸出數(shù)據(jù)進(jìn)行存儲。OV7725設(shè)置為QVGA模式,共有320*240個像素,設(shè)置為RGB(565)模式,則320*240*8=1228800,需要大于1Mbits的存儲器進(jìn)行存儲。OV7725數(shù)據(jù)數(shù)據(jù)端為8位,一個像素點是RGB(565)模式共有16位,會分成2個8位數(shù)據(jù)進(jìn)行輸出,在像素時鐘PCLK下降沿傳送8位數(shù)據(jù)到輸出端。此時HREF行同步輸出高電平。每一幀數(shù)據(jù)準(zhǔn)備好后,通過VSYNC幀同步輸出一個高脈沖來通知外部設(shè)備接收數(shù)據(jù)。OV7725像素時鐘PCLK連接AL422的WCK,當(dāng)有像素數(shù)據(jù)時,在寫使能的情況下,數(shù)據(jù)便可以寫入到AL422中,AL422的WE使能端由OV7725行同步HREF和控制端WEN來控制,一幀數(shù)據(jù)全部存儲到AL422存儲器后,單片機(jī)通過IO口禁止AL422的寫操作,使能讀操作,將AL422存儲器的的一幀數(shù)據(jù)讀出,進(jìn)行處理在TFT液晶屏上顯示。幀時序圖如圖3-7-4:圖3-7-4幀時序圖主控芯片利用時鐘輸出引腳MCO,提供圖像采集模塊的系統(tǒng)輸入時鐘。STM32F10X系列芯片具有中斷延時小的特點,ARM7中斷延遲需要24-42個時鐘周期,非常緩慢,而Cortex-M3中斷延遲只需12個周期,最快為6個周期,對觸發(fā)事件能夠及時的進(jìn)行處理。OV7725的幀同步VSYNC端口接到主控芯片外部中斷EXT5,在中斷程序里,對AL422進(jìn)行讀寫使能禁止。OV7725具有標(biāo)準(zhǔn)的SCCB接口,兼容I2C接口,采用STM32F103VCT6的I2C接口對圖像傳感器進(jìn)行初始化設(shè)置。3.8SD卡SD卡在現(xiàn)在的日常生活與工作中使用非常廣泛,時下已經(jīng)成為最為通用的數(shù)據(jù)存儲卡。在諸如MP3、數(shù)碼相機(jī)等設(shè)備上也都采用SD卡作為其存儲設(shè)備。SD卡之所以得到如此廣泛的使用,是因為它價格低廉、存儲容量大、使用方便、通用性與安全性強等優(yōu)點。既然它有著這么多優(yōu)點,那么如果將它加入到單片機(jī)應(yīng)用開發(fā)系統(tǒng)中來,將使系統(tǒng)變得更加出色。這就要求對SD卡的硬件與讀寫時序進(jìn)行研究。3.8.1SD卡簡介SD卡高度集成閃存,具備串行和隨機(jī)存取能力??梢酝ㄟ^專用優(yōu)化速度的串行接口訪問,數(shù)據(jù)傳輸可靠。接口允許幾個卡垛疊,通過他們的外部連接。接口完全符合最新的消費者標(biāo)準(zhǔn),叫做SD卡系統(tǒng)標(biāo)準(zhǔn),由SD卡系統(tǒng)規(guī)范定義。SD卡系統(tǒng)是一個新的大容量存儲系統(tǒng),基于半導(dǎo)體技術(shù)的變革。它的出現(xiàn),提供了一個便宜的、結(jié)實的卡片式的存儲媒介,為了消費多媒體應(yīng)用。SD卡可以設(shè)計出便宜的播放器和驅(qū)動器而沒有可移動的部分。一個低耗電和廣供電電壓的可以滿足移動電話、電池應(yīng)用比如音樂播放器、個人管理器、掌上電腦、電子書、電子百科全書、電子詞典等等。使用非常有效的數(shù)據(jù)壓縮比如MPEG,SD卡可以提供足夠的容量來應(yīng)付多媒體數(shù)據(jù)。內(nèi)部結(jié)構(gòu)框如圖3-8-1:圖3-8-1SD卡內(nèi)部結(jié)構(gòu)圖框圖特性:◎容量:32MB/64MB/128MB/256MB/512MB/1GB/2GB/4GB◎兼容規(guī)范版本1.01◎卡上錯誤校正◎支持CPRM◎兩個可選的通信協(xié)議:SD模式和SPI模式◎可變時鐘頻率0-25MHz◎通信電壓范圍:2.0-3.6V工作電壓范圍:2.0-3.6V◎低電壓消耗:自動斷電及自動睡醒,智能電源管理◎無需額外編程電壓◎卡片帶電插拔保護(hù)◎正向兼容MMC卡◎高速串行接口帶隨即存取---支持雙通道閃存交叉存?。鞂懠夹g(shù):一個低成本的方案,能夠超高速閃存訪問和高可靠數(shù)據(jù)存儲---最大讀寫速率:10Mbyte/s◎最大10個堆疊的卡(20MHz,Vcc=2.7-3.6V)◎數(shù)據(jù)壽命:10萬次編程/擦除◎CE和FCC認(rèn)證◎PIP封裝技術(shù)◎尺寸:24mm寬×32mm長×1.44mm厚SD卡接口可以支持兩種操作模式:◎SD卡模式◎SPI模式主機(jī)系統(tǒng)可以選擇以上其中任一模式,SD卡模式允許4線的高速數(shù)據(jù)傳輸。SPI模式允許簡單通用的SPI通道接口,這種模式相對于SD模式的不足之處是喪失了速度。本系統(tǒng)選擇了SPI模式,與主控芯片SPI外設(shè)進(jìn)行通信。SPI模式針腳定義如表3-8-1:針腳名稱類型描述1CSI片選(負(fù)有效)2DII數(shù)據(jù)輸入3VssS地4VccS供電電壓5CLKI時鐘6Vss2S地7DOO數(shù)據(jù)輸出8RSV--9RSV--表3-8-1S:電源供電,I:輸入O:輸出I/O:雙向PP:I/O使用推挽驅(qū)動3.8.2FAT16文件一、FAT16的定義FAT(FileAllocationTable)是“文件分配表”的意思。顧名思義,就是用來記錄文件所在位置的表格,它對于硬盤的使用是非常重要的,假若丟失文件分配表,那么硬盤上的數(shù)據(jù)就會因無法定位而不能使用了。不同的操作系統(tǒng)所使用的文件系統(tǒng)不盡相同,在個人計算機(jī)上常用的操作系統(tǒng)中,MS-DOS6.x及以下版本使用FAT16;OS/2使用HPFS;WindowsNT則使用NTFS;而MS-DOS7.10及ROM-DOS7.10同時提供了FAT16及FAT32供用戶選用。其中我們接觸最多的是FAT16、FAT32文件系統(tǒng)。二、FAT16文件系統(tǒng)FAT16使用了16位的空間來表示每個扇區(qū)(Sector)配置文件的情形,故稱之為FAT16。FAT16由于受到先天的限制,因此每超過一定容量的分區(qū)之后,它所使用的簇(Cluster)大小就必須擴(kuò)增,以適應(yīng)更大的磁盤空間。所謂簇就是磁盤空間的配置單位,就象圖書館內(nèi)一格一格的書架一樣。每個要存到磁盤的文件都必須配置足夠數(shù)量的簇,才能存放到磁盤中。FAT16各分區(qū)與簇大小的關(guān)系如下表:分區(qū)大小 FAT16簇大小16MB-127MB 2KB128MB-255MB 4KB256MB-511MB 8KB512MB-1023MB 16KB1024MB-2047MB32KB如果你在一個1000MB的分區(qū)中存放50KB的文件,由于該分區(qū)簇的大小為16KB,因此它要用到4個簇才行。而如果是一個1KB的文件,它也必須使用一個簇來存放。三、簇的概念磁盤上最小可尋址存儲單元稱為扇區(qū),通常每個扇區(qū)為512個字節(jié)(或字符)。由于多數(shù)文件比扇區(qū)大得多,因此如果對一個文件分配最小的存儲空間,將使存儲器能存儲更多數(shù)據(jù),這個最小存儲空間即稱為簇。根據(jù)存儲設(shè)備(磁盤、閃卡和硬盤)的容量,簇的大小可以不同以使存儲空間得到最有效的應(yīng)用。在早期的360KB磁盤上,簇大小為2個扇區(qū)(1,024字節(jié));第一批的10MB硬盤的簇大小增加到8個扇區(qū)(4,096字節(jié));現(xiàn)在的小型閃存設(shè)備上的典型簇大小是8KB或16KB。2GB以上的硬盤驅(qū)動器有32KB的簇。表2列出在給定簇大小和FAT類型的最大分區(qū)。為什么采用簇呢?通常,存儲設(shè)備上的空間分配是隨機(jī)的。在一個新存儲設(shè)備上,文件連續(xù)存儲,并知道開始和結(jié)束扇區(qū)和長度,在讀取時可以根據(jù)這些信息重新得到所存儲的文件。但是,過一段時間后,有些文件將會被擦掉,同時可能有些文件增大,這時不能保證同一個文件存儲在連續(xù)的一系列扇區(qū)里。因此,需要一種方法來辨別哪個扇區(qū)被分配到某些文件,以及還有哪些扇區(qū)可用。這時可以采用一種表結(jié)構(gòu)來實現(xiàn)這種功能,使每個扇區(qū)對應(yīng)一個表記錄。然而,由于大多數(shù)文件存儲在多個扇區(qū),一個記錄對應(yīng)一個扇區(qū)的作法將造成一些浪費。因此,采用每個記錄代表一個固定數(shù)量扇區(qū)將更有意義,這個固定扇區(qū)被稱為簇。四、給文件分配扇區(qū)如果給一個文件(簇)分配的最小存儲空間大小取決于保存該文件的介質(zhì)類型,我們必須有一種方法來標(biāo)明某個簇是否可用或者已分配給一個文件。如果已將一個簇分配給一個文件,我們必須知道這個簇分配給文件的哪部分了,這就是通過一個鏈接列表來實現(xiàn),即文件分配表(FAT)。FAT僅僅是一個包含N個整數(shù)的列表,N是存儲設(shè)備上最大的簇數(shù)。表中每個記錄的位數(shù)稱為FAT大小,是12、16或32三個數(shù)之一。早期的存儲設(shè)備使用12位(1.5字節(jié))FAT以減少浪費,12位可以提供4,096個簇。假定一個簇具有兩個扇區(qū)(1,024字節(jié)),則代表存儲設(shè)備將近有4.2MB存儲容量。更大的簇就能實現(xiàn)更大的存儲空間,但是在存儲較小文件時,由于簇沒有完全裝滿而將造成存儲空間的浪費。一幅BMP格式圖片需要本系統(tǒng)中使用的SD卡文件系統(tǒng)為FAT16,需要將BMP格式圖片進(jìn)行存儲,首先要對圖片數(shù)據(jù)的采集,其次一個要點是要明白BMP格式圖片是如何存儲到SD卡當(dāng)中的。使用WinHex軟件可查看SD卡中每個地址里存儲的數(shù)據(jù)。在文件目錄下,一幅BMP格式圖片占用32個字節(jié),其中8個字節(jié)為文件名,3個字節(jié)為文件后綴名,1個字節(jié)為文件屬性,1個字節(jié)為NFAT分區(qū)標(biāo)志,1個字節(jié)為創(chuàng)建時間10ms的倍數(shù),2個字節(jié)為創(chuàng)建時間,2個字節(jié)為創(chuàng)建日期,2個字節(jié)為訪問日期,2個字節(jié)為文件開始簇號高16位,2個字節(jié)為最后更新時間,2個字節(jié)為最后更新日期,2個字節(jié)為文件開始簇號低16位,4個字節(jié)為文件大小。如圖3-8-2:圖3-8-2文件目錄對文件目錄進(jìn)行創(chuàng)建后,需要將BMP格式的像素點數(shù)據(jù)儲存到SD卡的地址中,此時,需要尋找空余的簇進(jìn)行數(shù)據(jù)寫入,F(xiàn)AT表里面記錄一個文件所在的簇號。這時需要理解FAT表簇號的關(guān)系。FAT表如圖3-8-3:圖3-8-3FAT表偏移0X400~0X401表示序號第0個簇,0X402~0X403表示序號第1個簇,0X404~0X405表示序號第2個簇,一直忘下推。如圖所示,在0X404~0X405第2個簇數(shù)據(jù)不為0,表明第2個簇儲存了文件數(shù)據(jù),不為0XFF,表明此數(shù)據(jù)還沒有存完,0X03則表示剩下的文件數(shù)據(jù)保存在0X406~0X407第3個簇中。查看0X406~0X407第3個簇,數(shù)據(jù)不為0,也不為0XFF,表明此數(shù)據(jù)還沒有存完,0X04則表示剩下的文件數(shù)據(jù)保存在0X408~0X409第4個簇中………直到在某個簇中的值為0XFF,此時,0X420~0X421第16個簇為0XFF,表明第一個文件數(shù)據(jù)在第16個簇結(jié)束。FAT表記錄了磁盤數(shù)據(jù)文件的存儲鏈表,對于數(shù)據(jù)的讀取而言是極其重要的,以至于Microsoft為其開發(fā)的FAT文件系統(tǒng)中的FAT表創(chuàng)建了一份備份,就是我們看到的FAT2。FAT2與FAT1的內(nèi)容通常是即時同步的,也就是說如果通過正常的系統(tǒng)讀寫對FAT1做了更改,那么FAT2也同樣被更新。3.9時鐘、存儲電路如今社會,生活節(jié)奏快,人們每時每刻都在關(guān)注著時間,在消費電子應(yīng)用上加上時鐘功能已經(jīng)很普遍。在本設(shè)計中,為了顯示時間功能,雖然STM32F103VCT6具有RTC功能,但功能不夠完善,所以使用了DS1302時鐘芯片,而參數(shù)存儲選擇了AT24C02EEPROM芯片。3.9時鐘電路設(shè)計如圖3-8-1:圖3-8-1時鐘電路設(shè)計一、DS1302簡介:DS1302是美國DALLAS公司推出的一種高性能、低功耗的實時時鐘芯片,附加31字節(jié)靜態(tài)RAM,采用SPI三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號和RAM數(shù)據(jù)。實時時鐘可提供秒、分、時、日、星期、月和年,一個月小與31天時可以自動調(diào)整,且具有閏年補償功能。工作電壓寬達(dá)2.5~5.5V。采用雙電源供電(主電源和備用電源),可設(shè)置備用電源充電方式,提供了對后備電源進(jìn)行電流充電的能力。DS1302用于數(shù)據(jù)記錄,特別是對某些具有特殊意義的數(shù)據(jù)點的記錄上,能實現(xiàn)數(shù)據(jù)與出現(xiàn)該數(shù)據(jù)的時間同時記錄,因此廣泛應(yīng)用于測量系統(tǒng)中。DS1302有以下幾組寄存器如表3-8-2:讀寄存器寫寄存器BIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0范圍81h80hCH10秒秒00~5983h82h10分分00~5985h84h12/24010AM/PM時時1-12/0-2387h86h0010日日1-3189h88h00010月月1-128Bh8Ah00000周日1-78Dh8Ch10年年00-998Fh8EhWP0000000--表3-8-2二、AT24C02簡介:AT24C02是一個2K位串行CMOSEEPROM,內(nèi)部含256個8位字節(jié),CATALYST公司的先進(jìn)CMOS技術(shù)實質(zhì)上減少了器件的功耗。AT24C02有一個16字節(jié)頁寫緩沖器。該器件通過IC總線接口進(jìn)行操作,有一個專門的寫保護(hù)功能。AT24C02支持IC,總線數(shù)據(jù)傳送協(xié)議IC,總線協(xié)議規(guī)定任何將數(shù)據(jù)傳送到總線的器件作為發(fā)送器。任何從總線接收數(shù)據(jù)的器件為接收器。數(shù)據(jù)傳送是由產(chǎn)生串行時鐘和所有起始停止信號的主器件控制的。主器件和從器件都可以作為發(fā)送器或接收器,但由主器件控制傳送數(shù)據(jù)(發(fā)送或接收)的模式,通過器件地址輸入端A0、A1和A2可以實現(xiàn)將最多8個AT24C02器件連接到總線上。AT24C02管腳描述如表3-8-3:管腳名稱功能A0A1A器件地址選擇SDA串行數(shù)據(jù)/地址SCL串行時鐘WP寫保護(hù)Vcc+1.8V~6.0V工作電壓Vss地SCL串行時鐘:AT24C02串行時鐘輸入管腳用于產(chǎn)生器件所有數(shù)據(jù)發(fā)送或接收的時鐘,這是一個輸入管腳。SDA串行數(shù)據(jù)/地址:AT24C02雙向串行數(shù)據(jù)/地址管腳用于器件所有數(shù)據(jù)的發(fā)送或接收,SDA是一個開漏輸出管腳,可與其它開漏輸出或集電極開路輸出進(jìn)行線或(wire-OR)。A0、A1、A2器件地址輸入端:這些輸入腳用于多個器件級聯(lián)時設(shè)置器件地址,當(dāng)這些腳懸空時默認(rèn)值為0。當(dāng)使用AT24C02時最大可級聯(lián)8個器件。如果只有一個AT24C02被總線尋址,這三個地址輸入腳(A0、A1、A2)可懸空或連接到Vss,如果只有一個AT24C02被總線尋址這三個地址輸入腳(A0、A1、A2)必須連接到Vss。WP寫保護(hù):如果WP管腳連接到Vcc,所有的內(nèi)容都被寫保護(hù)只能讀。當(dāng)WP管腳連接到Vss或懸空允許器件進(jìn)行正常的讀/寫操作3.9.2功能介紹在主界面中,主控芯片與DS1302時鐘芯片進(jìn)行數(shù)據(jù)通信,通過觸摸屏可以對時間進(jìn)行設(shè)置,有時間顯示功能,存儲拍攝照片時,需要記錄照片的創(chuàng)建時間,創(chuàng)建日期,這時也需要讀取DS1302寄存器數(shù)據(jù)來存儲。AT24C02EEPROM主要用來記錄主要參數(shù),以便于下次開機(jī)時,參數(shù)還能保持上次關(guān)機(jī)時的狀態(tài)。EEPROM中記錄了照片文件名的數(shù)據(jù),第一張照片文件名為PI0000,第二張照片文件名則為PI0001,每次有照片存儲文件名會自動加1,而且存儲到AT24C02中,下次開機(jī)時,自動讀取AT24C02中的數(shù)據(jù),防止在SD中出現(xiàn)重命名的現(xiàn)象。3.10USB2.0通信3.10.1USB簡介USB是英文UniversalSerialBus的縮寫,中文含義是“通用串行總線”。它是一種應(yīng)用在計算機(jī)領(lǐng)域的新型接口技術(shù)。早在1995年,就已經(jīng)有個人電腦帶有USB接口了,但由于缺乏軟件及硬件設(shè)備的支持,這些個人電腦的USB接口都閑置未用。1998年后,隨著微軟在Windows98中內(nèi)置了對USB接口的支持模塊,加上USB設(shè)備的日漸增多,USB接口才逐步走進(jìn)了實用階段。這幾年,隨著大量支持USB的個人電腦的普及,USB逐步成為個人電腦的標(biāo)準(zhǔn)接口已經(jīng)是大勢所趨。在主機(jī)端,最新推出的個人電腦幾乎100%支持USB;而在外設(shè)端,使用USB接口的設(shè)備也與日俱增,例如數(shù)碼相機(jī)、掃描儀、游戲桿、磁帶和軟驅(qū)、圖像設(shè)備、打印機(jī)、鍵盤、鼠標(biāo)等等。USB2.0技術(shù)規(guī)范是有由Compaq、HewlettPackard、Intel、Lucent、Microsoft、NEC、Philips共同制定、發(fā)布的,規(guī)范把外設(shè)數(shù)據(jù)傳輸速度提高到了480Mbps,是USB1.1設(shè)備的40倍!但按照原定計劃新的USB2.0標(biāo)準(zhǔn)只是準(zhǔn)備把這個標(biāo)準(zhǔn)定在240Mbps,后來,經(jīng)過努力將它提高到了480Mbps。用戶的需求,是促進(jìn)科技發(fā)展的動力,廠商也同樣認(rèn)識到了這個瓶頸。這時,COMPAQ、HewlettPackard、Intel、Lucent、Microsoft、NEC和PHILIPS這7家廠商聯(lián)合制定了USB2.0接口標(biāo)準(zhǔn)。USB2.0將設(shè)備之間的數(shù)據(jù)傳輸速度增加到了480Mbps,比USB1.1標(biāo)準(zhǔn)快四十倍左右,速度的提高對于用戶的最大好處就是意味著用戶可以使用到更高效的外部設(shè)備,而且具有多種速度的周邊設(shè)備都可以被連接到USB2.0的線路上,而且無需擔(dān)心數(shù)據(jù)傳輸時發(fā)生瓶頸效應(yīng)。USB接口定義如圖圖3-10-1。圖3-10-1USB接口定義3.10.2電路設(shè)計STM32F103VCT6微控制器自帶了USB全速通信接口,數(shù)據(jù)口分別在70引腳(USB_DM)和71引腳(USB_DP),程序設(shè)計中需對IO口進(jìn)行設(shè)置,設(shè)置為復(fù)用功能。USB通信電路設(shè)計如圖圖3-10-1。圖3-10-1USB通信電路設(shè)計電路設(shè)計中,USB數(shù)據(jù)線串聯(lián)22R的電阻,USB_EN為使能端,當(dāng)啟動USB通信時,需對主機(jī)進(jìn)行一個信號提醒,提醒主機(jī)有設(shè)備需要寫入。USB_EN通過一個IO口對其控制,控制一個PNP三極管使USB_DP數(shù)據(jù)線上拉或下拉。主機(jī)檢測是否有設(shè)備請求輸入時,需要設(shè)備將D+端口拉高一段時間,主機(jī)立即發(fā)送數(shù)據(jù)請求,之后再由設(shè)備應(yīng)答。USB使能端加上一個發(fā)光二極管,當(dāng)USB使能時,可以由發(fā)光二極管來指示。3.10.3USB程序分析USB采用“令牌包”-“數(shù)據(jù)包”-“握手包”的傳輸機(jī)制,在令牌包中指定數(shù)據(jù)包去向者來源的設(shè)備地址和端點(Endpoint),從而保證了只有一個設(shè)備對被廣播的數(shù)據(jù)包/令牌作出響應(yīng)。握手包表示了傳輸?shù)某晒εc否。管道(Pipe)是主機(jī)和設(shè)備端點之間數(shù)據(jù)傳輸?shù)哪P停灿袃煞N類型的管道:無格式的流管道(StreamPipe)和有格式的信息管道(MessagePipe)。任何USB設(shè)備一旦上電就存在一個信息管道,即默認(rèn)的控制管道默認(rèn)的控制管道默認(rèn)的控制管道默認(rèn)的控制管道,USB主機(jī)通過該管道來獲取設(shè)備的描述、配置、狀態(tài),并對設(shè)備進(jìn)行配置。USB設(shè)備連接到HOST時,HOST必須通過默認(rèn)的控制管道對其進(jìn)行枚舉,完成獲得其設(shè)備描述、進(jìn)行地址分配、獲得其配置描述、進(jìn)行配置等操作方可正常使用。USB設(shè)備的即插即用特性即依賴于此。USB體系定義了四種類型的傳輸,它們是:控制傳輸:主要用于在設(shè)備連接時對設(shè)備進(jìn)行枚舉以及其他因設(shè)備而已的特定操作。中斷傳輸:用于對延遲要求嚴(yán)格、小量數(shù)據(jù)的可靠傳輸,如鍵盤、游戲手柄等。批量傳輸:用于對延遲要求寬松,大量數(shù)據(jù)的可靠傳輸,如U盤等。同步傳輸:用于對可靠性要求不高的實時數(shù)據(jù)傳輸,如攝像頭、USB音響等。ST公司提供了TheUSB-FS-Devicelibrary固件庫,只要理解了固件庫和USB通信協(xié)議,便可以方便的使用了。典型的USB應(yīng)用與USB-FS-Devicelibrary的關(guān)系圖如圖3-10-3:圖3-10-3典型的USB應(yīng)用與USB-FS-Devicelibrary的關(guān)系圖ST提供給我們的TheUSB-FS-Devicelibrary固件庫,它由STM32_USB_FS_Device_Driver和ApplicationInterfacelayer兩個部分組成。其中STM32_USB_FS_Device_Driver這層管理USB的硬件設(shè)備和USB標(biāo)準(zhǔn)協(xié)議的直接交互,它又由LowLayer和MediumLayer兩個層組成;ApplicationInterfacelayer-HighLayer這層又叫HighLayer層,它在固件庫核和應(yīng)用提供給用戶一個完整的接口。和其他的接口一樣,當(dāng)受到USB的中斷后,進(jìn)入stm32f10x_it.c中的USB_LP_CAN1_RX0_IRQHandler()和USB_HP_CAN1_TX_IRQHandler()中斷服務(wù)子程序。其中優(yōu)先級高的由USB_HP_CAN1_TX_IRQHandler處理,優(yōu)先級低的由USB_LP_CAN1_RX0_IRQHandler處理。對于USB_HP_CAN1_TX_IRQHandler函數(shù),它直接調(diào)用usb_int(.h,.c)中的CTR_HP(),然后根據(jù)發(fā)送和接受數(shù)據(jù),它調(diào)用usb_endp(.c)中的EPX_IN_Callback()或EPX_OUT_Callback()函數(shù)。對于EPX_IN_Callback和EPX_OUT_Callback()這14個函數(shù)(X=1,2...7)它們在usb_conf(.h)中通過宏定義#defineEPX_IN_CallbackNOP_Process#defineEPX_OUT_CallbackNOP_Process來由用戶決定是否提供具體的實現(xiàn)并調(diào)用。而將它們和CTR_HP聯(lián)系在一起的操作,在usb_istr(.h,.c)中以下面的形式給出:void(*pEpInt_IN[7])(void)={EP1_IN_Callback,...EP7_IN_Callback,};void(*pEpInt_OUT[7])(void)={EP1_OUT_Callback,...EP7_OUT_Callback,};對于USB_HP_CAN1_TX_IRQHandler函數(shù),它直接調(diào)用usb_istr(.h,.c)中的USB_Istr(),USB_Istr()根據(jù)具體的請求決定是調(diào)用usb_istr(.h,.c)中下面函數(shù)voidCTR_Callback(void);voidDOVR_Callback(void);voidERR_Callback(void);voidWKUP_Callback(void);voidSUSP_Callback(void);voidRESET_Callback(void);voidSOF_Callback(void);voidESOF_Callback(void);還是調(diào)用usb_int(.h,.c)中的voidCTR_LP(void)。對于上面的這個函數(shù)是否給出定義,是由用戶在usb_conf(.h)中,通過下面的宏決定的/*#defineCTR_CALLBACK*//*#defineDOVR_CALLBACK*//*#defineERR_CALLBACK*//*#defineWKUP_CALLBACK*//*#defineSUSP_CALLBACK*//*#defineRESET_CALLBACK*/#defineSOF_CALLBACK/*#defineESOF_CALLBACK*/如果調(diào)用了CTR_LP()函數(shù),CTR_LP()函數(shù)中如果不是端點0的請求,則和CTR_LP一樣的順序處理;如果是端點0,它調(diào)用usb_core(.h,.c)中的uint8_tSetup0_Process(void);uint8_tOut0_Process(void);uInt8_tIn0_Process(void);如果是標(biāo)準(zhǔn)的請求,便調(diào)用usb_core(.h,.c)中的下面的函數(shù)RESULTStandard_SetEndPointFeature(void);RESULTStandard_SetDeviceFeature(void);uint8_t*Standard_GetConfiguration(uint16_tLength);RESULTStandard_SetConfiguration(void);uint8_t*Standard_GetInterface(uint16_tLength);RESULTStandard_SetInterface(void);Uint8_t*Standard_GetDescriptorData(uint16_t...);uint8_t*Standard_GetStatus(uint16_tLength);RESULTStandard_ClearFeature(void);voidSetDeviceAddress(uint8_t);這些函數(shù),又調(diào)用USER_STANDARD_REQUESTS結(jié)構(gòu)指定的中,用戶在usb_prop(.h,.c)中定義的函數(shù)。如果不是標(biāo)準(zhǔn)請求,則調(diào)用DEVICE_PROP結(jié)構(gòu)指定的中,用戶在usb_prop(.h,.c)中定義的函數(shù)其他一些函數(shù)。第四章軟件設(shè)計系統(tǒng)功能的實現(xiàn)是依靠硬件和軟件良好的結(jié)合,硬件決定了系統(tǒng)基本結(jié)構(gòu)和特性,而軟件則是驅(qū)動系統(tǒng)的靈魂,兩者缺一不可,相輔相成。本系統(tǒng)的軟件設(shè)計部分有多個子程序組成。主程序控制整個系統(tǒng),控制和協(xié)調(diào)各個執(zhí)行模塊。子程序?qū)崿F(xiàn)具體的性質(zhì)功能。本設(shè)計的軟件程序包括主程序、中斷子程序、圖像采集程序、TFT液晶顯示程序、SD卡FAT系統(tǒng)程序等等。4主程序流程圖主程序主要完成系統(tǒng)參數(shù)、微控制器外設(shè)(IO數(shù)據(jù)口、SPI、USART、RCC、I2C)、TFT液晶、觸摸屏、SD卡、文件系統(tǒng)的初始化、按鍵處理、時鐘和存儲模塊的初始化,其主程序流程圖如圖圖4-1,Mycamera程序流程圖如圖圖4-2,Picture程序流程圖如圖圖4-3。系統(tǒng)參數(shù)及外圍設(shè)備初始化Mysystem系統(tǒng)參數(shù)及外圍設(shè)備初始化Mysystem界面進(jìn)入主界面Mycamera界面USB界面E-book界面Picture界面觸摸顯示屏觸摸顯示屏圖標(biāo)進(jìn)行選擇時間顯示拍攝按鍵是否按下拍攝按鍵是否按下NY微控制器采集圖像數(shù)據(jù)數(shù)據(jù)存儲到SD卡中焦距按鍵是否按下鏡頭伸出鏡頭拉近S3S2TFT液晶彩屏顯示圖像圖像傳感器系統(tǒng)參數(shù)初始化圖4-2Mycamera程序流程圖打開、返回按鍵主界面返回打開、返回按鍵主界面返回打開返回刪除圖片刪除圖片在SD卡顯示進(jìn)入界面掃描SD卡中圖片信息圖片以列表的形式在液晶上顯示上下鍵選擇上下鍵選擇第五章系統(tǒng)測試與分析5.1系統(tǒng)設(shè)計過程經(jīng)過一段時間的資料查閱,明確了畢業(yè)設(shè)計的方案,初步確定了設(shè)計所需要的元件,也逐漸了解到了一些主要芯片的技術(shù)資料。經(jīng)過使用專業(yè)的電路制圖軟件Protel99SE來設(shè)計原理圖,然后導(dǎo)入PCB圖進(jìn)行布線和元器件的位置擺放,其中既要考慮美觀、干擾等問題,也要考慮到元器件的封裝是否和實際器件相匹配。遵守布線地線大于電源線大于信號線的原則,把幾個模塊所用到的器件集中擺放在一起,以便進(jìn)行單個模塊的調(diào)試。在設(shè)計中,考慮到數(shù)碼相機(jī)體積不能太大,要符合手持消費電子的要求,所以大部分元器件都使用貼片式封裝,主控芯片IO口排列零亂,不像51或者AVR的IO口有規(guī)律的排列,在畫PCB過程中,要考慮到數(shù)據(jù)線與電源線合理安排,PCB走線最小達(dá)到了7mil,主控芯片IO口使用到了90%,設(shè)計為雙層板,由于PCB線路要求嚴(yán)格,平時打印出的PCB會受到打印機(jī)好壞的影響,泡板過程中會受到鹽酸與雙氧水濃度及量的影響,最后無法達(dá)到預(yù)期效果。這種情況下,只好將畫好的PCB圖發(fā)送到專業(yè)制板廠進(jìn)行制板,在發(fā)送前,需要仔細(xì)檢查PCB圖和原理圖是否符合,還有檢查PCB圖元件是否擺放合理。通過該過程,了解了專業(yè)制板需要的步驟,明白了PCB圖的嚴(yán)格性,收到工廠制作的PCB板后,首先焊接主控制芯片以及電源、下載模塊,調(diào)試電源能夠保持穩(wěn)定,芯片能夠成功編譯Flash。最后是焊接其他外圍器件,焊接時間不應(yīng)太久,以免燒壞芯片或元器件,焊接時杜絕虛焊。這樣一塊電路板就制作完成了,接下來的就是單個模塊的調(diào)試。5.2單個模塊的調(diào)試在所有的元器件都焊接完成后,首先檢測整個系統(tǒng)電源是否正常,在調(diào)試過程中,遇到了一個非常麻煩的問題,就是穩(wěn)壓芯片AMS1117-3.3V輸出的電壓達(dá)不到+3.3V,隨后逐一檢測了每個模塊,最后問題出現(xiàn)在主控芯片的參考電壓端口VREF+與VREF-,兩者之間的電源接反了,隨后割掉銅線,按照正確方式連接電源。隨后對各個模塊進(jìn)行了測試包括時鐘與存儲模塊,TFT液晶顯示器,觸摸屏,SD卡與文件系統(tǒng),圖像采集模塊以及USB通信。時鐘芯片DS1302與AT24C02EEPROM相對比較容易些,平時利用課余時間,使用過51和AVR進(jìn)行對DS1302與AT24C02控制采集,對DS1302與AT24C02的時序圖及命令也比較熟悉。調(diào)試時鐘芯片與EEPROM時,通過STM32F103VCT6的串口1進(jìn)行調(diào)試,在對時鐘芯片與EEPROM讀寫數(shù)據(jù)時,將數(shù)據(jù)通過串口發(fā)送到PC機(jī)串口調(diào)試助手上,可以更直觀的、更方便的觀察到讀寫程序是否能夠成功的采集數(shù)據(jù)。TFT液晶顯示器電路的調(diào)試簡單,但軟件部分復(fù)雜,需要熟悉寫寄存器,讀寄存器以及讀寫數(shù)據(jù)的時序,由于ILI9320寄存器繁多,對液晶進(jìn)行初始化,需要對所有寄存器進(jìn)行設(shè)置包括電源寄存器,顯示寄存器,地址寄存器等等。TFT液晶顯示器一個像素點設(shè)置為RGB(565)格式,剛開始接觸TFT液晶屏是不明白一個像素點到底是怎樣傳輸?shù)?,也不知道一個像素點是由什么數(shù)據(jù)組成的,經(jīng)過查看資料,閱讀相關(guān)的文件資料,知道了24位BMP格式圖片的組成,以及RGB(565)像素點的組成。TFT液晶顯示器不像字符式液晶,可以直接輸入地址,再輸入ASCII碼數(shù)值,便可以在指定地址上顯現(xiàn)數(shù)據(jù)。TFT液晶顯示器只能一個點一個點的顯示,顯示字符或者中文都很繁瑣,如果用它來顯示字符或者中文,需要編寫顯示字符或者中文的程序,調(diào)試大部分時間都花在了TFT液晶應(yīng)用函數(shù)的編寫上。字符函數(shù)寫完后,要對顯示界面進(jìn)行設(shè)計,TFT液晶為320*240,因此顯示范圍很大,在設(shè)計過程中,需要精確到每個點,才能完美的展現(xiàn)T

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論