基于STM32单片机的数据记录装置设计

发布者:采菊东篱下最新更新时间:2013-09-09 来源: dzsc关键字:STM32  单片机的  数据记录装置 手机看文章 扫描二维码
随时随地手机看文章

  引言

  本文针对电动汽车研究的实际需求,设计一款数据记录装置,该数据记录装置是搭建在电池能量管理系统基础上的,通过与能量管理系统通信,记录电动汽车实际运行时电池的外部状态(如:电池电压、电流、温度等),一方面为了研究电池的工作特性,另一方面为了对能量管理系统的工作情况做验证,为电动汽车动力电池的理论研究提供数据支持。

  1 系统总体设计

  本数据记录装置的设计包括硬件设计与软件设计两方面,软件设计主要包括数据接收的编程以及数据存储的编程,而硬件设计主要有几个方面:主控芯片的选择、复位功能的实现、电源模块、实时时钟、通信模块以及SD卡连接等。主控芯片是控制系统的核心,它内部所集成的模块越多,就能省去更多的外部电路,使得电路的设计更加简捷方便。电源模块用来满足系统各部分对于不同电压的需求。实时时钟,用来准确记录系统时标。选用SD卡作为存储装置以适应系统海量数据存储。基于现在市场上的电动汽车主要是CAN接口,所以本装置用CAN进行通信。系统总体结构如图1所示。

  根据其实际功能,本数据记录装置的硬件部分设计原理图如图2所示。

  2硬件设计

  2.1主控制芯片选择选择STM32F103RBT6芯片作为系统总控制器,STM32F103RBT6是意法半导体有限公司的一款高性能、低成本、低功耗的处理器,它使用高性能的32位的RISC内核ARMCortex-M3,工作频率为72MHz.它的价格较低,零售价大约12元左右。

  2.2复位功能

  STM32F103RBT内置两个看门狗,两个看门狗设备(独立看门狗和窗171看门狗)可用来检测和解决由软件错误引起的故障,实现软件复位;当计数器达到给定的超时值时,触发一个中断(仅适用于窗口型看门狗)或产生系统复位。STM32提供上电复位和掉电复位功能,给系统提供了更高的安全性、时间的精确性和使用的灵活性,使得程序运行更加高效,内置的复位功能可以满足系统复位要求。

  2.3实时时钟

  STM32F103RBT6中内置RTC实时时钟,实时时钟是一个独立的定时器。RTC模块拥有一组连续计数的计数器,在相应软件配置下,可提供时钟日历的功能。修改计数器的值可以重新设置系统当前的时间和日期。RTC模块和时钟配置系统(RCC-BDCR寄存器)处于后备区域,即在系统复位或从待机模式唤醒后,RTC的设置和时间维持不变。系统复位后,对后备寄存器和RTC的访问被禁止,这是为了防止对后备区域(BKP)的意外写操作。

  当主电源VDD掉电后,通过VBAT脚为实时时钟(RTC)和备份寄存器提供电源,使用电池或其他电源连接到VBAT脚上,当VDD断电时,可以保存备份寄存器的内容和维持RTC的功能。VBAT脚为RTC、LSE振荡器和PCI3至PCI5端13供电,可以保证当主电源被切断时RTC能继续工作。切换到VBAT供电的开关,由复位模块中的掉电复位功能控制。

  2.4电源模块

  电源模块为整个系统提供电源,STM32单片机要求2.0-3.6V的操作电压,RTC部分需要电池提供后备电源,在这里VBAT采用CRl220纽扣电池和VCC3.3V混合供电的方式,在有外部电源(VCC3.3V)时,CRl220不给VBAT供电。而在外部电源断开的时候,则有CRl220给VBAT供电。这样VBAT总是有电的,以保证RTC的走时以及后备寄存器的内容不丢失。单片机供电方面,采用5.OV电源通过AMS公司的AMSlll7电压转换芯片为单片机提供3 3V的工作电压。[page]

   

