BENHUAN 发表于 2019-11-12 15:43:47

请问下硬汉哥,这几个例程的启动文件

Stack_Size      EQU   0x00008000

这里的堆栈都设置的非常大,请问是什么原因

lianfutiana 发表于 2019-12-6 11:29:07

必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!必须顶!

beisongcrt 发表于 2020-3-20 09:17:10

最近在弄一个modbus的项目,帮助很大,谢谢楼主!

eric2013 发表于 2020-4-23 14:45:23

https://img.anfulai.cn/dz/attachment/forum/202004/23/121917qbz1psbmbpbbsk5m.png

linux518 发表于 2020-5-5 17:10:40

学习了,好资料

本五心 发表于 2020-5-16 09:08:15

换行业,刚进去工业,不熟悉这块,我想抄一下:lol请问稳定不?

eric2013 发表于 2020-5-16 09:12:12

本五心 发表于 2020-5-16 09:08
换行业,刚进去工业,不熟悉这块,我想抄一下请问稳定不?

稳定,这个教程配的例子就是从我们项目例子修改而来的。

本五心 发表于 2020-5-16 09:23:14

eric2013 发表于 2020-5-16 09:12
稳定,这个教程配的例子就是从我们项目例子修改而来的。

加入ucos要注意什么

eric2013 发表于 2020-5-16 09:28:03

本五心 发表于 2020-5-16 09:23
加入ucos要注意什么

这个综合Demo里面有我移植到RTX上的。

你移植到uCOS上也是一样的:

http://www.armbbs.cn/forum.php?mod=viewthread&tid=17330&extra=page%3D1

本五心 发表于 2020-5-16 09:38:21

eric2013 发表于 2020-5-16 09:28
这个综合Demo里面有我移植到RTX上的。

你移植到uCOS上也是一样的:


硬汉哥,能加个微信不?

eric2013 发表于 2020-5-16 09:49:51

本五心 发表于 2020-5-16 09:38
硬汉哥,能加个微信不?

baiyongbin2009

exp_exp 发表于 2020-5-16 17:18:37

这个modbus教程我一直有个疑惑,为什么串口收来的数据帧不直接和自己使用的变量挂钩呢,我看例程把数据存在了一个结构体了。然后使用的时候还要从结构体取数据,这不是费事了吗。今天没事又看了下freemodbus的从机例子,也是同样,把数据存到数组里了。还是本身这个结构体或者这个数组只是给个例子,具体开发还要看自己。换句话说,例程里的结构体或者freemodbus里数组是需要自己删除的东西。

eric2013 发表于 2020-5-16 17:21:37

exp_exp 发表于 2020-5-16 17:18
这个modbus教程我一直有个疑惑,为什么串口收来的数据帧不直接和自己使用的变量挂钩呢,我看例程把数据存在 ...

我们那个是串口FIFO。

查询无结果 发表于 2020-6-5 09:39:21

感谢硬汉大哥的教程:loveliness:

简单就好 发表于 2020-6-21 11:21:26

04 指令怎么不能用? 发送 01 04 00 01 00 01 60 0A接收 01 84 01 82 C0

eric2013 发表于 2020-6-21 11:35:01

简单就好 发表于 2020-6-21 11:21
04 指令怎么不能用? 发送 01 04 00 01 00 01 60 0A接收 01 84 01 82 C0

校验码不对,是61 3A

Aqst-666 发表于 2020-6-29 19:39:14

顶一个好贴

芯动521 发表于 2020-7-3 09:03:38

好东西,果断收藏学习

简单就好 发表于 2020-7-4 09:59:40

eric2013 发表于 2020-6-21 11:35
校验码不对,是61 3A

你好,硬汉哥,我把校验码改为 61 3A 就不应答了,我的此时环境是 MODBUS调试助手(V1.0)+ MODBUS 虚拟设备 + 虚拟串口工具。点击04H 指令的读取出的问题

eric2013 发表于 2020-7-4 13:08:46

简单就好 发表于 2020-7-4 09:59
你好,硬汉哥,我把校验码改为 61 3A 就不应答了,我的此时环境是 MODBUS调试助手(V1.0)+ MODBUS 虚拟 ...

最好用两个板子直接测试、

其他问题你再研究研究。

简单就好 发表于 2020-7-6 10:51:03

eric2013 发表于 2020-7-4 13:08
最好用两个板子直接测试、

其他问题你再研究研究。

嗯,好吧,是不是虚拟从机不支持04功能码

eric2013 发表于 2020-7-6 10:59:01

简单就好 发表于 2020-7-6 10:51
嗯,好吧,是不是虚拟从机不支持04功能码

这个需要你联系我们旺旺咨询下。

wubangdi 发表于 2020-7-28 09:23:43

请问,例程里好像没考虑字符间t1.5的检测,这个在实际工程中没有影响吗?谢谢

eric2013 发表于 2020-7-28 09:39:33

wubangdi 发表于 2020-7-28 09:23
请问,例程里好像没考虑字符间t1.5的检测,这个在实际工程中没有影响吗?谢谢

我们是采用的中断FIFO方式,没问题,一帧数据是连续发送的。

不放心,提升串口中断优先级即可,这样连续发送期间就用于不会被打断。

wqp1111 发表于 2020-8-2 13:03:43

感谢楼主的无私奉献

