天南地北客
发表于: 2016-11-16 11:59:57 | 显示全部楼层

P_20161112_210232.jpg

所需硬件

1.  STM32F746 Nucleo - 144 F746ZG开发板;

2.  Micro USB线缆。

内容简介

Nucleo - F746ZG开发板使用意法半导体公司的基于ARM Cortex M7内核的微控制器STM32F746ZG。 该开发板包含一个板载在线调试器(ICD),称为ST-LINK V2-1,用于对微控制器进行编程。 开发板上的ICD部分有自己的USB接口。 同一个ICD可以用于编程其他STM32F系列微控制器。 使用Micro USB线缆连接,我们就可以用PC软件对微控制器进行编程。 我们将使用传统的C语言来编程开发板,并使用IO端口设置打开/关闭LED。 我们将使用ICD的调试功能对代码进行烧写,并测试内部寄存器来检查我们写入的数据。 是的,这是ICD的一个优势,,你可以看到已经写在内部寄存器的数据。

要了解更多关于Nucleo开发板的信息,请查看以下链接:Nucleo - 144  F746ZG Development board user manual

该文档的中文版:Nucleo - 144 F746ZG开发板用户手册

NUCLEOmini.png

您需要下载TrueStudio 6.0 Lite。 对于编程/调试来说,lite版就可以了。 但是如果要使用ST-LINK的高级功能进行调试,需要购买专业版。TrueStudio的官方下载地址:TrueStudio 6.0(860MB)

参考文档

STM32F746ZGT6文档

上述文档的链接中,你可能需要参考以下文档,来帮助你更好地编写代码。

1. RM0385参考手册(18MB)

2. STM32F746xx数据表生产数据(3.2MB)

使用TrueStudio的分步过程:

1.  第一次启动Nucleo时,NUCLEO运行演示代码,LED以不同的速度闪烁,并且根据用户的开关次数LED闪烁的速度会发生变化。 因此,当您使用micro USB电缆将NUCLEO连接到PC时, 将开始执行该代码,并且会自动安装USB驱动程序。 如果没有看到任何LED闪烁,请检查电源LED指示灯是否为绿色。 这一点不需要担心。 但是如果想检查驱动程序是否正确安装,你需要去设备管理器检查STLINK虚拟串口。 您可以通过点击开始按钮并在搜索栏中输入device manager来进入设备管理器。 设备管理器如下图所示:

1.png

2. 现在打开Atollic TrueSTUDIO for ARM 6.0.0。 您可能会被要求升级到pro,但您可以在5秒后继续使用lite版本。

打开TrueSTUDIO后,它将如下所示。 我用蓝色标记了重要的按钮和位置:

2.png

3. 在菜单栏,单击文件,然后单击新建,并选择c项目。 我的工作区在D盘。 选择以下项,因为您需要这些设置才能在Nucleo上运行c代码。

3.png

4.  点击下一步后,现在您将看到硬件设置界面。 您需要选择适当的目标微控制器和评估板。 在我们的例子中,选择STM32F746ZG。

4.png

5.  点击下一步后,将显示软件设置界面。 该设置已经由软件自动完成了。 但这些是我在下面使用的设置:

5.png

6. 下一步是调试设置。 这里需要选择ST-LINK调试器。 并完成项目设置。

6.png

7.  你现在将看到打开的工程和main.c文件。 默认代码将作为默认模板存在于main.c中。

7.png

8.  我们来编写代码实现LD2指示灯闪烁。

要打开/关闭任何GPIO,需要进行以下配置:

1.  使能外设时钟。

2.  将GPIO设置为输出。

3.  将GPIO设置为推挽模式。

4.  根据应用程序的要求决定是否需要复位设置。

关于ST32F746ZG的GPIO的更多内容请参考RM0385参考手册的第195页。

代码如下:

8.png

9.  LED闪烁代码写完后。通过单击菜单中的重建按钮重建工程。

如果有错误,请再次检查代码。这里不应该有任何错误。您还可以单击控制台并查看构建过程。如果没有任何错误,请通过单击调试继续。

9.png

10.  点击调试。第一次你将会看到调试配置设置。查看所有调试配置是否正常。然后点击debug。

10.png

11.png

11.  点击击调试后,您应该在控制台上看到以下信息。这意味着STlink已成功连接。

12.PNG

否则如果没有检测到ST-LINK。你会得到这样的信息。

13.PNG

12.  调试视图的界面比较复杂。它有调试菜单,显示程序计数器的位置,您设置的内部寄存器,甚至显示您编写的代码的汇编语言。

在调试菜单中单击RUN将直接运行代码。否则,如果你想一步一步进行调试可以点击step into按钮或使用F5功能键。

有时你会在控制台中看到类似系统中断和代码不运行的信息。我试图重复这个错误,但它只出现了一次。我认为这应该是调试器还没有准备好。在这种情况下,重新启动调试器,它将正常工作。

14.png

13.  恭喜!

您终于掌握了ARM的基础知识。在您的主板上蓝色LED将会闪烁。如果断开连接,使用USB充电器给开发板供电,你的代码将会正常工作。 LED将会闪烁。

编程Nucleo-144 F746ZG开发板是很棒的事情。它成为所有开发板中我最喜欢的一个。 ARM Cortex M7是非常强大的处理器。 STM32F746ZG提供的功能足以创建您自己的视频游戏模拟器等应用。

我尝试这个微控制器的主要原因是因为它有专用的TFT驱动程序和相机驱动程序端口,这有助于高速处理。


非常感谢Atollic TrueSTUDIO这样一个了不起的工具。

非常感谢STMicroelectronics很棒的开发板。

祝一切顺利!!!


跳转到指定楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题 32 | 回复: 51



手机版|

GMT+8, 2024-4-17 01:29 , Processed in 0.147246 second(s), 8 queries , Gzip On, MemCache On. Powered by Discuz! X3.5

YiBoard一板网 © 2015-2022 地址:河北省石家庄市长安区高营大街 ( 冀ICP备18020117号 )

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