2016-04-22 14 views
0

私はAtmegaロボットを複数のモード(行の追従、障害回避、PCからの直接誘導)にしたいのですがどうすればよいですか?ロボット?AVR atmegaの複数のプログラム

+0

こんにちは。スタックオーバーフローへようこそ。周りを見て[ツアー]をし、[ヘルプセンター]を読んでください。あなたはまた、[質問]良い質問を読むことができます。 – Sampada

答えて

1

最も簡単な方法は、すべてのモードのすべての機能を備えた1つの大きなプログラムを作成することです。起動時に、main()では、特定のボタンが押されているかどうかを確認し、操作するモードを選択します。その後、そのモードの機能と制御メカニズムのみを使用してください。コードの残りの部分は使用されていない場所に置かれていますが、それは他の方法でも使用されます。

コードを複数の異なる完全なプログラムに分割する簡単な方法はありません。たとえば、ベクタテーブルはどこにでも固定されています。割り込みハンドラをチェックして、どのモードがアクティブであるかを確認し、そのモードで適切な関数を呼び出さなければなりません。

+0

これは確かに私の他のプログラムに役立ちます。ありがとう。 –

+0

エレガントなソリューションは、ピンをプルアップ付き入力(ソフトウェア)に設定し、金ピン(ジャンパで使用)を提供してPCB上のグランドにプルすることです。起動コードはこれらのピンを読み取り、実行するコードを決定します。 –

関連する問題