查看: 3013|回复: 0

[分享] LPC15xx 进入ISP模式的接口及顺序(对用户手册补充说明)

[复制链接]

该用户从未签到

656

主题

6312

帖子

0

超级版主

Rank: 8Rank: 8

积分
20028
最后登录
2024-4-26
发表于 2020-7-31 15:28:45 | 显示全部楼层 |阅读模式
本帖最后由 小恩GG 于 2020-8-3 16:56 编辑

在LPC15xx的用户手册中,Table 89 ISP mode 描述了四种ISP模式,其中在No ISP 模式下,如果flash里没有程序或者程序被破坏了不能运行,重启芯片则通过USB进入ISP模式。但对于没有片上USB的LP15xx产品,此处没有说明。通过与开发部门确认,此处有默认的流程,本文重点对这部分进行补充说明,并建议下一版用户手册添加此部分内容。

本文主要讲述两部分内容,
第一部分概括总结LPC15xx系列进入ISP模式的几种接口和控制方法。
第二部分重点介绍对于没有片上USB接口的LPC15xx芯片通过哪个接口进入ISP模式。

一,LPC15xx系列进入ISP模式的几种接口及控制方法
LPC15xx 系列芯片支持3中接口进入ISP模式,USART0,CAN 和 USB. 由芯片上两个引脚ISP_0和ISP_1来控制是否进入ISP模式以及通过哪个接口进入。参考如下“ISP modes” 表格,有四种情况。当启动芯片时(上电或者复位重启),
1)如果ISP_0和ISP_1都是高电平,直接运行flash程序。但是,如果flash里没有任何程序或者有被破坏不可以运行的程序,就通过USB接口进入ISP模式。
2)如果ISP_0是高电平,ISP_1是低电平,通过CAN接口进入ISP模式。
3)如果ISP_0是低电平,ISP_1是高电平,通过USB接口进入ISP模式。
4)如果ISP_0是低电平,ISP_1是高电平,通过USART0进入ISP模式。
1.png
不同的封装,ISP_0和ISP_1对应不同的引脚,请参考如下表格:
2.png

二, LPC15xx没有USB接口系列芯片进入ISP模式
由第一部分可知,当ISP_0和ISP_1都是高时,如果flash里没有程序或者程序被破坏了不能运行,重启芯片则通过USB进入ISP模式,但是从LPC15xx数据手册中发现,部分型号并没有USB,如下图:
3.png

所有LPC15xx系列芯片选择ISP接口流程如下:
(这个是芯片出厂前已经固化好的,用户不可更改。)
  
If ( ISP1 pin (VBUS) is high )
  
{
  
    check if it's USB enabled in the part  configuration (factory setting) or not, if USB is enabled, go to USB ISP mode, otherwise, go to  UART ISP mode
  
}
  
else if ( ISP0 pin is low )
  
  
{
  
    go to UART ISP mode.
  
}
  
else
  
{
  
    it checks if CAN is present or not, if  CAN is enabled in the part configuration (factory setting), it goes to CAN  ISP mode, otherwise, it goes to UART ISP mode.
  
}
  

注意以上流程中高亮部分,当ISP1为高时,对于支持USB接口的LPC15xx系列,进入USB_ISP模式;如果所用的LPC15xx不支持USB,则通过UART进入ISP模式。

回复

使用道具 举报

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

本版积分规则

关闭

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

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

GMT+8, 2024-4-26 17:09 , Processed in 0.109734 second(s), 20 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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