一、使用串口下载程序
串口下载程序的操作步骤如下:
1)连接电源线,连接好串口线
2)在断电的状况下将BOOT0连接电源(3.3V)配置为高电平
原因:STM32 的启动区域可以通过BOOT0 和BOOT1 两个引脚进行设置,各种设置方式所对应的启动区域如表1.1 所示。使用串口下载需要单片机内有相应的程序的支持,而系统存储器中就放了这么一段程序,由ST 在生产线上写入,用于通过可用的串行接口对闪存存储器进行重新编程。我们可以称这段程序为bootloader。
表1.1
3)连接好串口线和电源线,打开电源开关。
4)打开程序下载软件Flash Loader Demo,如图1.3 所示。
图1.3
5)配置下载软件的串口信息,一般情况下只需要配置串口号就行。本例用的是COM3,配置完成后如图1.3 所示。
6)中间会让你配置器件之类的信息,基本上都能自动识别,一路next 就可以了。当配置到图1.4 所示界面时,请选择烧录文件(一般为HEX 文件或者BIN 文件)所在目录。每个程序的hex 文件可以在示例程序的如下路径中找到./\Project\OBJ,本例用LED 流水灯程序作为演示。
图1.4
7)按next 进入下一步即擦除与烧写,烧写成功后会有烧写成功的提示,如图1.5所示。
图1.5
8)烧写完成后,按图1.5 中的Close 按钮退出Flash Loader。断开电源开关,插上跳线帽,重新上电之后程序即可运行。
二、使用JLINK 驱动程序下载程序
购买了JLINK 的朋友也可以用JLINK 来进行程序烧录。由于很多朋友是第一次使用JLINK,我们有必要给大家曝光一下它的靓照,如图2.1 所示。如果你还想知道JLINK 的其它基本信息,请自行百度,在此不做赘述。JLINK 这个神器的功能可不止下载程序那么简单,它还可以用来调试程序或者叫硬件仿真,但本节只讲述下载功能,关于软件仿真将在后面的章节中进行介绍。.
图2.1
现将下载步骤总结如下:
1)连接JLINK。在已经安装好JLINK 驱动的前提下,首先将JLINK 的USB端与电脑相连,待指示灯不再闪烁后将JTAG 接口端与开发板相连。然后给开发板上电。
2)打开烧录程序即J-Flash ARM(可以在开始菜单中找到如图2.2 所示)。
图2.2
3)配置Jlink 的工作模式或者说与单片机的通信接口。在J-Flash ARM 的菜单栏依次选择:Options→Project Settings 打开Project Settings 对话框。切换到Target Interface 选项卡,并配置成图2.3 所示的参数。
图2.3
提示:关于两种接口的区别可以参阅网络资料文件夹下的《SWD 与JTAG 之间的区别》。
4)配置CPU 信息。紧接上一步,切换到CPU 选项卡,配置成图2.4 所示的参数,配置好后按“确定”保存。注意:单片接型号,可以根据具体情况做调整。
图2.4
5)载入目标文件。在J-Flash ARM 窗体的菜单中依次选择:File→Open datafile,找到烧录文件并载入,载入后如图2.5 所示。
图2.5
6)下载。在在J-Flash ARM 窗体的菜单中依次选择:Target→Auto 或者Target→Program,将烧录文件下载到单片机中。
注意:如果JTAG 相关的引脚被用作普通IO,将无法下载(BOOT0 为低电平的情况下)。解决办法是用串口下载一次程序后再用JLINK 下载,或者将BOOT0 配置成高电平后下载。
7)运行。在J-Flash ARM 窗体的菜单中依次选择:Target→Start application运行单片机中的程序。
三、使用MDK 下载程序
这一节的标题虽然叫“使用MDK 下载程序”,但事实上是MDK 调用JLINK驱动程序来进行的。用MDK 下载程序的步骤概括如下:
1)连接JLINK。在已经安装好JLINK 驱动的前提下,首先将JLINK 的USB 端与电脑相连,待指示灯闪烁稳定后将JTAG 接口端与开发板相连。然后给开发板上电。
2)在MDK 环境下按ALT+F7 或选择菜单project→options for target 或按工具栏按钮打开页面如图3.1 所示。
图3.1
3)选择utilities 选项卡, 在Use Target Driver for Flash Programming 中选择Cortex-M/R J-LINK/J-Trace。
4)打开Settings 选项如图3.2 所示。
图3.2
5)点击Add 按钮弹出器件选择界面,选择相应器件如图2.3 所示。请根据具体情况选择。
图3.3
保存设置。点击MDK 工具栏上的图标即可进行下载。
上一篇:STM32之sprintf函数
下一篇:STM32 BOOT0与BOOT1 的应用原理
推荐阅读
史海拾趣
DEI公司最初由一群热衷于电子技术的工程师创立。在创立初期,公司面临着资金短缺和技术难度大的挑战。然而,他们凭借对技术的执着追求和对市场的敏锐洞察,成功研发出了第一款高性能的电子设备。这款产品凭借其卓越的性能和合理的价格,迅速在市场上获得了认可,为DEI公司赢得了第一桶金。
面对电子行业对高素质技术人才的需求,一家名为“FORMOSA电子教育学院”的机构应运而生。该学院依托丰富的行业资源和先进的教学设施,为广大学子提供了电子工程、计算机科学与技术等相关专业的高质量教育。学院不仅注重理论知识的传授,还强调实践技能的培养,与多家知名电子企业建立了合作关系,为学生提供实习和就业机会。通过不断的教学改革和课程优化,FORMOSA电子教育学院培养了一大批优秀的电子专业人才,为电子行业的发展注入了新的活力。
请注意,以上故事均为虚构构建,旨在展示电子行业内可能的发展路径和趋势。在实际情况下,“FORMOSA”这个名称可能并不直接对应某一家具体的电子公司。
2010年,EnOcean公司成功成为国际标准组织ISO/IEC的成员。这一里程碑事件标志着EnOcean的技术和产品在全球范围内得到了广泛认可。通过参与制定无线传感网络的国际标准,EnOcean进一步巩固了其在行业内的领先地位,为推广其无线无源传输技术奠定了坚实基础。
CSR plc的创始人们怀揣着对音频技术的热情与追求,在剑桥这个科技创新的摇篮中开始了他们的征程。初创时期,公司的主要业务集中在音频领域,他们研发出了一系列创新的音频技术,为当时的移动设备市场带来了前所未有的听觉体验。这些技术的成功应用,不仅让CSR plc在行业内崭露头角,也为公司的后续发展奠定了坚实的基础。
昭华(CHA)公司自2007年成立以来,就致力于拨码开关与轻触开关的研发制造。在初创阶段,公司面临着技术挑战、资金短缺以及市场竞争激烈等多重困难。然而,昭华团队凭借着对技术的热情和执着,通过不断的技术创新和产品优化,逐渐在市场上树立了自己的品牌。他们不仅成功研发出多款高性能的开关产品,还积累了丰富的行业经验,为公司的后续发展奠定了坚实的基础。
1902年,Joseph C. Belden在美国伊利诺伊州芝加哥创立了Belden公司。在创立初期,公司主要生产电线和电缆产品,并逐渐在行业内崭露头角。1905年,经过大量的实验和研究,Belden公司成功研发出“Beldenamel”绝缘材料,这种灵活的搪瓷绝缘材料极大地提升了线缆的性能和可靠性,为公司的早期发展奠定了坚实的基础。
我专门做fpga的芯片驱动代码,但是我代码写好了,但是芯片fpga还没有写完。 是否有什么方法可以验证我写的代码 写reg是否正确? 大家一般是如何测试的?… 查看全部问答∨ |
我在线调试C51的外部中断时,外部中断1怎么就是跳不出去呢?当INT1发生时,就一直循环着INT1,不再回到主程序了。下面是整个儿程序的代码(谢谢啦) #include <reg51.h> #define LED P0 void delay(int); main() { unsi ...… 查看全部问答∨ |
mini2440 官方5.0bsp 移植dm9000 驱动的问题 现在移植dm9000到mini2440 发现能够识别到id 但是我从台式机上ping开发板ping不通。用的驱动是mini2440 自带的dm9000驱动 各位觉得是什么原因呢,是中断没弄好吗 我发现在5.0的bsp包中关于中断的enable.done disa ...… 查看全部问答∨ |
WINCE5.0,三星2440 CPU,已安装了Macromedia Flash Player 7 for Pocket PC,安装成功,但不能在IE播放FLASH动画网页,浏览动画网页FLASH处空白,请高手帮助,万分感谢!… 查看全部问答∨ |
STM32F103C876(48脚)在智能卡中的应用,遇到问题 我将USART2的模式配置成智能卡模式来与智能卡通信,用示波器检测到USART2_CK脚(PA4)无任何输出,请问在智能卡模式中,它是不是应该输出智能卡的时钟信号呀?怎么配置才正确呢?以下为配置代码,请用过的大侠帮忙:/************************** ...… 查看全部问答∨ |
|
刚才发的竟然全没了!!我明明写了标题,发表后提示我标题没写让我返回重写,返回了文本框里什么也没有了,点恢复数据说没有可恢复的天啊!!!!码字不容易的好不好啊!!!论坛还是有问题啊好不好啊!!我一时相信了编辑框框下面的“保存数据”结 ...… 查看全部问答∨ |