999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

單片機(jī)控制高容量安全數(shù)字卡的應(yīng)用設(shè)計(jì)

2012-06-12 01:04:12李文華
關(guān)鍵詞:嵌入式單片機(jī)程序

李文華,龔 宸

(1.湖北仙桃職業(yè)學(xué)院機(jī)械電子工程學(xué)院,湖北 仙桃 433000; 2. 華中師范大學(xué)計(jì)算機(jī)與科學(xué)系,湖北 武漢 430000)

0 引 言

高容量安全數(shù)字卡廣泛應(yīng)用在含有視頻功能的嵌入式系統(tǒng)[1]、筆記本電腦中,對高容量安全數(shù)字卡的訪問控制成為研究的熱點(diǎn).在含有視頻拍攝功能的嵌入式系統(tǒng)中,常用SD卡 (Secure Digital Card——安全數(shù)字卡)保存系統(tǒng)拍攝的視頻,以便用計(jì)算機(jī)進(jìn)一步處理嵌入式系統(tǒng)中所拍攝到的數(shù)據(jù).隨著拍攝時(shí)間的增加和拍攝功能的增強(qiáng),選用最高容量不超過2 GB的SDSC卡(Standard Capacity Secure Digital Card——標(biāo)準(zhǔn)容量安全數(shù)字卡)很難滿足系統(tǒng)對存儲卡的容量要求,客觀上需要嵌入式系統(tǒng)選用容量為4GB~32GB的SDHC卡(High Capacity Secure Digital Card——高容量安全數(shù)字卡).SDHC卡是近來按Ver2.0規(guī)范生產(chǎn)的SD卡,與按Ver1.1規(guī)范生產(chǎn)的SDSC卡存在較大的差異,為了解決嵌入式系統(tǒng)中高容量SD卡的訪問控制問題,本文從應(yīng)用的角度出發(fā),以MC9S12XS12單片機(jī)控制Apaccr(宇瞻)4GB的SD卡為例,詳細(xì)地討論SDHC卡的控制設(shè)計(jì).

1 SDHC卡與SDSC卡在使用上的主要差異

SDHC卡的內(nèi)部結(jié)構(gòu)與SDSC卡不同,除了容量上的差異外,在使用控制上還存在著以下幾方面的差別:

(1)SDHC卡只支持塊訪問,不支持字節(jié)訪問,塊的大小固定為一個(gè)扇區(qū)512字節(jié);SDSC卡既支持塊訪問,又支持字節(jié)訪問,塊的大小由用戶指定.

(2)SDHC卡所使用的文件系統(tǒng)是FAT32,不能在FAT12/16文件系統(tǒng)中使用;SDSC卡使用的文件系統(tǒng)是FAT12/16,在FAT32文件系統(tǒng)中也可以訪問SDSC卡.

(3)SD卡除了擁有SDSC卡的全部命令集外,還增加了許多命令.其中,SPI模式中新增加了CMD8命令,用來識別SD卡的接口類型.CMD8命令的格式與其他SPI命令的格式相同,命令代碼為0x48.

(4)塊訪問命令參數(shù)的含義不同.在SDSC卡中,6個(gè)塊訪問命令CMD17、CMD18、CMD24、CMD25、CMD32、CMD33的參數(shù)含義是SD卡的字節(jié)地址.在SDHC卡中塊訪問命令雖然也是這6個(gè)命令,但其參數(shù)的含義為SD卡的塊地址(扇區(qū)地址).

(5)初始化過程不同.

2 硬件電路設(shè)計(jì)

SDHC卡是在SDSC卡的基礎(chǔ)上發(fā)展起來的,它們的引腳數(shù)都是9腳,引腳分布相同,都具有SD和SPI兩種工作模式,用單片機(jī)控制SDHC卡可以采用SPI模式[2]控制.

MC9S12XS128單片機(jī)是帶有SPI口的CMOS單片機(jī)[3],其工作電壓為3.135~5.5 V,SD卡的工作電壓為2.7~3.6 V,它們都采用3.3 V電源供電時(shí),可用MC9S12XS128的SPI口直接控制SD卡.MC9S12XS128控制宇瞻4 GB的SDHC卡的硬件電路[4]如圖1所示.

圖1 單片機(jī)控制SD卡的硬件電路 Fig.1 Circuit of controlling SD card based on MCU

圖1中,R1為4.7 kΩ的電阻,R2為100 Ω的電阻,R3為1 MΩ的電阻,C1為0.01 μF的電容,S1為復(fù)位按鈕,C2、C3為22PF的電容,Y為16 MHz的晶振.R1、R2、C1、S1構(gòu)成了單片機(jī)的復(fù)位電路,C2、C3、Y、R3為單片機(jī)的振蕩電路.

