0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

飞行数据采集系统中SD卡存储的应用介绍

电子设计 来源:郭婷 作者:电子设计 2018-12-30 08:52 次阅读

1 引言

飞机飞行状况监测及数据采集仪。用于采集飞机试飞时的各种飞行数据,要求大量的存储容量。它具有功能强、性价比高、安装和使用方便的特点。采集仪可以根据用户的要求进行配置,对八路传感器输入信号进行调理、采样及数据处理,将测量结果实时动态显示,并通过其报警功能,实现设备故障预警。采集仪既可以单机独立工作,也可以通过RS-485总线将多达16台采集仪与计算机联机组成在线监测系统。应用范围包括各种不同类型的电机、风机、泵、齿轮箱、轧机、风力发电机、电站和离心机,以及各种机械设备常见故障的状态监测等。

2 硬件功能原理与设计

SD卡的外形和接口如图1所示。根据SD卡与主控制器的通信协议不同,SD卡对外提供两种访问模式:SD模式和SPI模式。所用通信模式不同,SD卡引脚的功能也不同,具体引脚功能如表1所示。在具体通信过程中,主机只能选择其中一种通信模式。通信模式的选择对于主控制器来说是透明的,卡会自动检测复位命令的通信协议模式,而且通信模式一旦选定,系统在通电情况下不能改变。SD模式下,主控制器使用SD总线访问SD卡。可通常的单片机没有硬件SD总线,尽管可以借助通用口线用软件仿真,但访问速度较低,还要大量占用CPU时间,而单片机多具有SPI总线。

飞行数据采集系统中SD卡存储的应用介绍

飞行数据采集系统中SD卡存储的应用介绍

注:S--电源;I--输入;O--推挽输出;PP--推挽I/O。

在SPI总线模式下。CS为主控制器向卡发送的片选信号,SCLK为主控制器向卡发送的时钟信号。DI(DataIn)为主控制器向卡发送的单向数据信号,DO(DataOut)为卡向主控制器发送的单向数据信号。SD卡的内部结构如图2所示,还具有卡接口控制器、寄存器以及SD和SPI两种模式的对外接口等。外部主控制器访问卡的外部信号线并不与存储器单元直接相连,而是通过卡的接口控制器与存储器单元接口相连。卡内存储单元的读,擦,写由卡接口控制器根据主控制器的命令自动处理完成,而主控制器无须知道卡内是如何操作、管理存储单元的。SD卡内部有6个信息寄存器,用来设置和保存操作卡的关键信息,有两个状态寄存器,用来记录操作卡的当前状态。

采集仪的主控制器采用了C8051F020单片机。C8051F020是完全集成的混合信号系统级MCU芯片。这个系列单片机与8051在指令上完全兼容,性能远远高于标准的8051单片机。又扩展了丰富的外设,是一种名副其实的SOC (System On Chip)单片机,与SD卡系统相关的特性如下:

飞行数据采集系统中SD卡存储的应用介绍

单片机内部采用流水线结构。指令运行速度高。指令运行速度比一般的80C51系列单片机提高了大约10倍。

具有SPI 硬件接口。可与SD卡的SPI 总线很好接口。

具有8个8位I/O端口。除满足数据采集需要外。有足够的口线用于单片机与SD卡的连接。而且。这些口线可通过软件进行配置,获得不同的功能,其中SPI 接口,就是通过配置相关寄存器而获得的。

具有可扩展的中断系统。支持22个中断源。

片内存储器包括64KB的Flash、和4KB的XRAM。不需要扩展存储器。就可以满足文件系统的建立和访问SD 卡的需要。

3.3V的工作电压,与SD卡工作电压兼容。

时钟系统更加完善,可以使用内部时钟,也可以使用外部时钟。

可实现通过JTAG接口的在系统调试。

