当前位置:首页 > 通信技术 > 通信技术
[导读]本文以对Phlilips LPC213x系列MCU进行软件升级为例,研究如何利用ISP技术与Internet结合,解决从串口进行软件升级的问题。

    在系统编程技术(In-System Programming,简称ISP技术)是Lattice半导体公司首先提出的一种使产品在设计、制造过程中的每个环节,甚至在卖给最终用户以后,具有对其器件、电路板或整个电子系统的逻辑和功能随时进行组态或重组能力的最新技术。ISP技术消除了传统技术的某些限制和连接弊病,有利于在板设计、制造与编程。ISP硬件灵活且易于软件修改,便于设计开发。由于ISP器件可以像任何其他器件一样,在印刷电路板PCB上处理,因此编程ISP器件不需要专门编程器和较复杂的流程。在实际应用中,有许多产品需要大批量的生产及现场维护升级,利用嵌入系统开发的ISP应用程序可以方便用户进行批量生产和系统升级。本文以对Phlilips LPC213x系列MCU进行软件升级为例,研究如何利用ISP技术与Internet结合,解决从串口进行软件升级的问题。


1 LPC213x Flash Bootloader介绍
    LPC213x Bootloader(启动装载程序)控制复位后的初始化操作,并提供Flash ISP编程接口。它驻留在Flash的上8KB,只能读不能写。由于Philips公司并没有提供Boot ROM内部是如何实现ISP功能的,因此必须根据Philips公司提供的流程和协议来编写上位机程序。

1.1 通信协议
   
所有的ISP命令都由上位机通过串口以单个ASCII字符串的形式发送。字符串应当以回车(CR)和/或换行(LF)控制字符作为结束,多余的将被忽略。所有ISP的响应都以“<CR><LF>”结束的字符串形式发送。数据以UU编码(将3字节的二进制数据转换成4字节可打印的ASCII字符集)的格式发送和接收。发送器发送20个UU编码行之后发进校验和,任何UU编码行的长度都不应超过61字节。接收器将该校验和与接收数据的校验和相比较,若匹配,则接收器响应“0K<CR><LF>”,并等待下一次发送;若不匹配,则接收器响应“RESEND<CR><LF>”,发送器应当将字节重新发送。

1.2 ISP命令
    ISP命令处理程序所接受的常用命令如表1所列。

    每个命令有具体的状态代码,只有当接收到的命令执行完毕后,处理程序才通过串口发送CMD_SUCCESS;这时上位机才能发送新的ISP命令,但“设置波特率”、“写RAM”、“读存储器”和“运行”命令除外。上位机就是通过串口发送这些相关的ISP命令以及程序的UU编码,完成程序的下载。


2 上位机软件实现
2.1 应用程序的网上下载
   
要实现软件自动升级,首先必须将MCU应用程序从网上下载到PC机,然后再利用ISP通过串口把程序下载到MCU中。程序的下载可以采用HTTP方式,也可以采用FTP方式。在此是利用:MFC提供的FTP应用程序接口实现程序下载,并把程序保存在指定位置。为避免每次升级程序时,都要从网上下载,引入了计数器计算下载次数;只在第~次升级时,才从网上下载保存。

2.2 ISP的实现
   
LPC213x要调用Boot ROM中的ISP应用程序接口,必须进入ISP模式。这要求在系统复位时,PO.14引脚为低电平。实际应用中可以采用两种方法使系统进入ISP模式:一是通过开关控制P0.14引脚为低电平;二是通过串口的控制引脚控制晶体管的导通和截止,从而设置PO.14为低电平。第二种方法具有通用性,有些MCU进入ISP模式要求的可能是引脚的不同脉冲序列,即必须满足一定的脉冲时序要求(如MSP430系列的MCU)。在此采用的是第二种方法:把串口的DTR引脚连接到P0.14,串口的RTS引脚连接到LPC213x的复位引脚;通过在系统运行时控制RTS引脚发出复位脉冲,DTR的引脚设置为低电平,控制晶体管的导通和截止,使系统强制进入ISP模式;进入ISP模式后,根据上位机传来的ISP命令,调用Boot ROM固件中相应的子程序自动完成必要的操作。图l描述了LPC2132从复位进入ISP模式的流程。

    具体上位机要实现该程序下载,须完成如下工作:
    ①将从网上下载的Intel HEX格式的应用程序打开,从文件中解析出要下载的程序文件,并把它转换为二进制格式。
    ②向下位机发送同步验证字符“?”(0x3F),供自动确定波特率,并等待响应。自动波特率程序根据自身频率测量接收到的同步字符的位时间,并对串口波特率发生器进行编程;它还向下位机发送一个ASCII字符串(Synchro-nized<CR><LF>)。作为响应,下位机应发送接收到的ASCII字符串(Synchrtmized<CR><LF>);上位机通过观察接收到的字符来验证是否同步。如果同步验证没有通过,则上位机重新发送同步验证字符“?”,再一次进行同步验证。通过验证后,向下位机发送“OK<CR><LF>”;下位机通过发送正在运行部分的晶振频率(单位为kHz)作为响应;在接收到晶振频率后再向下位机发送“OK<CR><LF>”,最终完成同步验证。
    ③向下位机发送读器件ID命令“J<CR><LF>”,接收响应信息,并提取出芯片的ID编号;根据芯片的ID,设置相关数据(Flash和RAM大小)。
    ④向下位机发送擦除命令将Flash ROM分段擦除。
    ⑤向下位机发送写命令“W<起始地址><字节数><CR><LF>”。
    ⑥对转换后的二进制程序进行UU编码,并计算校验和,每发送20行发送一次校验和;然后向下位机发送准备写操作扇区的命令“P<起始扇区><结束扇区><CR><LF>”和“C<Flash地址><RAM地址><CR><LF>”命令,下位机接收到命令后进行程序的写入。
    ⑦关闭串口,释放系统资源,以便进行下一次系统升级。


