当前位置: 首页 > news >正文

长春网站开发senluowx移动端数据可视化

长春网站开发senluowx,移动端数据可视化,天津营销类网站设计,网站建设环境1 硬件介绍 1.1 硬件平台 配套硬件#xff1a;以野火的STM32 F1霸道开发板为平台#xff0c;若用的是别的开发板#xff0c;可自己进行移植。 1.2 什么是STM32 STM32是由意法半导体#xff08;STMicroelectronics#xff09;公司推出的一系列32位的ARM Cortex-M微控制…1 硬件介绍 1.1 硬件平台 配套硬件以野火的STM32 F1霸道开发板为平台若用的是别的开发板可自己进行移植。 1.2 什么是STM32 STM32是由意法半导体STMicroelectronics公司推出的一系列32位的ARM Cortex-M微控制器。这些微控制器广泛用于嵌入式系统和物联网IoT应用中。以下是有关STM32的一些主要特征和信息 架构 STM32微控制器使用ARM Cortex-M内核其中包括Cortex-M0、Cortex-M3、Cortex-M4和Cortex-M7等不同型号。这些内核提供了高性能、低功耗的处理能力。 丰富的外设 STM32微控制器集成了丰富的外设包括但不限于通用输入/输出GPIO、定时器、串口通信USART、SPI、I2C、模拟和数字转换器ADC、DAC、PWM控制、以太网控制器、USB接口等。 开发工具 STMicroelectronics提供了一套完整的开发工具包括ST-LINK调试器、集成开发环境IDE如STM32CubeIDE以及丰富的软件库和示例代码。这些工具使得开发人员可以方便地进行嵌入式系统的开发。 丰富的型号 STM32系列包括多个型号和系列以满足不同应用的需求。不同系列的型号可能具有不同的性能、外设和封装选项。 生态系统支持 STM32拥有强大的生态系统包括广泛的社区支持、技术文档、在线培训课程等。这使得开发人员能够轻松获取帮助和资源。 广泛的应用 由于其灵活性和性能STM32微控制器广泛用于各种应用领域包括工业控制、汽车电子、智能家居、医疗设备、消费电子等。 STM8 和 STM32 命名方法摘自《STM8 和 STM32 选型手册》 2 芯片 芯片这里指内核或者叫 CPU和外设之间通过各种总线连接其中驱动单元有 4 个被动单 元也有 4 个具体见图 2.1。为了方便理解我们都可以把驱动单元理解成是 CPU 部分被动单 元都理解成外设。下面我们简单介绍下驱动单元和被动单元的各个部件。 2.1 ICode总线 在STM32微控制器中ICodeInstruction Code总线是指令代码总线它是与存储器相关的一个概念。在STM32中存储器包括Flash存储器其中存储了程序的指令代码。 ICode总线用于从Flash存储器读取指令代码以供CPU执行。具体而言ICode总线连接了CPU和Flash存储器使得CPU能够从Flash中读取指令。这样当程序在Flash存储器中时CPU可以通过ICode总线有效地访问并执行这些指令。 在STM32的体系结构中存储器总线分为指令总线ICode总线和数据总线DCode总线。这种划分有助于提高存储器访问的效率。ICode总线专门用于传输指令代码而DCode总线用于传输数据。这种分离可以提高系统的性能特别是在存在并行访问指令和数据的情况下。 总体而言ICode总线在STM32中是与指令存储器Flash相关的一部分用于高效地传输指令代码到CPU以支持程序的正常执行。 2.2 驱动单元 2.2.1 DCode总线 在STM32微控制器中DCodeData Code总线是数据代码总线用于传输数据。与ICode总线指令代码总线相对应DCode总线是用于访问数据存储器的总线。DCode总线连接了CPU和数据存储器其中数据存储器可以包括RAM随机存储器和其他存储器设备。当CPU需要读取或写入数据时DCode总线允许它与数据存储器进行通信。 在STM32的存储器总线结构中ICode总线和DCode总线是分开的这样的分离有助于提高存储器访问的效率。ICode总线专门用于传输指令代码而DCode总线用于传输数据。这种架构允许在执行指令的同时同时进行对数据存储器的读取或写入操作从而提高了整个系统的性能。 总的来说DCode总线在STM32中是与数据存储器相关的一部分用于支持CPU与数据存储器之间的高效数据传输以满足程序的数据处理需求。因为数据可以被 Dcode 总线和 DMA 总线访问所以为了避免访问冲突在取数的时候需要经过一个总线矩阵来 仲裁决定哪个总线在取数。 2.2.2 系统总线 在STM32微控制器中系统总线是连接不同部件和模块的一个关键总线系统它促使各种外设和内部组件之间进行通信和数据传输。系统总线主要是访问外设的寄存器我们通常说的寄存器编程即读写寄存器都是通过这根系统 总线来完成的。 2.2.3 DMA总线 在STM32微控制器中DMADirect Memory Access总线是一种用于高效数据传输的机制。这个数据可以是在某个外设的数据寄存器可以在 SRAM 可以在内部的 FLASH。因为数据可以被 Dcode 总线和 DMA 总线访问所以为了避免访问冲突 在取数的时候需要经过一个总线矩阵来仲裁决定哪个总线在取数。DMA允许外设或内存之间的数据传输而无需CPU的直接干预从而提高了系统的性能和效率。 2.3 被动单元 2.3.1 内部的闪存存储器 STM32微控制器中的闪存存储器通常是指Flash存储器。Flash存储器是一种非易失性存储器用于存储程序代码、配置数据和其他常驻信息。以下是关于STM32内部Flash存储器的一些关键信息 程序存储 主要用于存储微控制器的程序代码。在STM32中Flash存储器通常分为不同的扇区每个扇区可以用于存储不同的程序段。程序可以通过编程器或Bootloader等方式被烧录到Flash存储器中。 非易失性 Flash存储器是一种非易失性存储器这意味着它可以在断电后保持存储的数据。这使得它非常适合用于存储嵌入式系统的程序代码因为程序代码在断电后仍然可以被保留。 扇区和页 Flash存储器被分为不同的扇区每个扇区通常包含多个页。在STM32中一般可以通过扇区擦除和页编程的方式对Flash进行操作。擦除是将整个扇区的数据清除而编程是将数据写入到特定的页中。 擦写次数 Flash存储器有一个擦写次数的限制超过这个限制可能导致存储器损坏。因此在设计中需要注意避免频繁的擦写操作。一些STM32微控制器提供了内部的Flash管理功能可以帮助延长Flash寿命。 自校准 一些STM32微控制器具有自校准功能可以在Flash存储器的使用过程中进行自动的校准以提高性能和可靠性。 Bootloader 一些STM32微控制器集成了Bootloader允许通过外部接口如串口更新Flash中的程序代码而无需使用外部编程器。 总体而言STM32内部的Flash存储器是关键的系统组件用于存储程序代码和其他关键数据。开发者在使用时需要注意擦写次数的限制以及合理使用擦写和编程操作以确保存储器的可靠性和寿命。 2.3.2 内部的SRAM STM32微控制器中的SRAMStatic Random Access Memory是一种用于存储数据的随机存取存储器。与Flash存储器不同SRAM是易失性存储器即在断电时会丢失其中的数据。以下是关于STM32内部SRAM的一些关键信息 数据存储 SRAM主要用于存储程序执行过程中产生的临时数据包括变量、堆栈、和其他运行时数据。与Flash存储器不同SRAM的读写速度很快适合用于频繁的数据读写操作。 易失性 SRAM是一种易失性存储器这意味着在断电时会丢失其中的数据。因此SRAM通常用于需要在设备运行期间进行快速读写的应用而不是长期存储。 内部结构 STM32微控制器的SRAM通常被分为不同的块或区域例如数据RAM用于存储变量、堆栈RAM用于存储函数调用时的堆栈数据等。这些不同的区域有不同的用途和访问特性。 访问速度 与Flash存储器相比SRAM的访问速度更快因为它是基于静态存储单元的而不需要进行擦写和编程的操作。 功耗 由于SRAM是易失性存储器它在持续通电的情况下能够快速读写但在断电后会失去存储的数据。这也意味着在需要长期存储数据时应该使用Flash等非易失性存储器。 容量 STM32微控制器的SRAM容量因型号而异通常有几十KB到几百KB的范围具体取决于具体的芯片型号。 开发者在使用STM32内部SRAM时需要注意其易失性特性并确保适当地选择存储数据的位置以满足程序的需求。通常SRAM用于存储临时数据而长期存储数据则需要使用Flash等非易失性存储器。 2.3.3 FSMC 在STM32微控制器中FSMCFlexible Static Memory Controller是一种用于连接外部存储器设备的控制器。它提供了灵活的接口可以与各种静态存储器设备如SRAM、NOR Flash、NAND Flash等进行通信。以下是有关STM32中FSMC的一些关键信息 灵活性 FSMC设计的目的是为了与多种外部存储器设备进行通信包括静态RAMSRAM、NOR Flash存储器、NAND Flash存储器等。这种灵活性使得STM32微控制器可以与不同类型的存储器设备进行接口满足不同应用的需求。 并行接口 FSMC支持并行接口这意味着它可以同时传输多个比特的数据提高了数据传输的效率。这对于要求高速数据传输的存储器设备是非常重要的。 FSMC与SRAM 在一些应用中FSMC常用于连接外部的SRAM提供了高速的RAM存储器用于存储数据。通过FSMC微控制器可以通过并行接口与外部SRAM进行数据的读写。 FSMC与NOR Flash FSMC还可用于连接NOR Flash存储器这是一种用于存储程序代码的非易失性存储器。通过FSMC可以实现从外部NOR Flash读取程序代码。 FSMC与NAND Flash 对于NAND Flash存储器FSMC也提供了支持。NAND Flash通常用于存储大容量的数据例如文件系统、图像等。 配置和控制 配置FSMC的参数需要设置寄存器包括时序参数、数据宽度、地址宽度等。通过正确的配置可以确保FSMC与外部存储器设备的正常通信。 DMA支持 FSMC可以与DMADirect Memory Access控制器结合使用以实现高效的数据传输减轻CPU的负担。 使用FSMC可以方便地连接外部存储器设备扩展STM32微控制器的存储容量和功能。开发者在使用FSMC时需要了解外部存储器的规格并正确配置FSMC以确保稳定的数据传输。另外FSMC 只能扩展静态的内存即名称里面的 Sstatic不能是动态的内存比如 SDRAM 就不能扩展。 2.3.4 AHB 到 APB 的桥 在STM32微控制器中AHBAdvanced High-performance Bus和APBAdvanced Peripheral Bus是两个不同的总线系统用于连接不同的硬件模块。有时候需要通过一个桥接器将AHB总线上的设备连接到APB总线上。这样的桥接器通常称为AHB到APB的桥。 以下是关于STM32中AHB到APB桥的一些关键信息 总线体系结构 STM32微控制器使用了分层的总线体系结构其中AHB总线是一个高性能的系统总线而APB总线则是用于连接外围设备的低功耗总线。 AHB总线 AHB总线连接了一些性能较高、对响应时间要求较严格的硬件模块如内核、高速外设等。 APB总线 APB总线则用于连接一些低速外设如GPIO、UART、I2C等。这些外设对响应时间的要求相对较低。 AHB到APB桥 由于AHB和APB总线之间的性能差异有时需要一种机制来连接在AHB上的外设到APB上以便在APB总线上进行控制和配置。 时钟域 AHB和APB通常具有不同的时钟域。AHB时钟可能更高因此需要桥接器来适应这两个时钟域之间的差异。 桥接功能 AHB到APB桥提供了在两个总线之间传输数据的功能。它能够接收来自AHB总线的访问请求并将其转发到APB总线上的相应外设。 配置和控制 桥接器的配置通常涉及一些寄存器的设置以确保正确的时钟分频和传输设置以适应不同总线之间的差异。 使用AHB到APB桥的场景包括连接高性能外设或存储器到低功耗总线以提供对这些外设的控制和配置。在具体的STM32微控制器系列和型号中桥接的实现和特性可能有所不同因此在具体的芯片手册和参考手册中可以找到详细的信息。 图2.1  STM32F10xx 系统框图不包括互联型 3 存储器映射 在图1中被控单元的 FLASHRAMFSMC 和 AHB 到 APB 的桥即片上外设这些功能部 件共同排列在一个 4GB 的地址空间内。我们在编程的时候可以通过他们的地址找到他们然 后来操作他们通过 C 语言对它们进行数据的读和写。 3.1 存储器映射 存储器本身不具有地址信息它的地址是由芯片厂商或用户分配的给存储器分配地址的过程就 称为存储器映射具体见图 3.1。如果给存储器再分配一个地址就叫存储器重映射。存储器映射的目的是为了方便程序访问这些存储器并提供一种一致的访问方式。 图3.1 存储器映射摘自参考手册-存储器映射章节 4 寄存器映射 STM32微控制器的寄存器映射是一种将各种外设和系统寄存器映射到特定地址空间的方式以便CPU能够通过读写这些地址来配置和控制微控制器的功能。以下是一般情况下STM32微控制器寄存器映射的一些基本概念 Flash存储器映射 STM32微控制器的程序代码通常存储在Flash存储器中。Flash存储器的基地址通常被映射到程序地址空间的开始处以便CPU可以从这里执行指令。 SRAM存储器映射 静态RAMSRAM用于存储程序执行期间的数据。SRAM通常映射到数据地址空间供程序使用。 外设寄存器映射 每个外设都有一组相关的寄存器用于配置和控制外设的行为。这些寄存器通常被映射到特定的地址空间以便程序可以通过访问这些地址来与外设进行通信。 系统控制寄存器映射 一些寄存器用于配置微控制器的系统级功能例如时钟控制、中断控制等。这些寄存器被映射到系统地址空间。 中断向量表映射 中断向量表包含中断服务程序的地址。在某些STM32微控制器中中断向量表可能映射到Flash或SRAM中的特定位置。 Bootloader区域映射 如果微控制器集成了BootloaderBootloader区域通常有一个特定的地址范围用于支持程序的更新。 特殊功能寄存器映射 一些微控制器可能具有特殊功能寄存器用于控制特殊的硬件功能例如电源管理、看门狗定时器等。 具体的寄存器映射细节取决于STM32微控制器的型号和系列。为了了解特定型号的寄存器映射你需要查阅相应型号的参考手册或数据手册。这些手册通常提供了详细的寄存器映射表和寄存器描述帮助开发者正确配置和操作微控制器的各个部分。 寄存器就是给一个已经分配好地址的特殊的内存空间取的一 个别名这个特殊的内存空间可以通过指针来操作。在编程之前我们要先实现寄存器映射有关 寄存器映射的代码都统一写在 stm32f10x.h 文件中
http://www.dnsts.com.cn/news/168407.html

