《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于SD卡的電能耗用記錄儀設計與實現
基于SD卡的電能耗用記錄儀設計與實現
來源:電子技術應用2010年第10期
徐愛鈞
長江大學 電信學院, 湖北 荊州 434023
摘要: 利用ARM處理器LPC2148與SD卡接口,設計了一種新穎的多參數電能耗用記錄儀,用于大容量耗電數據采集。該記錄儀采用FAT32文件系統,可將現場各種電能耗用數據及時保存到SD卡之中。利用SD卡的良好移動性,可方便地實現與計算機的數據交換,達到現場數據采集、室內數據分析的目的。同時SD卡內保存的數據也可以由記錄儀隨時讀取,在液晶顯示器上以文本或曲線方式進行回放。
中圖分類號: TP274
文獻標識碼: B
文章編號: 0258-7998(2010)10-0073-03
Design of power consumption recorder based on SD memory card
XU Ai Jun
Dept. of Electronic Information, Yangtze University, Jingzhou 434023, China
Abstract: A new type multi-parameter power consumption recorder was designed based on SD memory card interface with ARM processor LPC2148, it can be used for mass power consumption data collection. The recorder support FAT32 file system, mass local acquired data can be stored in SD memory card as soon as possible. Since data exchanging between SD memory card and computer is very simple, local data acquisition and office data analysis will be easily realized. On the other hand , the SD card data can also be read back for display on record LCD in text or curve format.
Key words : ARM processor; SD memory card; file system; power consumption

    SD卡[1]作為新型移動存儲設備,以體積小、速度快、抗震動、通用性強的特點備受青睞。以SD卡作為存儲介質來保存企業的電能耗用參數,可以有效提高數據保存的可靠性。采用SD卡結合ARM處理器LPC2148設計的多參數電能耗用記錄儀,將現場采集的各類電能耗用數據按文件方式存儲到SD卡中,并且可以方便地與PC等上位機進行數據交換,從而滿足現場數據采集、室內進行數據分析的要求,特別適合于長時間、大容量數據采集的場合。
1 系統硬件設計
 電能耗用記錄儀硬件電路如圖1所示,ARM核處理器LPC2148是整個系統的核心,其工作頻率高達60 MHz,內置512 KB的閃存和16 KB的SRAM,并且帶有SPI總線、兩路A/D轉換器、實時時鐘等多種片內功能部件。電網中的電壓電流信號通過較高精度的互感器變換成1 V左右的交流信號,同時使記錄儀與強電隔離,對隔離后的交流信號進行整形、濾波之后送入LPC2148內部兩路A/D轉換器,完成對電壓、電流、功率因數等參數的測量,LPC2148根據內部實時時鐘提供的時間按高峰和低谷時段對耗電量進行分時計度,計算出瞬時電量、整點電量、總需量等參數。記錄儀采用點陣圖形液晶顯示器作為本地顯示接口,既可以文本模式顯示所采集的數據,也可以圖形方式顯示采集數據曲線。外擴矩陣鍵盤用于設定數據采集間隔、采集時間等,系統根據用戶設定啟動數據采集,并自動將采集得到的數據存儲到SD卡存儲器中。

    SD卡可以采用SD和SPI兩種工作方式[2],在SPI方式下只需要4條信號線即可完成數據通信,操作簡單方便,而且很容易與LPC2148的SPI總線進行接口,接口引腳說明如表1所列。作為SPI設備,SD卡的SPI通道由以下4個信號組成:CS(片選)、SCK(時鐘)、DateIn(主機到卡的數據信號)和DateOut(卡到主機的數據信號)。CS是SD卡的片選信號線,在整個SPI 操作過程中,必須保持低電平有效;SCK時鐘用于同步;DateIn不但傳輸數據還發送命令;DateOut除了傳輸數據外,還發送應答信號。

2 SD卡在SPI方式下的讀寫實現
 SPI是一種通用同步串行接口總線,字長為8 bit。SPI協議是以主從方式工作的,通常有一個主設備和一個(或多個)從設備。工作時主設備通過提供同步時鐘和從設備使能信號來控制數據傳輸。主設備每次開始傳送數據時,必須先將片選信號置低以激活SD卡,使其進入工作狀態。SD卡在SPI方式下工作時,被選中的卡總是對來自于主設備的命令有所響應,當卡遇到錯誤時,將返回一個出錯響應來代替期望的數據。
2.1 SD卡初始化
 SD卡在讀寫操作之前必須進行初始化,這是確保SD卡能在SPI方式下進行正常數據傳輸的前提。由于大容量SD卡的出現,SD1.x標準已經升級為SD2.0,但也因此出現許多電子設備無法驅動大容量SD卡的情況,如何識別SD1.x與SD2.0就顯得特別重要。SD卡上電后默認進入SD工作方式,應等待至少74個時鐘周期后,將片選信號置低,發送復位命令CMD0,等SD卡復位完成后再向SD卡發送CMD8命令。如果收到的應答信號為01H,則表示為SD2.0卡,否則為SD1.x卡。SD1.x與SD2.0最大不同之處在于命令地址的表示,SD1.x的地址單位是字節,而SD2.0的地址單位是扇區,因此在讀寫操作時應根據不同的卡對地址作相應處理。圖2所示為SD卡在SPI方式下的初始化流程。

