2024年1月13日发(作者:象芳茵)
STM32入门系列教程
STM32的USB下载调试
Revision 0.01
( 2010-08-12)
ST官方实际上提供了两种下载方式:串口ISP与USB下载。之前讲述了串口ISP的下载调试(类似单片机一样),还有一种就是USB方式。通俗地说,我们可以使用USB接口来下载和调试程序。熟悉USB的朋友马上反应过来,USB和串口一样,都是串行传送数据。是的,这两种方式下载,数据的传输方式都是串行,因此速度不可能太快。事实上,真正的开发,不可能靠ISP来调试。都是使用JLINK + MDK或者IAR来调试的。有条件的同学可以购买jlink仿真器。
说了很多闲话,下面开始进入正题。要进行USB下载,我们需要事先准备的工作如下:
1、
DfuSe安装软件
2、
USB下载固件(hex文件)
以上这两个均可在芯达stm32光盘中找到。在光盘的软件工具目录下,可以找到DfuSe_Demo_V2.2.1_;该软件是为了进行USB下载提供一个操作的界面。USB的固件HEX文件 ——STM32_,可以在目录“芯达STM32出厂HEX文件”中找到。
1. Dfuse软件的安装
安装的过程,建议大家不要看一下本教程的一个步骤,安装一下,再看一下教程,再安装。。。如此效率比较低。建议先把教程浏览一遍,人的瞬间记忆能力,在这里足够用了。遇到没有印象的,再回过头来看教程。
OK,双击DfuSe_Demo_V2.2.1_图标,
双击后,会进入如下界面:
等待几秒钟,即可进入如下界面:
点击下一步NEXT,进入下一界面:
此时,选择是否接收协议授权等信息,可暂且不管,直接YES,进入下一界面:
此界面最熟悉不过,一般软件都会有,直接Next,进入下一界面:
这里需要做一个说明,笔者默认把该软件安装在C盘,如果你想安装在别的盘符,直接点击Browse…,跳出对话框选择即可。建议默认放在C盘。以防后续步骤出错。然后Next。
现在软件开始安装了,我们做的还是等待。一直到出现如下界面,OK,恭喜你,软件安装成功了 —— 几乎是一路顺利走下来的。
记住该驱动路径,后续USB下载步骤中将会用到:)
2. 烧写USB固件HEX文件
打开芯达stm32光盘,在目录“芯达STM32出厂HEX文件”中,找到“STM32_”,也可在这里下载/?tid=2674 。把该hex下载到芯达stm32开发板中。注意,使用J-Link下载的时候,我们双击的是J-Flash图标,不是J-Link图标!!如何下载HEX文件到板子,请参考我们的入门系列教程三《如何使用J-Flash调试》。
3. USB驱动的安装
现在拆开芯达stm32附赠的USB线,一头(扁口)插在PC的usb口上,另一头(方口)插在芯达板的USB口上。给开发板上电,这时候,电脑屏幕右下角会出现一个图标,发现一个硬件:
随后,就会出现“找到新硬件”的对话框:
切记一定要选择“从列表或指定位置安装(高级)”,然后点击下一步:
这里需要选择“不要搜索。我要自己选择要安装的驱动程序”。不选择该选项,将无法安装USB驱动。点击下一步后,将出现如下图:
这时候,我们可以选择从磁盘安装,点击后,出现如下界面:
我们点击“浏览”,从跳出的对话框中选择文件(如果没有找到该文件,直接去刚才提醒大家要记住的路径下找,在这里:C:Program FilesSTMicroelectronicsDfuSe):
双击或者点击“打开”后,界面回到原来的地方,点击确定,如下图所示:
点击下一步,可以看到驱动正在复制安装,稍等一秒钟,即安装完成。
如何查看当前已经安装成功了?回到电脑的桌面,右键点击“我的电脑” 属性 硬件 设备管理器 找到“通用串行总线管理器”,点
4. 使用USB下载调试
假设我们需要调试LED点灯的程序,当我们编写好程序后,想下载到板子里运行,该怎么借助USB来实现呢?需要解释的是,刚才我们已经把USB固件的hex文件下载到CPU自带的flash中,现在我们再下载LED点灯的HEX,不是就把刚才的HEX覆盖掉了吗?当然会!因此,我们现在需要做一个调整,把需要调试的代码,下载到CPU自带flash的另一个位置。以使得两个hex相互不会覆盖。
如何实现这个思路?很简单,在工作区里右键顶层目录,如下图所示:
选择Options for Target„。。。‟,如下图所示。
此时会跳出一个对话框,选择“Device”选项卡,对照开发板上的CPU
,选择好
CPU,比如STM32F103VBT6,VET6等等,然后选择“Target”选项卡,作如下填写:
即红色框内,写入一个起始地址和占用长度,该起始地址即为下载到CPU自带flash中的位置。设置此处可保证不和别的hex冲突。然后点击OK退出,编译出一个新的hex文件来。
可惜的是,新编译出来的hex文件,我们无法直接使用。USB只能使用后缀为.dfu的文件。因此,我们还需要把编译出来的hex文件转换成.dfu文件后才能用USB下载到板子里。我们来转换试试。
在“开始”菜单 程序 STMicroelectronics DfuSe DFU File Manager,点击它,打开一个小对话框:
选择红色方框的选项,点击OK,跳出如下对话框:
点击S19 or HEX,此时,跳出的对话框会是让我们选择刚才新编译的HEX文件。我们就是想用这个hex文件,转换成DFU文件的。
注意,有时候,我们无法找到刚才编译的hex文件,因为它模式显示的是后缀为s19的文件,
可以将它改为hex文件,如下图所示:
找到刚才新编译的hex文件后,返回下面的界面,点击“Generate…”。
点击后,会跳出一个对话框,它是在问我们,要把即将生成的dfu文件保存到哪里。我们选择一个位置,并且为它取名字***.dfu,然后点击保存,此时会出现如下界面:
点击确定,表明转换成功。
OK,现在已经有USB下载的可用的dfu文件了,那就打开USB下载的软件吧,进行USB下载!
打开“开始”菜单 程序 STMicroelectronics DfuSe Dfuse Demostration,点击它,如果驱动安装正确,就会打开如下USB下载界面:
首先查看在左上方的下拉菜单中是否显示STM Device in DFU Mode。如果驱动出现错误,则左上方的下拉菜单里什么都没有。然后点击choose,选择刚才生成的***.dfu文件,双击它,此时会出现如下界面:
先点击upgrade,在跳出的确认对话框中选择“是”,然后点击“Leave DFU Mode”,此时会出现如下界面:
现在已经成功离开DFU模式,此时开发板上的LED灯会闪烁,表明此时已经使用USB下载功能,把LED点灯的程序下载到板子里运行了。
到此,USB下载讲解进入尾声。如果您对安装过程还有不理解的地方,请直接到我们的官方网站:ARM技术交流网 ,进行讨论。我们将会尽快给您做出答复。
附:
福州芯达工作室简介
福州芯达工作室成立于2009年9月,我们专注于嵌入式产品的研发与推广,目前芯达产品涉及ARM9系列、STM32系列。
芯达团队成员均硕士研究生毕业,具有一定研发实力。我们的愿景在于把福州芯达打造成国内一流的嵌入式品牌。或许我们现在做的还不够,但是我们真的努力在做,希望通过我们的努力,能够在您学习和使用芯达产品的过程中带来或多或少的帮助。
这是芯达为了配合STM32开发板而推出的入门系列教程。如果您在看了我们的教程后,理清了思路,我们都会倍感欣慰!让我们一起学习,共同进步,在征服嵌入式领域的道路上风雨同行!
官方网站:/
官方淘宝:/
2024年1月13日发(作者:象芳茵)
STM32入门系列教程
STM32的USB下载调试
Revision 0.01
( 2010-08-12)
ST官方实际上提供了两种下载方式:串口ISP与USB下载。之前讲述了串口ISP的下载调试(类似单片机一样),还有一种就是USB方式。通俗地说,我们可以使用USB接口来下载和调试程序。熟悉USB的朋友马上反应过来,USB和串口一样,都是串行传送数据。是的,这两种方式下载,数据的传输方式都是串行,因此速度不可能太快。事实上,真正的开发,不可能靠ISP来调试。都是使用JLINK + MDK或者IAR来调试的。有条件的同学可以购买jlink仿真器。
说了很多闲话,下面开始进入正题。要进行USB下载,我们需要事先准备的工作如下:
1、
DfuSe安装软件
2、
USB下载固件(hex文件)
以上这两个均可在芯达stm32光盘中找到。在光盘的软件工具目录下,可以找到DfuSe_Demo_V2.2.1_;该软件是为了进行USB下载提供一个操作的界面。USB的固件HEX文件 ——STM32_,可以在目录“芯达STM32出厂HEX文件”中找到。
1. Dfuse软件的安装
安装的过程,建议大家不要看一下本教程的一个步骤,安装一下,再看一下教程,再安装。。。如此效率比较低。建议先把教程浏览一遍,人的瞬间记忆能力,在这里足够用了。遇到没有印象的,再回过头来看教程。
OK,双击DfuSe_Demo_V2.2.1_图标,
双击后,会进入如下界面:
等待几秒钟,即可进入如下界面:
点击下一步NEXT,进入下一界面:
此时,选择是否接收协议授权等信息,可暂且不管,直接YES,进入下一界面:
此界面最熟悉不过,一般软件都会有,直接Next,进入下一界面:
这里需要做一个说明,笔者默认把该软件安装在C盘,如果你想安装在别的盘符,直接点击Browse…,跳出对话框选择即可。建议默认放在C盘。以防后续步骤出错。然后Next。
现在软件开始安装了,我们做的还是等待。一直到出现如下界面,OK,恭喜你,软件安装成功了 —— 几乎是一路顺利走下来的。
记住该驱动路径,后续USB下载步骤中将会用到:)
2. 烧写USB固件HEX文件
打开芯达stm32光盘,在目录“芯达STM32出厂HEX文件”中,找到“STM32_”,也可在这里下载/?tid=2674 。把该hex下载到芯达stm32开发板中。注意,使用J-Link下载的时候,我们双击的是J-Flash图标,不是J-Link图标!!如何下载HEX文件到板子,请参考我们的入门系列教程三《如何使用J-Flash调试》。
3. USB驱动的安装
现在拆开芯达stm32附赠的USB线,一头(扁口)插在PC的usb口上,另一头(方口)插在芯达板的USB口上。给开发板上电,这时候,电脑屏幕右下角会出现一个图标,发现一个硬件:
随后,就会出现“找到新硬件”的对话框:
切记一定要选择“从列表或指定位置安装(高级)”,然后点击下一步:
这里需要选择“不要搜索。我要自己选择要安装的驱动程序”。不选择该选项,将无法安装USB驱动。点击下一步后,将出现如下图:
这时候,我们可以选择从磁盘安装,点击后,出现如下界面:
我们点击“浏览”,从跳出的对话框中选择文件(如果没有找到该文件,直接去刚才提醒大家要记住的路径下找,在这里:C:Program FilesSTMicroelectronicsDfuSe):
双击或者点击“打开”后,界面回到原来的地方,点击确定,如下图所示:
点击下一步,可以看到驱动正在复制安装,稍等一秒钟,即安装完成。
如何查看当前已经安装成功了?回到电脑的桌面,右键点击“我的电脑” 属性 硬件 设备管理器 找到“通用串行总线管理器”,点
4. 使用USB下载调试
假设我们需要调试LED点灯的程序,当我们编写好程序后,想下载到板子里运行,该怎么借助USB来实现呢?需要解释的是,刚才我们已经把USB固件的hex文件下载到CPU自带的flash中,现在我们再下载LED点灯的HEX,不是就把刚才的HEX覆盖掉了吗?当然会!因此,我们现在需要做一个调整,把需要调试的代码,下载到CPU自带flash的另一个位置。以使得两个hex相互不会覆盖。
如何实现这个思路?很简单,在工作区里右键顶层目录,如下图所示:
选择Options for Target„。。。‟,如下图所示。
此时会跳出一个对话框,选择“Device”选项卡,对照开发板上的CPU
,选择好
CPU,比如STM32F103VBT6,VET6等等,然后选择“Target”选项卡,作如下填写:
即红色框内,写入一个起始地址和占用长度,该起始地址即为下载到CPU自带flash中的位置。设置此处可保证不和别的hex冲突。然后点击OK退出,编译出一个新的hex文件来。
可惜的是,新编译出来的hex文件,我们无法直接使用。USB只能使用后缀为.dfu的文件。因此,我们还需要把编译出来的hex文件转换成.dfu文件后才能用USB下载到板子里。我们来转换试试。
在“开始”菜单 程序 STMicroelectronics DfuSe DFU File Manager,点击它,打开一个小对话框:
选择红色方框的选项,点击OK,跳出如下对话框:
点击S19 or HEX,此时,跳出的对话框会是让我们选择刚才新编译的HEX文件。我们就是想用这个hex文件,转换成DFU文件的。
注意,有时候,我们无法找到刚才编译的hex文件,因为它模式显示的是后缀为s19的文件,
可以将它改为hex文件,如下图所示:
找到刚才新编译的hex文件后,返回下面的界面,点击“Generate…”。
点击后,会跳出一个对话框,它是在问我们,要把即将生成的dfu文件保存到哪里。我们选择一个位置,并且为它取名字***.dfu,然后点击保存,此时会出现如下界面:
点击确定,表明转换成功。
OK,现在已经有USB下载的可用的dfu文件了,那就打开USB下载的软件吧,进行USB下载!
打开“开始”菜单 程序 STMicroelectronics DfuSe Dfuse Demostration,点击它,如果驱动安装正确,就会打开如下USB下载界面:
首先查看在左上方的下拉菜单中是否显示STM Device in DFU Mode。如果驱动出现错误,则左上方的下拉菜单里什么都没有。然后点击choose,选择刚才生成的***.dfu文件,双击它,此时会出现如下界面:
先点击upgrade,在跳出的确认对话框中选择“是”,然后点击“Leave DFU Mode”,此时会出现如下界面:
现在已经成功离开DFU模式,此时开发板上的LED灯会闪烁,表明此时已经使用USB下载功能,把LED点灯的程序下载到板子里运行了。
到此,USB下载讲解进入尾声。如果您对安装过程还有不理解的地方,请直接到我们的官方网站:ARM技术交流网 ,进行讨论。我们将会尽快给您做出答复。
附:
福州芯达工作室简介
福州芯达工作室成立于2009年9月,我们专注于嵌入式产品的研发与推广,目前芯达产品涉及ARM9系列、STM32系列。
芯达团队成员均硕士研究生毕业,具有一定研发实力。我们的愿景在于把福州芯达打造成国内一流的嵌入式品牌。或许我们现在做的还不够,但是我们真的努力在做,希望通过我们的努力,能够在您学习和使用芯达产品的过程中带来或多或少的帮助。
这是芯达为了配合STM32开发板而推出的入门系列教程。如果您在看了我们的教程后,理清了思路,我们都会倍感欣慰!让我们一起学习,共同进步,在征服嵌入式领域的道路上风雨同行!
官方网站:/
官方淘宝:/