stm32f4的智能压缩本地存储系统(sd卡)(附件)

本系统研究的主要目的是设计一个可以实现数据采集与压缩的本地存储系统,以达到数据存储的时间性与空间性越来越高的要求。这次的设计采用的是STM32F407单片机作为核心芯片,SD卡作为存储卡,电源以及复位电路构成一个完整的系统硬件部分。系统的软件部分主要包括了AD采集、十六进制压缩算法的编写、SD卡数据读写操作以及FLASH存储等。经过多次的研究与调试,使用上述的硬件设备与软件方案可以实现系统的主要功能。实验结果表明,采集的数据通过压缩算法与SD卡存储可提高存储的空间性与时间性问题。关键词 AD采集,SD卡存储,十六进制压缩
目 录
1 引言 1
1.1 研究背景及意义 1
1.2 国内外研究与发展现状 1
1.3 设计创新点 2
1.4 课题主要研究内容 2
2 系统的总体设计 3
2.1 需求分析 3
2.2 方案设计 4
3 硬件设计方案 6
3.1 硬件总体设计 6
3.2 STM32F407芯片介绍 6
3.3 SD卡模块电路设计 7
3.4 USB控制模块电路 9
3.5 本章小结 10
4 软件程序设计方案 10
4.1 软件程序结构设计 10
4.1 软件设计架构图 10
4.2 软件程序模块设计 10
4.3 本章小结 16
5 系统功能测试 16
5.1 系统连接原理图 16
5.2 下载与调试 17
5.3 本章小结 20
结 论 21
致 谢 22
参考文献 23
引言
1.1 研究背景及意义
随着大数据和云计算的应用,互联网数据的采集和存储面临着越来越大的挑战。随着物联网行业的兴起,数据已成为人们生活中不可缺少的一部分。现代社会已经进入了对互联网极度依赖的新阶段——大数据时代[7]。所谓“大数据”是指大量数据的含义,这意味着它是一个庞大而复杂不能任意处理的数据集。因此,当前人们面临着 *好棒文|www.hbsrm.com +Q: *351916072* 
数据管理、查询、共享、传输、存储、更新、隐私保护等诸多问题。同时,合理使用大数据也为人们的生活提供了极大的便利。合理的处理、分析和搜索可以使人们从事件中提取有价值的信息。
然而,大数据时代的庞大数据量给数据处理带来了许多困难。为了解决这些问题,数据压缩技术和数据存储设备越来越受到人们的关注。这项技术也得到越来越多的关注。随着数据压缩技术的不断完善,数据的传输和共享更加高效。然而,我们可以很容易地发现数据压缩有时会改变数据的原始值,这使我们在传输数据时丢失原来的数据,这就是我们所说的有损压缩。压缩是使用一些编码数字来表示信号,这样可以更快地传输各种信号,例如传真和图像。由于存在有损压缩,所以必然就会有无损压缩[4]。无损压缩利用统计冗余压缩数据。数据冗余的理论极限是2:1到5:1,因此无损压缩的压缩比通常比较低。这种方法在文本数据[6]、程序、图像数据等特殊应用中得到了广泛的应用。
智能化是当今社会科技发展的必然产物,给人们的生活带来了很多便利,同时加快了社会经济的快速发展,本次设计研究的主题便是基于STM32F4系列的智能压缩本地存储系统的设计。采用嵌入式智能压缩本地存储系统,可以有效的解决海量数据存储的空间性与时间性的问题,有效缓解数据存储占用空间的大小以及数据传输速度的减慢。为我们在数据压缩与数据存储方面提供了好的选择。
1.2 国内外研究与发展现状
1.2.1 国内外智能压缩本地存储系统发展现状
对于一个存储系统来说,如何能够存储更多的数据量以及保存时间更久是我们所关心的。对于存储数据量的大小我们可以通过压缩的方式来实现,对于存储的时间性问题我们则可以选择本地存储的方式来实现。下面我就国内外的压缩软件方面做了一些研究。
随着互联网技术的不断更新与发展,很多的压缩软件都可以实现比较高的数据压缩比。什么是数据压缩比R[18]?压缩比就是衡量数据压缩性能好坏的重要指标。其定义为:

随着数据量级别的不断扩大,许多压缩软件便不能适用于重量级别的数据量,这里我们比较熟知的压缩软件有WinRAR、WinZip等。WinZip有一个数据窗口512 KB,WinRAR具有数据窗口4MB,当他们面对GBs海量数据时,它们的压缩能力就会受到数据窗口大小与压缩格式设计的限制。因此对于压缩技术新格式的设计是我们需要去研究的。
1.2.2 国内外智能压缩本地存储系统技术发展现状
压缩算法的设计是压缩技术的核心,是衡量一个软件使用率的高低。现如今压缩技术常见的有字典编码,又称为LZ编码[8]。它是一种经典的压缩技术,在文本压缩、音频压缩、图像压缩和计算机程序压缩中应用较广。我们熟知的LZ77压缩算法便是使用的这种压缩技术。它的基本原理便是将已输入数据流的一部分作为字典,编码器为输入数据流开一个窗口,并且随着对字符串的编码不断地将窗口中的数据从右移到左。这就意味着这种算法的关键问题就是一个滑动窗口。
1.3 设计创新点
针对目前所有的技术及现状来看,传统的压缩算法在面对数量级较大的数据时其压缩比会明显的降低,从而导致压缩数据时效果不明显,以致于存储所占空间变大。本系统所采用的压缩算法是十六进制压缩算法,因为计算机只识别0、1这样的数字信息,但因为有了字符编码的产生,从而计算机可以识别如字符、汉字信息等。由于系统是通过AD采集模拟电压,所以使用上述压缩算法来获得较高的压缩比。
所以本次系统设计的创新点在于数据的采集、压缩与存储通过STM32F407单片机实现实时压缩存储。基于嵌入式系统的AD采集模块,外部存储模块以及SPI模块实现数据的智能压缩本地存储。
1.4 课题主要研究内容
基于STM32F407的智能压缩本地存储系统主要研究数据采集过程、数据压缩算法以及SD卡存储原理等内容。
根据需求,设计与开发一种基于STM32F407的智能压缩本地存储系统。包括嵌入式程序设计、熟悉嵌入式系统的电路设计方法、理解数据压缩算法与SD卡存储。完成系统的调试,实现数据的压缩与存储。
系统的总体设计
2.1 需求分析
在系统的设计过程中,主要需要考虑的是数据采集、数据压缩与数据的存储三个功能模块。各个部分模块功能如下:

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/wlw/468.html

好棒文