收藏本站
网站导航
联系方式
网站首页 | 杂志简介 | 论文欣赏 | 在线订阅 | 征稿启事 | 投稿须知 | 资讯速递 | 写作指南
本刊信息

主管:广西国有资产监督管理委员会
主办:广西轻工业科学技术研究院
协办:广西轻工协会
      广西酿酒协会
编辑/出版:《广西轻工业》编辑部
编委会主任:罗左青
编委会副主任:程劲芝 梁智
编委:白树雄 宋  苹 蒋敬全
      谢晓航 雷光鸿 贤章胜
主编:贤章胜
地址:广西南宁经济技术开发区
      迎凯路8号
邮编:530031
编辑部:0771-4518435
        4518909转8968
投稿信箱:qgkj@vip.126.com
网址:www.qgkjlw.com
国际标准刊号:ISSN2095—3518
国内统一刊号:CN45—1385/TS
订阅:全国各地邮局
邮发代号: 48—123
定价:人民币15元
刊期:月刊

理事单位

广西粮油科学研究所
广西大学轻工与食品工程学院
广西大学生命科学与技术学院
广西农垦糖业集团金光制糖有限公司
广西农垦糖业集团昌菱制糖有限公司
广西机械工业研究院
重庆啤酒集团柳州啤酒有限责任公司
南宁吉然节能环保技术有限公司
柳州柳连机械制造有限责任公司
南京润维热工设备有限公司
广西柳州市嘉诚汽车饰件系统有限公司
广西柳江县柳兴榨辊有限责任公司
广西南宁丰烁电力设备节能有限公司
广西都安密洛陀野生葡萄酒有限公司
广西巴马神酒业有限责任公司
广西中天领御酒业有限公司
广西北海市合浦东园家酒厂
桂林理工大学管理学院
广西工业职业技术学院   
广西农业职业技术学院
广西二轻工业技工学校
广西德保县酒厂
广西全州湘山酒厂
田阳南华纸业有限公司
广西桂平乳泉液酒业有限公司

 
首页>> 论文欣赏 >> 计算机科学与信息技术>> 正 文
 

基于大容量仪器高速数据存储设计

2010年第3期(总第136期)
李 威,冯根生,方 龙(解放军蚌埠坦克学院电子教研室,安徽 蚌埠233050)
 
  【摘 要】 在现场数据采集与存储中,往往有成千上万个采样点数据需要采集与存储。保证这些现场数据的可靠存储是智能测量仪器设计中的关键问题之一。
  【关键词】 数据采集;数据存储;存储模块
 
1 引言
  在智能仪器中,经常需要进行大量的数据采集和存储操作。采样点有成千上万个,产生了大量的数据,保证这些现场数据的可靠存储是智能测量仪器设计中的关键问题之一。为此设计了一种海量存储模块,它的存储单元采用大容量电子盘(64MB或更高),也称CF(Compact Flash Card)卡。CF卡体积小、重量轻、功耗低、容量大、读写速度快、机械性能优、硬件兼容性好,非常适合解决野外现场数据采集系统中数据传输及大容量存储的问题。
 
2 数据采集与存储原理
  对于采样的成千上万个数据,对基于PC机的智能仪器,这些数据可直接以DOS或Windows文件的形式存入硬盘;而对于基于单片机的现场设备,则由于系统处理速度慢、没有操作系统支持和存储容量小等原因,难以满足上述要求。通常单片机所支持的存储单元的RAM、EEPROM或小容量的Flash存储芯片,它们的一个共同特点是受寻址空间的限制,不能满足海量存储的要求。
  为此本文设计的该存储模块由微处理芯片、扩展I/O芯片、电子盘、IDE接口以及串行接口电路等组成。它通过串口与外部设备进行命令和数据的传输,通过IDE接口实现对电子盘的操作,由微处理芯片来协调和控制各部分的工作,这样便构成了基于单片机系统的海量存储系统。
 
3 存储模块的组成结构
  CF卡存储模块由串口、微处理芯片、I/O扩展芯片、IDE接口、电子盘组成。图1是其组成结构图。
         图1  存储模块组成结构图
