RS485收发切换多0x00数据影响bootload升级程序

2023-10-31

串口升级使用RS485接口。

RS485收发切换多0x00数据。部分有问题电路板在app程序中输入调试指令有响应(app通过ULINK下载),而使用ymodem在bootloader中升级程序失败。通过printf打印捕捉到数据包头多0x00数据。

解决办法:

旧解析数据包头第一个字节代码:

if (Receive_Byte(&c, timeout) != 0)

{

return -1;

}

修改后代码:

do

{

if (Receive_Byte(&c, timeout) != 0)

{

//Send_Byte(0xF1);

return -1;

}

RepeatCounter++;

}while((c == 0x00)&&(RepeatCounter < 5));   

查阅网址:

https://blog.csdn.net/songshuai0223/article/details/88169217

https://blog.csdn.net/tq384998430/article/details/80178083

总结:

参考网址上硬件解决办法是近距离通信时,去除A、B引脚之间的120欧姆电阻、RXD和TXD之间加小电容值电容和RXD加上拉电阻。

而我感觉电路板已经批量生产,修改软件比修改硬件更方便些。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

RS485收发切换多0x00数据影响bootload升级程序 的相关文章

  • 如何更改闪存的起始地址?

    我正在使用 STM32F746ZG 和 FreeRTOS Flash的起始地址是0x08000000 但我想把它改成0x08040000 我通过谷歌搜索了这个问题 但没有找到解决方案 我更改了链接器脚本 如下所示 MEMORY RAM xr
  • 在没有 IDE 的情况下如何使用 CMSIS?

    我正在使用 STM32F103C8T6 并想使用 CMSIS 这本质上只是寄存器定义 没有代码 让我的生活更轻松 同时仍保持在较低水平 问题是我不知道如何安装该库以便在命令行上使用 Makefile 使用 所有文档似乎都与特定于供应商的 I
  • 140-基于stm32单片机智能晾衣杆控制系统Proteus仿真+源程序

    资料编号 140 一 功能介绍 1 采用stm32单片机 LCD1602显示屏 独立按键 DHT11传感器 ds1302时钟 光敏传感器 蜂鸣器 LED灯 制作一个基于stm32单片机智能晾衣杆控制系统Proteus仿真 2 通过光敏传感器
  • 133-基于stm32单片机停车场车位管理系统Proteus仿真+源程序

    资料编号 133 一 功能介绍 1 采用stm32单片机 4位数码管 独立按键 制作一个基于stm32单片机停车场车位管理系统Proteus仿真 2 通过按键进行模拟车辆进出 并且通过程序计算出当前的剩余车位数量 3 将剩余的车位数量显示到
  • 135-基于stm32单片机超声波非接触式感应水龙头控制系统Proteus仿真+源程序

    资料编号 135 一 功能介绍 1 采用stm32单片机 LCD1602显示屏 独立按键 DHT11传感器 电机 超声波传感器 制作一个基于stm32单片机超声波非接触式感应水龙头控制系统Proteus仿真 2 通过DHT11传感器检测当前
  • rt-thread studio中新建5.0不能用

    文章目录 一 版本对比 二 文件和文件夹打斜杠 在使用RT Thread studio创建新工程5 0版本的时候 结果发现新建完成之后程序不能正常运行 但是创建4 10版本的时候却能运行 那肯定是新版本出现了BUG 一 版本对比 首先对比了
  • STM32F4 通过软复位跳转到引导加载程序,无需 BOOT0 和 BOOT1 引脚

    我问这个问题是因为可以在这里找到类似问题的答案 通过应用程序跳转到 STM32 中的引导加载程序 即从用户闪存在引导模式下使用引导 0 和引导 1 引脚 用户 JF002 JF002回答 当我想跳转到引导加载程序时 我在其中一个备份寄存器中
  • STM32 GPIO工作原理详解

    STM32 GPIO介绍 1 STM32引脚说明 GPIO是通用输入 输出端口的简称 是STM32可控制的引脚 GPIO的引脚与外部硬件设备连接 可实现与外部通讯 控制外部硬件或者采集外部硬件数据的功能 以STM32F103ZET6芯片为例
  • VS Code 有没有办法导入 Makefile 项目?

    正如标题所说 我可以从现有的 Makefile 自动填充 c cpp properties json 吗 Edit 对于其他尝试导入 makefile 的人 我找到了一组脚本 它们完全可以实现我想要实现的目标 即通过 VS Code 管理
  • 跟着野火学FreeRTOS:第一段(任务定义,切换以及临界段)

    在裸机系统中 系统的主体就是 C P U CPU CP U 按照预先设定的程序逻辑在 m a i n
  • 最终启动顺序错误 - STM32L476 的 Eclipse System Workbench 调试

    我正在尝试调试和运行 STM32L476 的简单汇编代码 我已经设置了 Eclipse Oxygen 在 Eclipse 中安装了最新版本的 System Workbench 插件并安装了 ST Link 驱动程序 IDE 成功构建了程序
  • 毕设开题分享 单片机智能教室系统(智能照明+人数统计)

    1 简介 Hi 大家好 今天向大家介绍一个学长做的单片机项目 单片机智能教室系统 智能照明 人数统计 大家可用于 课程设计 或 毕业设计 项目分享 https gitee com feifei1122 simulation project
  • Cortex-M3与M4权威指南

    处理器类型 所有的ARM Cortex M 处理器是32位的精简指令集处理器 它们有 32位寄存器 32位内部数据路径 32位总线接口 除了32位数据 Cortex M处理器也可以有效地处理器8位和16位数据以及支持许多涉及64位数据的操作
  • STM32 Nucleo 上的上升沿中断多次触发

    我正在使用 STM32 NUCLEO F401RE 微控制器板 我有一个扬声器 经过编程 当向上 向下推操纵杆时 可以按设定的量改变频率 我的问题是 有时 通常 当向上 向下推动操纵杆时 频率会增加 减少多次 这意味着 ISR 正在执行多次
  • STM32 上的 ADC 单次转换

    我正在研究 STM32 F103x 上的 ADC 编程 并从最简单的情况 单次转换开始 测量内部温度传感器 连接到 ADC1 的值 并使用 USART 将其发送到 COM 端口 目标似乎很明确 但是当我尝试将源代码下载到闪存时 它不会向 C
  • 在 Contiki 程序中使用 malloc

    考虑以下 Contiki 程序 include
  • 使用 STM32F0 ADC 单独读取不同的输入

    STM32F072CBU 微控制器 我有多个 ADC 输入 并且希望单独读取它们 STMcubeMX 生成样板代码 假设我希望按顺序读取所有输入 但我无法弄清楚如何纠正这个问题 这篇博文 http blog koepi info 2015
  • 当端点和 PMA 地址均更改时,CubeMX 生成的 USB HID 设备发送错误数据

    我正在调试我正在创建的复合设备的问题 并在新生成的仅 CubeMX 代码中重新创建了该问题 以使其更容易解决 我添加了少量代码main 让我发送 USB HID 鼠标点击 并在按下蓝色按钮时使 LED 闪烁 uint8 t click re
  • STM32 传输结束时,循环 DMA 外设到存储器的行为如何?

    我想问一下 在以下情况下 STM32 中的 DMA SPI rx 会如何表现 我有一个指定的 例如 96 字节数组 名为 A 用于存储从 SPI 接收到的数据 我打开循环 SPI DMA 它对每个字节进行操作 配置为 96 字节 是否有可能
  • 读取STM32 MCU SPI数据寄存器的值

    有很多类似的问题 但似乎没有一个问题完全相同 我正在将 STML4 MCU 连接到 6 轴传感器 LSM6DS3 我已经成功地在 I2C 中实现了所有内容 但想要 SPI 的额外速度 和 DMA 如果我能让这些第一步工作起来的话 因此 第一