相关文章:

  • 帝国网站管理 上一条 下一条 链接 信息id 信息发布时间举例说明网络营销的方法
  • 网站建设的看法有哪些淘宝客单页网站
  • 普陀学校网站建设茂名市住房和城乡建设局网站
  • h5 做移动端网站wordpress个人展示
  • 专做山珍的网站网站开发什么比较有创意
  • 电子商务网站系统规划新增网站建设方案
  • 花店网站模板服装网站建设网
  • 负责网站建设企业网站建设请示
  • 怀化政法网站定制建站
  • 哪个网站可以做免费请帖重庆知名商城网站建设公司
  • 南京高新区规划建设局网站佛山网站建设怎么选择
  • 网站做飘浮怎么做wordpress熊掌号主题
  • ppt模板免费下载的网站百度下载安装到桌面上
  • seo网站优化技术网站备案在哪里备案
  • 婚礼礼网站如何做的网站浮动窗口代码
  • win 2003 网站 管理员seo先上排名后收费
  • 任县网站建设postgresql做网站用什么环境
  • 建筑工程网站建设17网一起做网站
  • 网站建设管理ppt模板儋州网站建设培训学校
  • 建网站要网站建设前就应该进行网站推广工作
  • 建设工程询价网站有哪些怎么做网站推广平台
  • 滁州哪里做网站做网站哪个服务器好
  • 个人网站icp一个大佬做的本子网站
  • 活动网站怎么建设什么是网站开发设计与实现
  • 防伪网站建设免费咨询电脑问题
  • 网站制作农业百度怎么建网站
  • 平台下载素材网站开发手机电脑版下载软件
  • 深圳做网站的大公司全球ic采购网
  • 济南网站建设选搜点网络网站的百度地图怎么做的
  • 设计培训网站建设做外贸比较好用的网站有哪些