USB/UART/SPI/I2C-ISP模式更新镜像文件

描述

  应用背景LPC55(S)XX和即将发布的MCX系列产品支持在ISP模式下载更新镜像文件(ELF, HEX, BIN or SREC/S19),包括USB,UART,SPI,I2C四种连接方式。之前官方没有支持SPI-ISP、I2C-ISP的上位机软件,所以如果客户想在ISP模式下通过I2C,SPI下载镜像是比较困难的。现在恩智浦推出的MCUXpresso SecureProvisioning Tool(简称SEC或SPT)这款图像化界面工具,可以轻松实现这四种ISP方式的连接和下载。本文基于SEC,以LPCXpresso55S69为例,介绍USB-ISP, UART-ISP,SPI-ISP 以及I2C-ISP四种模式下载镜像的方法。

 

  准备条件

 

 

软件:

 

 

MCUXpressoSecure Provisioning Tool -MCUXpresso Secure Provisioning Tool是一款图像化用户界面工具,主要用于安全配置。

 

当MCU处于ISP模式时,可以借用此工具连接通信,支持ISP的所有模式接口,LPC55(s)xx系列包含USB, UART,SPI,I2C四种ISP下载模式,本文基于此功能介绍。

 

 

硬件:

 

 

 

LPCXpresso55S69-evk开发板(芯片是1B版本)

 

  操作步骤

使用SEC 工具连接前,需要将MCU先进入ISP 模式,上电时,ROM根据CMPA位(DEFAULT_ISP_MODE)、ISP引脚状态确定是否进入ISP,以及何种ISP模式。如下图所示:恩智浦

恩智浦此处,保留EFAULT_ISP_MODE 初始值000,通过拉低ISP pin PIO0_5进入ISP模式,四种接口模式中,首先被接入识别的接口会作为ISP连接模式。

 

在LPCXpresso55S69开发板上,连接ISP接口线(USBUARTSPII2C),一直按住ISP键,上电或按复位后,进入ISP模式。

 

一. USB HID ISP模式

 

 

1. LPC55(s)xx 系列默认USB-ISP端口是HS-USB, LPCxpresso55s69-evk的P9端口,使用USB线连接开发板P9和PC。

 

 

2.按住ISP键,复位开发板,进入ISP-USB模式。

 

 

3.配置MCUXpresso Secure Provisioning Tool,选择USB连接方式,进行连接测试。

 

 

 3.1 单击“File->New Workspace”,打开创建新工作空间选项,选择自己所使用的处理器型号。

恩智浦

恩智浦

恩智浦3.2 在连接选项中,选择USB连接方式,单击测试连接按钮,若结果显示 “绿色ok”,则连接成功。

 

恩智浦

4. 在”Source executable image”中选择源文件,此工具可以构建明文镜像、签名镜像、加密镜像文件,可以根据自己需求配置,此处便于讲解,使用单纯的镜像文件,例如:“lpcxpresso55s69_gpio_led_output.hex”,此文件是SDK下例程,在MCUXpresso IDE中编译生成的二进制文件。

 

 

点击“Build image”按钮,确保编译成功。

 

 

恩智浦

恩智浦5.下载更新镜像文件。

 

选择“写入图片”,在“Image path”中选择上一步骤生成的镜像文件,点击“写入图像”按钮。

 

 

恩智浦

下载成功后,显示如下图:

 

恩智浦

二. UART ISP模式

 

 

1. LPC55(s)xx 系列使用UART0 作为UART-ISP接口, 可以使用USB线连接LPCxpresso55s69-evk的P6和PC机,也可以使用USB转串口连接UART0的TX/RX和PC机。

 

2.进入ISP模式,参考第一部分。

 

3.配置MCUXpresso Secure Provisioning Tool,参考3.1,选择UART连接方式,进行连接测试。

 

 

恩智浦步骤4和步骤5同USBHID ISP模式.

 

三. SPI ISP模式

 

 

1.LPC55(s)2x/6x目前包括0A和1B两个版本,可以从芯片mask中查看。0A版本支持SPI3和HS_SPI,1B版本只支持HS_SPI,本文使用1B版本。

 

 

SPI、I2C都使用的是LIBUSB接口,LPC-LINK2和MCU-LINKpro支持此功能接口,所以只要有LPC-LINK2或者MCU-LINKpro,就可以实现SPI-ISP和SEC工具连接。特别提示:LPC-link2和MCU-LINK pro必须更新为CMSIS-DAP调试接口,J-link不支持此功能。

 

 

在LPCxpresso55s69-evk开发板中,默认将SPI3连接到了LPC-LINK2,并没有连接HS_SPI,所以此处,需要外部接线连接,将HS_SPI的SCK, MOSI,MISO,SSEL1分别接到LPC-link2对应的位置,具体可以参考lpc55xx手册和开发板原理图。也可以根据下图连接。

 

 

开发板接线如下图所示:

 

 

恩智浦

2. USB数据线连接P6端口。

 

 

3. 进入ISP模式,参考第一部分。

 

 

4. 配置MCUXpressoSecure Provisioning Tool,参考USB HID ISP模式,选择SPI连接方式,进行连接测试。

 

 

恩智浦

步骤5和步骤6同USB HID ISP模式.

 

 

四. I2C ISP模式

 

 

I2C-ISP 模式同SPI一样,借助LIBUSB接口,即开发板上的LPC-link2.

 

 

特别提示:LPC-link2和MCU-LINKpro必须更新为CMSIS-DAP调试接口,J-link不支持此功能。

 

 

1. USB数据线连接P6端口。

 

 

2.LPC55(s)6x/2x使用的是I2C1,LPCxpresso55s69-evk开发板已经将I2C1和LPC-LINK2接好,无需另外接线。

 

 

3. 进入ISP模式,参考第一部分。

 

 

4. 配置MCUXpressoSecure Provisioning Tool,参考USB HID ISP模式,选择I2C连接方式,进行连接测试。

 

 

恩智浦

步骤5和步骤6同第一部分。

 

  归纳总结

 

1.ISP所有的模式接口(USB/UART/SPI/I2C)都可以借助MCUXpresso Secure Provisioning Tool工作。

 

2.LPC-link2/MCU-LINKpro必须配置成CMSIS-DAP。

 

3.检查芯片版本,确保连接是正确的SPI端口号。

 

4.确保USB数据线接口连接正确和测试连接前必须进入ISP模式

 

本文作者:杨聪哲

 

   

END

   

更多恩智浦AI-IoT市场和产品信息,邀您同时关注“NXP客栈”微信公众号

恩智浦      

NXP客栈


恩智浦致力于打造安全的连接和基础设施解决方案,为智慧生活保驾护航。

       

长按二维码,关注我们

恩智浦MCU加油站


这是由恩智浦官方运营的公众号,着重为您推荐恩智浦MCU的产品信息、开发技巧、教程文档、培训课程等内容。

恩智浦  

长按二维码,关注我们

 


原文标题:USB/UART/SPI/I2C-ISP模式更新镜像文件

文章出处:【微信公众号:恩智浦MCU加油站】欢迎添加关注!文章转载请注明出处。


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分