第7章 硬件测试-7.1 硬件调试

第7章 硬件测试

    • 7.1 硬件调试
      • 7.1.1 电路检查
      • 7.1.2 电源调试
      • 7.1.3 时钟调试
      • 7.1.4 主芯片及外围小系统调试
      • 7.1.5 存储器件和串口外设调试
      • 7.1.6 其他功能模块调试

测试是每项成功产品的必经环节。硬件测试是评估产品质量的重要方法,产品质量是公司的信誉和品牌象征,公司的信誉和质量决定了公司的发展前景。硬件测试组成如图7.1所示,详解如下。
在这里插入图片描述
硬件调试:调通单板关键信号流,实现基本互联互通功能。
白盒测试:针对产品关键硬件模块,如电源、时钟等进行白盒测试。
功能测试:针对硬件样品进行功能可能性和完备性测试。
专业实验:针对硬件样品进行振动、EMC等专业实验。
长期可靠性测试:针对硬件样品进行长期耐久性测试。
量产可靠性测试:产品在实际使用的系统中(含软件硬件)进行集成测试。
单元测试是针对独立功能单元的测试。一般利用PCB投板到制成板加工回板之间的时间来准备单元测试的内容。单元测试包括硬件调试和白盒测试,单板单元测试的流程如下。

7.1 硬件调试

硬件调试的目的是所有设计的功能在单板上实现,在单板通电之前,必须先检查电路连线是否错误,然后再焊接调试,最后是动态调试。

7.1.1 电路检查

在PCB板生产和加工过程中,经常会因为设计和加工过程中的工艺错误造成PCB板连错线、开路、短路等问题。所以,在PCB板制作完成之后,先不焊接元器件,先对照原理图仔细检查PCB板的连线,确认没有问题后再焊接。检查的时候重点关注电源部分是否有短路、是否有极性错误,然后检查系统总线是否存在短路。可以用万用表来测试是否短路。

检查完之后再根据功能模块进行焊接和调试,焊接和调试的顺序参考如下:
电源→时钟→主芯片及外围小系统→存储器件和串口外设→其他功能模块。

下面按顺序介绍。

7.1.2 电源调试

电源的调试按电源树的拓扑结构从前往后分级焊接和调试。如图7.2所示的电源树结构,先焊接PoE和12 V合路,然后用万用表测试合路后的电压。如果没问题再焊接12 V转5 V,焊接好之后用万用表测试电压。如果没问题再焊接12 V转3.3 V,焊接好之后用万用表测试电压。如果没问题再焊接开关MOS和706。所有电源电压测试正常后再焊接RS485、STM800L、STM32F103ZET6等功能模块的电路。

在这里插入图片描述
电源调试完成后,再焊接调试时钟。

7.1.3 时钟调试

时钟的调试也按时钟树的拓扑结构从前往后分级焊接和调试。如图7.3所示的时钟树结构比较简单。可以先焊接32.768 kHz晶振,然后用频率计测试频率。如果没有问题,再焊接12 MHz晶振,然后用频率计测试频率。如果没有问题,再焊接25 MHz晶振。如果没有问题,则进行下一步调试。

在这里插入图片描述

7.1.4 主芯片及外围小系统调试

这一步调试包括主芯片及复位电路调试。先焊接复位电路并确认复位电路是否正常,如果没问题再焊接主芯片。如图7.4所示的单板小系统框图,焊接STM32F103ZET6后,先调试JLINK接口,通过JLINK接口给STM32加载程序,可以加载控制GPIO高低电平的程序。如果能够正常加载程序,并且GPIO控制正常,则说明STM32正常,小系统可以正常运行。
在这里插入图片描述
小系统调通之后,就可以调试存储器件和串口外设。

7.1.5 存储器件和串口外设调试

