当前位置:首页 > 问答

【海尔总线数据调乱了怎么办】Modbus的通信参数存在于flash中。如果感到困惑,该怎么办

FreeModbus从设计(12)-Modbus的通信参数位于flash中

关键字:重置FreeModbus默认参数HAL库flash STM32

上一句说明了如何将Modbus的通信参数存储在STM32F103C8T6的闪存中。这可以简化硬件电路设计,使功能扩展更加灵活。但是工兵火(微信公众号:工兵火)认为,这种方法也有副作用。因为用通信方法修改了参数。如果用户忘记了上次修改的参数,是不是无法建立串行连接?需要用一个参数来试验,需要很多时间,或者需要重新刷单片机的程序,但这需要开发工程师的参与。公众号前面有一篇关于PLC停电功能的文章,在这里可以为解决这个问题提供参考。大体上,是为用户保留数据命令。如果在单片机供电时收到此命令,则使用默认通信参数运行。此时,用户只需通过串行端口连接单片机,然后将通信参数更改为想要的。(大卫亚设)。

我来告诉你具体的方法。

(1)设置基本通信参数。工兵火(微信公众号:工兵火)这里称为“重置默认值参数”。也就是说,单片机重置后,每次都根据此参数运行Modbus,经过一段时间后切换到用户设置的参数。

如图1所示,在程序的初始化阶段,首先设置基本通信参数。其中,设置为站地址1、波特率19200bps、偶校验、停止位1位。

(2)使用计时器指定500毫秒的计时(取决于实际情况)。在此期间,如果收到作为默认参数运行的数据命令,则通信参数不会切换。否则,将切换到用户设置的Modbus参数。

如图2所示,在回调函数eMBRegHoldingCB()中,如前一章所述,该函数在收到写保持寄存器命令后处理该数组,然后确定ucUsrInitBaud变量此变量的初始化值为0:500毫秒,计时器的中断为1

图1

图2

如果工作站地址为1,从地址0开始写寄存器数为2,分别为0xff55和0xaaff,则始终使用默认参数运行Modbus。也就是说,如果从主工作站接收数据到01 10 00 00 02 04 FF 55 AA FF ED 4B,则始终使用默认参数运行Modbus。用UcUsrTurnonStop变量表示。

(3)切换用户设置的Modbus参数。如图3所示,在计时器溢出中断回调函数中,在第一个500毫秒定时时间为ucUsrComReset变量赋值,将Modbus作为0xff的默认参数运行,并切换用户为0x55设置的Modbus参数

图3

如图4所示,如果程序主循环中的ucUsrComReset==0x55,则首先停止停止停止堆栈,然后重新初始化,并将ucUsrComReset设置为0xff,以便重新初始化一次。

图4

工兵火(微信公众号:工兵火)这里展示的是我的实现方法。主要讲思维方式,朋友们也可以有自己的实现逻辑和方法,我的这个方法并不是最好的。

这使您可以在供电500毫秒内根据“重置默认值参数”运行Modbus,然后根据从主工作站发送的数据确定如何运行下一步。如果需要通过重置基本参数运行,则必须在500毫秒内将01 10 00 00 00 02 04 FF 55 AA FF ED 4B作为从属文件发送。一般的方法是,在给单个芯片供电之前,继续发送此数据,然后给单个芯片供电。

如果用户忘记了以前修改的Modbus通信参数,则在“重置默认参数”状态下,根据上一节中介绍的在线通信参数修改方法,更改为所需的参数,然后重新启动单个控制器,就可以正常通信。

单片机、ARM、现场总线、PLC、嵌入式软硬件设计经验分享,坚持“一点点智慧”的概念,以实际项目为单位讲解知识点,共同分享,共同沟通。

1.《【海尔总线数据调乱了怎么办】Modbus的通信参数存在于flash中。如果感到困惑,该怎么办》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《【海尔总线数据调乱了怎么办】Modbus的通信参数存在于flash中。如果感到困惑,该怎么办》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/why/3052871.html

上一篇

【半自动洗衣机三个孔螺丝怎么卸】自动洗衣机拆卸清洗并不难。看完这篇文章都知道了

下一篇

【海尔滚筒怎么单独脱水】使洗涤更简单,洗涤更明智,海尔水晶变频滚筒洗衣机评价

【海尔总线数据调乱了怎么办】海尔XQG65-HB1286变频辊显示EARu通信故障维修。

【海尔总线数据调乱了怎么办】海尔XQG65-HB1286变频辊显示EARu通信故障维修。

海尔总线数据调乱了怎么办相关介绍,海尔XQG65-HB1286变频滚筒洗衣机。2011年购买,洗衣机坏了,维修过程记录如下。对大家都有参考的用途。这台洗衣机的工作控制和电机驱动分别由工作显示控制、变频电机驱动板两个仪表板控制。 变频驱...

【海尔总线数据调乱了怎么办】总结液晶电视进入公共汽车的方法,希望对机械师有用

【海尔总线数据调乱了怎么办】总结液晶电视进入公共汽车的方法,希望对机械师有用

海尔总线数据调乱了怎么办相关介绍,LCD电视主板如何进入公交车,如果你知道更多朋友,欢迎添加。 海神:从菜单中选择“平衡音量”,然后按1969键 昌红:把音量降低到0,按静音,按菜单按钮,然后按0816 音乐视频:信号源2580 江歌...

【海尔总线数据调乱了怎么办】总结的几种液晶电视进入公交车的方法。

【海尔总线数据调乱了怎么办】总结的几种液晶电视进入公交车的方法。

海尔总线数据调乱了怎么办相关介绍,LCD电视主板如何进入公交车,如果你知道更多朋友,欢迎添加。 海神:从菜单中选择“平衡音量”,然后按1969键 昌红:把音量降低到0,按静音,按菜单按钮,然后按0816 音乐视频:信号源2580 江歌...

【海尔总线数据调乱了怎么办】十大品牌液晶电视总线的进入方法与调整

【海尔总线数据调乱了怎么办】十大品牌液晶电视总线的进入方法与调整

海尔总线数据调乱了怎么办相关介绍,十大品牌液晶电视总线的进入方法与调整 1、海信电视进入工程模式方法 用遥控器选择,菜单-在声音设置中选择平衡,输入0532即可进入工程模式。海信电视都是这样的。 这个输入。 2、LG等离子体工程模式输...

【海尔总线数据调乱了怎么办】海尔LCD电视LE42A520不开灯,也不修理——食物,真是可惜。

【海尔总线数据调乱了怎么办】海尔LCD电视LE42A520不开灯,也不修理——食物,真是可惜。

海尔总线数据调乱了怎么办相关介绍,电话维修海尔LCD TV LE42A520开机灯也不亮,现场测试电源5V、12V、24V正常,板上穿孔,无法维修,X宝买了板子,开门滑稽表情。(屏幕参数不对,公交车也找不到调试项目,公交车方法Me 先...

【海尔总线数据调乱了怎么办】如何解决公交通信数据冲突问题

  • 【海尔总线数据调乱了怎么办】如何解决公交通信数据冲突问题
  • 【海尔总线数据调乱了怎么办】如何解决公交通信数据冲突问题
  • 【海尔总线数据调乱了怎么办】如何解决公交通信数据冲突问题