中井@同志社大です. 少しくらいは投稿しておかないと…てことで. > シーケンサへはコマンドを送って、そのレスポンスを見ているのですが > キーボードからのコマンド入力だと正常にレスポンスが返るのですが、 > コマンドを#defineなどで初期化して、while文でコマンドを送りつづけると、 > レスポンスが文字化けしたり、LCDにprintfでパソコンのモニタに表示させていた > 文字が表示されたり、不可解な動作をします。 コマンド入力されていた時は正常動作していたという事ですが,コマンド 入力回数がループでまわしたときと同じくらいでも正常に動いていたのでしょう か. 動いていたとすれば,差し替えた部分に問題があるという事になりますが. この場合,コマンドを #define で定義されているのであれば,定義文字が 重複している可能性もあります.const <型> 変数=初期値; で global宣言 したほうがコンパイラにエラー検出してもらえるのでよろしいのではないかと. #コンパイラがタコならわかりませんが… また,LCDへ予期しない文字列が出力されているという点から,プログラム メモリかスタックが破壊されているようにも見受けられます. 計算量が多いという事なので,スタックが不足しているなども検討されては いかがでしょうか. #手動で動いてるならスタック不足はどうかと思われますが… ##手入力の部分を関数化して,正常動作を確認してから自動入力するような形で ##関数だけ書き換えれば正常に動くかもしれませんね(汗; ------------------------------------------------------------------------- 中井 祐一 (Yuichi Nakai) | 信じる心を失ったら 同志社大学大学院工学研究科電気工学専攻 | 生きてはいけないわ e-mail : tt0146@xxxxxxxxxxxxxxxxxxxx | 人は信じる力を源にして http://www.geocities.co.jp/SiliconValley/7053/| 生きていくものだから -------------------------------------------------------------------------