如何在ATE中集成对PIC单片机的编程烧写功能

发布者:江上HZ最新更新时间:2020-01-30 来源: eefocus关键字:ATE  PIC单片机  编程  烧写功能 手机看文章 扫描二维码
随时随地手机看文章

做ATE,要对DUT内部的PIC单片机进行在线烧写,


在网上看到别人的一个说法(作者 Claud Zhang),内容如下:

---------------------------------------------------------

一种简单高效低成本的Microchip MCU编程方法

                                   Claud Zhang

对于一些研发工程师来说,工厂的的MCU编程有时候是个比较头疼的问题.在研发过程中,大家都和习惯于用仿真器去编程,这个对工程师来说是个非常简单的过程,但是在工厂生产,工厂认为太复杂了。工厂希望是个傻瓜式的过程。最好的方法是通过ATE自动编程,不需人工参与。

在以往的通常有2种方法,


一种是用PM3,先编程好,再去SMT, 这种方法对量非常大又不在意成本的话也不失为一种方法,当然这种编程的缺点也很多

1、首先成本高,PM3, 插座都是一笔不小的开销

2、失效率会比较高,在上SMT 之前就需要拆封,容易产生管脚损伤,ESD, 造成废料

3、如果你在此基础上做一个完全自动化的话,相信先期投入的成本是相当惊人地。

4、如果你不做自动化设备的话,那么你需要投入更多的人工

5、不能在线更新


另外一种是在线烧录

Microchip的IC 烧录只需要5个pin, 其中是有2个是电源和地,在PCB 上只占用很小的空间。 或者你做几个焊盘,直接用探针接触。

在线烧录的优点:

1、容易在线更新

2、避免二次操作管脚

3、任何器件都可以通过这5个PIN编程


缺点:

需要人工操作烧录过程,要通过MPLAB 的IDE 界面进行操作。

人工操作的缺点

1、非常容易出错。

2、占用一个工位人工,增加成本

3、工厂工人流动比较大,工位经常变动,更容易出错,增加成本。


解决方法:

在MPLAB 中已经增加了命令行方式实现烧录,也就是说只要用文本写个简单的命令行或者批处理,用你的PK3或者ICD3 连接好你的芯片, 直接点击或者在ATE中调用批处理,就完成烧录。


过程如下:

1、安装MPLAB IDE(我用的是V8.85版本)

2、插入PK3 或者ICD3 , 找到驱动

3、这里先以ICD3 为例

在目录 ..MicrochipMPLAB IDEProgrammer UtilitiesICD3 找到ICD3CMD.exe

把着个文件copy 到你任意指定的一个目录。

假设就在C: ICD3CMD.exe

4、和ICD3CMD.exe同一个目录下 新建一个文本 

   假设你用的器件是 DSPIC33EP64MC506, 烧录文件是claud.hex  这个文件也在假设的C盘根目录下,也可以是任意路径,注意不要用中文路径。


文本文件中写入

ICD3CMD -P33EP64MC506 -FC:claud.Hex -M -V3.3

注意蓝色部分写法,不要DSPIC

如果是PIC16F1516 就写成

ICD3CMD –P16F1516 -FC:claud.Hex -M -V3.3

注意蓝色部分写法,不要PIC

选项V3.3 是指ICD3 直接给芯片供电3.3V. 如果板上所需电流过大,请外加电源。

5、把这个文本另存为 ICD3PROMCU.bat, 同样保存在和你的 ICD3CMD.EXE 一个目录下

6、如果你使用的是PK3, 在。。MicrochipMPLAB IDEProgrammer UtilitiesPICkit3 目录中找到 PK3CMD.exe ,把上面的ICD3CMD替换成PK3CMD.

7、双击ICD3PROMCU.bat

8、如果你在command 窗口里看到如下画面, 恭喜你, 成功了

9、在工厂里要做的只是双击一下或者集成到ATE中直接调用。

10、谢谢你仔细读完。

--------------------------------------------------------------------------

实际操作中,查询该DOS Console命令就可以发现其大体功能有哪些(估计还有一部分隐藏参数MCHP官方未公开,因为对比MPLAB的操作细节可以看出来):


E:PROG>icd3cmd /?

Options              Description

---------------------------------------------------------------------------

B                    Batch Mode Operation

C                    Blank Check Device

E                    Erase Flash Device

PKOB                 To connect PKOB

F              Hex File Selection

G Read functions

                         region:

                         E = EEPROM

                         I = ID memory

                         C = Configuration memory

                         B = Boot Flash Memory

                         If no region is entered, the entire

                         device will be read.



                         Type F: = read into hex file,

                         Path = full file path,

H                    Hold In Reset

L                    Release from Reset

I                    Use High Voltage MCLR

