NXP i.MX RT1064-EVK开发板入门
我对i.MX RT处理器系列很感兴趣,因为它是机器学习研究项目中有吸引力的解决方案。机器学习需要大量的计算能力,而且由于i.MX RT ARM Cortex-M7的运行频率高达600 MHz,并且有大量的RAM和FLASH内存,因此这似乎非常合适。到目前为止,RT1064是RT系列中的高端处理器。让我感兴趣的是它有4MB的片上FLASH存储器(其他的型号都是无闪存的)。
i.MX RT概述
在器件中带有存储器绝对是一个优势:没有片上闪存的电路板启动都比较具有挑战性。在器件中具有FLASH存储器,具有更容易启动序列的优点。只有BGA对于定制电路板本身就是一个挑战,或者可能需要在外部生产电路板。
内部4 MByte FLASH与NXP Kinetis或LPC上的内部FLASH不同:它看起来像内部将4M Winbond W25Q32JV内存芯片绑定到QSPI,因此内部和外部FLASH内存确实是QSPI:
1. 内部4 MByte WinBond W25Q32JV串行FLASH:基地址:0x7000'0000,大小:0x40'0000
2. 外部8 MByte集成硅解决方案ISSI IS25WP064AJBLE串行闪存:基地址:0x6000'0000,大小:0x80'0000
拆箱
是时候拆箱了!开发板在一个结实的包装盒中:
恩智浦i.MX RT1064包装盒
包装盒包括包装清单、USB线、开发板和相机模块:
i.MX RT1064包装
包装内容与以前的RT主板相同,但新增了一个相机模块,是一个不错的附加组件:
相机模块
我不确定为什么包装将其列为'NON CAD PART'?
该开发板看起来与前期的RT1020和RT1052开发板类似:
它具有32 MB外部SDRAM、外部8 MByte QSPI闪存和64 MB Hyperte闪存(需要使用一些电阻焊接才能使用它)。
i.MX RT1064-EVK主板顶视图
i.MX RT1064-EVK主板底视图
一个明显的区别是板载调试接口:而不是Kinetis K20DX128,它采用了恩智浦LPC4322JET100微控制器:
LPC4322JET100
该电路看起来非常类似于使用恩智浦LPC4370FET100的LPC-Link2。与K20DX128相比,LPC43xx具有更高的处理能力。
没有“Getting Started”卡片。相反,包装列表指向http://nxp.com/MIMXRT1064-EVK/startnow,这实际上是集成了入门开发板的网页。
演示程序
开发板默认的启动模式是从内部FLASH启动:
开发板默认引导配置
该开发板自带了一个'blinky'演示程序:
BlinkyLED
板载调试接口枚举串口:
mbed串口
复位后,它会在该端口上写入一条消息(115200波特率):
演示程序消息
调试接口枚举为USB MSD(大容量存储)设备:
MSD调试接口
软件
我使用NXP MCUXpresso IDE 10.3.0和MCUXpresso SDK 2.4.0作为IDE开发环境:
RT1064 SDK
将SDK加载到MCUXpresso IDE中:
已安装的SDK
Blinky工程
工程创建和调试开箱即用:
导入的SDK示例:
导入SDK示例
选定的器件/开发板:
开发板选择
提供项目名称并选择示例项目:
led_blinky
在高级设置中,我将每个标签保留为默认值:
高级设置
点击完成。然后构建:
构建项目
然后进行调试:
调试项目
它会自动检测连接的开发板:
检测到仿真器
调试
调试
还有一件事(重要!):在LinkServer调试器启动配置中确保以下选项存在:
LinkServer启动配置中的-no-packet选项
这是因为必须以非标准方式处理i.MX RT上的子字访问。没有设置此选项将导致失败或奇怪的调试行为。
外部调试仿真器
我不仅限于板载调试接口,我也可以使用外部调试仿真器(无论如何这是我的偏好)。要使用板载JTAG插头,我必须去掉J48和J47上的跳线:
J48和J47
这样我就可以使用LPC-Link2、Segger J-Link或P&E Multilink:
使用SEGGER J-Link调试i.MX RT1064
使用恩智浦LPC-Link2调试i.MX RT1064
使用P&E Multilink Universal调试i.MX RT1064
总结
除了RT1020和RT1052之外,RT1064是我现在手上的第三台i.MX RT器件。我真正喜欢RT1064的是它有内部闪存,但BGA封装可能对我的设计提出了挑战,因为我从未这样做过。也许我只需要尝试一下:196引脚肯定会是一个挑战。
接下来我想连接相机以及探索开发板的其他功能。
作者:阿哲
|