• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

STM32如何基本同时读到两个传感器的信号?用操作系统也不准

3a6b89dfe1239421 2020-08-16 浏览量:1130
  1. 我现在用stm32做一个项目,然后想要基本同时读到两个传感器的信号,信号时间在1~10ms之间,对程序的运行速度要求比较高,本来不跑操作系统的,发现不是很准,后来用上了ucosII创建两个任务分别读1和2的传感器,发现更不准,而且這个好像会对我的网络通信有影响串口,像這种操作系统它本身就不可以实现多线程并进,所以上這种实时操作系统所谓的分时复用会降低我们的代码运行速度吗。网上找不到答案,实在没办法了,
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 目前所有的操作系统都是会在一个核心上面进行时间片轮转的,因为处理器的核心数总是小于当前的线程数

    实时系统需要设置任务的优先级的,这样优先级高的任务可以优先占用CPU核

    • 发布于 2020-08-16
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:5

  • 操作系统时间片不能太短,一般是10ms,所以还是用定时中断读取数据好,并且把串口优先级设置高一点,
    • 发布于2020-08-16
    • 举报
    • 评论 0
    • 0
    • 0

  • 建议两个传感器的读取指令尽量放的近一些,毕竟STM32单核的片子是串行执行的,实在不行可以使用FPGA做前端,接收传感器的数据在交给STM32处理。
    • 发布于2020-08-16
    • 举报
    • 评论 0
    • 0
    • 0

  • 你想多了,你又不是多核的CPU
    • 发布于2020-08-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 放在一起读不可以吗?或者说把优先级调高
    • 发布于2020-09-28
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

STM32如何基本同时读到两个传感器的信号?用操作系统也不准