一种芯片烧录系统及方法、电子设备的制造方法

文档序号:9810273阅读:587来源:国知局
一种芯片烧录系统及方法、电子设备的制造方法
【技术领域】
[0001]本发明涉及基于ARM的32位M⑶的芯片程序烧录,尤其涉及一种设计中自动检测芯片是否在线的芯片烧录方法。
【背景技术】
[0002]目前的芯片烧录平台是基于C51的SiliconLaboratories IDE开发的,其下载代码接口单一,下载速度慢及无信息提示等都给使用人员带来困难,工作频率低、指令执行速度慢和可移植性差等不利于后续开发人员的维护和程序升级;烧录芯片的时间过长,影响生产产能,烧录芯片的出错率高(大于千分之五),影响客户体验;需要另行购置专用性USB芯片,在很大程序上限制了传输的速度造成速度与开发模式的瓶颈,而且PC软件开发受限于USB FIFO厂商提供的API函数,可操作性与通用性较差,造成开发维护成本高;烧录装置平台的自动化程度低,烧录无法自动检测芯片是否在线、芯片管脚是否对位、硬件电路上无过压过流等功能,会导致烧录芯片不良,需要人工手动操作软件烧录,导致测试研发人员时间被大量占用,难以有足够的精力与时间进行其他方面工作以及技术能力提升。

【发明内容】

