浓毛老太交欧美老妇热爱乱,蜜臀性色av免费,妺妺窝人体色www看美女,久久久久久久久久久大尺度免费视频,麻豆人妻无码性色av专区

位置:51電子網(wǎng) » 技術(shù)資料 » 單 片 機(jī)

基于AT89C52單片機(jī)的SD卡的讀寫(xiě)設(shè)計(jì)

發(fā)布時(shí)間:2008/8/19 0:00:00 訪問(wèn)次數(shù):520

  長(zhǎng)期以來(lái),以flash memory為存儲(chǔ)體的sd卡因具備體積小、功耗低、可擦寫(xiě)以及非易失性等特點(diǎn)而被廣泛應(yīng)用于消費(fèi)類電子產(chǎn)品中。特別是近年來(lái),隨著價(jià)格不斷下降且存儲(chǔ)容量不斷提高,它的應(yīng)用范圍日益增廣。當(dāng)數(shù)據(jù)采集系統(tǒng)需要長(zhǎng)時(shí)間地采集、記錄海量數(shù)據(jù)時(shí),選擇sd卡作為存儲(chǔ)媒質(zhì)是開(kāi)發(fā)者們一個(gè)很好的選擇。在電能監(jiān)測(cè)以及無(wú)功補(bǔ)償系統(tǒng)中,要連續(xù)記錄大量的電壓、電流、有功功率、無(wú)功功率以及時(shí)間等參數(shù),當(dāng)單片機(jī)采集到這些數(shù)據(jù)時(shí)可以利用sd作為存儲(chǔ)媒質(zhì)。本文主要介紹了sd卡在電能監(jiān)測(cè)及無(wú)功補(bǔ)償數(shù)據(jù)采集系統(tǒng)中的應(yīng)用方案。

設(shè)計(jì)方案

  應(yīng)用at89c52讀寫(xiě)sd卡有兩點(diǎn)需要注意。首先,需要尋找一個(gè)實(shí)現(xiàn)at89c52單片機(jī)與sd卡通訊的解決方案;其次,sd卡所能接受的邏輯電平與at89c52提供的邏輯電平不匹配,需要解決電平匹配問(wèn)題。

通訊模式

  sd卡有兩個(gè)可選的通訊協(xié)議:sd模式和spi模式。sd模式是sd卡標(biāo)準(zhǔn)的讀寫(xiě)方式,但是在選用sd模式時(shí),往往需要選擇帶有sd卡控制器接口的mcu,或者必須加入額外的sd卡控制單元以支持sd卡的讀寫(xiě)。然而,at89c52單片機(jī)沒(méi)有集成sd卡控制器接口,若選用sd模式通訊就無(wú)形中增加了產(chǎn)品的硬件成本。在sd卡數(shù)據(jù)讀寫(xiě)時(shí)間要求不是很?chē)?yán)格的情況下,選用spi模式可以說(shuō)是一種最佳的解決方案。因?yàn)樵趕pi模式下,通過(guò)四條線就可以完成所有的數(shù)據(jù)交換,并且目前市場(chǎng)上很多mcu都集成有現(xiàn)成的spi接口電路,采用spi模式對(duì)sd卡進(jìn)行讀寫(xiě)操作可大大簡(jiǎn)化硬件電路的設(shè)計(jì)。

  雖然at89c52不帶sd卡硬件控制器,也沒(méi)有現(xiàn)成的spi接口模塊,但是可以用軟件模擬出spi總線時(shí)序。本文用spi總線模式讀寫(xiě)sd卡。

