找回密码
 立即注册
查看: 541|回复: 4

中断中的服务程序不要占时太长,应尽快退出中断,需时长,那就只能在主程序中处理

[复制链接]

该用户从未签到

551

主题

9550

回帖

1万

积分

管理员

积分
14011
发表于 2023-11-13 09:48:51 | 显示全部楼层 |阅读模式
中断中的服务程序不要占时太长,应尽快退出中断 !
1,如很短,就在中断服务程序中处理,如 <【2uS - 20uS】
=====如 只是读走数据/送数据,改变状态而已,  树立特殊标志位
=====如果STC8H8K64U40MHz, 则可以 【大致执行40条指令/uS
2,如很长,如  >【10uS/20uS/30uS/40uS/50uS...】
=====如果复杂的话,是树立特殊标志位后,然后在主循环中处理
需时长,那就只能在主程序中处理需要处理时间较长的事件
正在执行的中断:会屏蔽【低优先级的中断】和【同级的中断/含自己又发生的中断】;
直到执行完并退出,同级的和低优先级
中断才会被执行。
如果STC8H8K64U跑40MHz, 则可以 【大致执行40条指令/uS
一般中断服务程序都很短,如 <【2uS - 20uS】
只是
读走数据/送数据,改变状态,树立特殊标志位,而已。
如果复杂的话,是树立特殊标志位后,然后在主循环中处理 !




回复 送花

使用道具 举报

  • TA的每日心情
    开心
    2024-1-15 09:24
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    1

    主题

    26

    回帖

    111

    积分

    注册会员

    积分
    111
    发表于 2023-12-29 08:42:18 | 显示全部楼层
    回复 送花

    使用道具 举报

  • TA的每日心情

    3 天前
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    6

    主题

    29

    回帖

    138

    积分

    注册会员

    积分
    138
    发表于 3 天前 | 显示全部楼层
    你好,我现在串口发送影响了我通过定时器0模拟的PWM驱动无源蜂鸣器的波形,请问怎么解决
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    551

    主题

    9550

    回帖

    1万

    积分

    管理员

    积分
    14011
     楼主| 发表于 3 天前 | 显示全部楼层
    用 DMA来支持串口发送
    用硬件 PWM
    截图202405181638542101.jpg

    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情

    半小时前
  • 签到天数: 83 天

    [LV.6]常住居民II

    4

    主题

    495

    回帖

    1349

    积分

    金牌会员

    积分
    1349
    发表于 3 天前 | 显示全部楼层
    ldc521 发表于 2024-5-18 14:29
    你好,我现在串口发送影响了我通过定时器0模拟的PWM驱动无源蜂鸣器的波形,请问怎么解决 ...

    直接用硬件pwm
    回复 支持 反对 送花

    使用道具 举报

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

    本版积分规则

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

    GMT+8, 2024-5-21 07:33 , Processed in 0.060417 second(s), 48 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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