【问题标题】:Multiple programs on AVR atmega [closed]AVR atmega 上的多个程序 [关闭]
【发布时间】:2016-04-22 04:48:23
【问题描述】:

我想让我的 Atmega 机器人运行多种模式(线路跟随、避障、PC 直接引导)我如何将这些单独的程序加载到闪存上,以及在重新启动机器人时如何选择其中一个?

【问题讨论】:

  • 你好。欢迎来到堆栈溢出。请环顾四周并拨打tour,并阅读[帮助中心]。您还可以阅读How to Ask 一个好问题。

标签: embedded avr atmega robot


【解决方案1】:

最简单的方法是制作一个包含所有模式的所有功能的大程序。启动时,在main() 中检查是否按下了某些按钮,然后选择您要操作的模式。然后从那时起只使用该模式的功能和控制机制。其余的代码只是闲置在那里,但无论如何它都可以在任何其他方案中使用。

没有一种简单的方法可以将代码分成几个不同的完整程序。例如,向量表固定在它所在的位置。您必须让中断处理程序检查哪个模式处于活动状态,然后为该模式调用适当的函数。

【讨论】:

  • 这肯定会对我的其他程序有所帮​​助。谢谢。
  • 一个优雅的解决方案是将引脚设置为带有上拉电阻的输入(在软件中),并提供金引脚(用于跳线)将它们拉到地面(在 PCB 上)。启动代码将读取这些引脚并确定要运行的代码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-16
相关资源
最近更新 更多