當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]摘要:設(shè)計(jì)了一種基于STC15單片機(jī)的U盤實(shí)時海量數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)利用USB接口芯片CH376時U盤進(jìn)行讀寫操作,利用實(shí)時時鐘芯片DS1 2887實(shí)時采集記錄數(shù)據(jù)的時間,將采集到的海量數(shù)據(jù)以EXCEL文件形式存儲在U盤中。實(shí)

摘要:設(shè)計(jì)了一種基于STC15單片機(jī)的U盤實(shí)時海量數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)利用USB接口芯片CH376時U盤進(jìn)行讀寫操作,利用實(shí)時時鐘芯片DS1 2887實(shí)時采集記錄數(shù)據(jù)的時間,將采集到的海量數(shù)據(jù)以EXCEL文件形式存儲在U盤中。實(shí)驗(yàn)結(jié)果表明,該方案能夠采集、存儲海量數(shù)據(jù)而且還兼顧成本低、通用性強(qiáng)、移動性好等優(yōu)點(diǎn),具有一定實(shí)用價值。

引言

在工業(yè)數(shù)據(jù)采集中,數(shù)據(jù)的存儲擔(dān)負(fù)著記錄系統(tǒng)運(yùn)行狀態(tài)的責(zé)任,基于單片機(jī)的數(shù)據(jù)采集儀表以其成本低廉、操作簡單、工作可靠而得到大批量應(yīng)用。鑒于單片機(jī)數(shù)據(jù)采集系統(tǒng)的以上優(yōu)勢提出了一種基于STC15系列單片機(jī)和CH376的U盤海量存儲數(shù)據(jù)方案,該方案利用南京沁恒公司推出的USB接口芯片CH376對U盤進(jìn)行讀寫操作,完成超速信息的轉(zhuǎn)存,并采用沁恒公司提供的FAT文件系統(tǒng)庫,將采集到的數(shù)據(jù)以文件的形式存儲在U盤中,操作者可以方便地利用PC機(jī)對采集到的數(shù)據(jù)進(jìn)行分析和處理。

1 系統(tǒng)設(shè)計(jì)

系統(tǒng)主要框圖如圖1所示,主要是以STC15F2K60S2單片機(jī)為核心,通過擴(kuò)展外同接口而使其以低成本的優(yōu)勢滿足大容量數(shù)據(jù)采集存儲的要求。被測信號經(jīng)過前端調(diào)理電路的放大與濾波處理后進(jìn)入單片機(jī)的片內(nèi)A/D轉(zhuǎn)換模塊,此時采樣數(shù)據(jù)存儲于單片機(jī)內(nèi)部開辟的緩沖數(shù)組中,當(dāng)緩沖區(qū)滿后通過控制CH376向U盤寫入采樣數(shù)據(jù),并同時將DS12887內(nèi)的時間信息寫入文件中。

1.1 STC15F2K60S2單片機(jī)簡介

STC15F2K60S2系列單片機(jī)是STC公司生產(chǎn)的單時鐘/機(jī)器周期(1T)的單片機(jī),采用STC—Y5超高速CPU內(nèi)核。STC15F2K60S2系列單片機(jī)是高速/高可靠/低功耗/超強(qiáng)抗干擾的一代8051單片機(jī),采用第八代加密技術(shù),加密性超強(qiáng),指令代碼完全兼容傳統(tǒng)8051。內(nèi)部集成高精度R/C時鐘,可設(shè)置5~35 MHz的工作頻率,徹底省掉外部昂貴的晶振和外部復(fù)位電路,具有3路CCP/PWM/PCA和8路高速A/D轉(zhuǎn)換器,內(nèi)置2 KB大容量SRAM,2組高速異步串行通信端口UART1/UART2,一組高速同步通信端口SPI,廣泛地用于一般的現(xiàn)代工業(yè)控制領(lǐng)域。

1.2 CH376模塊設(shè)計(jì)

1.2.1 USB接口芯片CH376簡介

CH376是南京沁恒公司推出的一款U盤和SD卡文件管理控制芯片,用于單片機(jī)或嵌入式系統(tǒng)讀寫U盤或者SD卡中的文件。CH376支持USB設(shè)備方式和USB主機(jī)方式,并且內(nèi)置了USB通信協(xié)議的基本固件,內(nèi)置了處理海量存儲Mass-Storage設(shè)備的專用通信協(xié)議的固件,內(nèi)置了SD卡的通信接口固件,內(nèi)置了FAT16和FAT32以及FAT12文件系統(tǒng)的管理固件,支持常用的USB存儲設(shè)備(包括U盤/USB硬盤/USB閃存盤/USB讀卡器)和SD卡(包括標(biāo)準(zhǔn)容量SD卡和高容量HC-SD卡以及協(xié)議兼容的MMC卡和TF卡)。

