【嵌入式系统】第4章 嵌入式最小系统,供电电路,时钟电路,复位电路,程序下载电路

 关注作者了解更多

我的其他CSDN专栏

过程控制系统

工程测试技术

虚拟仪器技术

可编程控制器

工业现场总线

数字图像处理

智能控制

传感器技术

嵌入式系统

复变函数与积分变换

单片机原理

线性代数

大学物理

热工与工程流体力学

数字信号处理

光电融合集成电路技术

电路原理

模拟电子技术

高等数学

概率论与数理统计

数据结构

C语言

模式识别原理

自动控制原理

数字电子技术

关注作者了解更多

资料来源于网络,如有侵权请联系编者

目录

典型嵌入式系统组成

基于AMBA总线的嵌入式处理器

基于AMBA总线的嵌入式处理器

4.1嵌入式最小系统组成

4.2嵌入式处理器选型

功能参数与非功能参数选择、

4.3  供电模块设计

嵌入式系统电源需求

降压型电源设计

利用LDO进行电源变换(5V到3.3V)

升压型电源设计 

升压型电源设计实例(1.5V到5V)

隔离型电源设计

隔离电源设计(5V到12V隔离变换) 

STM32F10x电源设计

4.4 时钟与复位电路设计

  STM32F10x时钟电路

复位模块

简单复位电路

专用复位芯片构建的复位电路

4.5 调试接口设计

JTAG调试接口设计

SWD调试接口设计

4.6 存储器接口设计

STM32F10x ARM Cortex-M3微控制器地址分布

片内存储器     

片外存储器


典型嵌入式系统组成

基于AMBA总线的嵌入式处理器

基于AMBA总线的嵌入式处理器

4.1嵌入式最小系统组成

   嵌入式最小硬件系统是嵌入式应用系统最简单、最基本、不可或缺的硬件系统,简称最小系统。

4.2嵌入式处理器选型

   嵌入式处理器芯片品种繁多,各有特色,其选型应该遵循以下总体原则:性价比越高越好。

 (1)性能:应该选择完全能够满足功能和性能要求且略有余量的嵌入式处理器,够用就行。

 (2)价格:在满足需求的前题下选择价格便宜的。 除了上述总体选择原则外,还可以考虑参数选择原则。可分为功能性参数选择和性能参考选择。

功能参数与非功能参数选择、

功能参数:包括内核类型、处理速度、片上Flash及SRAM容量、片上集成GPIO、内置外设接口、通信接口、操作系统支持、开发工具支持、调试接口、行业用途等。

非功能性需求:是指为满足用户业务需求而必须具有且除功能需求以外的特性,包括系统的性能、可靠性、可维护性、可扩充性和对技术/对业务的适应性等。     有工作电压要求、工作温度要求、体积及封装形式、功耗与电源管理要求、价格、供货、抗干扰能力与可靠性、支持的开发环境及资源的丰富性

4.3  供电模块设计

   供电模块设计是整个系统工作的基础,极其重要。电源模块好,系统故障往往减少一大半。

供电模块设计应考虑的因素

(1)输出的电压、电流(按硬件系统需要的最大功率)

(2)输入的电压、电流(直流/交流,输入电压和电流)

(3)安全因素(是否需要本安型电源)

(4)电磁兼容

(5)体积限制

(6)功耗限制

(7)成本限制

嵌入式系统电源需求

    根据具体嵌入式应用系统的需求,系统需要的主要电源电压:24V、12V、5V、3.3V、2.5V、1.8V等。

    最小系统涉及的电源主要是为嵌入式处理器供电,包括处理器内核电源、数字部分电源、模拟部分电源以及实时钟RTC电源等,通常内核电源电压包括存储器接口所需电源如1.8V,而数字和模拟部分通常为3.3V,实时钟电源1.8V到3.6V等,设计这部分电源用的最多的是LDO降压型稳压器如1117系列。

降压型电源设计

典型的低差压稳压LDO芯片主要用于嵌入式处理器供电。  

  (1) AS2815-XX系列:有1.5V、2.5V、3.3V、5V,输入电压高于输出电压0.5-1.2V,小于等于7V。    

(2) 1117-XX系列(AMS、LM、SPX、TS、IRU等前缀) :有1.8V、2.5V、2.85V、3.3V和5V,输入电压为XX+1.5V-12V,输出电流800mA,输入高于输出1.5V以上。    

(3) AMS2908-XX系列:有1.8V、2.5V、2.85V、3.3V和5V,输入电压为XX+1.5V-12V,输出电流800mA,输入高于输出1.5V以上。     

(4) CAT6219系列:有1.25V、1.8V、2.5V、2.8V、2.85V、3.0V、3.3V,500mA。

利用LDO进行电源变换(5V到3.3V)