2.2 FAT32文件系統
 SD卡在能夠進行數據保存之前必須先按某種文件系統[3]的規定進行格式化,FAT32文件系統因具有高度兼容性而被廣泛應用于移動存儲設備中。FAT32文件系統結構分為五個部分:MBR區、DBR區、FAT區、FDT區、DATA區。
 MBR區又稱為主引導記錄,其后為64 B的磁盤分區表DPT。
 DBR區即操作系統引導記錄區,占用分區的第0扇區,共512 B,由跳轉指令、結束標志等幾部分組成。
 FAT區存放文件分配表,文件分配表與數據區簇號一一對應,反映了所有簇的使用情況。每個表項單元的大小決定了FAT的類型,比如FAT32的表項單元為32 bit。FAT表一般都有一個備份。
 FDT區存放文件目錄表,位于備份FAT表之后。FDT由32 bit線性目錄項構成,記錄著根目錄下每個文件(子目錄)的起始單元、屬性等。
 DATA區是真正意義上的數據存儲區,位于FDT之后,占據SD卡上的大部分空間。
 當SD卡格式化為FAT32分區時,文件系統就將這個分區當成整塊可分配的區域進行規劃,以便于數據的存儲。通常將SD卡空間以一定數目的扇區為單位進行劃分,這樣的單位稱為簇,簇的大小為2n個扇區(n為整數),每個扇區512 B,每個簇的最大存儲空間為32 KB。
3 系統軟件設計
 系統軟件包括SD卡驅動、液晶驅動、A/D轉換驅動、鍵盤驅動以及各種數據處理程序等。限于篇幅,這里僅介紹SD卡的文件系統操作。整個文件系統采用模塊化層次結構,包括文件管理與目錄管理模塊、文件分配表管理模塊、SD卡緩存模塊等,這些模塊都建立在底層驅動程序之上[4],底層驅動程序則主要完成向SD卡某個扇區的讀寫。文件系統的功能是在SD卡中進行正確的文件數據操作,主要包括:在FDT中申請新目錄項,創建文件;寫入新文件時,在FAT表中查找未使用的簇,并將該簇號寫入文件對應目錄數據結構中的起始簇號位置,當文件長度大于一簇時,還需在FAT表中對應的起始簇號位置填入下一可用簇號,直到文件的最后一簇;刪除文件時,除了在FDT中將對應的目錄項設置相應標志外,還要修改FAT表,將此文件使用的簇號位置清0,表示此簇當前未被使用等。FAT32文件系統存儲文件時最小單元為簇,即使一個很小的文件也會占用一簇,為了節約存儲空間,創建文件時如果有同名文件存在,則只需要向原來的同名文件追加數據。文件系統設計時為用戶提供了各種API函數,如創建文件函數Creat_File(),打開文件函數Open_FIle(),寫入文件函數Write_File(),刪除文件函數Delete_File()等,調用這些API函數即可完成用戶所需要的功能。圖3所示為在SD卡中創建文件并向其中寫入文件數據的流程圖。

    采用SD卡作為移動存儲器的多參數電能耗用記錄儀,可以對現場耗電數據進行實時采集和高速保存。利用SD卡的良好移動性,可方便地實現與計算機的數據交換,達到現場數據采集、室內數據分析的目的。也可以通過記錄儀鍵盤命令隨時讀取SD卡中的數據,從液晶顯示屏幕上以文本或曲線方式進行實時顯示。隨著SD卡移動存儲性能的不斷提高,容量越來越大,其價格越來越便宜,基于SD卡移動存儲器的多參數電能耗用記錄儀將會得到廣泛的應用。
參考文獻
[1] SanDisk Corporation SD memory card specifications part 1, Physical Layer Specification Version 1.0, 2002.
[2] 周煜, 付宇卓. 基于SPI協議的MMC卡讀寫機制的實現[J]. 計算機仿真, 2005,22(1):97-99.
[3] 鄧劍, 楊曉非, 廖俊卿. FAT文件系統原理及實現[J]. 計算機與數字工程, 2005,33(9):105-108.
[4] 徐愛鈞. IAR EWARM V5嵌入式系統應用編程與開發[M]. 北京:北京航空航天大學出版社, 2009.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 亚洲天堂视频网站 | 国产欧美日韩一区二区三区在线 | 一区二区三区免费观看 | 亚洲不卡在线观看 | 黄色三级理沦片 | 免费毛片全部不收费的 | 米奇777色狠狠8888影视 | 97在线视频免费 | 国产成人精品综合久久久软件 | 性亚洲精品 | 欧美成人免费tv在线播放 | a级毛片免费观看网站 | 日韩午夜在线观看 | 欧美中文字幕一区 | 欧美精品在线视频 | 亚洲国产片| 国产一区二区三区在线观看精品 | 亲子乱子伦xxxxxinin | 国产成人一区二区三中文 | 中文字幕人成乱码在线观看 | 久久99精品久久久久久三级 | 福利片成人午夜在线 | 一级成人a毛片免费播放 | 亚洲欧美久久一区二区 | 最新国产精品好看的国产精品 | 日本一级aaaa特黄毛片 | 国产成人午夜精品免费视频 | 免费观看欧美精品成人毛片 | 欧美精品专区55页 | 老妇激情毛片 | 久久黄色一级视频 | 91成人午夜在线精品 | 中文字幕二区 | 韩国日本一级毛片免费视频 | 欧美不卡在线视频 | 手机看片1024精品日韩 | 夜色福利久久久久久777777 | 久久在线视频 | 亚洲天堂国产 | 亚洲香蕉影院 | 国产专区在线 |