基于单片机的智能测试系统的设计和应用范围

时间:2020-07-23

  1、引言

  随着电子、电器类产品在社会生活中的普及,国内众多中小企业也纷纷开始自行研制,生产此类产品以满足市场的需求,但由于中小企业人力、物力的局限,往往将主要经历放在了产品的生产上,而对于产品的出厂检测却不够完善,造成产品返修率较高的局面,从实际情况来看,造成产生返修的故障中很大一部分是能够在出厂检测时被发现的,但是由于目前国内的中小企业大部分依靠人工借助部分仪器,仪表来检测,使得检测效率低、测试面不广,存在错检,误检等情况。

  智能测试系统的引入可以很好地解决此类矛盾,帮助企业提高产品检测的效率,下面将以一款麻将机主机板的智能测试系统为例,全面阐述设计原理。

  2、SST89E58RD2特性介绍

  SST87E58RD2是一款80C51微控制器,包含32KB+8KB FLASH和256+768B的数据RAM。SST89E58RD2的典型特性是他的×2方式选项,利用该特性,设计者可使应用程序以传统的80C51时钟频率(每个机器周期包含12个时钟)或×2方式(每个机器周期包含6个时钟)的时钟频率运行。

  FLASH程序存储器支持传统的并行编程,也支持串行在系统编程(ISP)。ISP允许在软件控制下对成品中的器件进行重复编程,SST89E58RD2也可采用在应用中编程(IAP),允许随时对两片FLASH程序存储器重新配置,即使应用程序正在运行时也不例外。

  SST89E58CD2特性如下:

  80C51   处理单元;

  5V的工作电压,操作频率为0-40MHz;

  64KB的片内FLASH程序存储器,具有ISP(在系统编程)和IAP(在应用中编程)功能;

  通过软件或ISP选择支持12时钟(默认)或6时钟模式;

  SPI(串行外围接口)和增强型UART;

  PCA(可编程计数器阵列),具有PWM和捕获/比较功能;

  4个8位I/O口(P0-P3),1个4位I/O口(P4);

  3个16位定时器/计数器;

  可编程看门狗定时器(WDT);

  10个中断源,4个中断优先级;

  2个DPTR寄存器;

  低EMI方式(ALE禁能);

  兼容TTL和CMOS逻辑电平;

  掉电检测;

  低功耗模式(掉电模式,外部中断唤醒,空闲模式)。

  3、智能测试系统原理

 

  本智能测试系统以SST89E58RD2为   ,其原理框图如图1所示,包括:

  SPI口线 主要用于向被测主板进行程序   和通讯;

  I2C总线 向被测主板中的外部E2PROM读取数据;

  RS232电路 用于与上位计算机的通信;

  外部FLASH 主要存放被测主板的程序目标代码,选用AT29C010A;

  指示灯电路,每个故障点用一个指示灯指示,总数有32个,用4片74HC595做输出驱动电路;

  2个步进按钮 用于测试过程中的步进控制,其控制线直接连到SST89E58RD2的P1.1,P1.2口线上;

  LED显示 用于测试步进的显示,用1片74HC595控制;

  DI输入电路 选用74HC165逻辑芯片,并入串出;

  DO输出电路 选用74HC595逻辑芯片,串入并出;

  由于单片机外围接口芯片较多,故采用GAL16V8D作为控制译码电路。

  4、智能测试系统功能

  本文中的智能测试系统的测试对象是自动麻将机的主机板,以下对该系统的设计进行阐述。

  自动麻将机的主要测试项包括:

  主板供电:内部3个分块电源;12个9V交流DO信号,16个DI信号;4个电源信号;1个主电源和3个分支电源,1个蜂鸣器,1个带I2C的E2PROM;1个SPI口用于与智能测试系统通信和程序   。

  麻将机主机板选用AT89S52,该单片机具有通过SPI口系统编程(ISP)功能。

  针对麻将机主机板的这些硬件功能,智能测试系统具有以下几个功能接口;

  24个DO输出 用于检测被测主板的DI信号;

  16个交流/直流DI输入 用于检测被测主板的DO信号;

  一个SPI总线接口 用于被测主板的程序   和通讯;

  一个I2C接口 用于读写被测主板的I2C的E2PROM。

  测试步骤如下:

  (1)被测主板的电源测试

  该电源的标称值为5V,判定条件为是否在4.75-5.25V之间,可通过由一个N555搭建的SHMILT比较器进行判断,通过指示灯显示结果是否正常。如果电源检测不能通过,后续的检测步骤不再进行,并由蜂鸣器提示。

  (2)被测主板的 SPI连接测试和测试程序   

  通过SPI口串行   命令读取被测主板CPU的特征码,通过识别判断为AT89S52芯片(麻将机主机板选用的单片机型号),即认为被测主板已连接上。因对于SST89E58单片机而言,他的SPI口是一个完全的SPI口,但AT89E52单片机的SPI口是用于FLASH的ISP功能,当特征码读对后,表明SPI口连线正常,此时测试系统将向被测主板   测试程序,该测试程序的代码放在SST89E58RD2的FLASH地址为0X7000-0X7FF的空间内,   完成后将使被板测主可以配合智能测试系统进行检测。

  (3)被测主板的DI功能测试

  将被测主板的16点DI分成两组,8点一组,与测试系统的DO口线相连,通过测试系统输出DO信号经被测主板采样后,再通过SPI口通讯读回采样数据,比较输出信号与采样信号的异同、判断是否有通道异常,若存在异常则通过故障指示灯显示。

  (4)被测主板的DO功能测试

  将被测主板的12个DO分成2组,8点一组和4点一组,与测试系统的DI口连接,通过SPI口通讯命令,让被测主板进行特定状态输出,测试系统通过DI采样,比较采样数据和输出特征数据的异同、判断是否有通道异常,若存在异常则通过故障指示灯显示。

  (5)被测主板的断电数据保存测试

  因被测主板另有一个非常重要的断电数据保存功能,该功能可使被测主板内部的电源检测电路一旦检测到失去电源后,CPU会在有限的时间内将一些特征数据存放到外部E2PROM(AT24C64)中。针对此功能,测试系统将通过I2C总线直接读取E2PROM内部的数据判断断电数据保存是否有效,通过指示灯指示。

  (6)查看故障指示灯,完成测试

  以上5个步骤完成后如果没头有指示灯显示故障,则可按下   按键,将麻将机主机板的程序   到AT89S52中,完成整个测试。如果发现还有故障,则按后退键再次进行测试,以便确认故障。

  5、智能测试系统关键的程序代码

  6、结 语

  本设计实现的智能测试系统已应用于某自动麻将机的生产厂家,并取得了良好的应用效果。以往该厂产品的出厂检测均采用人工检测模式,完成检测需要花费20 min,且检测的范围局限于   主要的几项指标;引入本智能检测系统后,只需2min即可完成对产品的检测,且检测的范围覆盖了绝大部分功能,遇到检测不能通过的产品还可以根据智能检测系统的提示快速、准确地找到故障源,大大提高了生产效率。

  该智能测试系统还可以进行更深入的开发:

  (1)目前很多电子产品出厂前需要进行带电老化测试,但仅仅是带电空载,如果将智能测试系统引入老化测试,模拟产品的工作负载,使产品在老化测试的过程中满负荷工作,则能通过该老化测试的产品将在实际应用中体现出更稳定、可靠的性能。

  (2)电子产品出厂前都需要标注序列号,以及产品的版本号,如何将产品的实体与序列号、版本号有效地控制起来,一直是众多厂家的棘手问题,如果将智能测试系统引入出厂产品的序列号、版本号管理也将是非常有效的,利用智能测试系统的上位机扩展功能,通过RS232与计算机相连,智能测试系统在向测试产品   程序之前已经获取了该产品的版本号,再根据当天日期和出厂顺序等一系列属性计算出出厂序列号,当该产品检测通过后,智能测试系统将序列号和版本号上送给上位计算机,计算机中的专用软件将序列号和版本号存入数据库,并将序列号标注在产品上。

  目前,本设计实现的智能测试系统正在进行二期开发,拟将智能测试系统引入老化测试和出厂序列号管理,开发成功后,将可大大完善系统的性能、提高系统的适用范围。

上一篇:基于高分辨率A/D转换器和DL技术实现时钟稳定电路的设计
下一篇:基于IGBT技术实现反并联二极管的正确设计

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料