上述单板不带存储器件,可以先调试串口外设,如图7.4中的GPRS、LoRa和RS485。这一步调试需要STM32通过串口与这些外设模块通信,通过STM32来配置这些外设模块。这些模块是否正常的判据是模块能否正常工作。比如GPRS模块能否联网,两个LoRa模块之间是否能够正常通信,两个485模块之间是否能够正常通信。串口外设模块调试成功之后,再调试其他功能模块。

7.1.6 其他功能模块调试

上述单板除了串口外设外,还有SPI和IO接口。串口外设调试完成之后,再调试SPI和IO接口。

SPI有两路,分别接LoRa和以太网口。LoRa模块调试时,可以在两个LoRa模块之间进行通信测试,如果通信正常,说明LoRa模块调试成功。然后再调试以太网口,调试以太网口时,可以用以太网口和电脑相连,然后用网口工具发送数据,如果收发数据正常,则以太网口调试完成。

最后调试IO接口。控制STM32在相应的IO发送引脚发送高电平和低电平,如果后级的12 V电平正常,则在IO接收引脚的外设输入12 V电压,然后IO接收引脚采样电平状态,如果采样结果正常,则IO接口调试完成。

硬件调试完成之后,进入白盒测试阶段。

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

《深入理解 Spring MVC 工作流程》

一、Spring MVC 架构概述 Spring MVC 是一个基于 Java 的轻量级 Web 应用框架,它遵循了经典的 MVC(Model-View-Controller)设计模式,将请求、响应和业务逻辑分离,从而构建出灵活可维护的 Web 应用程序。 在 Spring MV…

基于Java Springboot宿舍管理系统

一、作品包含 源码数据库设计文档万字PPT全套环境和工具资源部署教程 二、项目技术 前端技术:Html、Css、Js、Vue、Element-ui 数据库:MySQL 后端技术:Java、Spring Boot、MyBatis 三、运行环境 开发工具:IDEA/eclipse 数据…

LeetCode螺旋矩阵

快一个月没刷题了,最近工作有些忙,今天闲下来两小时,刷一道 题目描述 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例 1: 输入:matrix [[1,2,3],[4…

探索CompletableFuture:高效异步编程的利器

目录 一、CompletableFuture基本功能安利 二、CompletableFuture使用介绍 (一)任务创建使用 1.supplyAsync创建带有返回值的异步任务 2.runAsync创建没有返回值的异步任务 (二)异步回调使用 1.异步回调:thenApp…

java的强,软,弱,虚引用介绍以及应用

写在前面 本文看下Java的强,软,弱,虚引用相关内容。 1:各种引用介绍 顶层类是java.lang.ref.Reference,注意是一个抽象类,而不是接口,其中比较重要的引用队列ReferenceQueue就在该类中定义,子…

基于STM32的智能垃圾分类投递系统设计

目录 引言系统需求与设计目标硬件设计 3.1 核心控制模块 3.2 传感器模块 3.3 驱动模块 3.4 显示模块 3.5 通信模块软件设计 4.1 数据采集与处理 4.2 垃圾分类逻辑实现 4.3 状态显示与远程监控代码实现 5.1 数据采集与处理 5.2 分类逻辑与控制 5.3 状态显示与通信 5.4 主程序实…

手摸手6-创建前端应用

目录 手摸手6-创建前端应用简介命令 npm create vue 和 npm init vue3的区别 使用 Create-Vue 创建应用1、输入命令 npm create vue 创建应用2、输入命令 npm install 安装相关依赖3、输入命令 npm run dev 运行项目 项目结构 手摸手6-创建前端应用 简介 create-vue 是 vue 应…

第T8周:Tensorflow实现猫狗识别(1)

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 具体实现 (一)环境 语言环境:Python 3.10 编 译 器: PyCharm 框 架: (二)具体步骤 from absl.l…

【MySQL】数据库基础

1.数据库基本认识 广义上来说数据库是长期存储在磁盘上的数据文件的集合,而MySQL是采用了C/S模式实现的一个网络服务,它由MySQL(数据库客户端) 、MySQLD (数据库服务)、磁盘上的数据库文件组成。MySQL服务是…

AWS IAM

一、介绍 1、简介 AWS Identity and Access Management (IAM) 是 Amazon Web Services 提供的一项服务,用于管理 AWS 资源的访问权限。通过 IAM,可以安全地控制用户、组和角色对 AWS 服务和资源的访问权限。IAM 是 AWS 安全模型的核心组成部分&#xf…

windows C#-异步编程场景(二)

等待多个任务完成 你可能发现自己处于需要并行检索多个数据部分的情况。 Task API 包含两种方法(即 Task.WhenAll 和 Task.WhenAny),这些方法允许你编写在多个后台作业中执行非阻止等待的异步代码。 此示例演示如何为一组 User 捕捉 userId 数据。 private stati…

web——sqliabs靶场——第九关——时间盲注

什么是时间盲注 时间盲注是指基于时间的盲注,也叫延时注入,根据页面的响应时间来判断是否存在注入。 使用sqlmap不同的技术 sqlmap --technique 参数用来设置具体SQL注入技术 B: Boolean-based blind 基于布尔的忙逐步 E:Error-based 报错注入 U&am…

Vue所有图片预加载加上Token请求头信息、图片请求加载鉴权

环境 Vue2、“axios”: “0.18.1”、webpack:“4.46.0”、ant-design-vue: “1.7.8” 描述 项目对安全要求比较高,所有后台返回的图片加载时都要加上token。比如资源图片,拍照打卡的图片,都需要鉴权。如果不带上token参数&…

此电脑中的百度网盘图标无法删除解决方法2024/11/18

教程很详细,直接上步骤 对于这种情况,修改注册表是很麻烦的,眨眼睛在这里推荐这位大佬的开源软件MyComputerManager 点击跳转MyComputerManager下载链接

【模型级联】YOLO-World与SAM2通过文本实现指定目标的零样本分割

《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发】2.【车牌识别与自动收费管理系统开发】3.【手势识别系统开发】4.【人脸面部活体检测系统开发】5.【图片风格快速迁移软件开发】6.【人脸表表情识别系统】7.【…

Postman之变量操作

系列文章目录 Postman之变量操作 1.pm.globals全局变量2.pm.environment环境变量3.pm.collectionVariables集合变量4.pm.variables5.提取数据-设置变量-进行参数化串联使用 postman中分为全局变量、环境变量、集合变量、和普通变量 分别使用pm.globals、pm.environment、pm.co…

linux 常用命令指南(存储分区、存储挂载、docker迁移)

前言:由于目前机器存储空间不够,所以‘斥巨资’加了一块2T的机械硬盘,下面是对linux扩容的一系列操作,包含了磁盘空间的创建、删除;存储挂载;docker迁移;anaconda3迁移等。 一、存储分区 1.1 …

python读取Oracle库并生成API返回Json格式

一、安装必要的库 首先,确保已经安装了以下库: 有网模式 pip install flask pip install gevent pi install cx_Oracle离线模式: 下载地址:https://pypi.org/simple/flask/ # a. Flask Werkzeug-1.0.1-py2.py3-none-any.whl J…

Nature子刊 | 单细胞测序打开发育系统溯源新视角

神经系统是人体最为复杂且最为重要的器官之一。深入理解神经发育对于神经科学研究和再生医学具有举足轻重的作用。但神经元多样性的起源仍是一个亟待解决的难题。日益发展的单细胞测序技术让研究人员们有机会从细胞的异质性入手,对不同细胞类型之间的关联和分化路径…

5G CPE与4G CPE的主要区别有哪些

什么是CPE? CPE是Customer Premise Equipment(客户前置设备)的缩写,也可称为Customer-side Equipment、End-user Equipment或On-premises Equipment。CPE通常指的是位于用户或客户处的网络设备或终端设备,用于连接用户…