查看: 7541|回复: 0

[分享] i.MX RT1064-EVK开发板中基于LPC4322JET100的Freelink调试电路简介

[复制链接]
  • TA的每日心情
    开心
    2025-7-11 08:53
  • 签到天数: 301 天

    连续签到: 2 天

    [LV.8]以坛为家I

    3868

    主题

    7472

    帖子

    0

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    39227
    最后登录
    2025-7-18
    发表于 2020-3-3 11:31:04 | 显示全部楼层 |阅读模式
    i.MX RT1064-EVK开发板中基于LPC4322JET100的Freelink调试电路简介




    正如“恩智浦i.MX RT1064-EVK开发板入门指南”一文中0所述,RT1064-EVK开发板上有一个基于LPC4322的新的调试接口。
    1.png
    基于LPC4322JET100的调试接口

    Freelink(又名OpenSDA、DAP-link或DAPlink)


    在恩智浦的数据手册中将其命名为“Freelink Interface”,尽管开发板手册仍然使用“OpenSDA”或“DAP-link”(或DAPlink)命名。
    2.png
    Freelink接口(来源:恩智浦i.MX RT1064原理图)




    LPC4322JET100是一款带有ARM Cortex-M0协处理器的ARM Cortex-M4处理器,运行速度高达204 MHz,带512 KB闪存和104 KB SRAM。与使用K20DX128的原始OpenSDA(没有FPU的M4,以50 MHz运行)相比,这是一个功能更强大的处理器。




    以下是最重要的调试电路组件和跳线的概述:
    3.png
    MIMXRT1064-EVK上的调试电路




    隔离跳线帽


    要隔离板载电路并使用外部调试探头,必须移除跳线J47和J48。要完全断开调试电路,可以移除J49、J50和J44。 J45和J46用于调试接口和目标微控制器之间的UART连接。
    4.png
    隔离跳线帽




    复位


    使用跳线帽J43,可以配置SW9直接将复位信号发送到目标MCU或调试电路:
    5.png
    复位电路




    DAPLink固件


    默认情况下,板载调试电路显示为DAPLink CMSIS-DAP设备:
    6.png
    DAPLink CMSIS-DAP




    该开发板附带以下“DAPLink”固件:
    1. # DAPLink Firmware - see http://mbed.com/daplink
    2. Unique ID: 02320000070a5e4100000000000000000000000097969905
    3. HIC ID: 97969905
    4. Auto Reset: 0
    5. Automation allowed: 0
    6. Overflow detection: 0
    7. Daplink Mode: Interface
    8. Interface Version: 0246
    9. Bootloader Version: 0244
    10. Git SHA: 475c6729c42c688ae33af3af4ea4dbbfe1c35351
    11. Local Mods: 1
    12. USB Interfaces: MSD, CDC, HID, WebUSB
    13. Bootloader CRC: 0xe493996b
    14. Interface CRC: 0x3eb53105
    15. Remount count: 0
    复制代码

    列出的USB MSD用于拖放编程:我可以将(.bin)文件复制到MSD设备以对MCU进行编程。对我来说功能没有实际用途:虽然这可以用作一种引导加载程序,但生产板上不会有OpenSDA电路。另外,使用调试器下载比使用那个慢速MSD接口要快得多,所以对我来说这个MSD加载器没有任何意义。





    更为相关的是USB CDC接口,因为它提供了“UART转USB”连接。绝对是用作调试协议的USB HID接口(因此它不是HID键盘或鼠标,调试器使用HID协议)。


    一个有趣的是WebUSB(http://en.wikipedia.org/wiki/WebUSB)。这似乎是一种通过USB安全地从网页连接到设备的方法。我找到了这个http://devanlai.github.io/webdfu/mbed-download/的示例网页,似乎用于使用带有mbed环境的电路板。听起来像是一个很好的,或者从基于Web的开发工具(无论如何对真正的开发没有意义)编程板的方法。目前Windows设备管理器中缺少这个驱动程序:
    7.png
    设备管理器中的WebUSB




    OpenSDA固件文件


    许多Freescale / NXP板上的OpenSDA的优点是我可以在调试电路中加载不同的固件:


    ●    默认CMSIS-DAP固件(DAP-Link)


    ●    P&E的固件(作为P&E Multilink)


    ●    SEGGER的固件(作为SEGGER J-Link)


    每个固件都有自己的优势,我通常根据需要(性能、功能)切换固件。使用MCUXpresso IDE可以轻松使用任何不同的调试探针固件。




    恩智浦在http://www.nxp.com/opensda上托管引导加载程序和固件文件。对于基于Kinetis K20DX128的其他DAPLink / OpenSDA,P&E(http://www.pemicro.com/opensda/)和SEGGER(http://www.segger.com/downloads ... rdSpecificFirmwares)提供固件文件,在调试电路上模拟P&E Multilink或SEGGER J-Link。




    目前没有可用于DAPLink的新固件,但在将来可能会有,以下这些是加载新固件的步骤:



    1.  开发板上电,按住SW09,然后用USB电缆连接到调试端口:
    8.png
    SW09



    2.    开发板会在电脑端枚举为一个MAINTENANCE设备:
    9.png
    MAINTENANCE设备




    3.    将新固件文件复制到该设备。


    4.    重启开发板的电源,现在应该已经加载了新的固件。




    将DAPLink更改为LPC-Link2


    DAPLink很好,但与LPC-Link2相比速度慢。但最重要的是,DAPLink不支持SWO(单线输出)和SWO跟踪。




    好消息是,通过在J42上跳线,MCUXpresso IDE将软件加载LPC4322上的LPC-Link2固件,然后它将成为LPC-Link2:


    ◾    使用外部5V电源为电路板供电



    ◾    在J42上安装跳线帽
    10.png
    跳线到J42以软件加载LPC-Link2固件



    有了这个,LPC4322运行LPC-Link2固件,我可以享受SWO和3-4倍的调试:-):
    11.png
    恩智浦i.MX RT1064调试电路为LPC-Link2




    总结



    我认为基于LPC4322的新调试电路与“传统”K20 OpenSDA相比是一大进步,更适合更高性能的处理器。最大的好处是我可以加载LPC-Link2固件。 DAPLink(ARM mbed)固件很不错,但LPC-Link2固件功能更强大,非常适合与基于Eclipse的MCUXpresso IDE结合使用。





    作者:阿哲                   文章出处:点击

    qiandao qiandao
    回复

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2025-7-19 04:53 , Processed in 0.087257 second(s), 20 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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