找回密码
 注册
关于网站域名变更的通知
查看: 297|回复: 4
打印 上一主题 下一主题

串口通讯时可以被中断打断吗?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-6-16 09:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
串口通讯时可以被中断打断吗?
  ~! B2 a! n4 i* d% u: Y; Y8 l自带的,模拟的都不可以吗?# u" h5 J: p8 ^
比如说我现在在检测位置的脉冲信号,而且频率比较高0 h# d. M& d9 m3 |5 H1 v
现在我要用串口发一些数据给单片机,一发就好几个字节,漏了我的脉冲怎么办啊!8 V, [& b+ t+ `+ r6 g8 o* e- {5 e
谢谢!1 ], u* t" G8 K. Q  C' f. v
  • TA的每日心情
    奋斗
    2022-1-21 15:15
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2022-6-16 10:08 | 只看该作者
    这要看你的中断优先级设定, o7 P# V1 F* K; S7 m
    还有你单片机的处理速度,如果波特率低,单片机指令处理速度快,在接收两个字节的间隙单片机可以处理很多其它的事情,包括你检测脉冲所用的中断,只要你的中断用时不要太长就行。' c8 f0 U  I# l/ u1 y
    试一下就知道了,一般问题不大。6 N8 _3 Q: Y, B9 v
  • TA的每日心情
    开心
    2022-1-29 15:07
  • 签到天数: 2 天

    [LV.1]初来乍到

    3#
    发表于 2022-6-16 10:13 | 只看该作者
    参照片选信号,与对方建立同步握手
    0 z* Y% z% ]. ?打断串口是有风险的
  • TA的每日心情
    慵懒
    2022-1-21 15:20
  • 签到天数: 1 天

    [LV.1]初来乍到

    4#
    发表于 2022-6-16 10:28 | 只看该作者
    硬件串口自动工作的,发送接收只要几个指令即可, _+ U# v8 N7 S* b, t/ _4 p
    在接收两个字节的间隙 中你随便什么时候处理都行,怎么会丢呢?又何来的风险?5 V7 w5 q# s5 o/ e# l" D
    如果你最不到这点,或不能理解这点,那说明你单片机还没入门哦
    ' b1 {4 V6 h& d, V' w  r( `' d自己多想想吧,也可以去看下别人的程序和Keil 的实例
  • TA的每日心情
    开心
    2022-1-29 15:04
  • 签到天数: 1 天

    [LV.1]初来乍到

    5#
    发表于 2022-6-16 10:57 | 只看该作者
    串行通信完全可以被中断
    2 M4 s: z; c- L0 I: z! @3 X* v: M/ `9 V, l串行数据的发送是由UART硬件自动实现的,也就是MOV SBUF,A执行了以后单片机实际上就不用再管数据是如何逐位发出的,只需要根据标志位TI了解一帧字节是否确实已经发出。所以串口通信被中断不会影响到一帧字节的发送,只会影响几帧字节的连续发送(在连续的两帧之间造成停顿)。如果你的脉冲检测是由外部中断实现的,那你只要将外部中断的优先级设得高于串口的优先级(在串口和脉冲同时抢中断时先响应脉冲),并且在串行中断服务子程序里不要关中断就行。
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-8-11 16:36 , Processed in 0.125000 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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