▲DIYvideoの使い道を考え中なのですが、ここではSerial adapterとつないでみました。
これで、NXTインテリジェントブロックから直接文字をTV出力できます。
▲回路図です。基板間を3本(Vcc、GND、Rx)つなぐだけです。
▲動作中の様子です。
入力ポート1に接続している光センサの値(0〜100)をTV出力しています。
Serial adapterは入力ポート3につなぎます。
DIYvideoはPB0のジャンパピンをつないでキャラクタモードに設定します。
▲DIYvideoのかわりに、DEYledを接続するとこうなります。
▼NXT側のプログラムです(言語はNXC)。光センサの値をキャラクタコードにして9600bpsで出力します。
//serial tx program(original sensor) // by takuya matsubara #include "NXCDefs.h" #define IN_I2C IN_1 //INPUT PORT(1/2/3/4) #define I2CWAIT 15 byte writebuf[3]; //send command byte readbuf[1]; //recv command void send_onebyte(byte bytedata) { int readcnt = 0; //sensor to NXT. input bytes writebuf[0] = 0x02; // slave address(SLA) writebuf[1] = 0x44; // command(TX command) writebuf[2] = bytedata; I2CBytes(IN_I2C, writebuf, readcnt, readbuf); Wait(I2CWAIT); //delay[msec] } void put_numx(int tempval) { send_onebyte((tempval / 100)+'0'); send_onebyte(((tempval / 10)%10)+'0'); send_onebyte((tempval % 10)+'0'); send_onebyte('.'); } task main() { int val=0; SetSensorLowspeed (IN_I2C); Wait(I2CWAIT); //delay[msec] SetSensorLight(IN_3); while(1){ val = Sensor(IN_3); put_numx(val); Wait(100); } }