3.1  CF卡的结构和读写控制
  如图1所示,微控制器通过82C55A组成的I/O扩展电路和IDE接口来控制CF卡。由于CF卡与IDE(Integrated Drive Electronics)设备接口具有兼容性,这里IDE接口实际上实现了CF读卡器的功能,完成了50引脚CF卡接口到40引脚标准IDE接口的转换。所以借助于该IDE接口电路,微控制器读写CF卡采用的软硬件结构与控制IDE硬盘完全相同。下面对IDE接口作一简单介绍。
  IDE接口引脚图如图2所示。其中,D(15...0)是数据线,GND为地线,IOW、IOR分别为写、读信号,RESET为复位信号,/CS0、/CS1、HA(2...0)为地址信号,I/O CHRDY为驱动器就绪信号。
  IDE接口基于寄存器结构,所有的输入输出均通过对相应的寄存器进行操作来实现。
IDE接口的操作时序为:
  (1)等待驱动器将状态寄存器中的Bit7(BUSY位)清零。
  (2)向相关的寄存器写操作硬盘所需的参数,即写扇区数寄存器、扇区号寄存器等。
  (3)向命令寄存器写命令代码。
  (4)使中断使能位有效。
  (5)等待驱动器置DRY#,发中断请求。
    图2  IDE接口引脚图
  IDE接口有两种读写方式:LBA(逻辑块地址)和CHS(柱面/磁头/扇区)方式。本模块使用CHS方式。
3.2  系统硬件组成
  微控制芯片采用51系列的SST89E564RD芯片,该芯片中含有1K的RAM(On-Chip RAM)和64K+8K字节的内置电可擦除存储器(Flash ROM),支持在线编程(ISP),系统开发非常简便。对于电子盘的读写只能以扇区为单位,一个扇区有512字节,因此一次读写最少要有512字节。
  串口的作用是实现与外部设备之间的命令和数据传输。SST89E564RD共有两个串口,一个用来实现与单片机系统之间的通信,另一个用来实现与PC机之间的通信。与PC机相连的串口采用一个MAX232芯片来实现电平转换。这样,该模块可以在现场接收来自于单片机采集系统的数据并实时存储,而存储的数据也能被PC机读取,并进行事后数据分析。
 
4 CF卡存储模块的程序结构
  CF卡存储模块的程序采用C51语言编写,主要包括主程序和初始化、写扇区、读扇区和串口输入输出子程序等。其程序流程图如图3所示。串口输入采用硬件中断方式。程序能够接收来自于两个串口的命令并执行相应的数据读写操作。
  主程序的任务就是等待从串口中输入的命令。当串口中有字符输入时,首先判断输入的命令是否为真命令,当为真命令后,就调用相应的命令函数。
  在初始化子程序中完成初始化串口和电子盘,设置串口的工作方式和合适的波特率,并且使电子盘处于工作状态。
  当接收到来自于串口输入的写扇区命令后,系统将在规定时间内等待扇区号的输入和数据的输入。如果超出规定时间,则系统会加到主程序的等待状态,这样防止系统进入别致个死循环。然后系统就会驱动IDE接口,把数据写入指令的扇区中。
对于读扇区命令,同样它也会在规定的时间内等待扇区号的输入,然后从指定的扇区中读出数据,并从串口将这些数据送出。
            图3  程序流程图
 
5 存储模块的应用
  为了实现现场大量数据的存储,将上述存储模块用于该在线智能测产系统,并通过串口实现存储模块与测产主控制模块之间的数据通信。测产主控制模块由嵌入式微控制器、GPS接收器、割台传感器、速度传感器、产量传感器、湿度传感器等组成,安装在机器上。在精准作业中,主控制模块将现场采集的传感信号经过处理之后传送给存储模块保存。作业结束后,将存储模块上的产量信息读入到PC机。PC机与存储模块的数据通信程序采用VB6.0编写,它通过串口读取数据,并将其存储于Access数据库中。
 
6 结束语
  本文探讨了基于单片机的智能仪器海量数据存储方法,并设计了一种通用模块。此模块成本低廉,且运行可靠,为嵌入式测控系统的数据采集与存储提供了很好的解决方案。
 
参考文献
[1]郑学坚等.微型计算机原理及应用[M].北京:清华大学出版社,2001.
[2]丁元杰等.单片机微机原理及应用[M].机械工业出版社,2007.
 
作者简介
李威(1983-),男,安徽灵壁人,解放军蚌埠坦克学院电子室教员,主要从事电子工程的教学和研究。
   
关于我们 | 版权声明 | 广告服务 | 网站地图 | 联系方式
Copyright© 2005 QGKJLW.COM All Rights Reserved. 版权所有.《轻工科技》编辑部
工作QQ:373180636 投稿信箱:qgkj@vip.126.com 咨询电话:0771-4518435 4518909转8968
通讯地址: 广西南宁经济技术开发区迎凯路8号《轻工科技》编辑部 邮编:530031