查看: 924|回复: 6

[未解决] 怎样实现不同函数之间的跳转

[复制链接]
  • TA的每日心情
    郁闷
    2019-3-1 16:49
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2018-8-10 02:06 | 显示全部楼层 |阅读模式
    怎样实现不同函数之间的跳转,比如中断函数跳转到loop函数中的某个位置,如loop开头。

    该用户从未签到

    发表于 2018-8-10 08:10 | 显示全部楼层
    直接跳转的化,有函数堆栈平衡的问题

    建议你设定一些条件,然后退出函数之后再进入其它函数
    打赏作者鼓励一下!
  • TA的每日心情
    开心
    2019-4-25 11:17
  • 签到天数: 649 天

    [LV.9]以坛为家II

    发表于 2018-8-10 09:14 | 显示全部楼层
    最好不要随意跳转  不然很容易出问题  就像上面的大佬说的一样  函数调用可以理解为一个栈
    打赏作者鼓励一下!
  • TA的每日心情
    郁闷
    2019-3-1 16:49
  • 签到天数: 2 天

    [LV.1]初来乍到

     楼主| 发表于 2018-8-10 10:27 | 显示全部楼层
    Zoologist 发表于 2018-8-10 08:10
    直接跳转的化,有函数堆栈平衡的问题

    建议你设定一些条件,然后退出函数之后再进入其它函数 ...

    可是我的主函数很长,有很多部分,延时也多。我要在外部中断判断以后,立马执行相应的程序。可中断回到主函数以后再判断标志位时,会把中断之前的程序执行完才判断,就有点滞后。总不可能函数里隔一会就判断一次吧。

    该用户从未签到

    发表于 2018-8-10 11:21 | 显示全部楼层
    可以把程序整理成多个部分,使用状态机的方法来写呢。
  • TA的每日心情
    郁闷
    2019-3-1 16:49
  • 签到天数: 2 天

    [LV.1]初来乍到

     楼主| 发表于 2018-8-10 11:42 | 显示全部楼层
    xuweijun1995 发表于 2018-8-10 11:21
    可以把程序整理成多个部分,使用状态机的方法来写呢。

    已经分成很多部分了,每个部分还是会执行十秒左右。
    另外状态机是怎么做呢,求大佬讲解一下。

    该用户从未签到

    发表于 2018-8-10 16:32 | 显示全部楼层
    海陆空 发表于 2018-8-10 10:27
    可是我的主函数很长,有很多部分,延时也多。我要在外部中断判断以后,立马执行相应的程序。可中断回到主 ...

    楼下说的对,认真规划程序结构吧~
    打赏作者鼓励一下!
    您需要登录后才可以回帖 登录 | 立即注册  

    本版积分规则

    热门推荐

    学习记录2,Blinker读取温湿度
    学习记录2,Blinker读取温
    开关现在是使用得很6了,准备进行下一步,读取数据。 找了下官方的例程,发现用的是w
    学生智能打卡系统(接入blinker)
    学生智能打卡系统(接入bl
    【项目名称】学生智能打卡系统(接入blinker) 一.感谢各位大佬 首先感谢社区的管理员
    关于红外控制空调的模块选型
    关于红外控制空调的模块选
    想问问这中模块能支持arduino吗
    LCD1602只亮 不显示
    LCD1602只亮 不显示
    #include // initialize the library by associating any needed LCD interface pin
    18脚的8x8LED点阵如何使用??
    18脚的8x8LED点阵如何使用
    本帖最后由 Creeper666 于 2018-8-14 12:24 编辑 这个点阵模块上面一排有12个脚,
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   ( 蜀ICP备14017632号-3 )
    快速回复 返回顶部 返回列表