[0003]为解决上述问题,本发明的另一个目的在于提供一种芯片烧录的电子设备系统及烧录方法,该系统及烧录方法旨在开发出一个能够利用ARM处理器开发,采用软硬件协同的开发模式,最大程度的节省硬件成本和软件设计周期,优化烧录时间。
[0004]本发明的另一个目的在于提供一种芯片烧录的电子设备系统及烧录方法,该系统及烧录方法可以实现在较少的成本下芯片的快速烧录,可在不同模式下进行烧录,在烧录过程中利用不同的信息提示用户,自动检测芯片放置,软硬件协调开发方式,可大大减少开发时间,减少因接触问题而导致的烧录不良的概率。
[0005]为实现上述目的,本发明的技术方案如下。
[0006]—种芯片烧录的电子设备系统,其特征在于所述系统包括有USB通信模块、检测输出模块、UI显示报警模块、固件升级模块、存储模块、PC控制软件模块和按键模块,上述模块分别与ARM进行连接或通信;
[0007]所述USB通信模块,主要是利用ST固件库的USB框架完成USB电源管理、端点分配管理、类私有管理函数、中断函数、USB描述符、USB枚举、USB读写传输等函数的编写;
[0008]所述检测输出模块,分为检测部分和输出部分,检测部分主要是对DUT芯片是否正确放置进行检测,输出部分,主要提供多级编程电压VPP,方便适用于不同芯片的烧录;
[0009]所述UI显示报警和按键处理模块包括有UI显示报警和按键处理模块两个部分,其中主要是ARM读取各个芯片模块的状态信息将烧录执行的状态通过USB发送给PC机,PC可以读取该结果,来实时给客户提醒目前烧录的基本信息;
[0010]所述固件升级模块,用于新的芯片不断推出,需要有预留代码段来适用于各种芯片时序的升级操作;[0011 ]存储模块是存放用户hex的模块,必须使用存储芯片来存储用户的hex代码,存储模块有两个部分组成,即索引表和数据区,索引表是用来存放芯片的基本信息的区域,如芯片型号、数据大小、存放位置和其他信息;数据区用来存放用户要脱机烧录的HEX数据。
[0012]PC控制软件模块负责烧录控制,主要功能描述为(I)烧录配置命令的下发:将烧录项及配置参数组成消息帧通过通信接口通信下发给底层单板软件;(2)芯片烧录信息的收集:接收底层单板软件上报的芯片烧录状态消息帧,并解析得到芯片产生的烧录状态信息;
(3)烧录程序修正或更新,直接控制单板擦除或烧录代码,对源码与读出的代码进行比较等;(4)烧录模式执行,根据用户不同需要可选择在线烧录或脱机烧录等。
[0013]所述检测输出模块中,芯片的检测部分也叫OS(0PEN&SH0RT检测)分为开路检测和短路检测,开路检测是断开GND口,将DUT的vpp拉到低端,连接DUT的1口,检测DUT的1口,若是高电平,表示DUT的引脚已经连接上,若是低电平,则表示DUT的引脚断路;短路检测是断开VDD的引脚,将1和GND与arm的1 口连接,检测dut的1电平,若是高电平(ARM内部有上拉电阻),表示引脚连接正常,若是低点平,则表示有引脚短路。通过继电器切换可以定位到DUT的任意一个管脚。
[0014]所述存储模块中,采用NORFLASH存储用户hex可大大提高写入速度,加快存储。
[0015]本发明的实现方法包括步骤如下:
[0016]101、烧录器终端上电,进行初始化;
[0017]初始化系统时钟、1端口、USB模块、存储模块、看门狗和LCD等模块初始化,接着烧录器配置内部寄存器数据,自检外设模块,完成自检后蜂鸣器警示以提示用户启动完成。
[0018]102、烧录器设备完成启动后,顺序建立接收上层协同控制软件下发及处理的进程;
[0019]S卩USB接收命令任务进程;上报烧录结果状态消息进程即USB上报消息任务进程;烧录器的界面显示和预警进程即UI显示任务;USB中断处理,对USB端口数据进行接收和发送处理;定时器中断处理,用于管理每片定时模块,超时后需要执行处理的信息功能,即中断处理进程;接受PC的通讯信息,压入队列消息系统,另外负责提取入队列的消息,取出消息,分析通讯的事例来执行各个用户的命令请求进程即(擦出、查空、组合等)命令消息进程;对ARM内部的定时模块,进行统一管理,对时间进行分配,记录烧录时间等一些有意义的状态信息即时间管理进程。
[0020]103、烧录器初始化完成后开始检测在线模式还是离线模式;如果烧录器系统检测至IjUSB接口已接入PC机,开始执行104、105等步骤,否则执行106等步骤;
[0021]104、打开PC控制软件,根据设定的USB通信接口建立与PC机的链接,USB连接成功后整个系统等待PC机发送命令进行处理工作,并向PC机发送初始化完成指令;
[0022]105、上位机控制软件和烧录器设备连接完成后,上位机控制软件向烧录器设备发送烧录程序是否载入查询命令,烧录器接收到到烧录程序是否载入查寻命令后,调用USB接收命令任务进程进行处理,读取存储空间内部数据,并判断有无下载烧录程序,通过USB上报消息任务进程反馈判断结果和存在的数据信息给上位机控制软件,接着判断是否在线烧录芯片,如果不烧录芯片结束本次烧录,否则执行步骤108;
[0023]106、以上103步骤烧录器进入离线模式,烧录器开始判断存储模块是否有下载烧录程序或者用户是否需要更新程序、烧录时序及烧录芯片关键识别信息,如果没有用可用烧录数据,返回103步骤开始执行,否则执行以下步骤。
[0024]107、通过烧录器按键选择需要的烧录程序,判断是否进行芯片烧录工作,如果不需要烧录芯片,烧录系统接回结束本次烧录动作,否则执行以下步骤。
[0025]108、烧录器检测被烧录的芯片是否在线,通过判断芯片管脚是否与烧录器主控芯片ARM的GP1端口连接正常,OS开短路检测可以有效的防止芯片烧录不良等问题。如果芯片没有接触好或者未放入,烧录器调用UI显示进程显示信息给用户,并驱动蜂鸣器提示用户,然后系统继续检测芯片是否放置好。
[0026]109、芯片正确放置后,烧录器系统向芯片发送读取芯片有效信息的指令,芯片将自身信息传送给烧录器系统,烧录器系统根据芯片反馈的信息和存储模块内存放的信息进行查询,然后从存储模块中调出有效的烧录数据、烧录时序及关键代码选项等有效数据,确定完成烧录时序后,烧录器系统按照确定的烧录时序,将客户程序写入芯片。
[0027]110、芯片烧录完成后,烧录器协调开始接受芯片烧录完成的反馈信息,并更具此信息结束烧录动作,开始发送读取芯片烧录数据命令,读取烧录数据,将读取到的烧录数据和存储模块中的烧录数据进行对比,确认芯片烧录正确的程序,如果数据对比不一致,烧录系统调用UI显示模块,显示用户不一致的数据,并蜂鸣器提示;如果对比数据一致,烧录系统调用UI显示模块,显示烧录成功并显示芯片关键信息。
[0028]111、至此一次芯片烧录过程完成,如果不更换烧录芯片类型,烧录系统继续执行108、109、110等步骤,如果更换芯片类型,烧录系统从103步骤开始向下执行。
[0029]烧录是每次对芯片是否烧录循环查询工作状态的一个过程,不断的查询和状态判断,命令的解析,目的是把在线烧录、离线烧录、在线检测、数据对比、用户提示、固件更新及PC机特点结合,实现智能化的烧录检测。
[0030]本发明使用内含USB接口的大容量ARM处理器,利用软硬
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1