電平匹配

  sd卡的邏輯電平相當(dāng)于3.3v ttl電平標(biāo)準(zhǔn),而控制芯片at89c52的邏輯電平為5v cmos電平標(biāo)準(zhǔn)。因此,它們之間不能直接相連,否則會(huì)有燒毀sd卡的可能。出于對(duì)安全工作的考慮,有必要解決電平匹配問(wèn)題。

  要解決這一問(wèn)題,最根本的就是解決邏輯器件接口的電平兼容問(wèn)題,原則主要有兩條:一為輸出電平器件輸出高電平的最小電壓值,應(yīng)該大于接收電平器件識(shí)別為高電平的最低電壓值;另一條為輸出電平器件輸出低電平的最大電壓值,應(yīng)該小于接收電平器件識(shí)別為低電平的最高電壓值。

  一般來(lái)說(shuō),通用的電平轉(zhuǎn)換方案是采用類似sn74alvc4245的專用電平轉(zhuǎn)換芯片,這類芯片不僅可以用作升壓和降壓,而且允許兩邊電源不同步。但是,這個(gè)方案代價(jià)相對(duì)昂貴,而且一般的專用電平轉(zhuǎn)換芯片都是同時(shí)轉(zhuǎn)換8路、16路或者更多路數(shù)的電平,相對(duì)本系統(tǒng)僅僅需要轉(zhuǎn)換3路來(lái)說(shuō)是一種資源的浪費(fèi)。

  考慮到sd卡在spi協(xié)議的工作模式下,通訊都是單向的,于是在單片機(jī)向sd卡傳輸數(shù)據(jù)時(shí)采用晶體管加上拉電阻法的方案,基本電路如圖1所示。而在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)壓獲取。

硬件接口設(shè)計(jì)

  sd卡提供9pin的引腳接口便于外圍電路對(duì)其進(jìn)行操作,9pin的引腳隨工作模式的不同有所差異。在spi模式下,引腳1(dat3)作為spi片選線cs用,引腳2(cmd)用作spi總線的數(shù)據(jù)輸出線mosi,而引腳7(dat0)為數(shù)據(jù)輸入線miso,引腳5用作時(shí)鐘線(clk)。除電源和地,保留引腳可懸空。

  本文中控制sd卡的mcu是atmel公司生產(chǎn)的低電壓、高性能cmos 8位單片機(jī)at89c52,內(nèi)含8k字節(jié)的可反復(fù)擦寫(xiě)的只讀程序存儲(chǔ)器和256字節(jié)的隨機(jī)存儲(chǔ)數(shù)據(jù)存儲(chǔ)器。由于at89c52只有256字節(jié)的數(shù)據(jù)存儲(chǔ)器,而sd卡的數(shù)據(jù)寫(xiě)入是以塊為單位,每塊為512字節(jié),所以需要在單片機(jī)最小系統(tǒng)上增加一片ram。本系統(tǒng)中ram選用存儲(chǔ)器芯片hm62256,容量為32k。對(duì)ram進(jìn)行讀寫(xiě)時(shí),鎖存器把低8位地址鎖存,與p2口的8位地址數(shù)據(jù)構(gòu)成16位地址空間,從而可使sd卡一次讀寫(xiě)512字節(jié)的塊操作。系統(tǒng)硬件圖如圖2所示。

  

軟件設(shè)計(jì)

