找回密码
 立即注册
查看: 2206|回复: 11

串口硬件超时中断参考例子

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:443
  • 最近打卡:2025-06-13 08:57:40
已绑定手机

39

主题

2053

回帖

7054

积分

论坛元老

积分
7054
发表于 2024-9-23 18:48:01 | 显示全部楼层 |阅读模式
STC32系列从【STC32G8K64,STC32F】开始推出了串口硬件超时中断功能
存在问题

启动超时中断后,只要接收脚空闲信号时间超过设置的超时时间,就会触发超时中断。
从而导致没有数据通信期间会反复触发超时中断。

STC8H2K08U系列开始对串口硬件超时功能进行了优化与加强
优化部分:
解决了空闲期间超时中断反复触发问题。
启动超时中断后,RXD脚收到数据后才开始计时,产生超时中断后停止计时。
加强部分:增加了一个字节的超时时间控制寄存器,使超时时间控制寄存器达到24位

截图202409231845172599.jpg

附件提供这几个系列
单片机的串口硬件超时中断例子,供参考

STC32F-串口1-DMA-硬件超时.zip

16.96 KB, 下载次数: 71

STC32G8K-串口1-DMA-硬件超时.zip

17.06 KB, 下载次数: 90

STC8H2K08U串口1串口2-超时中断与电脑收发测试-20240322.zip

15.43 KB, 下载次数: 105

2 喜欢他/她就送朵鲜花吧,赠人玫瑰,手有余香!
回复

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:98
  • 最近打卡:2025-06-15 09:46:00

733

主题

1万

回帖

1万

积分

管理员

积分
16601
发表于 2024-9-23 22:00:42 | 显示全部楼层
AI8051U的串口硬件超时中断也是最新水平
截图202409232203067918.jpg

截图202409232203597017.jpg
深圳国芯人工智能有限公司-实验箱 (stcai.com)


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:143
  • 最近打卡:2025-06-14 10:26:20
已绑定手机

0

主题

26

回帖

427

积分

中级会员

积分
427
发表于 2024-9-24 15:37:55 | 显示全部楼层
这个硬件超时好。特别是用在MODBUS上面
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:186
  • 最近打卡:2025-03-06 09:49:49

14

主题

133

回帖

1225

积分

金牌会员

积分
1225
发表于 2024-11-19 10:43:30 | 显示全部楼层
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:242
  • 最近打卡:2025-06-15 20:49:01
已绑定手机

25

主题

353

回帖

1864

积分

金牌会员

积分
1864
发表于 2024-11-19 10:45:10 | 显示全部楼层
功能越来越强大了。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:176
  • 最近打卡:2025-02-19 17:24:49

15

主题

265

回帖

1387

积分

金牌会员

积分
1387
发表于 2024-11-30 22:05:26 | 显示全部楼层
没有超时侦测之前,接收时,如果收到第一个字节就开启一个定时器,并且把3.5个字节的时间给他,每收到一个字节,就重置定时器。直到中断,认为接收完成。现在好了,直接在中断里查询是否是超时了。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:459
  • 最近打卡:2025-06-15 06:48:21

4

主题

511

回帖

2173

积分

金牌会员

积分
2173
发表于 2024-12-2 07:11:46 | 显示全部楼层
回复

使用道具 举报 送花

1

主题

3

回帖

147

积分

注册会员

积分
147
发表于 2025-1-10 17:30:15 | 显示全部楼层
是不是可以STC32G12K128没有串口硬件超时中断功能?手册上标明 STC32G12K128 没有 ENTO 串口接收超时控制位,开始我以为是默认使能串口接收超时控制。
截图202501101727176933.jpg
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:3
  • 最近打卡:2025-05-29 09:24:56
已绑定手机

1

主题

2

回帖

27

积分

新手上路

积分
27
发表于 2025-5-29 09:24:56 | 显示全部楼层
我使用的是STC32G8K64-42I-LQFP32,为啥设置完    UR1TOTL = 0xe0;
    UR1TOTH = 0xab;     //0xABE0 = 44000之后开启超时中断,不管RX有没有数据,都直接进了超时中断?

点评

看1L提示是个已知问题,可以换8H2K或者Ai8051U系列。 [attachimg]101877[/attachimg]  详情 回复 发表于 2025-5-29 14:43
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:207
  • 最近打卡:2025-06-15 14:11:16
已绑定手机

67

主题

1906

回帖

4279

积分

荣誉版主

无情的代码机器

积分
4279
发表于 2025-5-29 14:43:02 | 显示全部楼层
惠*** 发表于 2025-5-29 09:24
我使用的是STC32G8K64-42I-LQFP32,为啥设置完    UR1TOTL = 0xe0;
    UR1TOTH = 0xab;     //0xABE0 = 44 ...


看1L提示是个已知问题,可以换8H2K或者Ai8051U系列。
截图202505291442214967.jpg
三天不学习,赶不上刘少奇~
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-15 22:39 , Processed in 0.154674 second(s), 123 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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