ここから本文です

ArduinoでArduino IDE以外でシリアル通信する方法はありますか?

drg********さん

2012/1/2601:29:40

ArduinoでArduino IDE以外でシリアル通信する方法はありますか?

Arduino DuemilanoveをUSBケーブルで接続しています

arduino IDE以外でシリアル通信したいのですが

WIN32APIでCOMポートを指定して受信を試みましたが同じ値しか返ってきませんでした
もしかしたらPC側のプログラムが間違っているかも知れませんが
シリアル通信の経験がないためわかりません。

そこで質問なのですが

Arduino IDE以外でシリアル通信する場合は
このWIN32APIでCOMポートを指定して送受信する方法であっているでしょうか?

それともほかに方法がありますか?

閲覧数:
1,231
回答数:
1

違反報告

ベストアンサーに選ばれた回答

m_t********さん

2012/1/2610:51:06

Arduino のUSBは、「USB-シリアルコンバータ」になっていて、Windows PC 側からはシリアルポートとして認識されています。
Arduino IDE のモニターも、シリアルポートとして受信したデータを表示しているだけです。

ですので、Windows用プログラム側からはCOMポートとして通信するということで方法は間違っていません。
Windows側の開発言語がわからないので、詳しい解説はできませんが、Win32APIなら、
・CreateFile APIで、COM ポート(「"COM1"」もしくは「"\\\\.\\COM1"」など)をオープン
・GetCommState/SetCommState APIで、通信速度などのパラメータを設定
・ReadFile API で読み取り
といった流れになります。
・シリアルポートとしての通信プログラムに間違いはないか?
・ポート番号を間違えてはいないか?
・通信速度は間違えていないか?
といったあたりを注意してみてください。
http://www.salutesound.com/~oss_winapi232.html
http://www2.muroran-it.ac.jp/circle/yume/maincontents/serialport/

質問した人からのコメント

2012/1/28 01:13:53

降参 ありがとうございます
がんばります

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる