PCB测试点长什么样子?请看下图:

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

NOKIA手机的测试点有什么作用?为什么要留这两排测试点?

大概可以猜测出来:

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

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

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

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

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

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

所以,为什么要留这些测试点?

原因如下:

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

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

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

夹具长什么样子?请看下图:

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

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

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

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

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

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

Air700ECQ模组管脚示意图

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

建议引出Air700ECQ相关测试点

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

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

  • 供电相关:
    VBAT、GND;

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

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

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

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

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

1、需要耗费SIM卡流量;

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

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

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

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

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

干货分享 | PCB测试点的用途的更多相关文章

  1. 纯干货分享!2020阿里java岗笔试面试题总结(附答案)

    前言 2020金九银十马上结束,现为大家整理了这次金九银十面试阿里的面试题总结,都是我从朋友那拿到的面试真题,话不多说,满满的干货分享给大家! int a=10是原子操作吗? 是的.  注意点: i+ ...

  2. 干货分享:SQLSERVER使用裸设备

    干货分享:SQLSERVER使用裸设备 这篇文章也适合ORACLE DBA和MYSQL DBA 阅读 裸设备适用于Linux和Windows 在ORACLE和MYSQL里也是支持裸设备的!! 介绍 大 ...

  3. iOS - GitHub干货分享(APP引导页的高度集成 - DHGuidePageHUD - ②)

    距上一篇博客"APP引导页的高度集成 - DHGuidePageHUD - ①"的发布有一段时间了, 后来又在SDK中补充了一些新的内容进去但是一直没来得及跟大家分享, 今天来跟大 ...

  4. iOS - GitHub干货分享(APP引导页的高度集成 - DHGuidePageHUD - ①)

    好长时间没更新博客, 是时候来一波干货分享了;APP引导页话不多说每一个APP都会用到,分量不重但是不可缺少,不论是APP的首次安装还是版本的更新,首先展现给用户眼前的也就只有它了吧,当然这里讲的不是 ...

  5. 【干货分享】Google 的设计准则,素材和资源

    在谷歌,他们说, “专注于用户,所有其它的就会水到渠成 ”.他们遵循设计原则,寻求建立让用户惊喜的用户体验.谷歌一直挑战自己,为他们的用户创造一种视觉语言,综合优秀设计的经典原则和创新.谷歌设计规范是 ...

  6. 【干货分享】Node.js 中文资料导航

    这篇文章与大家分享一批高质量的的 Node.js 中文资料.Node.js 是一个基于 Chrome JavaScript 运行时建立的一个平台, 用来方便地搭建快速的, 易于扩展的网络应用 Node ...

  7. 干货分享:MySQL之化险为夷的【钻石】抢购风暴【转载】

    转自: 干货分享:MySQL之化险为夷的[钻石]抢购风暴 - Vanos_韩尛哲 - 博客园http://www.cnblogs.com/Vanos-lcp/p/5642097.html 抢购钻石不稀 ...

  8. 32位汇编第四讲,干货分享,汇编注入的实现,以及快速定位调用API的数量(OD查看)

    32位汇编第四讲,干货分享,汇编注入的实现,以及快速定位调用API的数量(OD查看) 昨天,大家可能都看了代码了,不知道昨天有没有在汇编代码的基础上,实现注入计算器. 如果没有,今天则会讲解,不过建议 ...

  9. 逆向实用干货分享,Hook技术第一讲,之Hook Windows API

    逆向实用干货分享,Hook技术第一讲,之Hook Windows API 作者:IBinary出处:http://www.cnblogs.com/iBinary/版权所有,欢迎保留原文链接进行转载:) ...

  10. 逆向实用干货分享,Hook技术第二讲,之虚表HOOK

    逆向实用干货分享,Hook技术第二讲,之虚表HOOK 正好昨天讲到认识C++中虚表指针,以及虚表位置在反汇编中的表达方式,这里就说一下我们的新技术,虚表HOOK 昨天的博客链接: http://www ...

随机推荐

  1. MySQL数据库基本操作以及使用

    MySQL数据库 操纵数据库 查看数据库 show databases; 创建数据库 create database <database_name>; 删除数据库 drop databas ...

  2. stm32f10x系列学习笔记(三)ADC

    ADC_SampleTime 用途:在ADC通道配置(ADC_RegularChannelConfig)需要传输的参数. 含义:指两个采样阶段之间的延迟周期数,该参数会影响ADC在采样过程中的性能和准 ...

  3. Java并非锁之独占非公平锁理解

    Java锁系列教程之独占式锁 在Java并发编程中,锁是一个很重要的对象.Java中锁有两种:隐式锁和显式锁.使用synchronized关键字的锁是隐式锁.因为锁的申请和释放都是由JVM来维护的,不 ...

  4. LogBack 没有打印日志

    背景: 某日进行测试,新增了一行日志(项目使用的是logback) 报错: 无,就是不打印日志 解决: 经过仔细查看代码,发现之前的人写代码的时候 在其它类里面,将 private final Log ...

  5. 微软azure devops 如何搭建代理池服务器

    如果你的pipeline使用微软azure的服务器进行编译失败,提示你不能进行并行任务的话,可以自己拿一台服务器来搭建编译服务器. 目标是让你的 Organization settings -> ...

  6. KernelWarehouse:英特尔开源轻量级涨点神器,动态卷积核突破100+ | ICML 2024

    动态卷积学习n个静态卷积核的线性混合,加权使用它们输入相关的注意力,表现出比普通卷积更优越的性能.然而,它将卷积参数的数量增加了n倍,因此并不是参数高效的.这导致不能探索n>100的设置(比典型 ...

  7. Asp.net core 学习笔记之 Microsoft Graph API

    早年如果我们要读写用户得 outlook 内容是比较麻烦的, 要用许多 smtp 之类的方式. 现在终于是有了 http 级的 API 可以 call 了. 不仅仅是 outlook, calenda ...

  8. Vue3——axios 安装和封装

    axios 安装和封装 安装 npm install axios 最后通过 axios 测试接口!!! axios 二次封装 在开发项目的时候避免不了与后端进行交互,因此我们需要使用 axios 插件 ...

  9. [namespace hdk] 64位 bitset

    功能 已重载运算符 [](int) (右值,修改请使用 set() 方法) ~() +(bitset) +(unsigned long long) +=(bitset) +=(unsigned lon ...

  10. 快速理解和使用stream流

    数据量越大,硬件内核数越多,stream流相比传统for循环速度越快. 原因是stream流是可以并行处理的. 如果要使用stream流,可以直接用flatmap把外层嵌套扁平化,只留下自己需要处理的 ...