![MCS51 MCU讀寫SD卡版(單片機(jī)論文_第1頁](http://file1.renrendoc.com/fileroot_temp2/2021-2/16/0f1c7bf6-0a77-46f7-9b2e-52065276237c/0f1c7bf6-0a77-46f7-9b2e-52065276237c1.gif)
![MCS51 MCU讀寫SD卡版(單片機(jī)論文_第2頁](http://file1.renrendoc.com/fileroot_temp2/2021-2/16/0f1c7bf6-0a77-46f7-9b2e-52065276237c/0f1c7bf6-0a77-46f7-9b2e-52065276237c2.gif)
![MCS51 MCU讀寫SD卡版(單片機(jī)論文_第3頁](http://file1.renrendoc.com/fileroot_temp2/2021-2/16/0f1c7bf6-0a77-46f7-9b2e-52065276237c/0f1c7bf6-0a77-46f7-9b2e-52065276237c3.gif)
![MCS51 MCU讀寫SD卡版(單片機(jī)論文_第4頁](http://file1.renrendoc.com/fileroot_temp2/2021-2/16/0f1c7bf6-0a77-46f7-9b2e-52065276237c/0f1c7bf6-0a77-46f7-9b2e-52065276237c4.gif)
![MCS51 MCU讀寫SD卡版(單片機(jī)論文_第5頁](http://file1.renrendoc.com/fileroot_temp2/2021-2/16/0f1c7bf6-0a77-46f7-9b2e-52065276237c/0f1c7bf6-0a77-46f7-9b2e-52065276237c5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、摘 要近年來, SD存儲(chǔ)卡在嵌入式產(chǎn)品中的應(yīng)用越來越廣泛, 但SD卡接口一般僅集成在32位高端處理器中, 一般51單片機(jī)則由于資源限制沒有該接口。因此,如何解決51單片機(jī)應(yīng)用系統(tǒng)存取SD卡大容量數(shù)據(jù)就顯得很有實(shí)際意義。本系統(tǒng)使用MXT8051F04A作為單片機(jī)與SD卡的接口芯片, 采用SPI串行方式對(duì)SD卡的扇區(qū)進(jìn)行讀寫,讀寫過程和結(jié)果通過串口調(diào)試助手在主機(jī)上顯示。本論文的核心主要從硬件設(shè)計(jì)和軟件編程兩個(gè)大的方面介紹了系統(tǒng)的實(shí)現(xiàn)。硬件電路設(shè)計(jì)主要包括MXT8051F04A最小系統(tǒng)電路、電源電路、串口電路、SD卡接口電路。程序采用C語言在Keil軟件下進(jìn)行編寫、調(diào)試,程序主要包括SD卡扇區(qū)讀寫程
2、序、串口程序等軟件模塊。系統(tǒng)實(shí)現(xiàn)了對(duì)SD卡扇區(qū)的讀寫,達(dá)到了設(shè)計(jì)的要求和目的。關(guān)鍵字:MXT8051F04A,SD卡,KeilABSTRACTIn recent years, SD memory card applications in the embedded products more widely, but generally only the integrated SD card interface in 32-bit high-end processor, microcontroller 51 is generally not the interface due to resourc
3、e constraints. Therefore, how to solve the 51 SCM applications to access data on large-capacity SD cards seem very practical. The system uses MXT8051F04A as SCM and SD card interface chip, using SPI mode on the SD card serial read and write sectors, reading and writing process and results through th
4、e serial port on the host display debugging assistant. The core of this thesis, the main hardware and software design introduces two major aspects of the system implementation. Hardware design includes MXT8051F04A minimum system circuit, power circuit, the serial port circuitry, SD card interface ci
5、rcuit. Program using C language under the Keil software write, debug, the program includes reading and writing SD card sector program, serial procedures of software modules. System realizes the SD card read and write sectors, meets the design requirements and objectives. Keywords: MXT8051F04A,SD Car
6、d,Keil目 錄第1章 引言11.1 選題背景11.2 研究目標(biāo)和意義11.3 本文要完成的工作1第2章 單片機(jī)讀寫SD卡的硬件電路設(shè)計(jì)32.1 系統(tǒng)硬件平臺(tái)組成32.2 電源模塊32.3 MXT8051F04A單片機(jī)最小系統(tǒng)電路設(shè)計(jì)42.3.1 MXT8051F04A簡介42.3.2 晶振復(fù)位電路82.4 SD卡電路設(shè)計(jì)82.4.1 通訊模式92.4.2 電平匹配92.4.3 硬件接口設(shè)計(jì)102.5 串口電路設(shè)計(jì)122.6 PCB繪制132.7 本章小結(jié)14第3章 單片機(jī)讀寫SD卡的軟件設(shè)計(jì)143.1 SD卡的扇區(qū)讀寫143.1.1 模擬SPI協(xié)議143.1.2 SD卡命令153.1.3
7、SD卡的初始化193.1.4 數(shù)據(jù)塊的讀寫203.2 串口程序25第4章 調(diào)試264.1 系統(tǒng)硬件調(diào)試264.2 軟件調(diào)試274.3 軟硬件的聯(lián)合調(diào)試274.4 本章小結(jié)29第5章 結(jié)束語305.1 總結(jié)305.2 展望30參考文獻(xiàn)31致謝32附錄33附錄一:單片機(jī)讀寫SD卡的完整原理圖33附錄二:單片機(jī)讀寫SD卡的完整程序36外文資料原文63譯文64第1章 引言1.1 選題背景SD卡(Secure Digital Memory Card)中文翻譯為安全數(shù)碼卡,是一種基于半導(dǎo)體快閃記憶器的新一代記憶設(shè)備,它被廣泛地于便攜式裝置上使用,例如個(gè)人數(shù)碼助理(PDA)、數(shù)碼相機(jī)和多媒體播放器等。SD卡
8、由日本松下、東芝及美國SanDisk公司于1999年8月共同開發(fā)研制。大小猶如一張郵票的SD記憶卡,重量只有2克左右,但卻擁有高記憶容量、快速數(shù)據(jù)傳輸率、極大的移動(dòng)靈活性以及很好的安全性。SD卡在現(xiàn)在的日常生活與工作中使用非常廣泛,時(shí)下已經(jīng)成為最為通用的數(shù)據(jù)存儲(chǔ)卡。在諸如MP3、數(shù)碼相機(jī)等設(shè)備上也都采用SD卡作為其存儲(chǔ)設(shè)備。SD卡之所以得到如此廣泛的使用,是因?yàn)樗鼉r(jià)格低廉、存儲(chǔ)容量大、使用方便、通用性與安全性強(qiáng)等優(yōu)點(diǎn)。既然它有著這么多優(yōu)點(diǎn),那么如果將它加入到單片機(jī)應(yīng)用開發(fā)系統(tǒng)中來,將使系統(tǒng)變得更加出色,特別是一些單片機(jī)系統(tǒng)需要長時(shí)間地采集、記錄海量數(shù)據(jù)時(shí),選擇SD卡作為存儲(chǔ)媒質(zhì)是開發(fā)者們一個(gè)很
9、好的選擇。這就要求對(duì)SD卡的硬件與讀寫時(shí)序進(jìn)行研究。1.2 研究目標(biāo)和意義研究51單片機(jī)對(duì)SD卡的讀寫,解決51單片機(jī)應(yīng)用系統(tǒng)存取大容量數(shù)據(jù)。1.3 本文要完成的工作本課題是針對(duì)單片機(jī)讀寫SD卡進(jìn)行研究,由研究目的決定了研究的內(nèi)容涉及了單片機(jī)系統(tǒng)硬件設(shè)計(jì)和SD卡數(shù)據(jù)讀取兩方面。在系統(tǒng)硬件設(shè)計(jì)方面,包括硬件電路的設(shè)計(jì);在軟件設(shè)計(jì)方面,包括SD卡讀寫程序,串口程序。本文將完成以下的任務(wù):1. 基于MXT8051F04A微控制器進(jìn)行讀寫SD卡系統(tǒng)的設(shè)計(jì),即完成本系統(tǒng)硬件器件的選擇和電路的初步設(shè)計(jì)。2. 各子功能模塊硬件電路設(shè)計(jì)、調(diào)試以及軟硬件的聯(lián)合調(diào)試。進(jìn)行模塊軟硬件調(diào)試和實(shí)驗(yàn),驗(yàn)證系統(tǒng)的可靠性。3
10、. 進(jìn)行軟件方面的研究,即SD卡協(xié)議和命令研究還有單片機(jī)串口程序,程序采用C語言在Keil環(huán)境下編寫 。第2章 單片機(jī)讀寫SD卡的硬件電路設(shè)計(jì)2.1 系統(tǒng)硬件平臺(tái)組成圖2-1 系統(tǒng)硬件平臺(tái)如圖2-1所示系統(tǒng)硬件平臺(tái)配置如下:控制器:時(shí)代民芯科技有限公司的MXT8051F04A單片機(jī),運(yùn)行頻率可達(dá)80M。晶振復(fù)位電路:系統(tǒng)采用了RC上電復(fù)位。JTAG電路:用來完成程序的下載和調(diào)試。SD卡電路:SD卡使用的是存儲(chǔ)容量為2G的金士頓SD卡。串口電路:采用了MAX232EP進(jìn)行電平轉(zhuǎn)換和主機(jī)進(jìn)行通信。電源電路:系統(tǒng)采用9V供電,使用兩片ASM1117電源轉(zhuǎn)換芯片分別獲得5V 和3.3V為系統(tǒng)供電。2.
11、2 電源模塊電源是系統(tǒng)最關(guān)鍵的部分,決定著整個(gè)系統(tǒng)的成敗。本系統(tǒng)單片機(jī)供電范圍為3.6-5V電源,而SD卡的供電范圍為2.7-3.6V,所以系統(tǒng)需要兩種電源。本系統(tǒng)采用9V電源供電,通過低壓差三端線性穩(wěn)壓器ASM1117芯片得到5V和3.3V電源。電路如圖2-2所示。圖2-2 電源模塊系統(tǒng)輸入的9V電源首先通過ASM1117-5.0電源轉(zhuǎn)換芯片把輸入的9V電壓轉(zhuǎn)換為5V,然后5V電壓再通過ASM1117-3.3把5V電壓轉(zhuǎn)換為3.3V.。ASM1117前后并行接了多個(gè)濾波、退藕電容,以進(jìn)一步穩(wěn)定線性電源的平滑度,減小電源的紋波,提高電源的帶負(fù)載能力和瞬態(tài)響應(yīng)。2.3 MXT8051F04A單片
12、機(jī)最小系統(tǒng)電路設(shè)計(jì)單片機(jī)最小系統(tǒng)包括:晶振電路、復(fù)位電路。復(fù)位采用了簡單可靠的上電復(fù)位。2.3.1 MXT8051F04A簡介本系統(tǒng)采用了北京時(shí)代民芯科技有限公司自行研制的高性能8051單片機(jī)MXT8051F04A。MXT8051F04A是以高速單指令周期8051為核的MCU。電路擁有豐富的外設(shè),包括PWM、UART、WDT,Timer等,大容量存儲(chǔ)器,內(nèi)嵌32Kx8可在線編程Flash,10位AD,8位DA,若干OP,36x4 LCD driver、POR以及可編程增益放大器(PGA)等模擬電路。電路集成片上調(diào)試系統(tǒng),通過標(biāo)準(zhǔn)JTAG接口,快速診斷復(fù)雜SOC,該調(diào)試系統(tǒng)具有不占用任何硬件資源
13、,支持全速運(yùn)行、單步運(yùn)行、硬件斷點(diǎn)、軟件斷點(diǎn)以及觀察內(nèi)部特殊功能寄存器、程序指針和內(nèi)部RAM等功能。上位機(jī)通過標(biāo)準(zhǔn)JTAG接口以及用戶定義指令執(zhí)行在線編程和在線調(diào)試。同時(shí)提供調(diào)試和編程軟件包。MXT8051F04A的系統(tǒng)框圖如圖2-3。圖2-3 MXT8051F04A系統(tǒng)框圖MXT8051F04A共有128個(gè)引腳,采用QFP128封裝,其引腳排列如圖2-4。圖2-4 MXT8051F04A引腳排列管腳功能大致說明如下(詳細(xì)介紹請(qǐng)看MXT8051F04A數(shù)據(jù)手冊(cè)):系統(tǒng)時(shí)鐘:XTAL1、XTAL2為MXT8051F04A系統(tǒng)時(shí)鐘晶振的輸出、輸入引腳。MXT8051F04A有三個(gè)時(shí)鐘源,外部晶體振
14、蕩器,內(nèi)部振蕩器和32768Hz晶體振蕩器。外部晶體振蕩器和內(nèi)部振蕩器提供主時(shí)鐘,通過內(nèi)部寄存器PCON.1(CKSEL)來選擇。32768Hz晶體振蕩器為RTC提供時(shí)鐘。RTC: RTCXTAL1和RTCXTAL2是RTC的32768Hz晶體振蕩器的輸入輸出引腳。I/O口:MXT8051F04A共提供一個(gè)8位雙向口P0、兩個(gè)5位雙向口P1,P2,每個(gè)口通過口控制寄存器控制輸入輸出,通過上拉控制寄存器控制內(nèi)部上拉電阻,P2具有第二功能,通過方式控制寄存器控制P2口的第二功能。P0、P1、P2分別對(duì)應(yīng)內(nèi)部數(shù)據(jù)寄存器P0、P1、P2,這些寄存器即可字節(jié)尋址也可位尋址,寫入端口的值通過內(nèi)部寄存器鎖存
15、以保證I/O引腳輸出的值保持不變。當(dāng)進(jìn)行讀操作時(shí),當(dāng)引腳配置為輸入時(shí),引腳的電平被讀入,但通過讀-修改-寫指令或者當(dāng)引腳被配置為輸出時(shí)所讀取的是內(nèi)部鎖存器的值,而非引腳的值。CPU通過MOV傳送指令對(duì)I/O口進(jìn)行讀寫操作。 UART :TXD、RXD分別為單片機(jī)串口的發(fā)送引腳和接受引腳。UART 是一個(gè)能進(jìn)行異步傳輸?shù)拇锌凇ART 可以工作在全雙工方式。在所有方式下,接收數(shù)據(jù)放入數(shù)據(jù)緩沖器。這就允許在軟件尚未讀取前一個(gè)數(shù)據(jù)字節(jié)的情況下開始接收第二個(gè)輸入數(shù)據(jù)字節(jié)。 UART在特殊功能寄存器中有一個(gè)串行控制寄存器(SCON)和一個(gè)串行數(shù)據(jù)緩沖器(SBUF)。用同一個(gè)地址訪問發(fā)送寄存器和接收寄存
16、器。讀操作訪問接收寄存器,寫操作訪問發(fā)送寄存器。 如果被允許,UART能產(chǎn)生中斷。UART有兩個(gè)中斷源:一個(gè)發(fā)送中斷標(biāo)志TI(SCON.1)(數(shù)據(jù)字節(jié)發(fā)送結(jié)束時(shí)置位)和一個(gè)接收中斷標(biāo)志RI(SCON.0)(接收完一個(gè)數(shù)據(jù)字節(jié)后置位)。當(dāng)UART轉(zhuǎn)向中斷服務(wù)程序時(shí)硬件不清除UART中斷標(biāo)志,中斷標(biāo)志必須用軟件清除。這就允許軟件查詢UART中斷的原因。PWM口:PWM0、PWM1、PWM2為PWM輸出口。MXT8051F04A內(nèi)建3個(gè)10位PWM, 每個(gè)PWM由兩個(gè)8位寄存器構(gòu)成,它們分別是PWM0H,PWM0L,PWM1H,PWM1L,PWM2H,PWM2L。由PWMXL和PWMXH的低兩位構(gòu)成
17、一個(gè)10位的寄存器。寫入到PWMXH和PWMXL的值代表一個(gè)PWM周期中的高電平寬度。當(dāng)PWM計(jì)數(shù)器等于PWM寄存器時(shí)PWM輸出低電平,當(dāng)PWM計(jì)數(shù)器溢出時(shí)輸出高電平,從而改變PWM輸出的占空比,實(shí)現(xiàn)脈寬調(diào)制。 JTAG接口:MXT8051F04A包含一個(gè)片內(nèi)JTAG接口和邏輯,提供在線編程和在調(diào)試所需要的邊界掃描功能,支持FLASH的讀和寫操作以及非侵入式在系統(tǒng)調(diào)試。JTAG接口有四個(gè)專用引腳,它們是:TCK、TMS、TDI和TDO。運(yùn)放:MXT8051F04A內(nèi)部集成有5個(gè)運(yùn)放器,分別是OP1-OP5。其中OP1、OP2與電阻網(wǎng)絡(luò)一起組成一個(gè)帶256級(jí)增益控制的差分輸入可編程增益控制器PG
18、A,PGA的輸出送到一個(gè)起調(diào)零作用的運(yùn)算放大器OP3,經(jīng)調(diào)零電路調(diào)整后輸出到ADC的模擬通道3(AIN3)。另外三個(gè)運(yùn)算放大器可與外部電阻一起組成恒流源和放大電路。 LCD驅(qū)動(dòng):MXT8051F04A內(nèi)部集成段式LCD驅(qū)動(dòng),LCD 驅(qū)動(dòng)由主要偏壓產(chǎn)生電路、COM驅(qū)動(dòng)器、SEG驅(qū)動(dòng)器幾部分組成。COM1-COM4為位選,SEGMENT0-SEGMENT36為段選。數(shù)模轉(zhuǎn)換器 (DAC):MXT8051F04A片內(nèi)的數(shù)模轉(zhuǎn)換器(DAC)采用電阻串分壓結(jié)構(gòu),主要由8-256譯碼器、模擬開關(guān)、電阻串和輸出緩沖器等幾部分組成。電阻串將參考電源分成256等份,輸入數(shù)據(jù)經(jīng)譯碼器譯碼后,控制模擬開關(guān)選擇合適的
19、電壓經(jīng)輸出緩沖器輸出。2.3.2 晶振復(fù)位電路單片機(jī)最小系統(tǒng)包括:晶振電路、復(fù)位電路。復(fù)位采用了簡單可靠的上電復(fù)位電路。電路如圖2-5所示:圖2-5 晶振復(fù)位電路2.4 SD卡電路設(shè)計(jì)應(yīng)用單片機(jī)讀寫SD卡有兩點(diǎn)需要注意。首先,需要尋找一個(gè)單片機(jī)與SD卡通訊的解決方案;其次,SD卡所能接受的邏輯電平為3.3V,如果是5V單片機(jī)則需要解決電平匹配問題。2.4.1 通訊模式SD卡有兩個(gè)可選的通訊協(xié)議:SD模式和SPI模式。SD模式是SD卡標(biāo)準(zhǔn)的讀寫方式,但是在選用SD模式時(shí),往往需要選擇帶有SD卡控制器接口的MCU,或者必須加入額外的SD卡控制單元以支持SD卡的讀寫。然而MXT8051F04A單片機(jī)
20、沒有集成SD卡控制器接口,若選用SD模式通訊增加了產(chǎn)品的硬件成本。在SD卡數(shù)據(jù)讀寫時(shí)間要求不是很嚴(yán)格的情況下,選用SPI模式可以說是一種最佳的解決方案。因?yàn)樵赟PI模式下,通過四條線就可以完成所有的數(shù)據(jù)交換,并且目前市場上很多MCU都集成有現(xiàn)成的SPI接口電路,采用SPI模式對(duì)SD卡進(jìn)行讀寫操作可大大簡化硬件電路的設(shè)計(jì)。雖然MXT8051F04A不帶SD卡硬件控制器,也沒有現(xiàn)成的SPI接口模塊,但是可以用軟件模擬出SPI總線時(shí)序。本文用SPI總線模式讀寫SD卡。2.4.2 電平匹配SD卡的邏輯電平相當(dāng)于3.3V TTL電平標(biāo)準(zhǔn),而控制芯片的邏輯電平為5V電平標(biāo)準(zhǔn)。因此,它們之間不能直接相連,否
21、則會(huì)有燒毀SD卡的可能。出于安全的考慮,有必要解決電平匹配問題。要解決這一問題,最根本的就是解決邏輯器件接口的電平兼容問題,原則主要有兩條:一為輸出電平器件輸出高電平的最小電壓值,應(yīng)該大于接收電平器件識(shí)別為高電平的最低電壓值;另一條為輸出電平器件輸出低電平的最大電壓值,應(yīng)該小于接收電平器件識(shí)別為低電平的最高電壓值。一般來說,通用的電平轉(zhuǎn)換方案是采用類似SN74ALVC4245的專用電平轉(zhuǎn)換芯片,這類芯片不僅可以用作升壓和降壓,而且允許兩邊電源不同步。但是,這個(gè)方案代價(jià)相對(duì)昂貴,而且一般的專用電平轉(zhuǎn)換芯片都是同時(shí)轉(zhuǎn)換8路、16路或者更多路數(shù)的電平,相對(duì)本系統(tǒng)僅僅需要轉(zhuǎn)換3路來說是一種資源的浪費(fèi)。
22、考慮到SD卡在SPI協(xié)議的工作模式下,通訊都是單向的,于是在單片機(jī)向SD卡傳輸數(shù)據(jù)時(shí)采用晶體管加上拉電阻法的方案,基本電路如圖2-6所示。而在SD卡向單片機(jī)傳輸數(shù)據(jù)時(shí)可以直接連接,因?yàn)樗鼈冎g的電平剛好滿足上述的電平兼容原則,既經(jīng)濟(jì)又實(shí)用。這個(gè)方案需要雙電源供電(一個(gè)5V電源、一個(gè)3.3V電源供電),3.3V電源直接用AMS1117三端線性穩(wěn)壓器從5V電源穩(wěn)壓獲取。圖2-6 SD卡電平轉(zhuǎn)換2.4.3 硬件接口設(shè)計(jì)SD卡提供9Pin的引腳接口便于外圍電路對(duì)其進(jìn)行操作,9Pin的引腳隨工作模式的不同有所差異。在SPI模式下,引腳1(DAT3)作為SPI片選線CS用,引腳2(CMD)用作SPI總線的
23、數(shù)據(jù)輸出線MOSI,而引腳7(DAT0)為數(shù)據(jù)輸入線MISO,引腳5用作時(shí)鐘線(CLK)。除電源和地,保留引腳可懸空,詳細(xì)的引腳定義見表2-1。引腳排列如圖2-7。 圖2-7 SD卡引腳定義表2-1 SD卡引腳功能定義引腳SD模式 SPI模式名稱類型描述名稱類型描述1CD/DAT3IO或PP數(shù)據(jù)線3CSI片選2CMDPP命令DII數(shù)據(jù)輸入3VSS1S電源地VSSS電源地4VDDS電源VDDS電源5CLKI時(shí)鐘SCLKI時(shí)鐘6VSS2S電源地VSS2S電源地7DAT0IO或PP數(shù)據(jù)線0DOO或PP數(shù)據(jù)輸出8DAT1IO或PP數(shù)據(jù)線1RSV 保留 9DAT2IO或PP數(shù)據(jù)線2RSV 保留 單片機(jī)與
24、SD卡的接口電如圖2-8所示。圖2-8 單片機(jī)與SD卡接口電2.5 串口電路設(shè)計(jì)本系統(tǒng)設(shè)計(jì)串口電路主要用于通過串口調(diào)試助手調(diào)試程序和主機(jī)顯示讀寫過程以及結(jié)果。單片機(jī)與PC機(jī)之間采用RS232方式的串行通信。RS232是美國電子工業(yè)協(xié)會(huì)EIA和Bell公司一起開發(fā)的于1969年頒布的通信協(xié)議。它適合傳輸速率在0-20KB/S范圍內(nèi)的通信,現(xiàn)已成為微機(jī)串行通信接口中廣泛應(yīng)用的一種標(biāo)準(zhǔn)。RS232規(guī)定,當(dāng)數(shù)據(jù)傳輸速度小于0-20KB/S且電纜的電容負(fù)荷小于2500pF時(shí),傳輸距離小于15m。本系統(tǒng)采用RS232異步通信方式。為增加信號(hào)在線路上的傳輸距離和提高抗干擾能力,RS232提高了信號(hào)的傳輸電平
25、。該接口采用雙極性信號(hào),公共地線和負(fù)邏輯。對(duì)于發(fā)送端:-5V15V表示邏輯1,+5V+15V表示邏輯O。對(duì)于接收端:電壓低于-3V表示1,高于+3V表示O。它與單片機(jī)的邏輯電平不一致,因此在實(shí)際應(yīng)用時(shí),必須把TTL電平轉(zhuǎn)換為RS232或者對(duì)兩者進(jìn)行逆轉(zhuǎn)換。為方便設(shè)計(jì),提高系統(tǒng)穩(wěn)定性,保護(hù)器件,根據(jù)產(chǎn)品資料,選用MAXIM公司生產(chǎn)的MAX232CPE芯片。MAX232CPE內(nèi)部有2個(gè)線路驅(qū)動(dòng)器(Tx)和2個(gè)接收器(Rx)。內(nèi)部具有兩個(gè)充電泵,把+3.3VDC轉(zhuǎn)換成士10vDC。具有+15KVESD保護(hù),RS232收發(fā)器體積小,應(yīng)用方便,外圍電路簡單。串行接口電路如圖2-9所示。圖2-9 串口電路
26、2.6 PCB繪制PCB設(shè)計(jì)是硬件工作中的難點(diǎn),前面所有工作都集中體現(xiàn)在電路板上,因而PCB的設(shè)計(jì)直接影響整個(gè)系統(tǒng)的性能。在PCB布線之前先對(duì)原理圖進(jìn)行了電氣規(guī)則檢查,在檢查正確無誤的情況下開始布線,布線采用手工布線完成,其中元器件的封裝參考了標(biāo)準(zhǔn)封裝庫,對(duì)于一些Protel中沒有自帶封裝的元器件按照數(shù)據(jù)手冊(cè)上的規(guī)范進(jìn)行制作,并對(duì)二極管、三極管等極性元件,以及一些非對(duì)稱性元件的引腳定義做了仔細(xì)的檢查。在布局上將模擬電路和數(shù)字電路分開,整體上采用模塊化布局,去藕電容放置在靠近器件的電源/地的地方,并將跳線放置在板子的邊緣。為了系統(tǒng)能夠穩(wěn)定的運(yùn)行,電路板子采用雙層設(shè)計(jì),上層為元件層,為了過濾高頻干
27、擾,我們?cè)?V電源與地之間及3.3V電源與地之間分別加入了采用0.luF的濾波電容,以濾除高頻干擾。不同層采用相互垂直走線的方式以避免串?dāng)_。布線時(shí)應(yīng)注意以下規(guī)則:(1)各部件之間引線盡量短。(2)發(fā)熱量大的元件不能放在底層,底層不方便放置散熱片。(3)晶振,電解電容等怕熱元件應(yīng)該遠(yuǎn)離發(fā)熱量大的元件,晶振用地線包圍。(4)接插件應(yīng)該放在板子邊緣。(5)開關(guān),滑動(dòng)電阻器等手工調(diào)整元件應(yīng)該放在合適手工調(diào)整的地方,盡量放 在板子邊緣,可調(diào)旋鈕應(yīng)朝外。(6)每個(gè)IC都應(yīng)該放置0.1uF和10uF旁路電容,濾除高頻雜波和電源去耦。2.7 本章小結(jié)本章屬于系統(tǒng)的硬件電路設(shè)計(jì)部分,其中簡要的介紹了系統(tǒng)的組成,
28、參考了相關(guān)的技術(shù)文檔,其中包括MXT8051F04A芯片的DataSheet,以及MAX232的DataSheet和SD官方資料,根據(jù)系統(tǒng)的需要并結(jié)合他人的開發(fā)經(jīng)驗(yàn)設(shè)計(jì)了每部分的電路,文中給出了各部分的主要信號(hào)電路連接圖,詳細(xì)的電路原理圖可在附錄A中得到,這一章將作為后續(xù)的基礎(chǔ),可靠的硬件平臺(tái)是本系統(tǒng)得以有效運(yùn)行最有力的保障。第3章 單片機(jī)讀寫SD卡的軟件設(shè)計(jì)軟件設(shè)計(jì)主要包括二部分: 對(duì)SD扇區(qū)讀寫, 單片機(jī)跟上位機(jī)(HOST)依據(jù)RS232傳輸協(xié)議的通信程序設(shè)計(jì)。3.1 SD卡的扇區(qū)讀寫SD卡扇區(qū)讀寫主要包含:單片機(jī)普通I/O口模擬SPI協(xié)議,SD卡初始化,SD卡扇區(qū)數(shù)據(jù)的讀寫。3.1.1
29、模擬SPI協(xié)議SD卡的SPI通信接口使其可以通過SPI通道進(jìn)行數(shù)據(jù)讀寫。從應(yīng)用的角度來看,采用SPI接口的好處在于,很多單片機(jī)內(nèi)部自帶SPI控制器,不光給開發(fā)上帶來方便,同時(shí)也見降低了開發(fā)成本。對(duì)于不帶SPI串行總線接口的MXT8051F04A單片機(jī),需要用軟件來模擬SPI總線操作。軟件模擬SPI協(xié)議讀寫字節(jié)如圖3-1和3-2。圖3-1 讀取一個(gè)字節(jié)圖3-2 發(fā)送一個(gè)字節(jié)3.1.2 SD卡命令SD卡自身具有完備的命令系統(tǒng),以實(shí)現(xiàn)各項(xiàng)操作。SD卡命令共分為12類,分別為Class0-Class12。不同的SD卡支持的指令集不盡相同,SP1模式下支持的命令和SD總線模式下支持的命令也不一致。SD卡
30、所有的命令都由6個(gè)字節(jié)組成,發(fā)送的時(shí)候首先發(fā)送最高位。其命令格式如表3-1。表3-1 SD卡命令的格式Byte1Byte2-Byte5Byte6765 0 31 07 001命令號(hào)命令參數(shù)CRC校驗(yàn)碼1Byte1:命令的開始位為始終為0;1表明是主機(jī)發(fā)送給SD卡的命令,后面是命令號(hào)(命令號(hào),由指令標(biāo)志定義,如CMD39為即十六進(jìn)制為0x27,那么完整的CMD39第一字節(jié)為,即0x27+0x40)。Byte2-5:命令參數(shù),有些命令沒有參數(shù)。例如CMD0命令參數(shù)就為0。CMD24為寫單塊命令就有命令參數(shù),命令參數(shù)就是要寫扇區(qū)的地址。Byte6:前7位為CRC校驗(yàn)位,最后一位為停止位0。命令傳輸過
31、程采用發(fā)送應(yīng)答機(jī)制過程如圖3-3所示。 圖3-3 命令應(yīng)答表3-2列取了SPI模式下常用的命令。表3-2 SPI模式下常用命令命令號(hào)功能CMD0復(fù)位SD卡CMD1讀OCR寄存器CMD9讀CSD寄存器CMD10讀CID寄存器CMD12停止讀多塊時(shí)的數(shù)據(jù)傳輸CMD16設(shè)置塊的長度CMD17寫單塊CMD18讀多塊,直到主機(jī)發(fā)送CMD12為止CMD24寫單塊CMD25寫多塊CMD32設(shè)置擦出塊的起始地址CMD33設(shè)置擦出塊的終止地址CMD38擦出所選的塊CMD55狀態(tài)每一個(gè)命令都有自己命令應(yīng)答格式。在SPI模式中定義了三種應(yīng)答格式,如表3-3、表3-4、表3-5所示。表3-3 二字節(jié)應(yīng)答模式字節(jié)位含義
32、 17開始位,始終為06參數(shù)錯(cuò)誤5地址錯(cuò)誤4擦除序列錯(cuò)誤3CRC錯(cuò)誤2非法命令1擦除復(fù)位0閑置狀態(tài) 27溢出,CSD覆蓋6擦除參數(shù)5寫保護(hù)非法4卡ECC失敗3卡控制器錯(cuò)誤2未知錯(cuò)誤1寫保護(hù)擦除跳過,鎖解鎖失敗0鎖卡表3-5 六字節(jié)應(yīng)答模式字節(jié)位含義17開始位,始終為06參數(shù)錯(cuò)誤5地址錯(cuò)誤4擦除序列錯(cuò)誤3CRC錯(cuò)誤2非法命令1擦除復(fù)位0閑置狀態(tài)25全部操作條件寄存器,高位在前表3-3 一字節(jié)應(yīng)答模式字節(jié)位含義 17開始位,始終為06參數(shù)錯(cuò)誤5地址錯(cuò)誤4擦除序列錯(cuò)誤3CRC錯(cuò)誤2非法命令1擦除復(fù)位0閑置狀態(tài)3.1.3 SD卡的初始化SD卡的初始化是非常重要的,只有進(jìn)行了正確的初始化,才能進(jìn)行扇區(qū)讀
33、寫等操作。根據(jù)SD卡的手冊(cè)說明,在初始化過程中,SPI的時(shí)鐘不能太快,否則會(huì)造初始化失敗。在初始化成功后,應(yīng)盡量提高SPI的速率。在剛開始要先發(fā)送至少74個(gè)時(shí)鐘信號(hào),這是必須的,因?yàn)樵谏想姵跗?,電壓的上升過程據(jù)SD卡組織的計(jì)算約合64個(gè)CLK周期才能到達(dá)SD卡的正常工作電壓,其后的10個(gè)CLK是為了與SD卡同步,如果疏忽了這一點(diǎn),可能使初始化不成功。隨后就是寫入命令CMD0,為了實(shí)現(xiàn)兼容性,發(fā)送CMD0后,再發(fā)送CMD55和ACMD41(使用ACMD類的指令前應(yīng)先發(fā)CMD55,CMD55起到一個(gè)切換到ACMD類命令的作用)確認(rèn)是否有回應(yīng),如果有回應(yīng)則為SD卡,如果等回應(yīng)超時(shí),則可能是MMC卡,
34、再發(fā)CMD1確認(rèn)。完成上面操作后SD卡進(jìn)入SPI模式。主機(jī)還可以繼續(xù)通過CMD10讀取SD卡的CID寄存器,通過CMD16設(shè)置數(shù)據(jù)Block長度,通過CMD9讀取卡的CSD寄存器。從CSD寄存器中,主機(jī)可獲知卡容量,支持的命令集等重要參數(shù)。SD卡初始化的C語言程序見附錄。其流程圖如圖3-4所示。圖3-4 SD卡初始化3.1.4 數(shù)據(jù)塊的讀寫完成SD卡的初始化之后即可進(jìn)行它的讀寫操作。SD卡的讀寫操作都是通過發(fā)送SD卡命令完成的。SPI總線模式支持單塊(CMD24)和多塊(CMD25)寫操作,多塊操作是指從指定位置開始寫下去,直到SD卡收到一個(gè)停止命令CMD12才停止。單塊寫操作的數(shù)據(jù)塊長度只能
35、是512 字節(jié)。單塊寫入時(shí),命令為CMD24,當(dāng)應(yīng)答為0時(shí)說明可以寫入數(shù)據(jù),大小為512 字節(jié)。SD卡對(duì)每個(gè)發(fā)送給自己的數(shù)據(jù)塊都通過一個(gè)應(yīng)答命令確認(rèn),它為1個(gè)字節(jié)長,當(dāng)?shù)?位為00101 時(shí),表明數(shù)據(jù)塊被正確寫入SD 卡。寫SD卡程序流程圖如圖3-5。具體C程序?qū)崿F(xiàn)如下:unsigned char SD_WriteSector(unsigned char *buffer, unsigned long address)unsigned int count = 0;unsigned char response = 0xff; unsigned int timeout = 0; /寫命令超時(shí)addr
36、ess = 9; /address=address*512將塊地址轉(zhuǎn)為字節(jié)地址 SD_Enable(); doresponse = SD_WriteCommand(0x18, address, 0xff);/發(fā)送讀數(shù)據(jù)命令timeout+;while(0x0 != response) & (timeout TRY_TIME); if(0x0 = response) SD_WriteByte(0xff);SD_WriteByte(0xff);/command was a success - now send data SD_WriteByte(0xfe); /寫入開始字節(jié) 0xfe for(co
37、unt = 0; count 512; count+)/將緩沖區(qū)中的512個(gè)字節(jié)寫入SD卡 SD_WriteByte(*buffer+); SD_WriteByte(0xff); SD_WriteByte(0xff); /兩個(gè)字節(jié)的CRC校驗(yàn)碼,不用關(guān)心 response = SD_ReadByte();/讀數(shù)據(jù)響應(yīng)response = response & 0x1f;if(0x05 != response)SD_Disable();/如果返回值是XXX00101說明數(shù)據(jù)已經(jīng)被SD卡接受Uart_Send_String(寫扇區(qū)失敗rn);return SD_WRITE_ERROR;/*等到SD
38、卡不忙數(shù)據(jù)被接受以后,SD卡要將這些數(shù)據(jù)寫入到自身的FLASH中,需要一個(gè)時(shí)間忙時(shí),讀回來的值為0x00,不忙時(shí),為0xff*/ while(0 = SD_ReadByte(); /等到SD卡不忙 SD_Disable(); SD_WriteByte(0xff);/按照SD卡的操作時(shí)序在這里補(bǔ)8個(gè)時(shí)鐘return SD_SUCCESS; /寫扇區(qū)操作成功return SD_WRITE_ERROR;/寫扇區(qū)操作失敗圖3-5 寫扇區(qū)在需要讀取SD卡中數(shù)據(jù)的時(shí)候,先發(fā)送讀SD卡的命令字CMD17,接收正確的第一個(gè)響應(yīng)命令字節(jié)為0xFE,隨后是512個(gè)字節(jié)的用戶數(shù)據(jù)塊,最后為2個(gè)字節(jié)的CRC 驗(yàn)證碼。
39、可見,讀寫SD卡的操作都是在初始化后基于SD卡命令和響應(yīng)完成操作的,讀SD卡的程序流程圖如圖3-6。具體C程序?qū)崿F(xiàn)如下:/* 函數(shù): SD_ReadSector.* 描述: 寫扇區(qū).* 輸入: buffer:存放讀出數(shù)據(jù)的緩沖* 輸出: address:要讀取數(shù)據(jù)的地址.* 返回: 如果操作成功返回SD_SUCCESS.失敗返回SD_READ_ERROR*/unsigned char SD_ReadSector(unsigned char *buffer, unsigned long address)unsigned int count = 0; unsigned char response
40、= 0xff;unsigned int timeout = 0; /寫命令超時(shí)address = 9; /address=address*512將塊地址轉(zhuǎn)為字節(jié)地址 SD_Enable(); doresponse = SD_WriteCommand(0x11,address,0xff);/寫入CMD17timeout+;while(0x0 != response) & (timeout TRY_TIME); if(response = = 0) while(SD_ReadByte()!=0xfe);/start with DATA TOKEN = 0xFESD_ReadByte();for(c
41、ount = 0; count 512; count+) *buffer+ = SD_ReadByte(); SD_ReadByte();/讀校驗(yàn)和 SD_ReadByte(); SD_Disable(); SD_WriteByte(0xff);/按照SD卡的操作時(shí)序在這里補(bǔ)8個(gè)時(shí)鐘 return SD_SUCCESS; /讀扇區(qū)操作成功 Uart_Send_String(讀扇區(qū)失敗rn);return SD_READ_ERROR; /讀扇區(qū)操作失敗圖3-6 讀扇區(qū)3.2 串口程序串口程序主要是串口初始化程序和串口發(fā)送接收程序。串口初始化程序主要完成串口的中斷設(shè)置,波特率設(shè)置,接收使能等。流程
42、圖如圖3-7。圖3-7 串口初始化串口的發(fā)送接收程序比較簡單,串口發(fā)送程序只需把要發(fā)送的數(shù)據(jù)賦給串口數(shù)據(jù)緩沖寄存器,當(dāng)數(shù)據(jù)發(fā)送完成后,發(fā)送中斷標(biāo)志有硬件置1,申請(qǐng)中斷,CPU響應(yīng)后發(fā)送下一幀數(shù)據(jù),該中斷發(fā)送標(biāo)志位必須有軟件清0。串口接收程序和發(fā)送程序相似,在接收到第8位數(shù)據(jù)時(shí),硬件置位接收中斷標(biāo)志位,進(jìn)入中斷服務(wù)程序,在中斷服務(wù)程序中把數(shù)據(jù)緩沖寄存器的值賦給存放接收數(shù)據(jù)的臨時(shí)內(nèi)存。該中斷接收標(biāo)志位也必須有軟件清0。第4章 調(diào)試系統(tǒng)調(diào)試由三部分組成:硬件調(diào)試、軟件調(diào)試、軟硬件的聯(lián)合調(diào)試。4.1 系統(tǒng)硬件調(diào)試在板子拿到手后,我們完成電路的焊接工作,在電路的焊接過程中,我們應(yīng)該一個(gè)一個(gè)模塊的焊接,焊
43、接完一個(gè)模塊,檢查一個(gè)模塊。首先焊接電源相關(guān)的部分,把電源部分焊接完后,檢查下是否存在虛焊、漏焊等情況。如果確認(rèn)無誤后加上直流電源,查看電源的電流情況,如果電流過大可能存在短路的情況,應(yīng)立即關(guān)閉電源檢查線路。如果正常,則用萬用表檢查各個(gè)輸入輸出點(diǎn)的電壓是否正確。首先,測試9V電壓是否加到ASMlll7-5.0的輸入端上,測試中發(fā)現(xiàn)已經(jīng)正確加在了ASMlll7-5.0上,之后檢測ASMlll7-5.0輸出引腳是否為5V左右,然后測試5V電壓是否加到ASMlll7-3.3的輸入端上,測試中發(fā)現(xiàn)已經(jīng)正確加在了ASMlll7-3.3上,之后檢測ASMlll7-3.3輸出引腳是否為3.3V左右,如果結(jié)果
44、都正確,則表明電源模塊部分正確。在確認(rèn)電源模塊沒有問題的情況下焊接主要芯片,如MXT8051F04A、MAX232等。焊接完這些芯片后,測量各個(gè)芯片的供電電壓是否正確。雖然電壓加上了,但是不知道單片機(jī)是否真的工作起來了,于是用示波器觀察MTX8051晶振的輸出波形是否是11.0592M的正弦波。如果觀察到了,說明單片機(jī)正常工作。主芯片正常工作后,下面就是測試串口是否正常工作。下載先前編寫好的串口發(fā)送接收程序,通過燒程器把程序下載到單片機(jī)里運(yùn)行,打開串口調(diào)試助手,觀察串口調(diào)試助手是否接收到了發(fā)送的字符。如果接收到了,表明串口電路正常工作。如果不正常工作,首先檢查硬件原理圖是否正確,TXD和RXD
45、是否接反,波特率是否設(shè)置正確,串口調(diào)試助手的打開的端口是否和實(shí)際端口不一致。通過上面的調(diào)試,硬件電路正常工作,硬件調(diào)試工作完成。4.2 軟件調(diào)試在硬件還沒有準(zhǔn)備好的情況下,在Keil下進(jìn)行了軟件的單步跟蹤。通過在keil下單步跟蹤調(diào)試發(fā)現(xiàn)一個(gè)問題:在SD卡的發(fā)送命令函數(shù)中,定義了一個(gè)無符號(hào)型變量,初始值賦值3對(duì)其進(jìn)行自減操作,判斷是否大于等于0,如果為假則循環(huán)結(jié)束。結(jié)果導(dǎo)致程序進(jìn)入死循環(huán),運(yùn)行不正常。后來跟蹤到這里才發(fā)現(xiàn)變量為無符號(hào)變量,而我卻用來進(jìn)行自減,當(dāng)變量自減到0時(shí),因?yàn)槭菬o符號(hào)變量,所以再自減就變?yōu)榱?28,所以進(jìn)入了死循環(huán),把變量改為符號(hào)型變量,問題解決。4.3 軟硬件的聯(lián)合調(diào)試硬
46、件制作好后,就開始軟硬件的聯(lián)合調(diào)試。其中遇到的問題主要有以下幾個(gè):1. 程序里向串口發(fā)送中文字符,結(jié)果串口調(diào)試助手顯示為亂碼。首先檢查程序的波特率是否和串口調(diào)試助手的波特率是否一致,檢查是一致的,后面我把中文改為英文,正常顯示,猜想可能是串口調(diào)試助手版本太低,下載高版本串口調(diào)試助手問題解決。2. I/O端口的輸入輸出設(shè)置錯(cuò)誤,導(dǎo)致程序一直不運(yùn)行。MXT8051F04A單片機(jī)和普通的51單片機(jī)在I/O端口上有點(diǎn)不一致,普通51單片機(jī)自動(dòng)識(shí)別輸入輸出。但MXT8051F04A必須設(shè)置其I/O引腳為輸入引腳,還是輸出引腳。開始程序全部設(shè)置為輸出引腳了,這樣對(duì)SD卡的讀取全部無效,導(dǎo)致應(yīng)答命令始終不對(duì)
47、,程序始終不工作。通過以上的調(diào)試,程序運(yùn)行正常。程序流程如下:首先初始化MXT8051F04A單片機(jī)串口,然后執(zhí)行SD卡初始化操作,SD卡初始化完成后,開始往SD卡的7632扇區(qū)寫入數(shù)據(jù)(peng yuan zhi),通過串口調(diào)試助手顯示剛才寫入扇區(qū)的數(shù)據(jù),然后再讀取剛才寫的扇區(qū)的數(shù)據(jù),顯示結(jié)果見圖4-1。我們把SD卡從電路板上取下,插入到電腦的5合1讀卡器中,通過WinHex軟件在電腦上查看數(shù)據(jù)是否真的寫入到了SD卡中的7632扇區(qū),結(jié)果如圖4-2所示。通過WinHex的觀察,數(shù)據(jù)確實(shí)寫入了SD卡的7632扇區(qū)。圖4-1 程序運(yùn)行結(jié)果圖4-2 寫入SD卡的數(shù)據(jù)圖4-3和圖4-4為制作的實(shí)物照
48、片。圖4-3為單片機(jī)系統(tǒng)和SD卡模塊,圖4-4為SD卡模塊的背面。圖4-3 實(shí)物圖4-4 SD卡模塊背面4.4 本章小結(jié)以上簡要的敘述了在系統(tǒng)調(diào)試過程中遇到的一些問題和使用的一些調(diào)試手段,其中包括硬件調(diào)試和軟件調(diào)試的問題,并給出了問題的解決方法,還有許多常見的問題,這些問題大都是由于本人粗心大意造成的,這里不再加以說明。第5章 結(jié)束語5.1 總結(jié)論文的基本目標(biāo):實(shí)現(xiàn)51單片機(jī)對(duì)SD卡的讀寫并把讀寫過程進(jìn)行顯示。根據(jù)基本目標(biāo),首先進(jìn)行了相關(guān)資料的收集和整理,其中包括關(guān)于SPI總線協(xié)議和SD卡通信命令以及RS232協(xié)議,單片機(jī)的系統(tǒng)結(jié)構(gòu),通過對(duì)以上英文資料的翻譯和相關(guān)中文資料的查閱,對(duì)系統(tǒng)實(shí)現(xiàn)的原
49、理和其理論基礎(chǔ)以有了初步的認(rèn)識(shí)。再通過制作硬件的制作對(duì)系統(tǒng)的功能和接口有了深刻的理解。最后通過軟、硬件調(diào)試實(shí)現(xiàn)了以下功能:(l)通過硬件測試工具,完成了對(duì)硬件電路的測試,為實(shí)現(xiàn)整個(gè)系統(tǒng)的功能奠定了基礎(chǔ)。(2)SD扇區(qū)讀寫的實(shí)現(xiàn)。通過對(duì)SD卡協(xié)議的理解,使用相應(yīng)的控制命令完成了對(duì)SD卡扇區(qū)的讀寫。(3)對(duì)讀寫過程進(jìn)行顯示。通過向串口調(diào)試助手顯示扇區(qū)的讀寫過程和數(shù)據(jù)。通過以上的各個(gè)實(shí)驗(yàn)進(jìn)一步加深了對(duì)原理和協(xié)議的理解,增加了實(shí)際動(dòng)手能力,對(duì)所學(xué)的知識(shí)進(jìn)一步鞏固。5.2 展望由于時(shí)間有限,本系統(tǒng)還存在一些需要改進(jìn)和進(jìn)一步完善的地方,包括:(l)本系統(tǒng)沒有實(shí)現(xiàn)FAT32文件系統(tǒng),如果實(shí)現(xiàn)了FAT32文件
50、系統(tǒng)將提高SD卡的存儲(chǔ)效率,系統(tǒng)的可用性和兼容性。(2) 讀寫速度有限,如果采用4線并行方式對(duì)扇區(qū)進(jìn)行讀寫,速度將得到明顯的提高。參考文獻(xiàn)1Microsoft Extens ible Firmware Initiative FAT32 File System Specification.Vers ion 1.03,December 6,2000.Microsoft Corporation2W86L388D Winbond Hos t Interface SD/MMC Memory Card Bridge.Vers ion 1.0,May 17,20053SD卡官方資料4周立功,等.ARM嵌入式
51、系統(tǒng)軟件開發(fā)實(shí)例( 一) M .北京:北京航空航天大學(xué)出版社, 20055宋群生, 宋亞瓊.硬盤扇區(qū)讀寫技術(shù)- 修復(fù)硬盤與恢復(fù)文件M .北京:機(jī)械工業(yè)出版社, 20046李華等.51系列單片機(jī)實(shí)用接口技術(shù).北京航空航大大學(xué)出版社,2002第9版7賴文麟.8051單片機(jī)嵌入式系統(tǒng)應(yīng)用,科學(xué)出版社,20028何立民.單片機(jī)應(yīng)用技術(shù)選編()l一(7).北京航空航天大學(xué)出版社,20009何立民.單片機(jī)高級(jí)教程一應(yīng)用與設(shè)計(jì).北京航空航天大學(xué)出版社,2000.10南建輝,熊鳴,王軍.MCS一51單片機(jī)原理與應(yīng)用實(shí)例M 北京:清華大學(xué)出版社,200311李玉峰,倪虹霞.MCS一51系列單片機(jī)原理與接口技術(shù)術(shù)
52、M 北京:人民郵電出版社,200.412維提,郭強(qiáng).液晶顯示應(yīng)用技術(shù).北京:電子土業(yè)出版社,200013鄧龍軍.單片機(jī)控制系統(tǒng)的理論與應(yīng)用研究14段九州.電源電路實(shí)用設(shè)計(jì)手冊(cè).沈陽:遼寧科學(xué)技術(shù)出版社,2002.815何立民,萬光毅,嚴(yán)義.單片機(jī)實(shí)驗(yàn)與實(shí)踐教程M.北京:北京航空航天大學(xué)出版社,2003.16沈紅衛(wèi).基于單片機(jī)的智能系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)M.北京:清華大學(xué)出版社,200217李朝青.單片機(jī)原理及接口技術(shù)M.北京:北京航空航天大學(xué)出版社,199818王福瑞.單片機(jī)微機(jī)測控系統(tǒng)設(shè)計(jì)大全M.北京航天航空大學(xué)出版社,1999致謝本文是在導(dǎo)師周銀祥老師的精心指導(dǎo)下完成的。周老師對(duì)我的畢業(yè)設(shè)計(jì)傾注了
53、大量的心血,使我在獲取知識(shí)的同時(shí),綜合能力得到較大的提高。學(xué)位論文從選題到最后定稿,始終得到了周老師的精心指導(dǎo)和幫助。在學(xué)術(shù)上,周老師淵博精深的知識(shí),務(wù)實(shí)嚴(yán)謹(jǐn)、精益求精的治學(xué)態(tài)度和一絲不茍的工作作風(fēng),使我受益匪淺。同時(shí)衷心地感謝創(chuàng)新實(shí)驗(yàn)室的師兄師姐、師弟師妹在我畢業(yè)設(shè)計(jì)期間給予的關(guān)心和幫助。還要感謝所有本科期間在學(xué)習(xí)、生活上給予我關(guān)心、支持、鼓勵(lì)和熱心幫助我的老師、同學(xué)和朋友。同樣感謝我的父母家人在生活上給我的關(guān)心和鼓勵(lì),學(xué)業(yè)的完成離不開他們背后的支持。最后對(duì)各位專家老師仔細(xì)審閱我的論文表示感謝,期盼給予批評(píng)指正。附錄附錄一:單片機(jī)讀寫SD卡的完整原理圖附圖1-1 SD卡接口電路附圖1-2 電平轉(zhuǎn)換電路附圖1-3 單片機(jī)最小系統(tǒng)、電源和串口電路附錄二:單片機(jī)讀寫SD卡的完整程序/* *File nam
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年城市綠化降溫效果評(píng)估行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報(bào)告
- 2025年中國雕塑泥行業(yè)市場發(fā)展前景及發(fā)展趨勢(shì)與投資戰(zhàn)略研究報(bào)告
- 2025-2030年名字刺繡服裝定制企業(yè)制定與實(shí)施新質(zhì)生產(chǎn)力戰(zhàn)略研究報(bào)告
- 2024年辦公外包行業(yè)市場調(diào)查研究及投資前景預(yù)測報(bào)告
- 2025年中國大號(hào)塑蓋平安口杯行業(yè)市場發(fā)展前景及發(fā)展趨勢(shì)與投資戰(zhàn)略研究報(bào)告
- 二零二五年度豪華車定制配件供應(yīng)合同范本3篇
- 2025年度船舶購買與船員配備合同
- 二零二五年度特種工藝設(shè)備租賃及技術(shù)咨詢合同
- 2025年度港口碼頭貨車及船舶停靠車位租賃合同
- 2025年度房產(chǎn)評(píng)估報(bào)告委托代理合同
- 富血小板血漿(PRP)臨床實(shí)踐與病例分享課件
- 腫瘤性發(fā)熱及護(hù)理
- 光伏工程施工組織設(shè)計(jì)
- 《護(hù)理科研》課件
- DB4101-T 121-2024 類家庭社會(huì)工作服務(wù)規(guī)范
- 五年級(jí)上冊(cè)小數(shù)四則混合運(yùn)算練習(xí)100道及答案
- 人教版(2024新版)八年級(jí)上冊(cè)物理《開啟科學(xué)探索之旅》教學(xué)設(shè)計(jì)
- 年產(chǎn)1萬噸的二氧化碳捕集及資源化利用全流程示范項(xiàng)目可行性研究報(bào)告模板-立項(xiàng)拿地
- 部編版語文四年級(jí)下冊(cè)第六單元大單元作業(yè)設(shè)計(jì)
- 2024年新高考全國1卷第16題說題課件
- 【財(cái)務(wù)共享服務(wù)模式探究的文獻(xiàn)綜述4000字】
評(píng)論
0/150
提交評(píng)論