使用ARM中UART接收发送数据时,如果选择每接收一个字节数据就产生接收中断如何设计程序

问问题描述

使用ARM中UART接收发送数据时,如果选择每接收一个字节数据就产生接收中断如何设计程序,求大佬施舍一个解决方案,感激不尽!

答精选答案

最佳答案

首先你要知道,UART不是与ARM体系有关,而是与具体的ARM体系CPU有关。

就是说不同的CPU的UART控制器是不一样的

这个程序只能给你一个思路了

有些CPU这些发送,接收中断是可以在寄存器直接设置一个阀值的

比如你的发送缓存为8个字节,接收也是8个字节

你可以设置,当发送缓存里的数据少于1的时候就产生中断

当接收缓存里数据大于4时,就产生中断

目前很多CPU都可以直接设置内部的UART寄存器来完成这个配置

如果没有UART控制器来完成。就是说你的UART发送和接收都是自己控制的

你可以在自己的发送,接收的中断处理程序里面模拟一个缓存,来实现这些功能。我想这个应该不成问题吧

就是2个全局变量记录缓存的用量分别记录接收和发送

还有2个全局数组,比如8个字节,用来缓存接收发送的数据

你的UART中断程序如果判断到是接收,首先把数据放到缓存,然后接收缓存计数+1,判断是否超过某一个阀值,如果是的话,就做一些自定义的事情

发送是同样的道理

本文来自作者[文皓篮球]投稿,不代表公众科技网立场,如若转载,请注明出处:https://www.cpst.net.cn/changshijingxuan/202609/1191476.html

赞 (0)

发表回复

本站作者后才能评论

评论列表(4条)

  • 文皓篮球
    文皓篮球 2026年09月30日

    我是公众科技网的签约作者“文皓篮球”!

  • 文皓篮球
    文皓篮球 2026年09月30日

    希望本篇文章《使用ARM中UART接收发送数据时,如果选择每接收一个字节数据就产生接收中断如何设计程序》能对你有所帮助!

  • 文皓篮球
    文皓篮球 2026年09月30日

    本站[公众科技网]内容主要涵盖:教育咨询,知识百科

  • 文皓篮球
    文皓篮球 2026年09月30日

    本文概览:首先你要知道,UART不是与ARM体系有关,而是与具体的ARM体系CPU有关。就是说不同的CPU的UART控制器是不一样的这个程序只能给你一个思路了有些CPU这些发送,接收中断是可以在寄存器直接设置一个阀值的比如你的发送缓存为8个字节,接收也是8个字节你可以设置,当发送缓存里的数据少于1的时候就产生中断当接收缓存里数据大于4时,就产生中断目前很多CPU都可以直接设置内部的UART寄存器来完成这个配置如果没有UART控制器来完成。就是说你的UART发送和接收都是自己控制的你可以在自己的发送,接收的中断处理程

联系我们

联系:143 0457 151

工作时间:周一至周五,9:30-18:30,节假日休息

关注我们