3 軟件程序設(shè)計(jì)

3.1 SPI初始化程序

SDHC卡工作在SPI模式時(shí),一次數(shù)據(jù)傳輸期內(nèi)CS引腳必須保護(hù)為低電平,數(shù)據(jù)傳輸結(jié)束后需將CS置為高電平.一個(gè)字節(jié)的數(shù)據(jù)傳輸方向是,高字節(jié)在先,低字節(jié)在后.SDHC卡輸出數(shù)發(fā)生在時(shí)鐘的下降沿之后,SDHC卡接收數(shù)據(jù)時(shí)時(shí)鐘的上升沿鎖存數(shù)據(jù).在SDHC卡的初化過程中,SPI的時(shí)鐘頻率為100~400 kHz,初始化結(jié)束后,SPI的時(shí)鐘頻率為0~6 MHz.為了實(shí)現(xiàn)單片機(jī)與SDHC卡通信,單片機(jī)的SPI口應(yīng)按SDHC卡的時(shí)序要求工作[5].用MC9S12XS128單片機(jī)控制宇瞻4 GB的SDHC卡時(shí),單片機(jī)的SPI口初始化程序如下:

void SPI_Init(void)

{ MODRR =0;

MODRR_MODRR4=1; //使用PM口

DDRM|=0x38; //SCK0=1,MOSI=1,

SS0=1

DDRM &=(~0X04); //MISO=0 輸入

SPI0CR1 = 0x5E; //CPOL=1,CPHA=1

SPI0CR2 = 0x00;

SPI0BR = 0x07; //SPI速率:312.5 kHz}

3.2 SD卡的初始化程序

上電后,SD卡處于SD模式,采用SPI模式訪問SD卡時(shí)必須先將SD卡的工作模式轉(zhuǎn)換成SPI模式,然后用SPI模式命令訪問SD卡中的存儲器.初始化SD卡的的主要任務(wù)是,判斷卡槽中的SD卡是何種SD卡,并將SD卡的工作模式設(shè)置成SPI模式,如果是SDSC卡還需要設(shè)置訪問塊的大小.

初始化SD卡的方法是,上電后先用CMD0命令復(fù)位SD卡,使SD卡能接收后續(xù)的SPI模式命令,然后用CMD8命令[6]判斷SD卡的接口類型和工作條件.

在讀得CMD8命令的響應(yīng)有效后再用ACMD41命令啟動SD卡的SPI模式初始化,并檢查初始化是否結(jié)束,此處發(fā)送ACMD41命令時(shí),應(yīng)將參數(shù)的HCS位設(shè)置成1.

在SD卡完成了SPI模式初始化后,再用CMD58命令讀OCR寄存器的內(nèi)容,并根據(jù)OCR的CCS位判斷SD卡是SDHC卡還是Ver2.0版本的SDSC卡.SDSC卡、SDHC卡通用的初始化流程圖如圖2所示.

圖2 SD卡初始化流程Fig.2 Flow chart of the SD card initialized

3.3 讀寫扇區(qū)程序

在SPI模式下,SDHC卡的讀扇區(qū)的命令是CMD17,寫扇區(qū)命令是CMD24,這2個(gè)命令也是SDSC卡在SPI模式下的讀寫扇區(qū)命令.讀扇區(qū)程序必須按照CMD17命令的時(shí)序圖編寫,寫扇區(qū)程序必須按照CMD24的時(shí)序圖編寫.考慮到SDHC卡和SDSC卡的讀寫扇區(qū)命令相同,僅僅只是參數(shù)的含義不同,可以將讀寫扇區(qū)程序編寫成SDHC卡和SDSC卡通用的程序.通用的讀扇區(qū)流程圖如圖3所示,通用的寫扇區(qū)的流程圖如圖4所示.

圖3 讀扇區(qū)流程圖Fig.3 Flow chart of reading sector

圖4 寫扇區(qū)流程圖Fig.4 Flow chart of writing sector

4 測試結(jié)果

測試主要包括2個(gè)方面,一是測試向SDHC卡寫數(shù)的功能,二是測試從SDHC卡中讀數(shù)的功能.應(yīng)用本設(shè)計(jì)中的電路和程序向宇瞻SDHC卡的第50 000扇區(qū)寫入512個(gè)0x17數(shù)據(jù),寫數(shù)后的結(jié)果如圖5所示.

將SDHC卡的50 000扇區(qū)中的數(shù)據(jù)讀至數(shù)據(jù)組buff[512]中的結(jié)果如圖6所示.

圖6 從SDHC卡讀數(shù)的結(jié)果Fig.6 Result of reading data from SDHC card

5 結(jié) 語

本設(shè)計(jì)通過采用MC9S12XS128單片機(jī)控制宇瞻4 GB的SDHC卡,提出了嵌入式系統(tǒng)中使用高容量SD卡的設(shè)計(jì)思路和方法,并成功地實(shí)現(xiàn)了單片機(jī)對SDHC的訪問控制,本設(shè)計(jì)中的電路和程序已在第五屆“飛思卡爾”杯智能汽車的調(diào)試過程得到了很好的應(yīng)用.實(shí)踐表明,本設(shè)計(jì)解決了高容量SD卡的訪問控制問題,可應(yīng)用于含有視頻拍攝功能的嵌入系統(tǒng)中和基于SD卡的嵌入式系統(tǒng)的存儲器升級.

參考文獻(xiàn):

[1] 羅肖,劉軍,楊輝.嵌入式安全存儲系統(tǒng)的研究[J].武漢工程大學(xué)學(xué)報(bào),2012,34(2):67-70.

[2] 盛李立,王忠,王春麗,等.基于SPI接口的無線網(wǎng)卡設(shè)備驅(qū)動設(shè)計(jì)[J].武漢工程大學(xué)學(xué)報(bào), 2011,33(6):89-97.

[3] 孫同景.Freescale 9S12十六位單片機(jī)原理及嵌入式開發(fā)技術(shù)[M].北京:機(jī)械工業(yè)出版社,2008.

[4] 王效華,牛思先.基于單片機(jī)PWM控制技術(shù)的實(shí)現(xiàn)[J].武漢理工大學(xué)學(xué)報(bào),2010,32(1):94-98.

[5] 李文華.單片機(jī)應(yīng)用技術(shù)(C語言版)[M].北京:人民郵電出版社,2011.

[6] SD卡委員會.SD specifications part1(physicial layer smplified specification version 3.01)[R]. Technical Committee SD Card Assiociation,2010(5):113-116.

猜你喜歡
嵌入式單片機(jī)程序
基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機(jī)的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機(jī)的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
試論我國未決羈押程序的立法完善
搭建基于Qt的嵌入式開發(fā)平臺
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
Microchip推出兩個(gè)全新PIC單片機(jī)系列
主站蜘蛛池模板: www亚洲精品| AⅤ色综合久久天堂AV色综合| 久久综合九九亚洲一区| 日本国产一区在线观看| 午夜国产精品视频黄| 全部免费特黄特色大片视频| 人人澡人人爽欧美一区| 人妻熟妇日韩AV在线播放| 天天综合网亚洲网站| 亚洲欧洲日产国产无码AV| 国产91在线|日本| 亚洲国产综合自在线另类| A级毛片无码久久精品免费| 国产va免费精品观看| 国产亚洲精品yxsp| 茄子视频毛片免费观看| 无码区日韩专区免费系列| 国产精品视频久| www.99精品视频在线播放| 亚洲区视频在线观看| 久久精品欧美一区二区| 欧美激情视频一区| 国产成人毛片| 亚洲人成高清| 香蕉综合在线视频91| 亚洲三级成人| 国产女人在线| 久久伊人操| 国产精品自在拍首页视频8| 国产永久无码观看在线| 色综合天天视频在线观看| 精品国产Av电影无码久久久| 亚洲欧美日韩另类| 91国内外精品自在线播放| 国产欧美日韩一区二区视频在线| 国产欧美在线视频免费| 精品视频在线观看你懂的一区| 国产日本欧美在线观看| 色播五月婷婷| 久久伊人久久亚洲综合| 114级毛片免费观看| 青青青草国产| 99这里只有精品免费视频| 国产成人超碰无码| 国产好痛疼轻点好爽的视频| 免费无码网站| A级毛片无码久久精品免费| 538精品在线观看| 香蕉网久久| 国产免费久久精品99re不卡| 精品综合久久久久久97| 日韩在线第三页| 久久黄色免费电影| 日韩专区欧美| 亚洲精品成人片在线播放| 91精品网站| 99re热精品视频国产免费| 国产成人久视频免费| 亚洲 成人国产| 欧美激情视频一区| 国产H片无码不卡在线视频| 91免费国产高清观看| 国产精品人莉莉成在线播放| 亚洲国产午夜精华无码福利| 国产哺乳奶水91在线播放| 欧美色图久久| 欧美国产精品拍自| 国产人免费人成免费视频| 亚洲无卡视频| 欧美专区日韩专区| 日韩毛片基地| 一本一道波多野结衣av黑人在线| 欧美在线综合视频| 国产在线自揄拍揄视频网站| 久久无码免费束人妻| 色婷婷成人网| 在线观看网站国产| 欧美午夜一区| 亚洲天堂免费在线视频| 日韩成人在线一区二区| 亚洲成人在线免费观看| 国产精品七七在线播放|