C8051F系列单片机的SPI串行接口的主要特点如下:全双工,三线同步传输,即在发送的同时也能接受;可以工作在主机方式或从机方式;主机最大数据传输速率(位/秒)是系统时钟频率的1/2.因而最高可达10Mb/s;SPI位传输速率可通过编程选择;发送结束设置中断标志。发送期间不占用CPU时间;串行时钟极性与相位可编程改变;具有写冲突保护和总线竞争保护。

对于C8051F020的SPI系统。首先通过设置I/O端口功能选择开关控制寄存器XBR0、XBR1、XBR2.将I/O端口P0.0、P0.1、P0.2、P0.3配置成SPI功能引脚SCK、MISO、MOSI和NSS。此时I/0端口P0.0、P0.1、P0.2、P0.3就组合成SPI接口了。SPI0CFG是SPI的配置寄存器,用于配置SPI的工作方式。并反映通信过程中的数据发送状态。并反映通信过程中的一些错误标志,SPI0CKR是SPI的时钟速率寄存器,用于选择SCK输出的频率。

主控制器C8051F020与SD卡座的电路连接图如图3所示。除了SPI接口的连接外,还有三根控制线,P0.4_SD_INSERT就是I/O端口P0.4,用于检测SD卡在卡座上是否插好。完全插入时该引脚为低电平,否则为高电平。P0.5_SD_WP就是I/O端口P0.5,用于检测SD卡当前是否设置写保护。写保护时该引脚为高电平,否则为低电平。P0.6_SD_POWER就是I/O端口P0.6,用于SD卡的供电控制,这是为了在SD卡进入不确定状态时,可以通过对卡重新上电复位而无需拔出卡。

3 软件设计

硬件抽象层包括访问SD卡的硬件环境配置、SPI接口实现通讯的基本函数以及SPI中断的处理。硬件环境配置包括硬件初始化、以及内存变量初始化等。SPI接口实现通讯的基本函数,包括主控制器向SD卡发送一字节和从SD卡读取一字节的基本函数,这是所有SPI通讯的基础。SPI中断处理是SPI接口产生中断时。中断服务程序被自动调用,在中断服务程序中,读取SPI控制寄存器。这里存放着产生中断的各种状态标志,根据不同的状态标志,调用不同的函数处理。

命令层,就是调用硬件抽象层的基本发送接收字节函数,实现SD卡所有SPI协议规定的命令。根据SD卡协议,访问SD卡的不同功能,由不同的命令实现。这些命令分成0—9个不同的类别。每种类别包括几个具体的命令,对于SPI协议,每个命令都由主机主动发送。高位在前低位在后,SD卡收到命令后。根据不同的命令做出不同的响应。主机发送的命令长度总是6个字节。命令的格式如表2所示,Command表示命令号,占用6位,Parameter表示命令参数,长度为4字节,不同的命令对应不同的命令参数值。SD卡的响应有4种格式,分别为R1、R1B、R2和R3格式。

表2 SPI模式命令格式

字节6 字节2~5 字节1

0 1 Command Parameter(高位在前) CRC 1

应用层函数提供客户程序访问SD卡的高级接口函数。使客户不需要知道SD卡的内部结构和命令内容、不需要知道SPI的接口协议等基本内容,客户程序只需要简单地调用接口函数了解SD卡的当前状态、读取自己需要的内容或写入自己的内容。应用层程序是在命令层基础上的更高抽象,调用命令层函数实现

4 结论

本文将SD卡存储方式运用到飞机飞行数据采集系统,简化了采集系统的设计,减小了系统尺寸,提高了系统的可靠性,使采集数据的读出变得简单易行。由于原有数据采集系统,采用8051单片机作主控制器,本次设计选用与8051完全兼容的高性能单片机C8051F020。既继承了原有采集系统的设计,又满足了访问SD卡的功能要求,加快了整个系统的设计进程。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6001

    文章

    43973

    浏览量

    620844
  • 数据采集
    +关注

    关注

    38

    文章

    4523

    浏览量

    112313
  • 发电机
    +关注

    关注

    26

    文章

    1485

    浏览量

    66587
