Arduinoを使ったUSB-シリアル変換
Arduino UnoではUSB-シリアル変換を担っているAVRと外部向けのTX/RXピンが直結されているので、Arduino単体で内部でデータ受け渡しの処理を書かずにUSB-シリアル変換ができるのでは?と思って試してみました。
Arduino Uno R3回路図
http://arduino.cc/en/uploads/Main/Arduino_Uno_Rev3-schematic.pdf
はじめは書き込み時にTX/RXピンに書き込みの信号が出てきて嫌だなぁとだけ思っていたのですが、これを逆手に取って変換器として使えないかとやってみたところ予想通りできました。
注意点はArduino自体には通信の邪魔をして欲しくないので以下のようにTX/RXピンをHi-Zに設定するくらいです。
(5/9追記)もしかしたら無設定ならこのピンはHi-Zになるから設定不要?
あとPCへの入力はTXピン(pin1)、PCからの出力はRXピン(pin0)になるのでここもちょっと間違えそうになりました。回路図見れば一目瞭然なのですが^^;
void setup() { pinMode(0,INPUT); pinMode(1,INPUT); } void loop() { // Nothing to do }