spi工作模式

  sd卡在上電初期自動(dòng)進(jìn)入sd總線模式,在此模式下向sd卡發(fā)送復(fù)位命令cmd0。如果sd卡在接收復(fù)位命令過(guò)程中cs低電平有效,則進(jìn)入spi模式,否則工作在sd總線模式。

  對(duì)于不帶spi串行總線接口的at89c52單片機(jī)來(lái)說(shuō),用軟件來(lái)模擬spi總線操作的具體做法是:將p1.5口(模擬clk線)的初始狀態(tài)設(shè)置為1,而在允許接收后再置p1.5為0。這樣,mcu在輸出1位sck時(shí)鐘的同時(shí),將使接口芯片串行左移,從而輸出1位數(shù)據(jù)至at89c52單片機(jī)的p1.7(模擬miso線),此后再置p1.5為1,使單片機(jī)從p1.6(模擬mosi線)輸出1位數(shù)據(jù)(先為高位)至串行接口芯片。至此,模擬1位數(shù)據(jù)輸入輸出便完

  長(zhǎng)期以來(lái),以flash memory為存儲(chǔ)體的sd卡因具備體積小、功耗低、可擦寫(xiě)以及非易失性等特點(diǎn)而被廣泛應(yīng)用于消費(fèi)類電子產(chǎn)品中。特別是近年來(lái),隨著價(jià)格不斷下降且存儲(chǔ)容量不斷提高,它的應(yīng)用范圍日益增廣。當(dāng)數(shù)據(jù)采集系統(tǒng)需要長(zhǎng)時(shí)間地采集、記錄海量數(shù)據(jù)時(shí),選擇sd卡作為存儲(chǔ)媒質(zhì)是開(kāi)發(fā)者們一個(gè)很好的選擇。在電能監(jiān)測(cè)以及無(wú)功補(bǔ)償系統(tǒng)中,要連續(xù)記錄大量的電壓、電流、有功功率、無(wú)功功率以及時(shí)間等參數(shù),當(dāng)單片機(jī)采集到這些數(shù)據(jù)時(shí)可以利用sd作為存儲(chǔ)媒質(zhì)。本文主要介紹了sd卡在電能監(jiān)測(cè)及無(wú)功補(bǔ)償數(shù)據(jù)采集系統(tǒng)中的應(yīng)用方案。

設(shè)計(jì)方案

  應(yīng)用at89c52讀寫(xiě)sd卡有兩點(diǎn)需要注意。首先,需要尋找一個(gè)實(shí)現(xiàn)at89c52單片機(jī)與sd卡通訊的解決方案;其次,sd卡所能接受的邏輯電平與at89c52提供的邏輯電平不匹配,需要解決電平匹配問(wèn)題。

通訊模式

  sd卡有兩個(gè)可選的通訊協(xié)議:sd模式和spi模式。sd模式是sd卡標(biāo)準(zhǔn)的讀寫(xiě)方式,但是在選用sd模式時(shí),往往需要選擇帶有sd卡控制器接口的mcu,或者必須加入額外的sd卡控制單元以支持sd卡的讀寫(xiě)。然而,at89c52單片機(jī)沒(méi)有集成sd卡控制器接口,若選用sd模式通訊就無(wú)形中增加了產(chǎn)品的硬件成本。在sd卡數(shù)據(jù)讀寫(xiě)時(shí)間要求不是很?chē)?yán)格的情況下,選用spi模式可以說(shuō)是一種最佳的解決方案。因?yàn)樵趕pi模式下,通過(guò)四條線就可以完成所有的數(shù)據(jù)交換,并且目前市場(chǎng)上很多mcu都集成有現(xiàn)成的spi接口電路,采用spi模式對(duì)sd卡進(jìn)行讀寫(xiě)操作可大大簡(jiǎn)化硬件電路的設(shè)計(jì)。

  雖然at89c52不帶sd卡硬件控制器,也沒(méi)有現(xiàn)成的spi接口模塊,但是可以用軟件模擬出spi總線時(shí)序。本文用spi總線模式讀寫(xiě)sd卡。

電平匹配

  sd卡的邏輯電平相當(dāng)于3.3v ttl電平標(biāo)準(zhǔn),而控制芯片at89c52的邏輯電平為5v cmos電平標(biāo)準(zhǔn)。因此,它們之間不能直接相連,否則會(huì)有燒毀sd卡的可能。出于對(duì)安全工作的考慮,有必要解決電平匹配問(wèn)題。

  要解決這一問(wèn)題,最根本的就是解決邏輯器件接口的電平兼容問(wèn)題,原則主要有兩條:一為輸出電平器件輸出高電平的最小電壓值,應(yīng)該大于接收電平器件識(shí)別為高電平的最低電壓值;另一條為輸出電平器件輸出低電平的最大電壓值,應(yīng)該小于接收電平器件識(shí)別為低電平的最高電壓值。

  一般來(lái)說(shuō),通用的電平轉(zhuǎn)換方案是采用類似sn74alvc4245的專用電平轉(zhuǎn)換芯片,這類芯片不僅可以用作升壓和降壓,而且允許兩邊電源不同步。但是,這個(gè)方案代價(jià)相對(duì)昂貴,而且一般的專用電平轉(zhuǎn)換芯片都是同時(shí)轉(zhuǎn)換8路、16路或者更多路數(shù)的電平,相對(duì)本系統(tǒng)僅僅需要轉(zhuǎn)換3路來(lái)說(shuō)是一種資源的浪費(fèi)。

  考慮到sd卡在spi協(xié)議的工作模式下,通訊都是單向的,于是在單片機(jī)向sd卡傳輸數(shù)據(jù)時(shí)采用晶體管加上拉電阻法的方案,基本電路如圖1所示。而在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)壓獲取。