wubangdi 发表于 2020-8-19 16:46:23


eric2013 您好
在调试modbus时碰到奇怪的問题,使用您的modbus+uartfifo例程,在完成中断接收后,poll里处理完,发送回执失败,现象是进入串口发送,向dr注入一个字节后,就跳转到接收中断
uart recieve ch = 01
uart recieve ch = 04
uart recieve ch = 01
uart recieve ch = 91
uart recieve ch = 00
uart recieve ch = 01
uart recieve ch = 61
uart recieve ch = DB
fini 8 rs485 recieve       //正确接收8个字节
into rs485_senbuf      //poll处理完,进入串口发送
rs485_senbuf _usLen = 0x0005
rs485_senbuf _ucaBuf = 0x01 84 02 C2 C1
rs485_senbuf buf = 0x01 84 02 C2 C1         //检查发送缓存数据正常
into transmit not UART_WORDLENGTH_9B, pData = 01      //向dr注入“01”
uart recieve ch = 00      //然后莫名跳转到接收中断,且串口发送“00”
fini 8 rs485 recieve


单独对该串口进行了简单的hal库的发送、接收测试,是正常的

eric2013 发表于 2020-8-20 02:25:24

wubangdi 发表于 2020-8-19 16:46
eric2013 您好
在调试modbus时碰到奇怪的問题,使用您的modbus+uartfifo例程,在完成中断接收后,poll里 ...

使用我们的串口FIFO测试下485是否正常,先不移植modbus

wubangdi 发表于 2020-8-20 10:08:40

eric2013 发表于 2020-8-20 02:25
使用我们的串口FIFO测试下485是否正常,先不移植modbus

按您说的单独测试了uartfifo,现象一样,
start progam
Into main uartIRQ    //接收4个80,然后发送第1个80
Into uartIRQ RXNE
Rx_Buf = 80
Into main uartIRQ
Into uartIRQ RXNE
Rx_Buf = 80
Into main uartIRQ
Into uartIRQ RXNE
Rx_Buf = 80
Into main uartIRQ
Into uartIRQ RXNE
Rx_Buf = 80
Rx_Buf = 80
Rx_Buf = 80
Rx_Buf = 80
Rx_Buf = 80    //数据接收测试正常
Into main uartIRQ
Into uartIRQ TXE   //进入发送中断
Into main uartIRQ
Into uartIRQ RXNE   //跳转到接收中断
Rx_Buf = 00   //串口发送00

eric2013 发表于 2020-8-20 10:46:53

wubangdi 发表于 2020-8-20 10:08
按您说的单独测试了uartfifo,现象一样,
start progam
Into main uartIRQ    //接收4个80,然后发送 ...

说明你UARTFIFO没有移植成功。

wubangdi 发表于 2020-8-20 11:08:17

eric2013 发表于 2020-8-20 10:46
说明你UARTFIFO没有移植成功。

是的,移植您的uartfifo失败了,应该是例程我还没理解透,可能与cubemx生成的工程模版某个地方冲突了,刚刚用hal库重写uart就可以正常中断收发了.
特别喜欢您的代码风格,还要努力向您学习。

eric2013 发表于 2020-8-21 00:31:10

wubangdi 发表于 2020-8-20 11:08
是的,移植您的uartfifo失败了,应该是例程我还没理解透,可能与cubemx生成的工程模版某个地方冲突了,刚 ...

{:33:}

sunxianfei88 发表于 2020-10-24 16:09:23

有没有使用手册

eric2013 发表于 2020-10-25 01:01:54

sunxianfei88 发表于 2020-10-24 16:09
有没有使用手册

那个的使用手册。

Sean163 发表于 2020-10-26 20:47:41

赞一个,学习一下

风眠 发表于 2020-11-9 14:38:18

手册第20页的 表2.3 应该是写错了

风眠 发表于 2020-11-9 15:48:43

风眠 发表于 2020-11-9 14:38
手册第20页的 表2.3 应该是写错了

第23页 表4.3也存在错误,有必要的话可以更正一下

eric2013 发表于 2020-11-10 08:58:29

风眠 发表于 2020-11-9 15:48
第23页 表4.3也存在错误,有必要的话可以更正一下

好的。

清风徐来 发表于 2020-11-15 22:57:45

请问,安富莱自己写的Modbus 与 开源的FreeModbus实现的功能上应该是一样的吧? 两者有什么差异? 想移植一个到RTX4上, 以前没了解过这个协议。

eric2013 发表于 2020-11-16 00:32:45

清风徐来 发表于 2020-11-15 22:57
请问,安富莱自己写的Modbus 与 开源的FreeModbus实现的功能上应该是一样的吧? 两者有什么差异? 想移植 ...

我这里移植好了,用的RTX4

【安富莱】F429开发板RTOS+emWin+FS+TCP/IP+USB+CAN+Modbus综合Demo已发布(2017-03-21)
http://www.armbbs.cn/forum.php?mod=viewthread&tid=17330&fromuid=58
(出处: 硬汉嵌入式论坛)

louzhulz 发表于 2020-12-4 11:33:19

谢谢大佬。
页: 1 2 [3] 4 5
查看完整版本: 【年末福利】安富莱电子发布Modbus教程,配套STM32F103,F407,F429和H7主从机例子,含HAL和标准库两版(2022-10-03)