CH376支持3種通信接口:8位并口、SPI接口或者異步串口,單片機(jī)/DSP/MCU/MPU等控制器可以通過上述任何一種通信接口控制CH376芯片,存取U盤或者SD卡中的文件或者與計(jì)算機(jī)通信。CH376芯片內(nèi)部集成了USB-SIE和Phy-I/O、CRC數(shù)據(jù)校驗(yàn)、USB-Host控制器、USB-Dev ice控制器、SD卡SPI-Host控制器、被動并行接口、SPI—Slave控制器、異步串口、雙口SRAM、FIFO、高速M(fèi)CU、固件程序、晶體振蕩器和PLL倍頻器、電源上電復(fù)位電路等。其主要特點(diǎn)概括為:

①支持1.5 Mbps低速和12 Mbps全速USB通信,兼容USB V2.0;

②支持USB-HOST主機(jī)接口和USB-DEVICE設(shè)備接口,支持動態(tài)切換主機(jī)方式與設(shè)備方式;

③內(nèi)置USB通信協(xié)議的基本固件處理海量存儲Mass-Storage設(shè)備的專用通信協(xié)議固件,SD卡的通信接口固件以及FAT16/FAT32和FAT12文件系統(tǒng)的管理固件;

④提供文件管理功能、文件讀寫功能和磁盤管理功能;

⑤提供2 MB速度的8位被動并行接口,提供2 MB/24 MHz速度的SPI設(shè)備接口,提供最高3 Mbps速度的異步串口;

⑥支持5 V/3.3 V/3 V電源電壓,支持低功耗模式。

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

USB接口芯片CH376模塊硬件電路設(shè)計(jì)如圖2所示。單片機(jī)與CH376采用的是硬件總線8位并口連接方式,這樣無需用I/O模擬CH376讀寫時序,簡化了軟件的設(shè)計(jì)。CH376芯片通過8位被動并行接口的D7~D0、RD#、WR#、PCS#、A0直接連接到STC15F2K60S2單片機(jī)的系統(tǒng)總線上,其中D7~D0連接STC15F2K60S2的數(shù)據(jù)總線P0.7~P0.0引腳上,RD#、WR#引腳與STC15F2K60S2的對應(yīng)引腳相連,INT#引腳連到STC15F2K60S2的外部中斷INT0上,采用中斷方式處理USB數(shù)據(jù)傳輸,PCS#連接STC15F2K60S2的P2.6引腳來控制CH376的使能,A0連到STC15F2K60S2的P2.0引腳。因此,CH376命令寄存器的地址可選為BDF1H,數(shù)據(jù)寄存器的地址可選為BCF0H。

另外,R2用于限制作為USB主機(jī)提供給外部USB設(shè)備的電流,電容C1用于CH376內(nèi)部電源節(jié)點(diǎn)退耦,C1是容量為4 700 pF~0.02μF的獨(dú)石或者高頻瓷片電容。電容C3和C4用于外部電源退耦,C3是容量為0.1μF的獨(dú)石或者高頻瓷片電容。晶振Y1用于時鐘振蕩電路,USB—HOST主機(jī)方式要求時鐘頻率比較準(zhǔn)確,晶振Y1的頻率為12 MHz±0.4‰。振蕩電容C6、C7是可選的,根據(jù)晶振Y1的特性選擇,容量在0~22 pF。

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

系統(tǒng)利用單片機(jī)將片內(nèi)A/D轉(zhuǎn)換器采集到的數(shù)據(jù)通過CH376存入U盤中需要完成三件事:

第一是要完成單片機(jī)讀寫CH376,由于CH376是以硬件并行總線的方式與單片機(jī)連接的,單片機(jī)讀寫CH376就不需要用I/O模擬時序了,確定CH376的命令端口地址和數(shù)據(jù)端口地址后,直接向命令端口地址寫入相應(yīng)命令,向數(shù)據(jù)端口地址寫入相應(yīng)數(shù)據(jù)即完成了寫入操作。讀操作時也只需要將命令端口或數(shù)據(jù)端口的值直接賦給一個變量,單片機(jī)讀取的狀態(tài)或數(shù)據(jù)就保存在該變量中了。