随机推荐

  • PLSQL Developer 代码助手卡顿优化

    支持付费优化 原因分析 代码助手卡顿来源于 不考虑网络和软件版本等影响 A 从已连接的数据库的数据字典中 读取该表的列信息 B 将读取到的列信息返回到plsql编辑器 并进行字符处理 然后显示 如何优化B 这个勾勾是维持IDE的代码和数据库
  • TCP/IP常见协议及协议号及端口号

    TCP IP常见协议及协议号及端口号 协议 ICMP 1 Internet控制报文协议 IGMP 2 Internet组管理协议 TCP 6 传输控制协议 EGP 8 外部网关协议 IGP 9 专用内部网关协议 UDP 17 用户数据报协议
  • 浅谈编程语言的函数与方法

    在编程中 函数 Function 和方法 Method 是非常重要的概念 都是在编程中用来执行特定功能的代码块 可以被调用或重复使用 从而提高代码的可读性 可维护性和重用性 函数 函数是一个独立的代码片段 它实现特定功能并返回结果 它可以独
  • muduo库源码分析和总结

    陈硕大神的muduo库设计巧 但是难读懂 这里简单做个总结 注意回调函数太多 需仔细研究回调的传递和调用 两个核心梳理主线 EventLoopThreadPool start EventLoop runInLoop 其次陈硕认为网络编程的本
  • 适合大学生兼职做的8个副业推荐

    说起在大学兼职赚钱 我总结了8个适合大学生的兼职方式 毕竟在大学想要自己的生活更精彩一点 仅靠家里给的生活费是显然不够的 如果你正在寻找一些适合大学生的兼职 那么以下这些兼职可能会是不错的选择 1 淘宝兼职设计 如果你的专业与设计有关 那么
  • java可变参数(不定向参数)

    java可变参数的作用 在编写方法的过程中 可能会遇见一个方法有不确定参数个数的情况 一般我们会用方法重载来解决问题 1 方法重载 解决参数个数不确定问题 2 public void method 3 public void method
  • python-selenium运行报chromedriver与chrome不匹配解决方案

    selenium common exceptions SessionNotCreatedException Message session not created This version of ChromeDriver only supp
  • kafka学习笔记总结

    kafka学习笔记总结 参考 http orchome com kafka index https blog csdn net qq 24084925 article details 78842844 角色说明 Message 通信的基本单
  • zabbix实现httpd监控

    zabbix z biks 是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案 zabbix能监视各种网络参数 保证服务器系统的安全运营 并提供灵活的通知机制以让系统管理员快速定位 解决存在的各种问题 zabbi
  • Mixlab工作坊工具箱:talking face

    Talking face 是一种计算机图形学和人工智能的技术 可以实现将一段音频转换为逼真的人脸动画 它可以用于视频游戏 虚拟主持人 语音助手等应用中 使人机交互更加自然和生动 1 SadTalker Video Lip Sync 基于Sa
  • 无涯的技术与成长的迷茫

    记得上大学之前 老师会为我们规划好一切 什么时候要高考 在什么时间点应该掌握哪些技能 每天要学什么 作业是什么 什么时候要放假了 一切都清晰明了 忙碌 但也充实 而上了大学后 感受最深的一点就是迷茫 没有方向 再也没有人为自己规划好一个明确
  • 【Spring从入门到实战】第 6 讲:SpringBoot 的事务管理

    本文已收录于专栏 Spring从入门到实战 专栏前言 大家好 我是执梗 本专栏将从Spring入门开始讲起 详细讲解各类配置的使用以及原因 到使用SpringBoot进行开发实战 旨在记录学习生活的同时也希望能帮到大家 如果对您能有所帮助
  • Google Maven Replacer Plugin插件详解

    在Maven项目的构建过程中 对于Maven标准预定义变量 或者
  • Android Studio App开发入门之图形定制Drawable的讲解及实战(附源码 超详细必看)

    运行有问题或需要源码数据集请点赞关注收藏后评论区留言 图形Drawable Android把所有能够显示的图形都抽象为Drawable类 这里的图形不止是图片 还包括色块 画板 背景等等 包含图片在内的图形文件放在res的目录的各个draw
  • 本地改代码服务器同时修改,sync_web: 将本地的修改通过ftp一键同步到服务器上 ,非常适合维护多个网站并且经常改动代码的情况...

    sync web 将本地的修改通过ftp一键同步到服务器上 非常适合维护多个网站并且经常改动代码的情况 监测文件变动依赖于svn或git author hellstar 在ksc的sync web项目基础上改进 需要安装python2 7环
  • c++11之std::enable_shared_from_this入门

    一 std enable shared from this
  • MySQL之rank() over(order by)

    一 准备工作 创建一个表palyers CREATE TABLE players pid int 2 NOT NULL AUTO INCREMENT name varchar 50 NOT NULL age int 2 NOT NULL P
  • JSON、AJAX简单介绍

    链接 https pan baidu com s 1CS9eQJB YyXorHR7k4P Ww 提取码 nkt2 JSON JavaScript 对象表示法 JavaScript Object Notation JSON 是存储和交换文本
  • 偷偷爆料下国内比较大型的 IT 软件外包公司名单(2023 最新版!)

    点击关注公众号 Java干货及时送达 来源 网络 1 软件外包公司名单 2 如何区分是否是外包公司 3 外包公司真是无一是处吗 4 软件外包的几种形式 5 哪些情况可选择外包 根据网上的资料 整理出来的一份国内软件外包公司的名单 找工作的同
  • RS485收发切换多0x00数据影响bootload升级程序

    串口升级使用RS485接口 RS485收发切换多0x00数据 部分有问题电路板在app程序中输入调试指令有响应 app通过ULINK下载 而使用ymodem在bootloader中升级程序失败 通过printf打印捕捉到数据包头多0x00数