M            Program Device

                         region:

                         P = Program memory

                         E = EEPROM

                         I = ID memory

                         C = Configuration memory

                         B = Boot Flash Memory

                         If no region is entered, the entire

                         device will be programmed.

N####,####           Program Memory Range

                         #### is a hexidecimal number representing

                         Start and End Address in sequence

P              Part Selection. Example: 18F67J50

R              Reporgram

S              SQTP File Selection

U##                  Program calibration memory,where:

                        ## is a hexidecimal number representing

                        the least significant byte of the

                        calibration value to be programmed

V           Power Target from ICD3

Y                    Verify Device

                         against selected HEX File

?                    Help Screen

?E                   Displays Exit Code


     Example:   ICD3CMD  /P18F67J50 /GFc:HexCode.hex

                               or

     Example:   ICD3CMD  -P18F67J50 -GFc:HexCode.hex


     Version 01.00.14


     Copyright (C) Microchip Technology Inc. 2009


E:PROG>

//-----------------------------------再看看MPLAB开发IDE中的连接ICD3过程:

MPLAB ICD 3 detected

Connecting to MPLAB ICD 3...

Firmware Suite Version...... 01.28.90

Firmware type......................Enhanced Midrange


MPLAB ICD 3 Connected.


Target Detected


Device ID Revision = 00000004

Programming...

Programming/Verify complete



//-----------------------------------其实这个icd3cmd命令自带支持连续操作模式,叫Batch Mode,试验如下:

E:PROG>icd3cmd -P16F1903 -FC:usr111.hex -M -B


Connecting...

MPLAB ICD 3 detected

Connecting to MPLAB ICD 3...

Firmware Suite Version...... 01.28.90

Firmware type......................Enhanced Midrange

MPLAB ICD 3 Connected.

Target Detected

Device ID Revision = 00000004


Programming Device ...

Programming/Verify complete

Batch Mode Count : 1


Batch Mode:  Press Enter to repeat the same operation !!!


Programming Device ...

Programming/Verify complete

Batch Mode Count : 2


Batch Mode:  Press Enter to repeat the same operation !!!


最后这个才是对批量烧些真正有用的指令!!

关键字:ATE  PIC单片机  编程  烧写功能 引用地址:如何在ATE中集成对PIC单片机的编程烧写功能

上一篇:PIC单片机型号命名规则
下一篇:关于PIC单片机SLEEP指令

推荐阅读最新更新时间:2024-11-12 17:42