升压型电源设计 

AIC1642系列可以工作在0.9V的DC-DC芯片,可变换成的电压有2.7V、3.0V、3.3V和5V。典型应用电路如图4.5所示。假设Vin为一节电池(1.2V~1.5V)的输出电压,输出可以选择2.7V到5V四个电压等级的电压输出。 类似AIC1642的芯片还有XC6382、XC6371、RT9261B、HT77XX、BL8530、AIC1642、S8351以及HMXX1C等。一般要求最低输入电压0.8V,最高不超过12V,输出电流可达500mA~700mA。    

升压型电源设计实例(1.5V到5V)

隔离型电源设计

    对于需要隔离的电源可使用DC-DC隔离模块,主要有1W和2W两种主要隔离模块,典型代表包括B0305、B0505、B0509、B0512、B0524、B1205、B1212、B1224、B2405、B2412以及B2424等。隔离电压通常高于2000V,这些隔离型DC-DC模块在抗干扰要求高的场合非常有用,缺点是代价高。图4.6为5V变换为24V的隔离DC-DC模块引脚示意图,输入5V,通过隔离变换为24V输出。可以只设计一路电源,需要多路时可用隔离型DC-DC模拟变换成不同电压等级的电源。  

隔离电源设计(5V到12V隔离变换) 

STM32F10x电源设计

   STM32F10x有四组电源,此外模拟信号通道电流输出还需要12V电源,因此要通过5V产生3.3V及12V等数字和模拟电源,电路构成如图4.7所示。    

4.4 时钟与复位电路设计

    时钟电路及时钟源选择。嵌入式处理器的工作需要外部或内部提供时钟信号,按照时钟的序列执行。不同处理器要求的时钟最高频率不同,而嵌入式微控制器内部有时钟电路,外部仅需提供晶体和两只电容,加上电源 。

  STM32F10x时钟电路

   STM32F10x系列微控制器有四种不同的时钟源可供不同用途来选择:  

 (1) HIS(高速内部时钟8MHz)振荡器时钟  

 (2)HSE(高速外部时钟4~16MHz)振荡器时钟  

 (3)40kHz低速内部RC    

(4) 32.768kHz低速外部晶体

复位模块

    处理器正常工作必须在上电时能够可靠复位,让CPU找到第一条指令对应的地址去执行。ARM处理器(除ARM Cortex-M复位向量为0x00000004外)复位后PC指针指向唯一的地址0x00000000,复位向量Reset_Handler指向复位处理入口。

简单复位电路

专用复位芯片构建的复位电路

4.5 调试接口设计

   现代嵌入式处理器片内都集成了逻辑跟踪单元与调试接口,主要用于开发调试。

JTAG调试接口设计

   JTAG(Joint Test Action Group;联合测试工作组)标准,JTAG是一种国际标准测试协议(IEEE1149.1兼容),主要用于芯片内部测试。JTAG接口关键的信号有:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据输入和数据输出线。

SWD调试接口设计

SWD(Serial wire Debug)调试接口,即串行线调试接口。

4.6 存储器接口设计

    ARM处理器的程序存储器、数据存储器、寄存器和输入输出端口被组织在同一个4GB的线性地址    空间内,即存储器与I/O采用统一编址。并且数据字以小端格式存放在存储器中。一个字的最低地址字节被认为是该字的最低有效字节,而最高地址字节是最高有效字节。 可访问的存储器空间被分成8个主要块(block0~block7),每个块为512MB。典型ARM Cortex-M3微控制器STM32F10x系列存储器分布如表4.1所示。

STM32F10x ARM Cortex-M3微控制器地址分布

片内存储器     

     片内存储器是指嵌入式处理器内部已经嵌入了的存储器,包括Cache(高速缓冲存储器)、Flash、E2PROM和SRAM。 嵌入式微处理器内部大都集成了Cache,有的将数据Cache(D_Cache)与指令Cache(I_Cache)分离,以减小访问外部存储器的次数,提高处理速度。

     在嵌入式微控制器内部都集成了Flash以便存储程序,集成了SRAM以存储数据,也有许多嵌入式微控制器内部集成E2PROM或FRAM,以存储设置参数或采集的数据并在掉电时信息不至丢失。

片外存储器

    对于内置Flash不能满足系统需求或内部没有Flash的嵌入式处理器,必须进行外部存储器的扩展。外部存储器的扩展是靠ARM内核提供的高带宽外部存储器控制器接口完成的。不同内核的ARM芯片,其外部存储器控制接口所支持的外部存储器的容量大小有差别,但原理都是一样的。

(1) 片外程序存储器。片外程序存储器目前主要使用NOR Flash和NAND Flash。

(2) 片外数据存储器。嵌入式系统使用的外部数据存储器有SDRAM、DDR/DDR2/DDR3/DDR4等。

辅助存储器

     基于Flash的闪存卡(Flash Card)是利用闪存技术存储信息的存储设备,一般应用在数码相机、掌上电脑、MP3等小型嵌入式数码产品中作为外部存储介质。它如同一张卡片,所以称之为闪存卡或存储卡。

    根据不同的生产厂商和不同的应用,闪存卡大概有SM (Smart Media)卡、CF(Compact Flash)卡、MMC(MultiMedia Card)卡、SD(Secure Digital  Card)卡、记忆棒(Memory Stick)、XD卡(XD Picture Card) 、 U盘(USB flash disk,USB闪存盘) 等等。

外部存储器扩展

    外部存储器的扩展可以采用并行方式扩展,也可以采用串行方式扩展。

(1)并行存储器扩展。就是利用嵌入式处理器片内外部总线接口EBI或存储器控制器接口FSMC相关信号来连接外部存储器,达到扩展的目的。不同厂家ARM处理器其EBI或FSMC信号的定义各不相同。

   (2)串行扩展存储器。就是利用通常SPI接口或I2C接口来扩展串行方式的存储器,这种方式的优点是节省大量I/O引脚。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/62616.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

期权懂|交易个股期权需要注意哪些风险?

期权小懂每日分享期权知识,帮助期权新手及时有效地掌握即市趋势与新资讯! 交易个股期权需要注意哪些风险? 一、交易个股期权需要注意合约到期风险: 需关注到期日,及时平仓或行权,避免合约作废。二、交易个…

MVC配置文件配置及位置

配置文件位置 默认位置 WEB-INF目录下&#xff1a;-servlet.xml 指定位置 在web.xml中配置 DispatcherServlet中的contextConfigLocation属性可以指定配置文件位置 确保配置文件存在于类路径&#xff08;Resources&#xff09;下 web.xml <?xml version"1.0" …

可视化逻辑表达式编辑器

优质博文&#xff1a;IT-BLOG-CN 一、QueryBuilder介绍 QueryBuilder 是一个用于创建查询和过滤器的 UI 组件。 QueryBuilder的特点 1、支持的输入属性丰富&#xff0c;常见的 字符串&#xff0c;整数&#xff0c;浮点数&#xff0c;布尔类型&#xff0c;日期类型&#xff0…

Linux下mysql环境的搭建

1.mysql的下载 去MySQL官网下载mysql的linux压缩包 MySQL :: Download MySQL Community Server 如果下载慢请到网盘中自行下载 通过网盘分享的文件&#xff1a;mysql-8.0.40-1.el7.x86_64.rpm-bundle.tar 链接: https://pan.baidu.com/s/1vUJ-VuTwer1nLPT-haQCqw?pwd6342 提…

基于Qwen2-VL模型针对LaTeX OCR任务进行微调训练 - 多图推理

基于Qwen2-VL模型针对LaTeX OCR任务进行微调训练 - 多图推理 flyfish 基于Qwen2-VL模型针对LaTeX_OCR任务进行微调训练_-_LoRA配置如何写 基于Qwen2-VL模型针对LaTeX_OCR任务进行微调训练_-_单图推理 基于Qwen2-VL模型针对LaTeX_OCR任务进行微调训练_-_原模型_单图推理 基于Q…

图像识别 | Matlab基于卷积神经网络(CNN)的宝可梦识别源程序,GUI界面。附详细的运行说明。

图像识别 | Matlab基于卷积神经网络(CNN)的宝可梦识别源程序&#xff0c;GUI界面。附详细的运行说明。 目录 图像识别 | Matlab基于卷积神经网络(CNN)的宝可梦识别源程序&#xff0c;GUI界面。附详细的运行说明。预测效果基本介绍程序设计参考资料 预测效果 基本介绍 Matlab基…

设置IMX6ULL开发板的网卡IP的两种方法(临时生效和永久有效两种方法)

设置开发板网卡的IP&#xff0c;有两种方法。 方法一&#xff1a;临时生效 第一种方式是临时设置&#xff0c;只有本次有效&#xff0c;重启后又要重新设&#xff0c;命令为&#xff1a; ifconfig eth0 192.168.5.9设置成功后可以使用ifconfig命令来查看已设置的 IP 地址。 …

22. Three.js案例-创建旋转的圆环面

22. Three.js案例-创建旋转的圆环面 实现效果 知识点 WebGLRenderer (WebGL渲染器) THREE.WebGLRenderer 是Three.js中最常用的渲染器&#xff0c;用于将场景渲染到WebGL画布上。 构造器 new THREE.WebGLRenderer(parameters) 参数类型描述parametersObject可选参数对象&…

【D3.js in Action 3 精译_044】5.1 饼图和环形图的创建(四):数据标签的添加

