首页 > 评测 > L4+要一统中端MCU江湖?——NUCLEO-L4R5ZI评测

L4+要一统中端MCU江湖?——NUCLEO-L4R5ZI评测

L4+   MCU   NUCLEO-L4R5ZI   STM32   意法半导体   
  • 作者:SATURN
  • 来源:21ic
  • [导读]
  • L4+从表现上来看,比L4功耗更低,性能更强。但它并不是L4的附属品,而是一个全新独立的STM32产品线。内建增强的显示组件,更加迎合当前对于中端MCU市场的需求。这是ST下的一步好棋。

不过软件方面,似乎还没修改其中的文本内容,从图中可以看到说的是L496的,不过这不重要,重要的是咱们从点灯过度了GUI,装逼的水平又上了一个台阶,虽然装逼是要付出代价的!

image9.jpg

按键操作也换成了高大上的摇杆模式,向下推动摇杆,进入自动演示模式。不过还有个简单的做准备工作,准备一个TF卡,将演示用到的BMP图像文件复制到TF卡的根目录下,然后就开始了幻灯片的播放,截取一二演示画面如下

image10.jpg

image11.jpg

Go, 哥们,去MOUSER淘一块吧,关于Adafruit 1.8 TFT Shield的介绍,请参考本站评测文章《NUCLEO伴侣之Adafruit 1.8 TFT Shield》

STM32 L4+的主频达到了120MHz,相比较L4 80MHz主频提升了50%,CoreMark成绩为410分,基本赶上了STM32 F4的成绩,过去80MHz 主频的L4跑分为273分,性能提高了50%。耳听为虚,下面来见证CoreMark的实际运行效果。

使用ST的CubeMX来新建一个工程,首先是选择MCU类型,如下

image12.png

新版的CubeMX值得称道的地方,就是在软件里集成了产品的相关资料,如主要特性、模块框图及数据手册还有文档等资源,不必东东奔西走去找资源了。

image13.png

这里走了一段弯路,也许是经验作祟,理所当然的认为这块板子也可以使用STLINK/V2-1引出的时钟作为主控的时钟源!

实际情况是,这里没有使用STLINK引出的时钟源,如果想使用STLINK的时钟作为主控的时钟段,得改硬件设置,即使用SB来更改硬件配置,作罢!

image14.png

这才是配置时钟段的正确姿势!使用MSI,这个东西很好用,也很灵活!

接下来配置GPIO及LPUART,默认的USB串口连接到LPUART设备,注意引脚使用的是G7/G8。

接下来设置工程选项,这里将CoreMark配置成使用STACK来运行,所以相应的STACK要设置得大一点

image15.png

够用了就行,如果发现Hardfault错误,很可能就是STACK设置得不够!

接下来就是见证时刻,只是可惜,接下来的就是恶梦开始的时刻,CUBEMX给咱挖了个大坑!

image16.png

呃,这还是咱认识的CoreMark么?

通过DEBUG,发现系统的HCLK居然只有4MHz,估计是时钟配置错了。挖代码,发现初始化代码里面少写了一条配置语句,如下

image17.png

上图中红框内的语句是没有的,所以导致了时钟配置失败,太失败了!

修改后,DEBUG后发现HCLK已达正常值即120MHz,代码运行后的结果如下

image18.png

这是在KEIL中运行的结果,还算比较正常,如果想到达到或接近官方的410的水准,建议用IAR来优化并运行。

STM32L4x5中另一个特性是USB OTG,使用板载的CN14接口,可以方便的访问USB存储设备。准备一个U盘,一个USB OTG转换线,开始咱们的USB OTG之旅。

打开HAL库中的示例代码,如下

image19.png

不过略坑的是,这个测试代码是基于HSE时钟树的,而默认HSE是没有连接的,得改SB焊桥,这里直接就使用MSI时钟设置了,修改示例中的代码如下

image18.png

即将HSE相关的设置统统改成MSI设置,同时PLLSAI源也要改成MSI,然后就没问题了。

编译,下载,然后出现如下的画面

image21.jpg

这是上电后检测USB存储器的相关信息,包括存储容量,块大小,块数量等信息。出现这些信息也意味着USB枚举成功。

LCD界面一共包括三个菜单,文件读写操作,浏览磁盘及重新枚举,使用摇杆调整功能并选择相关操作。

  • 本文系21ic原创,未经许可禁止转载!

网友评论