收藏 人收藏

    评论

    相关推荐

    基于ARM7的SD读写控制在数据采集系统的应用

    MHz频率和低电压范围内工作。在便携式监控系统SD可用来存储监控采集数据。1 硬件
    发表于 09-19 09:42

    串口数据采集储存联网服务器应用方案

    设备数据行数据存储数据可以远程提取,也可保存在本地设备的SD
    发表于 04-06 17:01

    labview数据采集中的数据存储问题

    在labview怎样才能将数据采集卡采集到的数据存储起来,以供后面的数据处理用??
    发表于 05-09 15:20

    柴油机运行数据采集系统

    基于labview的柴油机运行数据采集系统,可以实现数据实时采集及处理,保存。
    发表于 07-07 20:43

    便携式高速大容量实时数据采集记录存储应用案例(SD存储)

    的应用越来越普遍,数据存储是无人机遥感数据重要组成部分。海量数据存储器成功应用于无人机航拍系统
    发表于 06-25 14:40

    关于NI的数据采集卡

    ,既然我们用labview进行数据采集,那么我们用的都应该是只有输入通道的采集卡吧,比如NI9205,NI9208等,那那些只有输出通道的采集卡又应用于哪些领域呢?
    发表于 03-26 16:15

    高速数据采集卡QT1125在飞行质谱的应用

    高速数据采集卡采样256次,使得到谱图时间缩短到0.1秒左右。系统整体介绍工作流程高速脉冲信号进入高速数据采集卡,完成信号的数模转换,按特定顺序缓存到板载内存
    发表于 03-02 16:06

    数据采集卡设计

    1.概述(定位) 开发一款数据采集卡,用于模拟电压高速采集,解决目前高频模拟信号采集的瓶颈;同时板卡还包括模拟电压输出、数字I/O输出和数字I/O采集功能。 板卡通过PCI总线和PC机
    发表于 12-17 09:09

    数据采集卡的功能

    `(1)数据采集卡可以连接外部传感器。比如温度传感器、压力传感器、旋转编码器等等。因此,使用数据采集卡可以完成测控系统的测量环节。 (2)数据采集
    发表于 01-15 10:53

    数据采集卡如何运用

    USB数据采集卡分带缓存和不带缓存的。不带缓存的和带缓存的FIFO存储机制的需要在线传输。带缓存的大容量(相对采集速率来说)RAM存储机制的可以采集
    发表于 01-17 15:13

    常见的几种不同的高速数据采集存储系统介绍

    、卫星、无线电、光电、激光等高频物理信号),因试验、监测及装备的需要,对于原始信号的长时间捕捉与存储需求也日益增强。做为实现这些需求的手段,一般搭建一套高速数据采集存储系统是比较常规的方式。坤驰科技做为
    发表于 07-04 06:08

    labview多通道数据采集存储

    labview如何进行多通道数据采集并进行数据存储采集后提取单通道数据信息
    发表于 11-10 09:22

    如何采用数据采集卡设计测井数据采集控制系统

    测井数据采集控制系统原理是什么?由哪些构成?数据采集有哪些方案设计?如何采用数据采集卡设计测井数据采集控制
    发表于 04-13 06:25

    基于WINCE的多路数据采集处理播放及SD存储的实验系统

    基于WINCE的多路数据采集处理播放及SD存储的实验系统
    发表于 10-25 15:53 14次下载
    基于WINCE的多路<b class='flag-5'>数据采集</b>处理播放及<b class='flag-5'>SD</b>卡<b class='flag-5'>存储</b>的实验<b class='flag-5'>系统</b>

    SD卡和Arduino的数据采集系统

    电子发烧友网站提供《带SD卡和Arduino的数据采集系统.zip》资料免费下载
    发表于 12-16 10:19 0次下载
    带<b class='flag-5'>SD</b>卡和Arduino的<b class='flag-5'>数据采集</b><b class='flag-5'>系统</b>