0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于C8051F021單片機和SD2300芯片實現(xiàn)海流數(shù)據(jù)采集存儲接口的設計

電子設計 ? 來源:單片機與嵌入式系統(tǒng)應用 ? 作者:劉軍亮 ? 2020-10-19 10:40 ? 次閱讀

隨著科技的高速發(fā)展,現(xiàn)代工業(yè)測控領域的很多應用中都需要實現(xiàn)大量數(shù)據(jù)的定時采集存儲。以為海流計設計的海流數(shù)據(jù)采集存儲接口電路為例,介紹一種定時采集存儲系統(tǒng)的工作原理及其實現(xiàn)方法。

1 總體結構

在很多情況下,尤其是惡劣的工作環(huán)境下,高性能的單片機和大容量的Flash存儲器是數(shù)據(jù)采集存儲系統(tǒng)的最佳選擇,本文介紹的系統(tǒng)也是基于這樣的考慮。系統(tǒng)硬件結構并不復雜,包括高性能單片機C8051F021、實時時鐘芯片SD2300、大容量Flash存儲器K9G8G08及其外圍電路,如圖1所示。工作原理也較為簡單,通過串口將單片機C8051F021與海流計相連,通過對單片機的編程實現(xiàn)對海流計的控制和使用。同時,為了實現(xiàn)定時采集和數(shù)據(jù)存儲的功能,還需將實時時鐘芯片SD2300和大容量Flash存儲器K9G8G08的相應引腳與C8051F021的GPIO相連。SD2300通過發(fā)送定時中斷使得C8051F021在預定時刻通過串口采集若干組流速和流向數(shù)據(jù),然后將其存儲在K9G8G08中。

基于C8051F021單片機和SD2300芯片實現(xiàn)海流數(shù)據(jù)采集存儲接口的設計

2 硬件設計

2.1 高性能單片機C8051F021

C8051F021單片機是集成在一塊芯片上的混合信號系統(tǒng)級單片機。芯片上有64位數(shù)字I/O。C8051F021單片機具有片內看門狗定時器、VDD 監(jiān)視器和時鐘發(fā)生器,可以說是真正的、可獨立工作的、完整的SoC(片上系統(tǒng))。片上所有的模擬和數(shù)字設備都可以使能或關閉,也可以由用戶設置。片內的 Flash存儲器可以在電路(即由用戶程序在運行時)編程(讀寫),為用戶提供了非揮發(fā)性存儲器,并允許現(xiàn)場更新8051程序。

2.2 SD2300與C8051F021的硬件接口設計

SD2300是深圳市興威帆電子技術有限公司開發(fā)的一種具有內置晶振、兩線式串行接口的高精度實時時鐘芯片。較SD2000而言,SD2300具有更寬的定時范圍、更多的周期性中斷選擇,并增加了數(shù)字精度調整寄存器、30s時間調整和晶振停振檢測等功能。最顯著的改動是對時鐘數(shù)據(jù)/寄存器的訪問由通過不同命令字改為地址直接尋址,使得芯片的使用更加靈活,并提高了程序編寫的可讀性。

SD2300的接口為I2C總線。對于具有I2C總線接口的單片機,只需將SD2300的SCL、SDA腳與單片機的SCL、SDA腳相連;對于沒有 I2C總線接口的單片機,可以用通用I/O口來模擬I2C總線。如圖2所示,單片機C8051F021的PO.6模擬SCL,產(chǎn)生I2C總線的時序同步信號;PO.7模擬SDA,實現(xiàn)I2C總線的串行數(shù)據(jù)輸入/輸出。圖2中的INTRA、INTRB為定時中斷輸出,SDA和SCL為時鐘電路的串行時鐘腳, SDAE和SCLE為E2PROM的串行時鐘腳。

2.3 K9G8G08與C8051F021的硬件接口設計