第二是操作沁恒公司提供的FILE SYS文件系統(tǒng)庫,通過移植、裁減該文件系統(tǒng)庫,在U盤中創(chuàng)建一個EXCEL格式的文件ZYZ_ADC.XLS,這是系統(tǒng)軟件設(shè)計(jì)的核心所在。具體步驟是:首先單片機(jī)發(fā)送CMD_SET_USB_MODE命令設(shè)置CH376工作在主機(jī)模式下,然后調(diào)用FILE SYS文件系統(tǒng)庫中的CH376DiskConnect函數(shù)等待U盤連接,U盤可以由CH376自動檢測并產(chǎn)生中斷通知,也可以由單片機(jī)定時發(fā)送命令檢測。U盤連接成功后,在進(jìn)行操作之前必須由單片機(jī)發(fā)送CMD_DISK_MOUNT進(jìn)行初始化,并檢測磁盤是否準(zhǔn)備就緒,確認(rèn)磁盤準(zhǔn)備就緒后,調(diào)用文件系統(tǒng)庫函數(shù)CH376FileOpen,打開磁盤中已經(jīng)創(chuàng)建好的文件,如果該文件不存在,則調(diào)用文件系統(tǒng)庫函數(shù)CH376FileCreate并在磁盤中創(chuàng)建一個新的文件,設(shè)定其參數(shù)為“/ZYZ_ADC.XLS”即完成了在U盤中創(chuàng)建了一個名為ZYZ_ADC.XLS的EXCEL格式文件。另外,文件創(chuàng)建成功后為方便向文件中添加數(shù)據(jù),還需要將該文件移置到U盤中所有已有文件的末尾,可調(diào)用文件系統(tǒng)庫函數(shù)CH376ByteLocate,設(shè)定參數(shù)為0xFFFFFFFF即可移動該文件至所有文件之后。以上一切準(zhǔn)備就緒后就可以向文件中寫入數(shù)據(jù)了,最后就是保存文件并更新文件長度,涉及到的文件庫函數(shù)是CH376GetFileSize。在U盤中創(chuàng)建EXCEL文件的軟件流程圖如圖3所示。

第三是向已創(chuàng)建的EXCEL文件中寫入A/D采集數(shù)據(jù)和時鐘芯片中的日期、時間信息。系統(tǒng)軟件是將EXCEL文件中的所有已采集的數(shù)據(jù)以字符形式存儲的,因此對于采集的電壓、日期、時間等二進(jìn)制數(shù)據(jù)要轉(zhuǎn)換成字符串形式。另外,EXCEL文件中的數(shù)據(jù)信息是以單元格的形式存儲的,即每一次采集的數(shù)據(jù)存儲在一個單元格中,因此在調(diào)用sprintf函數(shù)時,將采集的數(shù)據(jù)信息寫入EXCEL文件時用“\t”切換單元格,比如將采集的日期、時間、單元信息分別顯示在3個不同的單元格中的函數(shù)格式為:

2 系統(tǒng)測試結(jié)果

為了驗(yàn)證上述系統(tǒng)能否完成將A/D采集來的海量數(shù)據(jù)信息存入U盤中創(chuàng)建的EXCEL文件中,選用了2 GB的金士頓U盤作為測試對象,系統(tǒng)上電后插上U盤,即可看到CH376模塊中USB讀寫指示燈變亮并且U盤指示燈閃爍數(shù)下,這表明U盤讀寫成功。然后,按下數(shù)據(jù)采集控制開關(guān),可以看到U盤指示燈開始不停地閃爍,表示數(shù)據(jù)采集正在進(jìn)行中,通過串口調(diào)試軟件的打印窗口如圖4所示,可以清楚地看到文件創(chuàng)建成功,數(shù)據(jù)寫入文件的詳細(xì)過程。

圖4中File size=1表示創(chuàng)建了一個新文件,其大小為1 K,下面即是不停地向文件中寫入日期、時間、電壓等采集信息。待系統(tǒng)運(yùn)行一段時間后取下U盤,將U盤重新插在PC上即可在U盤中發(fā)現(xiàn)一個新建的名為ZYZ_ADC.XLS的文件,打開該文件,如圖5所示,可以看到系統(tǒng)采集到的日期、時間、電壓等采樣信息完整地存在于該文件中。

結(jié)語

本文提出的基于STC15系列單片機(jī)和CH376的實(shí)時海量數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)方案中,由于CH376內(nèi)置了文件系統(tǒng),使單片機(jī)的操作更為方便,單片機(jī)只需要發(fā)送命令和數(shù)據(jù)就可以在U盤中創(chuàng)建文件、讀寫數(shù)據(jù)。因此開發(fā)人員用簡便的方法就可以實(shí)現(xiàn)利用U盤存儲A/D轉(zhuǎn)換器采集來的海量數(shù)據(jù),該方案設(shè)計(jì)簡單而且數(shù)據(jù)存儲能力強(qiáng)大,能夠存儲海量數(shù)據(jù),具有一定的實(shí)用價值。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