moyanming2013 发表于 2017-4-24 22:02:27

【NUCLEO-L496ZG评测】ST-LINK驱动+STM32CubeMX+MDK-ARM开发环境搭建

本帖最后由 moyanming2013 于 2017-5-8 21:56 编辑

非常感谢STM32社区(https://www.stmcu.org.cn/)和STM32官网(http://www.stmcu.com.cn/)!1.    安装配置MDK-ARM集成开发环境(IDE)在MDK-ARM官网下载最新的试用版本MDK-ARM集成开发环境(IDE),下载完成后双击开始安装,如下图示:建议使用默认路径即可:填入所有的空缺,点击“Next”:顺利安装完成MDK-ARM IDE,可以看下相关的Release Notes:为了能够在MDK-ARM中调试开发本评估板,必须下载STM32L4 DFP并导入到MDK-ARM中才可以开始开发。DFP是Device Family Pack的缩写形式,DFP包括了对应MCU的下载算法、开发软件包等,由ST提供给ARM并以包的形式集成在MDK-ARM中。下载好DFP后,打开Keil uVision5,点击“package installer”图标打开后即可通过“File->Import”把DFP加载进去:上述我们就完成了MDK-ARM开发环境的搭建,已经准备好开发、调试的环境了。2.    安装ST LINK/V2-1驱动和升级ST LINK/V2-1固件。ST LINK驱动、ST LINK固件以及和开发板的关系:ST的开发板为了方便开发、减少成本基本都集成了ST原厂的调试器(国内盗版的JLINK都卖约60元,还不稳定),ST把集成的该调试器称为ST LINK。调试器是需要驱动的,而且调试器本身也是一个MCU,ST通常使用STM32F103CBT6作为调试器MCU。调试器MCU是通过连接到主MCU的专用调试接口实现调试主MCU的,并通过通信接口(比如串口、I2C或USB口)连接到电脑实现和电脑端IDE的通信,这样调试器MCU完成调试功能。本步骤的操做都是针对调试器MCU的配置,但只有配置好了调试器MCU才能更方便的调试主MCU。下载最新的ST LINK驱动。解压后双击“stlink_winusb_install.bat”即可安装ST LINK驱动和ST虚拟串口(VCP: Virtual COM Port),安装完成后如下图所示:下载STSW-LINK007固件,把开发板接入电脑。打开下载的“\stsw-link007\Windows\ST-LinkUpgrade.exe”程序,点击“Device Connect”按钮,此时会出现电脑端USB重新枚举开发板现象,此时开发板会自动复位一次,然后会显示开发板的ST LINK/V2-1固件和最新的固件版本,通过这个可以观察对比是否升级,如下图所示:我们看到开发板ST LINK/V2-1的固件版本低于最新的版本,点击“Yes”按钮,把ST LINK/V2-1升级到V2.J28.M16。稍等一会,固件升级完成后开发板会自动复位重启。说明:升级到最新的ST LINK/V2-1固件可以解决一些已知的调试时可能出现的bug、对新MCU调试的支持和提升调试性能等,建议每隔一段时间升级一次该固件。但ST LINK驱动只需要安装一次即可。3.    安装STM32CubeMXSTM32CubeMX是ST强烈推荐使用的工具,该工具可以配置芯片的每个GPIO功能、自动配置时钟、调试器接口选择,配置各外设功能、中断及优先级,添加和配置中间件(包括FatFS、USBDevice、USB Host等)和RTOS,生成各IDE下的工程文件,还可以评估电量消耗。熟悉了STM32CubeMX后,可以最快在1分钟内生成并开始开发一个工程。STM32CubeMX不是集成开发环境(IDE),它是个配置工具,可以节省非常多的、针对IDE的重复工作,以及生成中间代码。STM32CubeMX需要2部分:STM32CubeMX外壳程序和STM32各芯片开发包。首先下载并安装STM32CubeMX外壳程序。如果未安装JRE,则提示安装JRE,如下图示:点击“确定”后,自动打开一个网页,提示下载,点击下载即可开始下载JRE如下图示:下载完成后安装即可,如下图示:安装完成JRE后,再次打开STM32CubeMX安装程序,即可开始安装,直接点“next”即可完成安装,如下图示:下载STM32CubeL4软件包,然后打开STM32CubeMX程序,点击“check”先更新软件包的最新列表,勾选后选择“Install Now”为在线下载,选择“From Local”是导入已下载的,下载或导入后即可完成整个STM32CubeMX的安装。导入后的软件包的存储地址典型情况下为:C:\Users\Administrator\STM32Cube\Repository,如下图示:4.    调试简单程序STM32DFP与STM32Cube的关系:DFP和Cube都是由ST提供的,而且他们的内容、内部程序框架等基本都是一样的。DFP是为了符合ARM CMSIS标准制作的开发包;Cube是ST发布的独立开发包:既能符合MDK-ARM开发又能符合IAR、AC6等IDE环境,而且STM32Cube还是用于STM32CubeMX下的必须软件包。相比而言Cube更新更快一些,文档也比较新。要在MDK-ARM下调试开发,必须安装有DFP,即使你已经有了Cube开发包也要安装DFP。这两者的安装和使用是不冲突的,通常情况下,使用MDK-ARM时会同时下载、使用、参考上述2个开发包。把开发板接入电脑,打开Keil uVision5,菜单中选择“Project->Open Project”,并从如下典型目录中找到GPIO的例程:C:\Users\Administrator\STM32Cube\Repository\STM32Cube_FW_L4_V1.7.0\Projects\STM32L496ZG-Nucleo\Examples\GPIO\GPIO_IOToggle\MDK-ARM再点击“打开”即可完成示例的添加,如下图:把开发板接入电脑中,电脑自动安装驱动并完成对开发板的识别。在Keil uVision中执行“Project->Rebuild all target files”功能,完成编译。再执行“Debug->Start/Stop Debug Session”开始调试,调试自动停在main函数中,如下图所示:执行“Debug->Run”程序开始运行,此时开发板LED灯开始闪烁:执行“Debug->Stop”停止调试,再执行“Debug->Start/Stop Debug Session”返回到程序编写界面。5.    总结本文介绍了如何搭建MDK-ARM开发环境,并完成DFP的添加。给出了如何安装STSW-LINK009驱动,并更新ST LINK固件。如何安装和配置STM32CubeMX配置工具等。完成这些必须的步骤是为开发、调试打下基础。最后介绍了调试程序的简单方法,这种简单有效的调试方法是基本调试的开始,后续还会逐渐介绍更多的调试功能和方法。6.    参考资料.STSW-LINK009ST LINK驱动程序:https://www.stmcu.org.cn/document/detail/index/id-216352.STSW-LINK007固件下载:https://www.stmcu.org.cn/document/detail/index/id-216347.MDK-ARMIDE下载http://www.keil.com/download/product/.STM32DFP下载http://www.keil.com/dd2/pack/.STM32CubeL4http://www.st.com/content/st_com/en/products/embedded-software/mcus-embedded-software/stm32-embedded-software/stm32cube-embedded-software/stm32cubel4.html.STM32CubeMXhttp://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-configurators-and-code-generators/stm32cubemx.html



混森蓝兽 发表于 2017-4-25 11:13:27

cubeMX                                    

leo121_3006061 发表于 2017-4-25 11:27:39

感谢分享

shangdawei 发表于 2017-4-25 20:38:25


感谢分享

samhong 发表于 2017-4-25 23:42:17

步骤好清晰,晚安!

moyanming2013 发表于 2017-4-26 18:13:15

混森蓝兽 发表于 2017-4-25 11:13
cubeMX

:handshake:handshake:handshake

请叫我小张张 发表于 2017-4-27 12:06:54

赞赞

请叫我小张张 发表于 2017-4-27 12:07:40

谢谢分享

strang 发表于 2017-5-1 10:57:29

支持一下楼主

s210603 发表于 2017-5-1 18:49:30

支持楼主,学习
页: [1] 2
查看完整版本: 【NUCLEO-L496ZG评测】ST-LINK驱动+STM32CubeMX+MDK-ARM开发环境搭建