K9G8G08容量為8 Gb(8 858 370 048位),包含524 288行(頁)和2 112×8列。在列地址2 048~2 111處有備用的64列存儲單元。2 112字節(jié)的數(shù)據(jù)寄存器與存儲器陣列相連,用來為在頁讀或頁編程操作時I/O端口和存儲陣列間的數(shù)據(jù)傳輸服務。存儲器陣列由32個存儲單元串行連接在一起,構成了一個NAND結構。每32個存儲單元處于不同的頁中。一個存儲單元包括2位數(shù)據(jù)。一個塊由2個NAND結構串組成,總共包含1 081 344個NAND結構。編程和讀操作均以頁為單位,而擦除操作以塊為單位。存儲器陣列包含4 096個256 KB的可擦除塊。K9G8G08采用8個I/O引腳的多次復用方案。這就使得其外部引腳數(shù)顯著減少,并且可以不改變現(xiàn)有系統(tǒng)的板級設計而進行系統(tǒng)升級。指令、地址和數(shù)據(jù)通過在CE為低電平時把WE引腳拉低而寫入I/O引腳,在麗的上升沿被鎖存。CLE和ALE通過I/O引腳分別被用在指令和地址的多路傳輸中。一些指令需要1個總線周期,例如重啟指令、讀狀態(tài)指令等;另一些指令則需要2個周期,例如頁讀、塊擦除和頁編程操作,一個周期用來設置,另一個周期用來執(zhí)行。1 Gb的物理地址空問需要30位的地址,5個周期來尋址(2個列地址,3個行地址)。頁讀和頁編程操作在相應的指令后需要同樣的5個地址周期。而在一個塊擦除操作中,只需要3個行地址。因此,可將C8051F021的P2口直接與這8根I/O連接,其他控制引腳接C8051F021、的相應引腳,如圖3所示。K9G8G08通過CLE和ALE信號線實現(xiàn)I/O口上指令和地址的復用。指令、地址和數(shù)據(jù)都通過拉低WE和CE從I/O口寫入。

3 軟件設計

3.1 系統(tǒng)軟件設計

系統(tǒng)軟件的設計流程如圖4所示。首先完成系統(tǒng)的初始化工作,包括C8051F021的初始化和SD2300的定時中斷設置,然后系統(tǒng)進入等待狀態(tài)。待到達預定時刻后,SD2300發(fā)出定時中斷,使C8051F021進入中斷處理程序,進行數(shù)據(jù)采集和存儲。存儲完畢,系統(tǒng)再次進入等待狀態(tài),等待下一次定時中斷的到來。

3.2 SD2300的軟件接口設計

SD2300的I2C接口與C8051F021的GPIO相連,通過GPIO來模擬I2C,編程簡單,操作方便。SD2300的訪問控制通過寄存器直接尋址實現(xiàn),其內部的寄存器如表1所列。

SD2300通過兩線式串行接口方式接收各種命令并讀寫數(shù)據(jù)。下面具體介紹兩線式串行接口方式。

①開始條件:當SCL處于高電平時,SDA由高電平變成低電平構成一個開始條件。對SD2300的所有操作均必須由開始條件開始。

②停止條件:當SCL處于高電平時,SDA由低電平變成高電平構成一個停止條件。此時SD2300所有的操作均停止,系統(tǒng)進入待機狀態(tài)。

③數(shù)據(jù)傳輸:當SCL為低電平,且SDA電平變化時,數(shù)據(jù)由C8051F021傳輸給SD2300;當SCL為高電平,且SDA電平不變時, C8051F021讀取SD2300 E2PROM發(fā)送來的數(shù)據(jù);當SCL為高電平,且SDA電平變化時,SD2300收到一個開始或停止條件。

④確認:數(shù)據(jù)傳輸以8位序列進行。SD2300在第9個時鐘周期時將SDA置位為低電平,即送出一個確認信號,標明數(shù)據(jù)被其收到。

鑒于篇幅所限,僅以SD2300的設定開始采集時間程序為例,介紹一下SD2300的軟件接口編寫。

3.3 K9G8G08的軟件接口設計

