不容忽视的PCB测试点,关键时刻可以避免批量事故哦!

news/2024/10/8 19:15:18/文章来源:https://www.cnblogs.com/luatos/p/18452310

 PCB测试点是啥子?请看下图:

 

图片

如果你曾经用过NOKIA手机,每次你打开后盖换电池的时候,每次看到的那两排圆形的点——就是PCB测试点,or you can call it Test Point in English.

NOKIA手机的测试点有什么用?


为什么要留这两排测试点?

我虽然不知道NOKIA手机这些测试点的具体作用,但我大概可以猜测出来:

  • 供电:包括至少一个Vbat,和一个GND;

  • 开机键:Power_Key,以及与之搭配的上拉电源或下拉GND;

  • 下载:要么是串口的RX和TX,要么是USB的VBUS、D-、D+、GND,可能还需要一个使系统进入下载模式的BOOT信号;

  • SIM卡测试点:生产或维修阶段功能测试时使用外置夹具上的SIM卡,方便快速的检测;

  • 用于射频校准的一些信号测试点;

  • 用于维修时其它一些不对外,但可获取一些故障信息的测试点。

所以还是那个问题,为什么要留这些测试点?

原因无非三条:

1、这些测试点的信号,有些用户是用不到的,没必要用一个专门的连接器引出来;

2、测试点这种形式,跟测试夹具是绝配,在大批量操作的时候没有夹具参与是不可能的,比如软件升级、射频参数校准、功能测试等;

3、当你组装好又需要出厂检测或售后维修的时候,最好的操作是能不拆开外壳就不拆开,所以在不影响美观的前提下能在外壳上开孔留出测试点,是最好最通用的做法。

关于夹具,如果你没有什么概念,可以看下我们给模组升级软件用的夹具长什么样子:

 

图片

那......那这些跟模块有什么关系?

就算是跟模块有关系,
跟我这个使用模块的用户又有什么关系?

这么说吧,跟你关系虽然不太多,但还是有一点的。

如果你是使用模组AT指令开发方式的用户:
虽然理论上你不会用到模组软件的升级,但是万一呢?万一你遇到了一个从未遇到的问题呢?万一你的产品需要一点点的定制功能呢?万一这些都是在你贴片完成之后才发现呢?

如果你是使用模组LuatOS开发方式的用户:
那么你更需要引出测试点了,因为“所有软件相关的问题都需要你全盘考虑”。

为了不至于要把模组焊接下来再升级,接下来将以Air700ECQ为例,建议你必须把相关测试点引出来。

 

图片

 

 

Air700ECQ模组管脚示意图

相关管脚详细说明,参见Air700ECQ硬件设计手册。

Air700ECQ最新资料链接:

www.air700ecq.cn

 

图片

 

建议引出Air700ECQ相关测试点

 

  • 供电相关:
    VBAT、GND;

  • 开机相关:
    Power_Key、BOOT、VDD_EXT;

  • 下载相关:
    VBUS、DP、DM、GND;

  • 调试串口相关:
    如果你的产品架构里需要通过USB跟主控通信,也就是当需要抓模组Trace时USB需处于工作状态。

    那么你也需要把调试串口引出测试点:
    DBG_TXD,DBG_RXD;

  • 操作体验相关:
    而且,最好的情况是要像NOKIA那样,不但在PCB上引出足够的测试点,还要方便整机直接操作,而不是拆开外壳再操作,对于大批量的返工来说,那真是一个不太好的体验。

你可能要开始“怼”我了,
没有测试点怕什么,合宙不是有FOTA服务吗?

对,你说的没错,但是FOTA一般是用在批量发货之后的操作,因为FOTA也有几个弱点:

1、需要耗费SIM卡流量;

2、大批量操作时需要排队;

3、FOTA升级软件还好,FOTA上传Trace比较有难度。

所以,还是老老实实留好测试点。

PCB测试点留得好不好,本质上反映的是作为一名工程师,你在“治未病”方面的能力和思考。

有可能你预留的测试点永远都不会用到,但一旦不得已要使用的时候——它真的可以避免产生批量事故。

希望我们的用户都拥有这个“治未病”的能力。

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

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

相关文章

实验2 C语言分支与循环基础应用编程-1

任务一#include <stdio.h> #include <stdlib.h> #include <time.h> #define N 5 #define N1 397 #define N2 476 #define N3 21int main() {int cnt;int random_major, random_no;srand(time(NULL)); // 以当前系统时间作为随机种子cnt = 0;while(cnt &…

面试-前端基础速刷-Vue

