基于Ymodem协议通过RS-485对STM32F3的IAP升级

环境说明:

电脑系统:win7 64bit

ST官方软件库:STSW-STM32111

链接地址:http://www.st.com/en/embedded-software/stsw-stm32111.html

软件IDE开发平台:IAR for arm V7.20

上位机通信软件:SecureCRT


实现方法:

一、修改官方软件

选定我所使用的处理器型号

修改处理器资源和硬件端口配置

/**
 * @brief Key push-button         //PB9
 */
#define KEY_BUTTON_PIN                         GPIO_Pin_9
#define KEY_BUTTON_GPIO_PORT             GPIOB
#define KEY_BUTTON_GPIO_CLK                RCC_AHBPeriph_GPIOB
#define KEY_BUTTON_EXTI_LINE                EXTI_Line9
#define KEY_BUTTON_EXTI_PORT_SOURCE      EXTI_PortSourceGPIOB
#define KEY_BUTTON_EXTI_PIN_SOURCE         EXTI_PinSource9

#define KEY_BUTTON_EXTI_IRQn                      EXTI9_5_IRQn

修改IAP功能触发按键端口(上电时,MCU检测到KEY_BUTTON一直为低电平,则进入IAP升级模式,否则执行用户程序)


/** @addtogroup STM32373C_EVAL_LOW_LEVEL_COM
  * @{
  */
#define COMn                             1

/**
 * @brief Definition for COM port1, connected to USART1
 */
#define EVAL_COM1                        USART1
#define EVAL_COM1_CLK     

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于Ymodem协议STM32串口IAP(In-Application Programming)的实现是通过串口通信的方式,实现在设备中对应用程序(APP)进行更新或升级。 在实现过程中,需要涉及三个主要组件:IAP、APP以及上位机。 IAP是指在设备中运行的固件,用于实现应用程序的更新。它需要能够接收上位机传输的数据,并将其写入设备的存储器中,以完成应用程序的更新。 APP是指设备中当前正在运行的应用程序,它需要检测到IAP的存在,并与上位机进行通信。APP需要具备与上位机进行数据交换的能力,并能够接收来自上位机的命令,以控制IAP的运行。 上位机是用于控制设备中IAP和APP的计算机。它通过串口与设备进行通信,并将应用程序的更新数据传输给设备。上位机需要发送命令给设备,控制设备中IAP和APP的运行,并在传输过程中与设备进行数据交换。 在实际操作中,上位机首先向设备发送一个请求,请求设备启动IAP模式。设备在接收到请求后,会进入IAP模式,并向上位机发送确认信息。之后,上位机会将待更新的应用程序数据通过串口传输给设备。设备会根据Ymodem协议对数据进行校验,并将数据写入存储器中。传输完成后,上位机与设备进行数据交换,以确认更新的完成情况。 总结来说,基于Ymodem协议STM32串口IAP的实现包括IAP、APP和上位机三个主要组件,通过串口通信实现应用程序的更新。以上是对该实现过程的简要描述。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值