相比于三星公司的Flash存儲器KM29U128T,K9G8G08不僅在容量上得到了極大的提高,操作的多樣性和靈活性也有顯著改進。例如,支持一頁內的隨機數(shù)據(jù)讀寫,并提供了一種特殊的Two-Plane頁編程操作,可以支持兩頁的同時寫入,其操作指令如表2所列。

4 總結

為海流計設計的數(shù)據(jù)定時采集存儲系統(tǒng),經(jīng)過反復實驗,能夠按照預定時刻準時進行數(shù)據(jù)采集工作,數(shù)據(jù)存儲完整準確,整個系統(tǒng)工作穩(wěn)定可靠。該系統(tǒng)的設計為相關應用提供了參考。

責任編輯:gt

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    452

    文章

    50033

    瀏覽量

    419896
  • 單片機
    +關注

    關注

    6027

    文章

    44459

    瀏覽量

    631269
  • 數(shù)據(jù)采集

    關注

    38

    文章

    5720

    瀏覽量

    113343
收藏 人收藏

    評論

    相關推薦

    計算機近距離無線數(shù)據(jù)采集系統(tǒng)設計

    接收模塊和無線數(shù)據(jù)采集發(fā)射模塊組成。無線數(shù)據(jù)發(fā)射模塊以C8051F021單片機為處理核心,采用單片機內部的12位ADC對現(xiàn)場的模擬信號進行
    發(fā)表于 11-30 10:12

    使用C8051F32X帶USB接口單片機進行數(shù)據(jù)采集和USB接口通信(四)——單片機編譯軟件

    目前,帶USB總線的產(chǎn)品越來越多,其優(yōu)越性也更加顯現(xiàn),USB的應用必將向著更深和更廣的方向發(fā)展。為了使讀者進一步了解和掌握USB設計技術,本刊特推出《使用C8051F32X帶USB接口單片機進行
    發(fā)表于 05-06 09:08

    請問C8051F021單片機復位端口是高電平怎么解決?

    C8051F021單片機復位端口是高電平,一上電蜂鳴器和其他兩個重要控制端口誤動作,相加一個一上電就三態(tài)輸出的隔離,只要四個端口,573是8路的嫌多,有4路類似的嗎?或者還有其他解決方法? 輸入端接的都是單片機
    發(fā)表于 10-08 14:28

    c8051f020/c8051f021中文資料

    C8051F020/1/2/3 器件是完全集成的混合信號系統(tǒng)級MCU。芯片具有64 個數(shù)字I/O 引腳。C8051F020/2 或32 個數(shù)字I/O 引腳。C8051F021/3 下面
    發(fā)表于 10-10 14:23 ?761次下載

    C8051F021 pdf datasheet (8K IS

    I/O pins (C8051F020/2) or 32 digital I/O pins (C8051F021/3). Highlighted features are listed below; refer to Table 1.1 for specifi
    發(fā)表于 10-10 14:27 ?75次下載

    基于C8051F021的定位和報警移動終端設計

    C8051F021 是美國Cygnal 公司生產(chǎn)的單片機,具有雙串口、低功耗、高速度等優(yōu)點。本文以C8051F021 為處理器,利用GSM 的數(shù)據(jù)業(yè)務,設計一種具有報警和定位的移動終端
    發(fā)表于 04-15 10:42 ?25次下載

    基于C8051F的近紅外光譜數(shù)據(jù)采集系統(tǒng)

    根據(jù)近紅外光譜儀(NIRS)的特點,利用C8051F120 單片機提出一種數(shù)據(jù)采集系統(tǒng)的設計方案,實現(xiàn)了對數(shù)據(jù)的精確
    發(fā)表于 09-24 16:34 ?55次下載

    基于C8051F060的數(shù)據(jù)采集存儲系統(tǒng)的設計

    介紹一種基于C8051F060單片機和NAND Flash的數(shù)據(jù)采集存儲系統(tǒng),該系統(tǒng)可實現(xiàn)3路信號采樣,每路采樣率為5KS/s,通過異步串行
    發(fā)表于 12-23 16:21 ?91次下載

    C8051F021在遠程診斷與急救支援系統(tǒng)中的應用

    摘要:介紹了一種基于C8051F021單片機的多生理參數(shù)采集裝置。該裝置作為遠程診斷與急救支援系統(tǒng)的一部分,能動態(tài)地獲取患者的生理參數(shù),并通過無線方式傳送給
    發(fā)表于 03-11 11:47 ?1167次閱讀
    <b class='flag-5'>C8051F021</b>在遠程診斷與急救支援系統(tǒng)中的應用

    基于C8051F021的定位和報警移動終端設計

    摘要:C8051F021是美國Cygnal公司生產(chǎn)的單片機。具有雙串口、低功耗、高速度等優(yōu)點。本文以GSM的數(shù)據(jù)業(yè)務,設計一種具有報警和定位的移動終端,并介紹該終端的結構框圖、
    發(fā)表于 03-11 11:49 ?2623次閱讀
    基于<b class='flag-5'>C8051F021</b>的定位和報警移動終端設計

    C8051F021單片機實現(xiàn)數(shù)據(jù)采集系統(tǒng)

    介紹的功角測量 數(shù)據(jù)采集 卡是采用Cygnal公司C8051F021單片機實現(xiàn)的PCI總線接口卡。該卡通過2片雙口RAM分別
    發(fā)表于 09-29 14:31 ?3330次閱讀
    <b class='flag-5'>C8051F021</b>型<b class='flag-5'>單片機</b><b class='flag-5'>實現(xiàn)</b><b class='flag-5'>數(shù)據(jù)采集</b>系統(tǒng)

    C8051F340單片機為核心的數(shù)據(jù)采集系統(tǒng)設計

    系統(tǒng)設計圖如圖1所示, 系統(tǒng)主要由C8051F340數(shù)據(jù)采集模塊與上位PC機構成。需要監(jiān)控的數(shù)據(jù)通過系統(tǒng)前端的傳感器轉換后送入預處理電路, 從預處理電路輸出的數(shù)據(jù)通過I/O端口送入AD
    發(fā)表于 08-03 10:12 ?4038次閱讀
    以<b class='flag-5'>C8051F</b>340<b class='flag-5'>單片機</b>為核心的<b class='flag-5'>數(shù)據(jù)采集</b>系統(tǒng)設計

    基于C8051F系列單片機數(shù)據(jù)采集系統(tǒng)USB接口設計

    C8051F320 是由美國Cygnal 公司推出的C8051F 系列單片機中的一款用于USB 設備的小型單片機。該器件內部集成有2304 Byte RAM 和16K Byte 的Fl
    發(fā)表于 02-26 15:16 ?1830次閱讀
    基于<b class='flag-5'>C8051F</b>系列<b class='flag-5'>單片機</b>的<b class='flag-5'>數(shù)據(jù)采集</b>系統(tǒng)USB<b class='flag-5'>接口</b>設計

    使用C8051F020實現(xiàn)SD卡主控制器的設計資料說明

    給出一種應用于飛機飛行數(shù)據(jù)采集儀的SD卡設計方案, 該方案選用與8051完全兼容的高性能單片機C8051F020作為主控制器.采用SPI總線
    發(fā)表于 10-22 17:33 ?3次下載
    使用<b class='flag-5'>C8051F</b>020<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>SD</b>卡主控制器的設計資料說明

    基于單片機C8051F021和時鐘芯片實現(xiàn)定時采集存儲系統(tǒng)的設計

    隨著科技的高速發(fā)展,現(xiàn)代工業(yè)測控領域的很多應用中都需要實現(xiàn)大量數(shù)據(jù)的定時采集存儲。筆者以為海流計設計的
    的頭像 發(fā)表于 03-19 13:39 ?3699次閱讀
    基于<b class='flag-5'>單片機</b><b class='flag-5'>C8051F021</b>和時鐘<b class='flag-5'>芯片</b><b class='flag-5'>實現(xiàn)</b>定時<b class='flag-5'>采集</b><b class='flag-5'>存儲</b>系統(tǒng)的設計