查看: 5086|回复: 8

【Freemodbus】fm33lc046n移植freemodbus不能进入tsbe中断

[复制链接]

1

主题

1

帖子

7

积分

初级工程师

Rank: 1

积分
7
发表于 2022-1-6 09:46:20 来自手机 | 显示全部楼层 |阅读模式
如题。移植使用的是gptim0和uart1。
回复

使用道具 举报

155

主题

847

帖子

4701

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
4701
发表于 2022-1-10 11:12:29 | 显示全部楼层
不清楚tsbe是什么中断。 modbus 可以使用 FM33lc0的uart1的接收超时中断,做帧间超时判断, 需要使能RXTOEN。打开RXTIE。就能产生超时中断
回复

使用道具 举报

155

主题

847

帖子

4701

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
4701
发表于 2022-1-10 11:40:07 | 显示全部楼层
针对modbus 我们的uart做了优化的。可以一个搞定,不需要其他定时器
回复

使用道具 举报

1

主题

11

帖子

1021

积分

资深专家

Rank: 7Rank: 7Rank: 7

积分
1021
发表于 2022-2-5 15:14:28 | 显示全部楼层
顾博文 发表于 2022-1-10 11:40
针对modbus 我们的uart做了优化的。可以一个搞定,不需要其他定时器

波特率超过19200以后,那个固定的延迟怎么搞定?
回复

使用道具 举报

1

主题

11

帖子

1021

积分

资深专家

Rank: 7Rank: 7Rank: 7

积分
1021
发表于 2022-2-6 11:01:39 | 显示全部楼层
顾博文 发表于 2022-1-10 11:40
针对modbus 我们的uart做了优化的。可以一个搞定,不需要其他定时器

波特率大于19200时,怎么搞定?
回复

使用道具 举报

155

主题

847

帖子

4701

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
4701
发表于 2022-2-21 08:53:24 | 显示全部楼层
amrogue 发表于 2022-2-6 11:01
波特率大于19200时,怎么搞定?

rtu模式不存在 固定延时吧。 ascii 模式自己弄个定时器吧。延时太长不可能用255搞定
回复

使用道具 举报

1

主题

11

帖子

1021

积分

资深专家

Rank: 7Rank: 7Rank: 7

积分
1021
发表于 2022-2-23 09:24:11 | 显示全部楼层
顾博文 发表于 2022-2-21 08:53
rtu模式不存在 固定延时吧。 ascii 模式自己弄个定时器吧。延时太长不可能用255搞定 ...

rtu模式在波特率大于19200时,固定帧间隔1.8ms
回复

使用道具 举报

155

主题

847

帖子

4701

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
4701
发表于 2022-2-28 08:49:00 | 显示全部楼层
amrogue 发表于 2022-2-23 09:24
rtu模式在波特率大于19200时,固定帧间隔1.8ms

延时是已波特算的,115200bps 的 255个bit时间都超过1.8ms了。115200都可以用。你再仔细看看接收超时寄存器。
回复

使用道具 举报

1

主题

11

帖子

1021

积分

资深专家

Rank: 7Rank: 7Rank: 7

积分
1021
发表于 2022-3-5 22:53:28 | 显示全部楼层
顾博文 发表于 2022-2-28 08:49
延时是已波特算的,115200bps 的 255个bit时间都超过1.8ms了。115200都可以用。你再仔细看看接收超时寄存 ...

是的,最高可以用到115200.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表