当前内容所在位置&#xff1a; 第五章 饼图布局与堆叠布局 ✔️ 5.1 饼图和环形图的创建 ✔️ 5.1.1 准备阶段&#xff08;一&#xff09;5.1.2 饼图布局生成器&#xff08;二&#xff09;5.1.3 圆弧的绘制&#xff08;三&#xff09; ✔️5.1.4 数据标签的添加&#xff08;四&…

java全栈day13-后端Web实战2

接上述查询部门实现&#xff0c;完成后续要求 一、统一响应结果 1.1步骤 资料如下 对一开始的代码修改如下 结果如下 1.2测试 指定请求方式 结果 小结 二、前后端联调测试 资料如下&#xff1a; (不行&#xff0c;一定要不带空格和不带中文&#xff0c;要不然启动不了试了半天…

vscode 排除文件夹搜索

排除的文件夹 node_modules/,dist/

优雅的@ObservedV2和@Trace装饰器

Hello&#xff0c;大家好&#xff0c;我是 V 哥。在HarmonyOS NEXT开发中&#xff0c;ObservedV2装饰器和Trace装饰器是用于状态管理的两个装饰器&#xff0c;它们在HarmonyOS应用开发中用于增强对类对象中属性的观测能力。如果你学过观察者模式的原理&#xff0c;你会更容易理…

一款免费、简单、快速的JS打印插件,web 打印组件,基于JavaScript开发,支持数据分组,快速分页批量预览,打印,转pdf,移动端,PC端

前言 在数字化办公时代&#xff0c;打印需求呈现多样化和复杂化的趋势。现有的打印软件往往存在cao作繁琐、兼容性差、功能单一等问题&#xff0c;难以满足现代企业高效、灵活的打印需求。 为了解决这些痛点&#xff0c;一款简单、高效、多功能的打印插件成为了迫切需求。 介…

TCP/IP杂记

TCP三次握手、四次挥手 从应用角度&#xff0c;不用多考虑为什么有三次&#xff0c;遵循标准即可。 ubuntu 下 wireshark安装&#xff1a; sudo add-apt-repository universe sudo apt install wireshark 三次握手实证&#xff1a; 第一次握手的情况如下&#xff1a;&#…

Vue前端开发-接收跳转参数

路由携带参数跳转到目标页面后&#xff0c;页面组件可以接收到携带传入的参数&#xff0c;接收的方式与携带的方式相关&#xff0c;如果是采用查询字符串方式携带&#xff0c;那么可以通过路由中的query对象获取到参数&#xff0c;如果是其他方式&#xff0c;通常都是通过路由中…

[ComfyUI]批量生成图片的节点:输入一个prompt列表批量生成图像

文章目录 1.参考资料2.两个节点的部署FizzNodes节点comfyui-mixlab-nodes 生成的结果展示 1.参考资料 如何使用ComfyUI一次批量生成不同内容的图片 ComfyUI工作流】随机提示词批量出图&#xff0c;懒人刷图福音&#xff0c;根据提示 2.两个节点的部署 FizzNodes节点 fizzn…

【实操GPT-SoVits】声音克隆模型图文版教程

项目github地址&#xff1a;https://github.com/RVC-Boss/GPT-SoVITS.git官方教程&#xff1a;https://www.yuque.com/baicaigongchang1145haoyuangong/ib3g1e/tkemqe8vzhadfpeu本文旨在迅速实操GPT-SoVits项目&#xff0c;不阐述技术原理&#xff08;后期如果有时间研究&#…

JAVA (Springboot) i18n国际化语言配置

JAVA i18n国际化语言配置 一、简介二、功能三、Java配置国际化步骤四、Java国际化配置工具类五、Spring Boot配置六、测试 一、简介 在Java中&#xff0c;国际化&#xff08;Internationalization&#xff0c;通常简称为i18n&#xff09;是一个过程&#xff0c;它允许应用程…

如何创建基于udp的客户端和服务端

1.先创建好udpServer.hpp、udpServer.cc、udpClient.hpp、udpClient.cc的框架。 #pragma once #include <string> #include <iostream> #include <sys/types.h> #include <sys/socket.h> #include <unistd.h> #include <cerrno> #include…

【上线文档】系统上线方案模板,计算机系统上线保障计划,系统运维信息系统运行保障方案,系统上线方案模板(Word原件)

一、项目背景和目标 二、项目需求分析 2.1 功能需求 2.2 非功能需求 三、系统设计 3.1 系统架构设计 3.2 数据库设计 3.3 接口设计 3.4 用户界面设计 四、系统开发 4.1 开发环境搭建 4.2 业务逻辑开发 4.3 数据库实现 4.4 接口实现 4.5 用户界面实现 五、系统测…