结语
  
通过本设计构成的阿络在线下载系统,已在人民币防伪鉴别仪的生产和售后维护中得到了实际应用。只需一台能够上网的电脑和一条下载线,就能对目标板里单片机的程序进行修改,大大方便了工程技术人员,提高了工作效率,降低了成本。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

成都2022年10月19日 /美通社/ -- 近期,平安养老险积极筹备个人养老金的产品设计和系统开发工作,发展多样化的养老金融产品,推动商业养老保险、个人养老金、专属商业养老保险等产品供给。 搭养老政策东风 ...

关键字: 温度 BSP 东风 大众

广东佛山2022年10月19日 /美通社/ -- 空间是人居生活的基础单元,承载着生存与活动的最基本功能。而对于理想空间的解构意义却在物理性容器之外,体现出人们对于空间和生活深层关系的思考,同时也塑造着人与空间的新型连接...

关键字: 温度 BSP 智能化 进程

上海2022年10月19日 /美通社/ -- 10月17日晚间,安集科技披露业绩预告。今年前三季度,公司预计实现营业收入7.54亿元至8.33亿元,同比增长60.24%至77.03%;归母净利润预计为1.73亿...

关键字: 电子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市经济和信息化局发布2022年度第一批北京市市级企业技术中心创建名单的通知,诺诚健华正式获得"北京市企业技术中心"认定。 北京市企业技...

关键字: BSP ARMA COM 代码

北京2022年10月18日 /美通社/ -- 10月14日,国际数据公司(IDC)发布《2022Q2中国软件定义存储及超融合市场研究报告》,报告显示:2022年上半年浪潮超融合销售额同比增长59.4%,近5倍于...

关键字: IDC BSP 数字化 数据中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都银行集团成立60周年的纪念日。趁着首都银行集团成立60周年与首都银行(中国)在华深耕经营12年的“大日子”,围绕作为外资金融机构对在华战略的构想和业...

关键字: 数字化 BSP 供应链 控制

东京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式会社(NIPPON EXPRESS HOLDINGS, INC.)旗下集团公司上海通运国际物流有限公司(Nipp...

关键字: 温控 精密仪器 半导体制造 BSP

广州2022年10月18日 /美通社/ -- 10月15日,第 132 届中国进出口商品交易会("广交会")于"云端"开幕。本届广交会上高新技术企业云集,展出的智能产品超过140,...

关键字: 中国智造 BSP 手机 CAN

要问机器人公司哪家强,波士顿动力绝对是其中的佼佼者。近来年该公司在机器人研发方面获得的一些成果令人印象深刻,比如其开发的机器人会后空翻,自主爬楼梯等。这不,波士顿动力又发布了其机器人组团跳男团舞的新视频,表演的机器人包括...

关键字: 机器人 BSP 工业机器人 现代汽车

南京2022年10月17日 /美通社/ -- 日前《2022第三届中国高端家电品牌G50峰会》于浙江宁波落幕,来自两百余名行业大咖、专家学者共同探讨了在形势依然严峻的当下,如何以科技创新、高端化转型等手段,帮助...

关键字: LINK AI BSP 智能家电

通信技术

120595 篇文章

关注

发布文章

编辑精选

技术子站

关闭