* C1815 [#gaed5d92]
* トランジスタ [#i11d9d53]
** C1815 [#qfa4a896]
###
pin vcc
pin gnd
pin drive
pin ctrl
C1815 trans
trans.e = gnd
trans.c = vcc -- load
trans.b = gnd -- 10kΩ
trans.b = ctrl -- 2.2kΩ
###
* C1815 + 946H-1C-5D [#efb5e196]
** C1815 + 946H-1C-5D [#efb5e196]
*** Software [#r669d28d]
### c
int vCtrlPin = 2;
int vLedlPin = 13;
////////////////////////////////////////////////////////////////
void setup();
void loop();
void on();
void off();
void printCommand(int aCommand);
////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
void setup() {
Serial.begin(9600);
pinMode(vCtrlPin, OUTPUT);
Serial.println("UsbSwitch.Start;");
}
////////////////////////////////////////////////////////////////
int vRead = 0;
void loop() {
if (Serial.available() > 0) {
switch(vRead = Serial.read()) {
default:
Serial.print("Invalid Cmd #");
printCommand(vRead);
break; case '0': off();
break; case '1': on();
}
}
delay(1000);
}
////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
void on() {
Serial.println("On;");
digitalWrite(vCtrlPin, HIGH);
digitalWrite(vLedlPin, HIGH);
}
void off() {
Serial.println("Off;");
digitalWrite(vCtrlPin, LOW);
digitalWrite(vLedlPin, LOW);
}
////////////////////////////////////////////////////////////////
void printCommand(int aCommand) {
Serial.print(aCommand, HEX);
Serial.print(" [");
Serial.print(aCommand, BIN);
Serial.println("]");
}
////////////////////////////////////////////////////////////////
###
** TA8428K [#pd8664d5]
## TA8428K[InA, InB, OutA, Gnd, OutB, void, Vcc] ##
###
int vCtrlPinA = 4;
int vCtrlPinB = 6;
int vLedlPin = 13;
////////////////////////////////////////////////////////////////
void setup();
void loop();
void on();
void off();
void printCommand(int aCommand);
////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
void setup() {
Serial.begin(9600);
pinMode(vCtrlPinA, OUTPUT);
pinMode(vCtrlPinB, OUTPUT);
pinMode(vLedlPin , OUTPUT);
digitalWrite(vCtrlPinA, LOW);
digitalWrite(vCtrlPinB, LOW);
digitalWrite(vLedlPin , LOW);
Serial.println("UsbSwitch.Start;");
}
////////////////////////////////////////////////////////////////
int vRead = 0;
void loop() {
if (Serial.available() > 0) {
switch(vRead = Serial.read()) {
default:
Serial.print("Invalid Cmd #");
printCommand(vRead);
break; case '0': off();
break; case '1': on();
}
}
delay(1000);
}
////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////
void on() {
Serial.println("On;");
digitalWrite(vCtrlPinB, LOW);
digitalWrite(vCtrlPinA, HIGH);
digitalWrite(vLedlPin, HIGH);
}
void off() {
Serial.println("Off;");
digitalWrite(vCtrlPinA, LOW);
digitalWrite(vCtrlPinB, LOW);
digitalWrite(vLedlPin, LOW);
}
////////////////////////////////////////////////////////////////
void printCommand(int aCommand) {
Serial.print(aCommand, HEX);
Serial.print(" [");
Serial.print(aCommand, BIN);
Serial.println("]");
}
////////////////////////////////////////////////////////////////
###