LCD表示系の整理。現状の問題としては、配列への左右移動距離の記憶ができていない様子。2走目で常にHIGH_SPEEDとなってしまうので、エンコーダパルス関係の蓄積がうまくできているか?左右同じ情報が演算されていないか?といった部分を疑ってデバッグする必要がある。
Dependencies: mbed AQM0802 CRotaryEncoder TB6612FNG
main.cpp
- Committer:
- yusaku0125
- Date:
- 2019-07-22
- Revision:
- 0:df99e50ed3fd
- Child:
- 1:19e2241a7aa7
File content as of revision 0:df99e50ed3fd:
//エンコーダの動作確認。 //左右モータの回転数を検出するプログラム #include "mbed.h" #include "CRotaryEncoder.h" Serial PC(USBTX,USBRX); CRotaryEncoder encoder_a(D1,D0); //モータAのエンコーダ CRotaryEncoder encoder_b(D11,D12); //モータBのエンコーダ int main(){ int enc_count_a=0,enc_count_b=0; //エンコーダパルス数を格納 int rotation_a=0,rotation_b=0; //回転数を格納 while(1) { enc_count_a=encoder_a.Get(); //エンコーダパルス数を取得 enc_count_b=encoder_b.Get(); rotation_a=enc_count_a/400; //400パルスで一回転 rotation_b=enc_count_b/400; PC.printf("enc_a:%d enc_b:%d\r\n",rotation_a,rotation_b);//表示 wait(0.5); } }