硬件接口設(shè)計(jì)

  sd卡提供9pin的引腳接口便于外圍電路對(duì)其進(jìn)行操作,9pin的引腳隨工作模式的不同有所差異。在spi模式下,引腳1(dat3)作為spi片選線cs用,引腳2(cmd)用作spi總線的數(shù)據(jù)輸出線mosi,而引腳7(dat0)為數(shù)據(jù)輸入線miso,引腳5用作時(shí)鐘線(clk)。除電源和地,保留引腳可懸空。

  本文中控制sd卡的mcu是atmel公司生產(chǎn)的低電壓、高性能cmos 8位單片機(jī)at89c52,內(nèi)含8k字節(jié)的可反復(fù)擦寫(xiě)的只讀程序存儲(chǔ)器和256字節(jié)的隨機(jī)存儲(chǔ)數(shù)據(jù)存儲(chǔ)器。由于at89c52只有256字節(jié)的數(shù)據(jù)存儲(chǔ)器,而sd卡的數(shù)據(jù)寫(xiě)入是以塊為單位,每塊為512字節(jié),所以需要在單片機(jī)最小系統(tǒng)上增加一片ram。本系統(tǒng)中ram選用存儲(chǔ)器芯片hm62256,容量為32k。對(duì)ram進(jìn)行讀寫(xiě)時(shí),鎖存器把低8位地址鎖存,與p2口的8位地址數(shù)據(jù)構(gòu)成16位地址空間,從而可使sd卡一次讀寫(xiě)512字節(jié)的塊操作。系統(tǒng)硬件圖如圖2所示。

  

軟件設(shè)計(jì)

spi工作模式

  sd卡在上電初期自動(dòng)進(jìn)入sd總線模式,在此模式下向sd卡發(fā)送復(fù)位命令cmd0。如果sd卡在接收復(fù)位命令過(guò)程中cs低電平有效,則進(jìn)入spi模式,否則工作在sd總線模式。

  對(duì)于不帶spi串行總線接口的at89c52單片機(jī)來(lái)說(shuō),用軟件來(lái)模擬spi總線操作的具體做法是:將p1.5口(模擬clk線)的初始狀態(tài)設(shè)置為1,而在允許接收后再置p1.5為0。這樣,mcu在輸出1位sck時(shí)鐘的同時(shí),將使接口芯片串行左移,從而輸出1位數(shù)據(jù)至at89c52單片機(jī)的p1.7(模擬miso線),此后再置p1.5為1,使單片機(jī)從p1.6(模擬mosi線)輸出1位數(shù)據(jù)(先為高位)至串行接口芯片。至此,模擬1位數(shù)據(jù)輸入輸出便完

相關(guān)IC型號(hào)

熱門(mén)點(diǎn)擊

 

推薦技術(shù)資料

硬盤(pán)式MP3播放器終級(jí)改
    一次偶然的機(jī)會(huì)我結(jié)識(shí)了NE0 2511,那是一個(gè)遠(yuǎn)方的... [詳細(xì)]
版權(quán)所有:51dzw.COM
深圳服務(wù)熱線:13692101218  13751165337
粵ICP備09112631號(hào)-6(miitbeian.gov.cn)
公網(wǎng)安備44030402000607
深圳市碧威特網(wǎng)絡(luò)技術(shù)有限公司
付款方式


 復(fù)制成功!