先日、「完成した」と言った基板。
使ってみたのだが一向に動きません。
実はH8/3052のSCIは2ch用意されているのですが、チャンネル0を使ったのは今回が初めてでした。
PCの方にはちゃんと通信の状態が帰ってきます。
AX−12の方に送った命令は、こちらから見える形では確認できないのですが、一向に動いてくれません。
そういえば、マニュアルで「Direction_Port」がHighのとき、TxDでDataで出力になってますが、逆じゃないのかなと思うのは僕だけでしょうか・・・。
その辺が「パッ」としないままのプログラミングだったので、いっそ・・・ということで、PIN3にマイコンのTxDを直接繋いで、送信だけの実験をしてみました。
結果。
やっぱり動きませんでした。 orz
失敗したプログラムは以下のとおり
メインプログラム - AX12.c
SCI初期化 - SCI_INIT.c
何が、問題なのか・・・。
というか、パケットの送り方はこれでいいのだろうか・・・。
ロクに実験もせず、マニュアルの回路図だけで基板を作ったのはやっぱり無茶だったようでした。
AX-12、ピクリとでも動いてくれればよいのですが・・・。
そんで、ネットサーフィンしていたら、ONOさんのところで、「AX-12の通信速度は1Mbpsだったのか・・・」って記事を見つけました。
AX-12のサーボはバイオロイドのものなので、いったいいくつに設定されていたのか・・・。
答えはどうやら、「57142bps」
ということで、57600bpsに設定したら良いらしい。
AX-12のマニュアルで速度が「9600bps〜1Mbps」となっていたので、てっきり、なんでも良いんだと思って19200bpsに設定してましたww
そんな訳ないですよね!ww
とりあえず、マイコンを57600bpsに設定して、実機が学校にあるので、月曜にでも試してみたいと思います。
あー、なかなか思うようには行きませんね。
苦難の日々はしばらく続きそうです。
しかし、H8/3052も通信で1Mbpsは出せない模様。
追加でAX-12買ったらどないすりゃええねん;;
とりあえず、ひたすら問題点を列挙する日記なのでした。
いろいろ製作日記の399です。
AX-12との通信速度ですが、バイオロイド付属のコントローラ経由で変更できます。
[PC]-[コントローラ]-[AX-12]
と接続して
付属ソフトのロボットターミナルでsync write命令またはwrite命令を使って、AX-12内のボーレート(0X04番地)を書き直してやると通信速度が変更できます。
コントローラ側の通信速度も変更する必要があります。
詳しくはバイオロイドのマニュアルを参考にしてください。
ちなみに、バイオロイドの通信速度は1Mです。
はじめまして339さん。
339さんのサイトのAX-12まとめ読ませていただきましたが、とても参考になりました。
そして、バイオロイドの通信は1Mだったんですね。
あれから、学校でやってみたんですが、やはり上手くいかなかった・・・と言うのも当然ですね。
通信速度の設定を変えてもう一度挑戦してみます。
ありがとうございます。