查看: 870|回复: 0

[原创] USB/UART/SPI/I2C-ISP模式使用

[复制链接]

该用户从未签到

656

主题

6312

帖子

0

超级版主

Rank: 8Rank: 8

积分
20165
最后登录
2024-5-7
发表于 2023-7-20 17:25:43 | 显示全部楼层 |阅读模式
本帖最后由 小恩GG 于 2023-7-24 16:06 编辑

USB/UART/SPI/I2C-ISP模式使用

一,应用背景
LPC55(S)XX和即将发布的MCX系列产品支持ISP模式下载更新镜像文件,包含USB,UART,SPI,I2C四种连接方式。之前官方没有推出支持SPI-ISP、I2C-ISP上位机软件支持,所以客户使用起来会有难度,现在恩智浦推出了MCUXpresso Secure Provisioning Tool(SEC)这款图像化界面工具,可以轻松实现这四种ISP方式的连接下载。本文基于SEC,主要介绍USB-ISP, UART-ISP, SPI-ISP 以及I2C-ISP的四种模式使用方法。

二,准备工作
软件:
MCUXpresso Secure Provisioning Tool是一款图像化用户界面工具,主要用于安全配置。
当MCU处于ISP模式时,可以借用此工具连接通信,支持ISP的所有模式接口,LPC55(s)xx系列包含USB, UART,SPI,I2C四种,本文基于此功能介绍。
硬件:
LPCXpresso55S69-evk开发板(芯片是1B版本)

三,操作步骤
使用SEC 工具连接前,需要将MCU先进入ISP 模式,上电时,ROM根据CMPA位(DEFAULT_ISP_MODE)、ISP引脚状态确定是否进入ISP,以及何种ISP模式。如下图所示:
图片1.png
图片2.png
此处,保留EFAULT_ISP_MODE 初始值000,通过拉低ISP pin PIO0_5进入ISP模式,四种接口模式中,首先被接入识别的接口会作为ISP连接模式。
在LPCXpresso55S69开发板上,连接ISP接口线(USB\UART\SPI\I2C),按住ISP键不松,上电或按下复位后,进入ISP模式。

3.1 USB HID ISP模式
1. LPC55(s)xx系列默认USB-ISP端口是HS-USB, LPCxpresso55s69-evk的P9端口,使用USB线连接开发板P9和PC。
2. 按住ISP键,复位开发板,进入ISP-USB模式。
3. 配置MCUXpressoSecure Provisioning Tool,选择USB连接方式,进行连接测试。

首先,单击“File->New Workspace”,打开创建新工作空间选项,选择自己所使用的处理器型号。
图片3.png
图片4.png
然后,单击“Target->Connection”,打开连接选项。
图片5.png
在连接选项中,选择USB连接方式,单击测试连接按钮,若结果显示 “绿色ok”,则连接成功。
图片6.png
4.在”Sourceexecutable image”中选择源文件,此工具可以构建明文镜像、签名镜像、加密镜像文件,可以根据自己需求配置,此处便于讲解,使用单纯的镜像文件,例如:“lpcxpresso55s69_gpio_led_output.hex”,此文件是SDK下例程,在MCUXpresso IDE中编译生成文件。
点击“Build image”按钮,确保编译成功。
图片7.png
图片8.png
5.下载更新镜像文件。

选择“写入图片”,在“Image path”中选择上一步骤生成的镜像文件,点击“写入图像”按钮。
图片9.png
下载成功后,显示如下图:
图片10.png

3.2 UART ISP模式
1. LPC55(s)xx系列使用UART0 作为UART-ISP接口, 可以使用USB线连接LPCxpresso55s69-evk的P6和PC机,也而可以使用USB转串口连接UART0的TX/RX和PC机。
2. 进入ISP模式,参考3.1.
3. 配置MCUXpressoSecure Provisioning Tool,参考3.1,选择UART连接方式,进行连接测试。
图片11.png
步骤4和步骤5同3.1.

3.3 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手册和开发板原理图。也可以根据下图连接。

开发板接线如下图所示:
图片13.jpg
2. USB数据线连接P6端口。
3. 进入ISP模式,参考3.1.
4. 配置MCUXpressoSecure Provisioning Tool,参考3.1,选择SPI连接方式,进行连接测试。
图片14.png
步骤5和步骤6同3.1.

3.4 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模式,参考3.1.
4. 配置MCUXpressoSecure Provisioning Tool,参考3.1,选择I2C连接方式,进行连接测试。
图片15.png
步骤5和步骤6同3.1.

四,总结
1.ISP所有的模式接口(USB/UART/SPI/I2C)都可以借助MCUXpresso Secure Provisioning Tool工作。
2.LPC-link2/MCU-LINKpro必须配置成CMSIS-DAP。
3.检查芯片版本,确保连接所正确的SPI端口号。
4.确保usb数据线接口连接正确和测试连接前必须进入ISP模式


回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2024-5-8 07:33 , Processed in 0.115974 second(s), 20 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表