新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 一種大容量移動存儲的網絡訪問方案設計

        一種大容量移動存儲的網絡訪問方案設計

        作者: 時間:2016-09-12 來源:網絡 收藏

        引言

        本文引用地址:http://www.104case.com/article/201609/303698.htm

        在工業測井系統中,終端的數據存儲、數據轉移一直是工作的重要環節。傳統工業測井系統的數據存儲采用不掉電靜態RAM、EEPROM存儲模塊,數據轉移通常是計算機通過RS232串行口讀取。

        隨著技術的發展,計算機的介質普遍采用U盤或移動硬盤。U盤相對于工業測井系統終端原來的存儲模塊來說是海量存儲,所有存儲數據無需進行壓縮處理,可以在文件級與計算機兼容。與此同時,嵌入式Internet技術的發展又使得互聯網技術能夠輕松地嵌入到工業測井系統中,通過以太網控制芯片將測井系統終端接入互聯網后,編制測井系統終端控制器和網絡服務器之間的通信協議,便可以輕松實現通過數據中心網站來控制測井終端的數據采集,而進行數據訪問,也無需反復插拔接口存儲器,僅通過已接入互聯網的PC機或其他具有上網功能的移動終端即可實現遠程控制海量測井數據的采集、存儲及訪問。綜上所述,具有接口的存儲設備能實現互聯網遠程控制、訪問USB存儲設備的設計方案,對于希望獲取海量測井數據的用戶來說意義重大。

        1 系統設計

        系統框圖如圖1所示,主要是以STC15F2K60S2單片機為核心。單片機收集測井系統中各路傳感器采集到的數據信息,通過USB接口芯片存儲在大容量U盤中,另外使用以太網控制芯片將系統接入互聯網,通過PC機或其他具有上網功能的移動終端遠程控制并且訪問U盤中的測井數據。

        一種大容量移動存儲的網絡訪問方案設計

        1.1 USB接口芯片CH376模塊設計

        1.1.1 CH376硬件電路搭建

        USB接口芯片CH376模塊硬件電路設計如圖2所示,單片機與CH376采用的是硬件總線8位并口連接方式。CH376通過8位被動并行接口的D0~D7、RD#、WR#、PCS#、A0直接連接到STC15F2K60S2單片機的系統總線上,其中D0~D7連接STC15F2K60S2的數據總線P0.0~P0.7引腳,RD#、WR#引腳與STC15F2K60S2的對應引腳相連,INT#引腳連到STC15F2K60S2的外部中斷INT0上(采用中斷方式處理USB數據傳輸),PCS#連接STC15F2K60S2的P2.6引腳來控制CH376的使能,A0連接到STC15F2K60S2的P2.0引腳,因此,CH376命令寄存器的地址可選為BDF1H,數據寄存器的地址可選為BCF0H。

        一種大容量移動存儲的網絡訪問方案設計

        1.1.2 CH376軟件設計

        系統需要將各路傳感器收集到的數據信息存入大容量的U盤中,CH376能讀寫大容量U盤,故可以在U盤中創建文件,將采集到的數據寫入該文件中,創建一個EXCEL文件用于存放采集到的數據。

        軟件操作的具體步驟是:單片機首先發送CMD_SET_USB_MODE命令設置CH376工作在主機模式下,然后調用沁恒公司提供的FILE_SYS文件系統庫中的CH376DiskConnect函數等待U盤連接,U盤連接成功后,在進行操作之前必須由單片機發送CMD_DISK_MOUNT進行初始化,并檢測磁盤是否準備就緒,確認磁盤準備就緒后,調用文件系統庫函數CH376 File Open打開磁盤中已經創建好的文件。當文件創建成功后,為方便向文件中添加數據,還需要將該文件移動到U盤中所有已有文件的末尾。可調用文件系統庫函數CH376ByteLocate設定參數為0xFFFF FFFF,即可移動該文件至所有文件之后,以上一切準備就緒后就可以向文件中寫入數據了,最后要保存文件并更新文件長度,涉及到的文件庫函數是CH376 GetFileSize。在U盤中創建EXCEL文件的軟件流程圖如圖3所示。

        一種大容量移動存儲的網絡訪問方案設計

        1.2 以太網控制芯片模塊設計

        1.2.1 硬件電路搭建

        以太網控制芯片ENC28J60模塊硬件電路如圖4所示。單片機與ENC28J60采用SPI總線方式連接,由于STC15F2K60S2內部集成了硬件SPI,為了提高網絡通信速率,采用硬件SPI方式驅動ENC28J60。STC15F2K60S2內部與SPI總線驅動相關的寄存器有SPI控制寄存器SPCTL、SPI狀態寄存器SPSTAT、SPI數據寄存器SPDAT、SPI功能切換寄存器AUXR1。配置好相關寄存器后,將SPI接口的4個引腳(SCKL/P1.5、MISO/P1.4、MOSI/P1.3、SS/P1.2)分別與ENC28J60相應引腳相連,以太網接口采用自帶網絡變壓器和網絡通信指示燈的專用網絡接口HR911105A。

        一種大容量移動存儲的網絡訪問方案設計

        1.2.2 EN028J60軟件設計及嵌入式μIP協議棧移植

        (1)ENC28J60的驅動及網絡數據的收發 ENC28J60的驅動程序主要分3部分:第一是配置相關寄存器,第二是芯片初始化,第三是收發數

        據包,其中最核心的是收發數據包。在收發數據包時有以下幾點值得關注:首先ENC28J60具有一個接收過濾器,可以丟棄或接收具有組播、廣播或單播目標地址的數據包;其次,在數據字段處,以太網數據字段的長度可以在0~1500字節之間變換,超過這一范圍的數據包是違反以太網標準的,將會被大多數以太網節點丟棄。

        (2)嵌入式μIP協議棧移植

        μIP是由瑞典計算機科學學院(網絡嵌入式系統小組)的Adam Dunkels開發的,是專門為8位和16位單片機設計的一個非常小的TCP/IP協議棧。μIP完全用C語言編寫,可以很方便地移植到各種不同結構的單片機和操作系統上。μIP協議棧去掉了完整的TCP/IP協議中不常用的功能,簡化了通信流程,設計重點放在IP/TCP/ICMP/UDP/ARP這些網絡層和傳輸協議上,保證了其代碼的通用性和結構的穩定性,而且其占用資源非常少,協議棧代碼不到6 KB,RAM只占用幾百字節。在設計上μIP采用硬件處理層、協議棧層、應用層共用一個全局緩沖區,不存在數據拷貝問題,其發送和接收數據包都是依靠這個緩沖區,極大地節省了空間和時間。另外μIP源代碼提供一套實例程序,包括Web服務器、Web客戶端、電子郵件發送、Telnet服務器、DNS主機名解析等。μIP協議棧與系統底層和高層應用之間的關系如圖5所示。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 五峰| 托克托县| 温宿县| 三明市| 阿拉善左旗| 容城县| 三亚市| 东宁县| 水城县| 四子王旗| 临沭县| 龙门县| 海南省| 宜良县| 安岳县| 邵阳市| 资源县| 洛阳市| 鱼台县| 宁波市| 陈巴尔虎旗| 深泽县| 眉山市| 平舆县| 图片| 大英县| 曲阜市| 新晃| 湖南省| 社会| 安陆市| 迁安市| 遵义市| 闻喜县| 婺源县| 儋州市| 千阳县| 镇坪县| 米泉市| 乃东县| 三原县|