PIC单片机的清零指令详解
看到这篇文章的朋友,想必大家对pic单片机均具备一定兴趣,或对pic单片机具备一定使用需求。前文中,小编曾对pic单片机汇编语言进行过部分讲解。本文中,将对pic单片机的清零等指令加以讲解,以帮助大家更好掌握pic单片机编程。 一、清零指令 1.寄存器清零指令 实例:CLRW;寄存器W被清零 说明:该条指令很简单,其中W为PIC单片机的工作寄存器,相当于MCS-51系列单片机中的累加器A,CLR是英语Clear的缩写字母。 2.看门狗定时器清零指令。 实例:CLRWDT;看门狗定时器清零(若已赋值,同时清预分频器) 说明:WDT是英语Watchdog Timer的缩写字母。CLR见上述说明。注意该两条指令无操作数。 3.寄存器
[单片机]
<font color='red'>PIC单片机</font>的清零指令详解
初学者应该知道的PLC编程规范及建议
一、完美的PLC程序需满足的设计要求 一套完整的PLC程序,并不仅仅是使系统能够运行起来这么简单,它也需要完整的注释、精良的架构、良好的可扩展性、完备的报警保护系统、运行前的模拟系统。 1.简单性 使PLC程序尽可能简单。简单的含义就是尽可能的使用标准化的程序框架,尽可能使用简单的指令。 要想程序简单,从大的方面讲,要优化程序结构,用流程控制指令简化程序,从小的方面讲还要用功能强的指令取代功能单一的指令,以及注意指令的安排顺序等。 2.可读性 要求所设计的程序可读性要好。这不仅便于程序设计者加深对程序的理解,便于调试,而且,还要便于别人读懂你的程序,便于使用者维护。必要时,也可使程序推广。 要使程序可读性好,所设
[嵌入式]
初学者应该知道的PLC<font color='red'>编程</font>规范及建议
巧用多内核处理器的并行编程功能实现视频代码转换
视频代码转换是指从一种压缩视频格式转换为另一种压缩视频格式,通常先要把某种格式解码为原始视频帧,然后用新的格式重新编码。在许多应用中高效的代码转换至关重要。例如,为了支持视频点播数据流,视频数据要以某种主流格式存储起来以节省空间,但必须支持众多不同的观看设备和解码器。为了做到这一点,需要在数据发送前以实时或者快于实时的速度进行代码转换。在视频节目制作阶段进行视频编辑时,也必须对视频数据进行解码、修改和重新编码。在普通家庭,为了能在家用视频服务器上使用视频,视频数据可能也需要转换才能适应服务器支持的格式。 支持高清视频点播要求高性能的代码转换。RapidMind公司开发的软件开发平台利用统一的并行编程模型充分发挥各种多内核处理器的性
[嵌入式]
颠覆电源生产模式,PI推出可编程成本更优的电源IC
集微网消息,继去年9月份推出InnoSwitch™3系列开关电源IC后,近日,Power Integrations(以下简称“PI”)又推出了InnoSwitch™3的升级版——InnoSwitch3-Pro系列可设定恒压/恒流及恒功率输出特性的离线反激式开关电源IC。  InnoSwitch3-Pro系列不仅通过双线I2C接口可以对输出电压及电流进行精确的动态阶跃控制,同时还颠覆传统的电源生产模式,一个设计可以实现多种客户电源输出规格,成本价格也更便宜,深得下游终端客户厂商的青睐。 InnoSwitch3-Pro可编程,支持USB PD 3.0 与传统的模拟电源相比,数字电源具有更灵活的可控制功能。近年来数字电源一直是业
[手机便携]
基于西门子S7-1200PLC的编程控制案例
一、动作描述 1.我们在模拟软件上搭建了一个简单传送带,并配置了控制面板; 2.通过模式选择开关,可以选择自动/手动模式; 3.自动模式下按自动启动按钮,引入传送带自动运行,当货物触碰A传感器时,长传送带正方向运转,当货物触碰B传感器时,长传送带反方向运转。 4.按下停止按钮,传送带停止; 5.手动模式下,按前进按钮,传送带正方向点动运转,按后退按钮,传送带反方向点动运转; 6.另有指示灯显示当前运行状态。 二、硬件设备 1.一台装有博途及其仿真软件、FACTORY IO软件的PC。 三、软件 1.西门子PLC编程软件:TIA 博途V16 2.博途仿真软件:PLCSIM V16 3.FACT
[嵌入式]
基于西门子S7-1200PLC的<font color='red'>编程</font>控制案例
LabVIEW中MSComm实现串口通信编程学习
问题描述:对于一般的应用,LabVIEW中直接用VISA串口API函数就可以实现,方便快捷,但是对于需要使用中断方式进行串口通信的,就得使用MSComm控件来实现了。 MSComm控件:操作ActiveX控件,最主要的就是要使用好它的属性、方法函数,并做好中断事件的回调处理。LabVIEW针对ActiveX设置的控件在 互连接口 的 ActiveX 中提供了8个功能函数:Automation Open, Close Reference, To Variant, Variant to Data, Invoke Node, Property Node, Register Event Callback, UnRegister
[测试测量]
英特尔发布新的可编程加速卡D5005,已被HPE采用
英特尔今天宣布推出基于Stratix 10 SX FPGA的D5005可编程加速卡,已在HPE ProLiant DL3809 Gen10服务器中应用。 英特尔于2017年宣布推出可编程加速卡,作为在数据中心使用FPGA的综合平台,其中第一个产品由20纳米Arria 10 GX组成。2018年,英特尔宣布将推出采用更新的14nm FPGA的PAC,今天产品正式亮相,Hewlett Packard Enterprise(HPE)作为发布合作伙伴共同宣布推出。 新的英特尔FPGA PAC D5005加速器是PAC产品系列中的第二代产品,包含一个Stratix 10 SX FPGA。 PAC还附带英特尔的加速堆栈,提供驱动程序,
[嵌入式]
英特尔发布新的可<font color='red'>编程</font>加速卡D5005,已被HPE采用
优化PCB设计的可编程电源管理方案
       PCB电源管理一般来说是关于给PCB供电所涉及到的方方面面的。一些通常涉及的问题有: 1. 选择各种DC-DC 转换器为PCB供电; 2. 电源启闭排序/跟踪; 3. 电压监测; 4. 上述全部。          在本文中,电源管理被简单定义为:对PCB上的全部电源实施管理(包括:DC-DC转换器、LDO等)。电源管理包括如下功能:管理PCB上DC-DC控制器。例如,热插拔、软启动、排序、追踪、容限和规整;生成全部相关的电源状态和控制逻辑信号。例如,复位信号生成、电源故障指示(监控)和电压管理。图1演示了一个采用CPU或微处理器的PCB上的典型电源管理功能;热插拔/软启动控制功能用于限制浪涌电流以减小电源的
[电源管理]
优化PCB设计的可<font color='red'>编程</font>电源管理方案
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved