• 已解决 53851 个问题
  • 已帮助 5918 位优秀工程师

单片机有两个程序如何合成一个呢?

原来如此 2018-03-30 浏览量:647
单片机小车子同时有红外避障程序和红外遥控程序,怎么将两段程序合并起来呢?请问如果实现?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 可以在收到遥控信号时执行遥控程序,没收到遥控信号时自动避障即可。

    至于如何实现,遥控器是有连按信号的,比如,如果按键左一直按着没放,单片机就一直执行左转的程序,直到按键松开才执行自动避障

    也可以按一下左键就左转一小段时间,直走自动避障

    • 发布于 2018-03-30
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:7
  • 如果来性格程序都是可以正常实现的话就是非常好合并的,红外接收的LED和红外避障的IO口使用不同的,可以进行修改,电机驱动控制电机,红外遥控控制小车的运动,然后红外避障检测到有物体阻挡的时候就停车或者倒退或者转弯的等
    • 发布于2018-03-30
    • 举报
    • 评论 0
    • 0
    • 0

  • 这还不好实现?上一个RTOS,现有的两段程序分别在两个task里运行就可以了


    • 发布于2018-03-30
    • 举报
    • 评论 0
    • 0
    • 0

  • 红外避障和红外遥控用的是不同的引脚,只需要在程序里面简单整合一下就好了,而且红外遥控多数是用外部中断实现的,更不会跟红外避障冲突。

    • 发布于2018-03-31
    • 举报
    • 评论 0
    • 0
    • 0

  • 采用不同的中断来实现,基本上避免语法和引脚上的错误,没有什么难度,可以进行整合测试下,很好弄!
    • 发布于2018-04-02
    • 举报
    • 评论 0
    • 0
    • 0

  • 这两个红外功能使用是不同红外传感器,由于功能的不同,使用的外设也是不同的。
    把初始化部分复制到一个初始化程序中,通过main中的轮询来分时运行两个功能的函数。如果之前都写在main函数内,那么可以分别写成两个子函数,在main中进行调用。
    • 发布于2018-04-02
    • 举报
    • 评论 0
    • 0
    • 0

  • 建议用个RTOS,这样两个部分作为两个任务,原有的逻辑都可以不用变动,数据可以放在全局变量里面共享
    • 发布于2018-04-16
    • 举报
    • 评论 0
    • 0
    • 0

  • 直接用定时器轮询执行两个不同的任务
    • 发布于2018-04-22
    • 举报
    • 评论 0
    • 0
    • 0

单片机有两个程序如何合成一个呢?