DCC/MM2基板をジョイスティックで操作(SerialPortのところ) [ジョイスティック]
次に(2)DCC/MM2基板への通信(COMポート制御)だが、まず、DesktopStationのDCC/MM2基板への通信は、「ログ」タブをみると、私が使いそうなのは、
-------------------------
setPing()・・・はじめに通信ができているかの確認
setPower(1)・・・DCC/MM2基板から線路へ電源供給On
setPower(0)・・・DCC/MM2基板から線路へ電源供給Off
setLocoSpeed(49152+電車番号,スピード,2)・・・スピード設定。DCC128で決め打ち。
setLocoDirection(49152+電車番号,1 or 2)・・・電車の方向設定+停止か?
-------------------------
ということがわかった。
C#のCOMポート制御は金澤ソフト設計さんのページを参考にした。
シリアルポートをフォームに貼り付ければ大体完成だが、Readだけイベントをとらないといけないので、そこの部分については、説明を読むよりも、金澤ソフト設計さんのシリアルポートのサンプルプログラム自体をダウンロードして見たほうが早い。
で、デバッグしていて気づいたのだが、(DesktopStationのページには書いてあったが)いままで、適当にAruduino1.6.0でDCC/MM2基板をコンパイルして使っていたのだが、なんか動作がおかしい・・・。
方向が変わらなかったり、2,3個の命令が立て続けに出たりと。
でAruduino1.0.6にしたらちゃんと動くようになった。怖い怖い。
で、動かした動画が以下。
作ったプロジェクトはここ。
うまくいけば(DirectXのランタイムなどが入っていればか?)
\directinput_test2\directinput_test\bin\Debug\directinput_test.exe
をダブルクリックすれば動く。
(1)ソフトのつくりは適当なので、ジョイスティックを2つつなげておく。
実行したら、画面は以下のとおりで、
(2)まず、COMをAruduinoがつながっているポートにあわせる。写真では”COM4"
(3)電車の番号(loco_no)も合わせておく。写真では4と3。
制御は決め打ちでDCC128になっている。
(4)Openボタンを押すとジョイスティック、Aruduinoへ接続される。
右側がSerialPortの通信内容でたぶん最初の通信はSerialReadにエラーが戻ってくる。
(5)次にPowerOnボタンを押す。DCC/MM2基板から線路に電源が供給される。
(6)あとはジョイスティックの1から4のボタンを使って二人で遊べる。
(7)終了はソフト右上の×ボタンを押す。DCC/MM2基板の線路への電源供給がとまる。
-------------------------
setPing()・・・はじめに通信ができているかの確認
setPower(1)・・・DCC/MM2基板から線路へ電源供給On
setPower(0)・・・DCC/MM2基板から線路へ電源供給Off
setLocoSpeed(49152+電車番号,スピード,2)・・・スピード設定。DCC128で決め打ち。
setLocoDirection(49152+電車番号,1 or 2)・・・電車の方向設定+停止か?
-------------------------
ということがわかった。
C#のCOMポート制御は金澤ソフト設計さんのページを参考にした。
シリアルポートをフォームに貼り付ければ大体完成だが、Readだけイベントをとらないといけないので、そこの部分については、説明を読むよりも、金澤ソフト設計さんのシリアルポートのサンプルプログラム自体をダウンロードして見たほうが早い。
で、デバッグしていて気づいたのだが、(DesktopStationのページには書いてあったが)いままで、適当にAruduino1.6.0でDCC/MM2基板をコンパイルして使っていたのだが、なんか動作がおかしい・・・。
方向が変わらなかったり、2,3個の命令が立て続けに出たりと。
でAruduino1.0.6にしたらちゃんと動くようになった。怖い怖い。
で、動かした動画が以下。
作ったプロジェクトはここ。
うまくいけば(DirectXのランタイムなどが入っていればか?)
\directinput_test2\directinput_test\bin\Debug\directinput_test.exe
をダブルクリックすれば動く。
(1)ソフトのつくりは適当なので、ジョイスティックを2つつなげておく。
実行したら、画面は以下のとおりで、
(2)まず、COMをAruduinoがつながっているポートにあわせる。写真では”COM4"
(3)電車の番号(loco_no)も合わせておく。写真では4と3。
制御は決め打ちでDCC128になっている。
(4)Openボタンを押すとジョイスティック、Aruduinoへ接続される。
右側がSerialPortの通信内容でたぶん最初の通信はSerialReadにエラーが戻ってくる。
(5)次にPowerOnボタンを押す。DCC/MM2基板から線路に電源が供給される。
(6)あとはジョイスティックの1から4のボタンを使って二人で遊べる。
(7)終了はソフト右上の×ボタンを押す。DCC/MM2基板の線路への電源供給がとまる。
2015-03-09 15:45
nice!(0)
コメント(0)
トラックバック(0)
コメント 0