1.使用isp下载
1.使用isp下载的时候保证BOOT0=1,BOOT1=0,这样进入系统系统存储器启动(为了避免有串口输出等程序在flash当中运行扰乱下载),这种模式启动的程序通过串口下载进去,使用Flash Loader Demonstrator下载
BOOT1=x BOOT0=0 从用户闪存flash启动,这是正常的工作模式。
BOOT1=0 BOOT0=1 从系统存储器启动,这种模式启动的程序功能由厂家设置。
BOOT1=1 BOOT0=1 从内置SRAM启动,这种模式可以用于调试
2.使用isp工具的时候当按下复位键才能进入系统存储模式,才能编程flash芯片,编程完成之后马上进入flash启动,此时再次按下复位键 才能再次编程
3.所用的PL2303_USB转串口驱动安装不成功,可以使用驱动人生的外设驱动自动安装,就能安装成功了
pl2303下载线对应:红--5V 黑--GND 白--TXD 绿--RXD,此线连接成功之后可以当串口数据传输线使用
总结 不能进入下载模式的关键是要:按下reset 复位键。
2.使用keil4下载
//关于下载调试的一些问题--libpath=C:\Keil\ARM\ARMCC\lib这个是要加载Linker的框框当中
//另外要选择倒数第二行的stlink Debug 的选项
//在Debug当中选择ort为SW方式下载 不能选择为JTAG 在Utilities里面的额setting里面添加Flash大小为512k
//使用SW下载用五根线就行了复位RST,SWCLK---A14,SWDIO---A13,VCC3.3V,GND
//使用串口下载的时候要用到mini-USB,并且用到软件
2.使用jtag下载
用到j-link连接线直接连接能在keil当中看到stm型号即可下载。
关键字:stm32 下载程序
引用地址:
关于stm32的所有下载程序方法
推荐阅读最新更新时间:2024-03-16 16:15
STM32 I2C 难点
I2C 总线在所有嵌入式系统中用得极广, 是一个工业级别的总线, 但由于STM32 是一个32位的MCU, 注定了他的I2C硬件接口将会功能强大, 但同时也会较难于控制,不象8位机,如AVR8位机的TWI(实际完全符合 I2C标准) 那么易用. 以下是我的STM32 I2C硬件接口编程的一些心得体会. 如果你选择了STM32, 说明了你的项目的需求是比较复杂的,使用EMBEDDED OS 和大量地运用中断+DMA的编程模型是必然的选择, 如果你的项目中用STM32,而你用模拟的I2C的话, 说明了两点: 一是浪费了STM32; 二, 如果你的项目很复杂的话,你会发现在项目的开发后期,好象STM32也比8位机快不了多少, WH
[单片机]
STM32–中断程序总结(库函数)
一.配置中断优先级函数 void EXTI_NVIC_Config(void) { NVIC_InitTypeDef NVIC_InitStruct; /*初始化NVIC结构体 */ NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); /*设置优先级分组为组一,组的区别具体在教材P133 */ NVIC_InitStruct.NVIC_IRQChannel = EXTI0_IRQn; /*选择中断源为EXTI0(EXTI Line0的中断源) */ /*注意:*/ /*EXTI0 EXTI1 EXTI2 EXTI3 EXTI4 对应中断源分别为 EXTI0_I
[单片机]
stm32的3种下载程序方式
个人记录: 了解这些,自己多多总结,也算是对开发板硬件接口的了解。
没总结完,
【1】ISP下载
这里类似51.
boot1拨到0,
就行了 下载需要来回拨动拨码开关
【2】J-LINK
可下载 可仿真
(分为SW和JTAG模式)
JTAG 或 SW 方式,在KEI的编程选项里面设定,选择好仿真器后,在相关的SETTINGS设置项里面会有 JTAG和SWD方式的选择。
只需要修改KEI环境配置,和硬件设置,这个SWD只需要5个,一个电源,一个地 和仅需要三根调试线SWDO(可选的跟踪),SWDIO(data I/O),SWDCLK(时钟针)
如果用jt
[单片机]
基于STM32F103的水动力测控系统设计的解决方案
测控系统是水动力实验中的重要测试设备。在实验中有压力、拉力、加速度等物理量通过传感器转换成电压值,需要准确记录。虽然实验模型有很多种,但是共用传感器及测控系统,因此对测控系统的通用性和用户界面友好性提出了要求。本文采用嵌入式架构设计了测控系统。 本文设计的系统硬件基于STM32芯片,具有很强的扩展能力,易于移植,其外设单元资源丰富,能够达到系统要求的精度和范围。 1、硬件架构 采用嵌入式架构(见图1)的优点是通用性强,便于在多平台移植;主控芯片外围电路模块丰富,包括ADC、DA、CAN和SDIO等接口,独立完成对多种类型设备的测量、控制。芯片的主频高,运算能力也很强,适合嵌入复杂的算法。完全适合作为测控系统,具备系统升级和扩展
[测试测量]
解决STM32 I2C接口死锁在BUSY状态的方法讨论
关于STM32的I2C接口死锁在BUSY状态无法恢复的现象,网上已有很多讨论,看早几年比较老的贴子,有人提到复位MCU也无法恢复、只有断电才行的状况,那可是相当严重的问题。类似复位也无法恢复的情况是存在的,技术支持矢口否认问题存在,并不是正确面对问题的态度。比如我用这款F439芯片的SDRAM控制器,在错误操作后进入HardFault状态,复位无法恢复,JTAG也无法联机,只能断电重来,官方的Erratasheet里也提到了。 如果I2C接口无法可靠工作,那么所做的设计将存在严重隐患,不可能要求用户用断电的方法恢复系统。如果像某些网友提到弃用硬件I2C,转为GPIO模拟I2C时序,那么首先I2C时钟频率不易确定,因为STM32的时
[单片机]
STM32中断系统笔记
CM3中 STM32参考教程: STM32开发指南V1.0库函数版
[单片机]
STM32 USB设计 单片机程序篇
首先,我们来看看usb的工作过程。 当usb设备接入到主机时,主机开始枚举usb设备,并向usb设备发出指令要求获取usb设备的相关描述信息,其中包括设备描述(device descriptor)、配置描述(configuration descriptor)、接口描述(interface descriptor)、端点描述(endpoint descriptor)等。这些信息是通过端点0(endpoint 0)传送到主机的。获取各种描述信息后,操作系统会为其配置相应的资源。这样主机就可以与设备之间进行通信了。 usb通讯有四种通讯方式控制(control)、中断(interrupt)、批量(bulk)和同步( sync
[工业控制]
stm32复位后I/O口电平状态
STM32上电复位瞬间I/O口的电平状态默认是浮空输入,因此是高阻。做到低功耗. STM32的IO管脚配置口默认为浮空输入,把选择权留给用户,这是一个很大的优势:一方面浮空输入确保不会出现用户不希望的默认电平(此时电平取决于用户的外围电路);另一方面降低了功耗,因为不管是上拉还是下拉,都会有电流消耗。从另一个角度来看,不管I/O管脚的默认配置如何,还是需要在输出的管脚外加上拉或下拉,这是为了保证芯片上电期间和复位时,输出的管脚始终处于已知的电平。 ─ 输入浮空 ─ 输入上拉 ─ 输入下拉 ─ 模拟输入 ─ 开漏输出 ─ 推挽式输出 ─ 推挽式复用功能 ─ 开漏复用功能 IO端口复位后处于浮空状态,也就是其电平状态由外围电路决定
[单片机]