スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

【3/14】モーター完了!(ぽい)【num=8;】

case 8:

こんばんわ!
今日は嬉しい報告

ついにモーターをGRAの値の変化に対応した速度で回せるようになりました!
ヾ(o゚ω゚o)ノ゙

私がつっかかってしまった箇所は
・フラグクリアの仕方を理解していない。
・GRAによってパルス数が変わることを理解していない。
・右モーターのMTU割り込みで書いてあるのに満足して、左モーターのMTU割り込みのカウントスタートをしていない。

と、書いてて恥ずかしいので他にもたくさんあるけどもう書きません(゚д゚ )

モーターを回すことに関して一番苦労したのが、
回路が間違っているのかプログラムが間違っているのかわからない。
という状態でした。

マイクロマウスを作るのは初めてなので、「これなら回路が合っていれば必ず動作する」というプログラムを持っておらず苦しかったです。

てことで1年後にこんな状況に辿り着くであろう1年生のためにモーター周りの回路が合っていればモーターが回り出すプログラムを置いておくことにします。

//////////////////////////////////
//以下はベーシックマウスのポートに対応しています。

PFC.PECRL3.WORD = 0x0000;//
PFC.PECRL2.WORD = 0x0000;//ポートEの役割設定ですべてのポートを
PFC.PECRL1.WORD = 0x0000;// 入出力端子にする



PE.DRL.BIT.B0 = 0; //モータードライバのCW/CCW部分を決める
PE.DRL.BIT.B4 = 0; //

PE.DRL.BIT.B2 = 0; = 1;//モータードライバをリセットする
for(i = 0; i < 0x1fff; i++);
PE.DRL.BIT.B2 = 0;

//モータードライバのクロック端子につながっているポートを擬似的にON、OFFにしてクロックのような波形をつくる

for(i=0;i<=100;i++){
PE.DRL.BIT.B1=1;
PE.DRL.BIT.B5=1;
}


for(i=0;i<=100;i++){
PE.DRL.BIT.B1=0;
PE.DRL.BIT.B5=0;
}
////////////////////////////////

ライントレーサーでも用いた疑似PWMです。
これでモーターが回らなかったから回路がミスってると思ってください。

そんでもって明日からは物理量ベース(?)さんが相手をしてくれるみたいです。
あ、それと明日O先輩方とテニスに行くので金曜までに物理量ベースで走るのは無理がありそうです許してくださいH先輩。・+゜(つД`)゜+・。

次回は走れるようになった愛機をブログにぺたりとする予定ですノシ

コメントの投稿

非公開コメント

時計
カテゴリ
最新記事
12月14日開始
RSSリンクの表示
リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。