1. Vue中computed和watch的区别 两者用途不同啊!computed用于计算产生新的数据,watch用于监听现有数据。 computed有缓存,methods没有缓存。 computed有点儿像工厂模式(产生新的东西),watch像发布订阅模式。(是我目前的知识盲区) 2. Vue组件通讯有几种方式,尽量全面❗…

宝塔平替:1Panel-新一代的 Linux 服务器运维管理面板(附优惠码/推荐码)

什么是1Panel 1Panel是一款开源,现代化的新一代的 Linux 服务器运维管理面板!1Panel可以帮你实现的功能: 高效管理:用户可以通过 Web 图形界面轻松管理 Linux 服务器,实现主机监控、文件管理、数据库管理、容器管理等功能; 快速建站:深度集成开源建站软件 WordPress 和 …

大模型应用开发初探 : 基于Coze创建Agent

Coze(扣子)是字节跳动公司开发的新一代AI应用开发平台,使用这个AI应用开发平台,无论你是否有编码基础,都可以快速搭建基于大语言模型的各类AI Bot,还可以将Bot发布到其他渠道。对于一个AI Agent而言,最重要的能力就是任务规划、调用工具、知识库 和 记忆能力,而这些能力…

了解final关键字在Java并发编程领域的作用吗?

在Java并发编程领域,final关键字扮演着一个至关重要的角色。虽然很多同学熟悉final用于修饰变量、方法和类的基本用法,但其在并发环境中的应用和原理却常常被忽视。final关键字不仅仅是一个简单的修饰符,它在多线程编程中确保对象状态的可见性和不变性,这对于构建线程安全的…

20222325 2024-2025-1 《网络与系统攻防技术》实验一实验报告

1.实验内容缓冲区溢出基本知识:堆栈、函数调用。 shellcode技术以及其在各平台的运用与防御。 BOF攻击防御技术。2.实验目标 本次实践的对象是一个名为pwn1的linux可执行文件。 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串。 该程序同时包含…

用AI构建小程序可行吗?

AI工具在软件开发中扮演着越来越重要的角色,它可以帮助开发者提高效率、增强软件功能、降低开发门槛。通过合理选择和应用AI工具,可以显著提升软件开发的质量和效率。随着移动互联网的快速发展,多端应用的需求日益增长。为了提高开发效率、降低成本并保证用户体验的一致性,…

PyQt5 使用 QLabel 实现图像 360度 不间断旋转

PyQt5 使用 QLabel 实现图像 360度 不间断旋转 当我们需要实现让一个图像 360度 旋转时,比如:音乐播放器中播放时,歌曲封面的旋转效果,你可以尝试使用下面的方法 代码结构 本文中全部代码全在test_QLabel_whirling.py这一个文件中编码,步骤中有变动的地方会注释标注,无改…

systemverilog笔记

变量类型变量名 状态数 是否带符号 比特数logic 4 无 1bit 2 无 1byte 2 有 8shortint 2 有 16int 2 有 32longint 2 有 64integer 4 有 32time 4 无 64$isunknown(表达式):在表达式任意位出现X或者Z时返回1。 数组 数组初始化 使用单引号加大括号数组遍历 $size(数组)会返回

DSP概述及应用——TMS320DM6437ZDU4、TMS320DM6437ZWT6、TMS320DM6437ZWT7数字媒体处理器

TMS320DM6437采用基于超标量架构的C64x+内核,具有高效的乘法累加单元和多格式指令集,能够在单个时钟周期内执行两条指令,大大提高了运算速度和效率。概述:TMS320DM6437是一款DSP芯片,具有强大的处理能力和丰富的功能模块。 TMS320DM6437采用基于超标量架构的C64x+内核,具…

csp-s模拟10

rank 31,垫底了,T1 0pts,T2 18pts,T3 0pts,T4 50pts 状态有点不好,策略有问题,T4是可以切的,但是不知道为什么弃了。T1不会线性基寄。T3 奇怪结论题,T2 结论题。 在猜结论上还是不行。 T1 欧几里得的噩梦 用到了线性基线性无关的性质,将两个数连边,把环去掉,并查集判…

Kubernetes的Pod调度:让你的应用像乘坐头等舱!

一、Kubernetes 中 Pod 调度的重要性 在 Kubernetes 的世界里,Pod 调度就像是一个繁忙的交通指挥官,负责把小车(也就是我们的 Pod)送到最合适的停车位(节点)。调度不仅关乎资源的合理利用,还关乎应用的“生死存亡”,下面让我们来看看为什么调度这么重要。资源优化: 想象…