第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.mzph.cn/diannao/61204.shtml

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

相关文章

Qt5/QPainter/画家

目录 1.绘制文字 1.1案例 1.2代码 2.画线 2.1案例 2.2代码 3.绘制矩形 3.1代码 4.绘制椭圆和圆 4.1椭圆 4.2圆 5.圆弧 5.1案例: 5.2代码 6.扇形 6.1案例 6.2代码: 7.更改绘画的颜色和粗细 7.1案例 ​编辑 7.2代码 1.绘制文字 1.1案例 通过三种不同的绘…

一篇保姆式centos/unbantu安装docker

前言: 本章节分别演示centos虚拟机,unbantu虚拟机进行安装docker。 上一篇介绍:docker一键部署springboot项目 一:centos 1.卸载旧版本 yum remove docker docker-client docker-client-latest docker-common docker-latest do…

fetch API和XHR

文章目录 一、基本写法1. XMLHttpRequest(XHR)2. Fetch API 二、兼容性1. XMLHttpRequest(XHR)2. Fetch API 三、Promise支持1. XMLHttpRequest(XHR)2. Fetch API 四、请求响应1. XMLHttpRequest&#xff0…

Photoshop(PS)——人像磨皮

1.新建一个文件,背景为白色,将图片素材放入文件中 2.利用CtrlJ 复制两个图层出来,选择第一个拷贝图层,选择滤镜---杂色---蒙尘与划痕 3.调整一下数值,大概能够模糊痘印痘坑,点击确定。 4.然后选择拷贝2图层…

Elasticsearch retrievers 通常与 Elasticsearch 8.16.0 一起正式发布!

作者:来自 Elastic Panagiotis Bailis Elasticsearch 检索器经过了重大改进,现在可供所有人使用。了解其架构和用例。 在这篇博文中,我们将再次深入探讨检索器(retrievers)。我们已经在之前的博文中讨论过它们&#xf…

CH02_泛型

第2章:泛型 本章目标 理解泛型的概念 掌握泛型方法的定义与使用 掌握泛型类的定义与使用 掌握泛型接口的定义与使用 本章内容 泛型的概念 ​ 泛型(generic)是C# 2.0推出的新语法,并不是语法糖,它是专门为处理多段代码在不同的数据类型…

《设计模式》创建型模式总结

目录 创建型模式概述 Factory Method: 唯一的类创建型模式 Abstract Factory Builder模式 Prototype模式 Singleton模式 最近在参与一个量化交易系统的项目,里面涉及到用java来重构部分vnpy的开源框架,因为是框架的搭建,所以会涉及到像…

c++类对象练习

#include <iostream> #include <cstring>using namespace std;class mystring {char* buf; public:mystring(); //构造函数mystring(const char* str); //构造函数void show(); //输出函数void setmystr(const mystring str); //设置函数const char* getmystr() co…

CH03_反射

第3章&#xff1a;反射 本章目标 掌握反射的原理 熟悉反射的基本运用 本章内容 反射是什么 C# 编译运行过程 首先我们在VS点击编译的时候&#xff0c;就会将C#源代码编译成程序集 程序集以可执行文件 (.exe) 或动态链接库文件 (.dll) 的形式实现 程序集中包含有Microsoft …

多品牌摄像机视频平台EasyCVR视频融合平台+应急布控球:打造城市安全监控新体系

在当今快速发展的智慧城市和数字化转型浪潮中&#xff0c;视频监控技术已成为提升公共安全、优化城市管理、增强应急响应能力的重要工具。EasyCVR视频监控平台以其强大的多协议接入能力和多样化的视频流格式分发功能&#xff0c;为用户提供了一个全面、灵活、高效的视频监控解决…

深入理解 Maven 生命周期与常用命令:从编译到安装

Maven 是 Java 项目管理中不可或缺的工具之一&#xff0c;其核心功能包括依赖管理、项目构建和发布等。本文将围绕 Maven 的生命周期及常用命令&#xff0c;解析从项目编译到安装的完整流程&#xff0c;并结合实际案例帮助读者更好地掌握 Maven 的使用。 1. Maven 生命周期概述…

数据结构 (3)线性表的概念及其抽象数据类型定义

一、线性表的概念 定义&#xff1a;线性表是指具有相同数据类型的n个数据元素的有限序列。可以表示为L(a1,a2,…,ai,…,an)&#xff0c;其中a1是第一个元素&#xff0c;称为表头&#xff1b;an是最后一个元素&#xff0c;称为表尾。 特点&#xff1a; 有序性&#xff1a;线性表…

Java基础——继承和多态

目录 一、继承 继承的定义&#xff1a; 继承的基本用法&#xff1a; 如何调用父类的方法&#xff1f; 二、多态 多态性的好处 多态中的强制类型转换&#xff1a; 包的命名规则——域名倒叙 一、继承 继承的定义&#xff1a; 继承是面向对象编程中的一种机制&#xff0c…

【Zookeeper】一、Zookeeper的使命

摩尔定律揭示了集成电路每18个月计算性能就会增加一倍。 Zookeeper以Fast Paxos算法为基础。 在一个大型应用中&#xff0c;经常会按照功能边界将应用分为多个模块&#xff0c;这些模块可以分别独立部署。而要完成某一项具体的功能&#xff0c;不能仅靠其中一个模块&#xff…

vue3中父div设置display flex,2个子div重叠

在Vue 3中&#xff0c;若要设置父div使用flex布局并且使得2个子div重叠&#xff0c;可以在父div上使用样式display: flex以及position: relative&#xff0c;然后在子div上使用position: absolute来定位。 <template><div class"parent"><div class&…

Elasticsearch面试内容整理-分析与映射

在 Elasticsearch 中,分析(Analysis)和映射(Mapping)是数据处理和存储的核心部分。它们共同决定了数据如何被解析、存储以及如何被有效地搜索和查询。以下是关于分析和映射的详细介绍。 分析(Analysis) 分析是将文本数据转换为可以被 Elasticsearch 搜索的索引格式的过程…

播放器开发之ffmpeg 硬件解码方案

硬件编解码的概念 硬件编解码是⾮CPU通过烧写运⾏视频加速功能对⾼清视频流进⾏编解码&#xff0c;其中⾮CPU可包括GPU、FPGA或者 ASIC等独⽴硬件模块&#xff0c;把CPU⾼使⽤率的视频解码⼯作从CPU⾥分离出来&#xff0c;降低CPU的使⽤负荷&#xff0c;使得平台能 ⾼效且流畅…

Go 编译代码-分平台编译

要针对 Mac, Linux, 和 Windows 编译单个 main.go 文件&#xff0c;可以使用 Go 的交叉编译功能&#xff0c;通过设置环境变量 GOOS 和 GOARCH 来指定目标操作系统和架构。 编译命令 在项目目录下执行以下命令&#xff1a; 1. MacOS 编译 GOOSdarwin GOARCHamd64 go build …

使用Python和OpenCV连接并处理IP摄像头视频流

使用Python和OpenCV连接并处理IP摄像头视频流 随着智能设备的发展&#xff0c;越来越多的家庭和企业开始使用IP摄像头进行安全监控或远程查看。这些摄像头通常可以通过网络访问&#xff0c;提供了丰富的功能&#xff0c;如实时视频流、云台控制等。本文将详细介绍如何利用Pyth…

计算机毕业设计SparkStreaming+Kafka旅游推荐系统 旅游景点客流量预测 旅游可视化 旅游大数据 Hive数据仓库 机器学习 深度学习

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…