2与通信接口

  目前电动汽车能量管理系统主要应用的数据接口为CAN接口。在北美和西欧,CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,并且拥有以CAN为底层协议专为大型货车和重工机械车辆设计的31939协议,同时主控芯片STM32内置CAN控制器,只要外接CAN收发器就可以实现CAN通信。为了使系统具有尽可能的广泛性,数据记录装置设计了CAN通讯接口适应系统的需要。

  2.6 SD卡模块SD卡允许在两种模式下工作,即SD模式和SPI模式。引脚定义如表1所示:

  本装置采用SPI模式,与STM32的SPll口进行连接通信。

  SD卡的SPI通信接口使其可以通过SPI通道进行数据读写。从应用的角度来看,采用SPI接口的好处在于,sTM32内部自带SPI控制器,不仅给开发上带来方便,同时也降低了开发成本。

  SPI接口的选用是在上电初始时向其写入第一个命令时进行的。

  3软件设计

  软件调试采用KEIL公司RealView MDK4 12,它包括了ULVision4集成开发环境与ReilView编译器,自动配置启动代码。集成Flash烧写模块,强大的Simulation设备模拟,性能分析等功能。系统软件部分主要包括数据接收和数据存储。数据接收部分用于与能量管理系统的通信,以CAN中断接收的方式实现通信。在数据处理和存储部分程序中,数据处理是对数据进行处理转换为常用的单位和格式,数据存储部分负责将数据按一定结构打包存储。系统启动之时,SD卡的初始化是非常重要的,只有进行了正确的初始化,才能进行后面的各项操作。在初始化过程中,SPI的时钟不能太快,否则会造初始化失败。在初始化成功后,应尽量提高SPI的速率,在刚开始要先发送至少74个时钟信号。

  中断接收流程图如图3所示。

  数据存储流程图如图4所示。

  4结束语

  本设计提出了一种基于STM32的数据存储装置的设计方案,成功实现了电动汽车电池相关数据的存储,使用CAN通信保证了装置应用的广泛性,用SD卡作为存储介质,满足了数据存储容量以及速率上的要求,但同时仍有可以继续改进的地方,比如可以考虑增加_个USB口,使装置可以直接接到电脑上查看,存储和读取都将更方便,但由于STM32的USB与CAN共用部分SRAM,需要将USB与CAN的运行时间错开。

关键字:STM32  单片机的  数据记录装置 引用地址:基于STM32单片机的数据记录装置设计

上一篇:基于STM32单片机和EM310的无线终端设计
下一篇:浅谈AT91RM9200的嵌入式网络摄像机的设计与实现

推荐阅读最新更新时间:2024-03-16 13:27

基于Atmega16单片机新型智能空调遥控器
  1 引言   近年来,计算机技术、现代通信技术和自动控制技术高速发展,智能化家居系统也随着新技术的发展进入了千家万户,家居系统中如空调、电视、照明系统等,都使用遥控器进行控制。红外线遥控器由于具有结构简单、体积小、功耗低、功能强、成本低等特点,已成为使用最广泛的一种遥控方式。然而,由于各种红外设备采用的技术标准与协议大不相同,使得各种设备的遥控器并不能兼容,给用户和消费者带来了诸多不便。   目前,市场上已有的万能遥控器多是内置了多种品牌的红外控制指令,对内置品牌以外的红外设备则无能为力。为此,本文设计了一款针对空调设备的智能学习型红外遥控器,采用记录脉冲宽度的方法,成功实现了对多种红外空调遥控信号的学习与再现,真正实现了"万
[电源管理]
基于Atmega16<font color='red'>单片机</font><font color='red'>的</font>新型智能空调遥控器
单片机实现通用存贮器IC卡读写
    摘要: 本文对AT24系列存贮器和AT89系列单片机的特征及总线状态作为介绍,并以AT24C01与AT89C2051为例详细描述了通用存贮器IC卡的工作原理及用单片机对其进行读写操作的基本电路连接和软件编程方法。     关键词: E2PROM I2C总线 FLASH ROM IC卡 AT24C01 AT89C2051 1 概述 通用存贮器IC卡是由通用存贮器芯片封装而成的,由于它的结构和功能简单,生产成本低,使用方便,因此在各领域都得到了广泛的应用。目前用于IC卡的通用存贮器芯片多为E2PROM,其常用的协议主要有两线串行连接协议(I2C)和三线串行链接协议,其中比较常用的是ATMEL公司生产的
[工业控制]
STM32低功耗模式解读
本文主要解读STM32低功耗模式的机制,并不侧重STM32低功耗的程序实现,而且借助STM32固件库实现STM32低功耗会变的非常简单。 一、STM32芯片性能 使用芯片型号:stm32f030f4,CORTEX -M0.封装TSSOP20. 运行模式:内部时钟(HSI),系统时钟频率采用48MHZ。 工作电压:3.3V 芯片具体参数如下: 二、芯片功耗 功耗: 芯片工作模式: 工作模式:外设正常运行,内核CPU及SRAM供电,未使用外设的时钟默认关闭。 睡眠模式:只有CPU停止工作,各个外设正常工作,依靠任何中断/事件唤醒。 停机模式:1.8V供电区域时钟被停止,内部HSI,PLL,外部时钟HSE均关闭,同时电压
[单片机]
<font color='red'>STM32</font>低功耗模式解读
单片机位定义
51单片机中对一个变量进行位定义时,我们采用这种方式: typedef unsigned char uchar; uchar bdata flag; sbit F1 = flag^0; sbit F2 = flag^1; ... sbit F8 = flag^7; 之后就可以对F1 F8这些变量进行bool操作了。 在飞思卡尔单片机中,我们却用结构体实现相关定义: struct{ byte F0 :1; byte F1 :1; byte F2 :1; byte F3 :1; byte F4 :1; byte F5 :1; byte F6 :1; byte F7 :1;
[单片机]
演示STM32中PWM配置与应用
打开CubeMX软件,新建工程。 输入芯片型号。 根据封装选择列表中的芯片,我的是LQFP144封装,双击此项。 在Project Manager选项卡中,配置工程名、编译工具,如下图所示。 在Pinout&Configuration选项卡中,配置System的Debug为Serial Wire,否则可能无法下载程序。 RCC选择高速外部时钟。 根据电路原理图,可知LED7对应PC6管脚。 本实验要让PC6管脚输出PWM波形,实现LED7呼吸灯效果。 找到PC6,选中TIM3_CH1。 找到TIM3,通道1配置PWM输出。 查找STM32参考手册时钟图,找到TIM3时钟的位置在APB1上。
[单片机]
演示<font color='red'>STM32</font>中PWM<font color='red'>的</font>配置与应用
意法半导体和YOGITECH联合推出STM32微控制器安全设计组件
设计灵活性且价格实惠的STM32平台大幅节省了符合IEC 61508功能性安全标准的系统研发时间和成本 横跨多重电子应用领域、全球领先的半导体供应商意法半导体 (STMicroelectronics,简称ST;纽约证券交易所代码:STM) 和世界领先的功能性安全解决方案提供商YOGITECH合作,成功开发出一套具有绝佳灵活性的软件设计支持组件,助于于简化基于STM32微控制器的安全关键系统 (safety-critical system) 的开发和认证过程。 该合作项目始于2013年11月,目前已开发出一套STM32应用设计安全手册,以及符合IEC61508:2010功能性安全标准的软件测试库 (fRSTL)。YOG
[单片机]
msp430单片机I/O口灌电流和拉电流问题
数字输入/输出端口有下列特性: □ 每个输入/输出位都可以独立编程。 □ 允许任意组合输入、输出。 □ P1 和 P2 所有 8 个位都可以分别设置为中断。 □ 可以独立操作输入和输出数据寄存器。 □ 可以分别设置上拉或下拉电阻。 一般是数字电路中讲到这个问题。 当数字电路的输出端,输出低电平的时候,外接器件将把电流,“灌入”数字电路的输出端。 当数字电路的输出端,输出高电平的时候,外接器件将从数字电路的输出端,“拉出”电流。 当一个LED接在“数字电路的输出端”和电源之间,输出端输出低电平的时候发光,这个LED就是灌电流负载。 当一个LED接在“数字电路的输出端”和地之间,输出端输出高电平的时候发光,这LED
[单片机]
msp430<font color='red'>单片机</font>I/O口<font color='red'>的</font>灌电流和拉电流<font color='red'>的</font>问题
数字式温湿度传感器SHT11在51单片机系统应用
1 概述 温湿度的测量在仓储管理、生产制造、气象观测、科学研究以及日常生活中被广泛应用,传统的模拟式湿度传感器一般都要设计信号调理电路并需要经过复杂的校准和标定过程,因此测量精度难以保证,且在线性度、重复性、互换性、一致性等方面往往不尽人意。SHT11是瑞士Sensirion公司推出的基于CMOSensTM技术的新型温湿度传感器。该传感器将CMOS芯片技术与传感器技术结合起来,从而发挥出它们强大的优势互补作用。 2 性能特点 SHT11温湿度传感器的主要特性如下: ●将温湿度传感器、信号放大调理、A/D转换、I2C总线接口全部集成于一芯片(CMOSensTM技术); ●可给出全校准相对湿度及温度值输出; ●带
[单片机]
数字式温湿度传感器SHT11在51<font color='red'>单片机</font>系统<font color='red'>的</font>应用
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved