找回密码
 立即注册
查看: 13|回复: 3

8G2K64使用PWM5中断

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2025-06-27 11:20:48
已绑定手机

1

主题

1

回帖

9

积分

新手上路

积分
9
发表于 昨天 11:28 | 显示全部楼层 |阅读模式
屏蔽词中断处理函数时,串口屏触摸正常,没屏蔽时,接收串口屏迟钝
截图202506271126129587.jpg
回复

使用道具 举报 送花

3

主题

538

回帖

-213

积分

等待验证会员

积分
-213
发表于 昨天 11:33 | 显示全部楼层
在使用STC8G2K64单片机时,若在PWM5中断中处理屏蔽词中断函数,串口屏触摸正常;而未屏蔽时,接收串口屏出现迟钝现象,可能涉及以下几方面的系统资源冲突或中断优先级配置问题。

首先,STC8G2K64作为一款基于8051内核的增强型单片机,其内部中断源包括定时器、外部中断、串口、ADC等。其中,PWM模块通常由定时器实现,PWM5中断属于定时器中断的一种。若在该中断服务程序(ISR)中进行过多操作或未合理管理中断优先级,可能导致其他关键中断(如串口接收中断)被延迟响应,从而造成串口屏通信迟钝。

其次,串口屏通常通过UART与主控芯片通信,其数据接收依赖于串口中断。当PWM5中断频繁触发且处理时间较长时,可能抢占串口中断的执行时机,导致串口接收缓冲区数据堆积,进而引发响应延迟。特别是在未屏蔽PWM5中断的情况下,若中断处理函数中包含耗时操作(如延时、复杂计算等),将进一步加剧这一问题。

建议采取以下优化措施:

1. 调整中断优先级:通过设置IP寄存器,适当提高串口中断优先级,确保其在PWM5中断发生时仍能及时响应。例如,将串口中断设为高优先级,避免被PWM5中断长时间抢占。

2. 精简PWM5中断处理函数:仅在PWM5中断中执行必要的操作,避免在ISR中进行复杂计算或延时操作。可将耗时任务移至主循环中处理,或通过标志位通知主程序执行。

3. 检查串口接收缓冲机制:确保串口接收采用环形缓冲区设计,并在主循环中及时处理接收到的数据,防止数据溢出或积压。

4. 测试中断嵌套情况:确认系统是否允许中断嵌套,若开启嵌套,需确保各中断服务程序的执行效率,避免因多层中断嵌套导致系统响应变慢。

综上所述,串口屏通信迟钝问题可能源于PWM5中断对串口接收中断的干扰。通过合理配置中断优先级、优化中断处理逻辑及完善串口接收机制,可有效改善系统整体响应性能。

[本文内容由国芯人工智能辅助生成,仅供参考]
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2025-06-27 11:20:48
已绑定手机

1

主题

1

回帖

9

积分

新手上路

积分
9
发表于 昨天 11:45 | 显示全部楼层
国芯人*** 发表于 2025-6-27 11:33
在使用STC8G2K64单片机时,若在PWM5中断中处理屏蔽词中断函数,串口屏触摸正常;而未屏蔽时,接收串口屏出 ...

目前pwm5中没有任何操作,使用其他pwm开中断是没出现此问题
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:480
  • 最近打卡:2025-06-28 00:00:59
已绑定手机

80

主题

5214

回帖

9305

积分

超级版主

DebugLab

积分
9305
发表于 昨天 13:52 | 显示全部楼层
需要确保中断正确跳转
中断频率不要过高
需要软件清除标志位的必须及时清除标志位
不要在中断内执行耗时操作(pwm5中没有任何操作不存在此问题)
设置好中断优先级
DebugLab
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-6-28 17:59 , Processed in 0.202527 second(s), 71 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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