void loop(){
int msg;
if (Serial.available()){
Serial.write(Serial.read());
msg=Serial.read();
if(msg){
switch(msg){
case 1 :
digitalWrite(led[0],HIGH);
break;
case 2 :
digitalWrite(led[0],LOW);
break;
-----자바소스
public static class SerialWrite implements Runnable {
OutputStream out;
Socket socket4;
public SerialWrite(OutputStream out) {
this.out = out; //포트의 Output을 현재 클래스의 out으로 지정한다.
}
@Override
public void run() {
try{
int portNumber = 25477;
System.out.println("Startin Java Socket Server..");
ServerSocket aServerSocket = new ServerSocket(portNumber); //포트번호 5001번으로 서버를 실행시킨다.
System.out.println("Listening android port " + portNumber);
while(true){
Socket socket4 = aServerSocket.accept();
DataInputStream input = new DataInputStream(socket4.getInputStream());
DataOutputStream output = new DataOutputStream(socket4.getOutputStream());
int msg = input.read();
out.write(msg);
switch(msg){
case 1 :
out.flush();
output.write(1);
System.out.println(output);
System.out.println(out);
System.out.println(msg);
System.out.println("화장실켜짐");
break;
case 2:
System.out.println("화장실꺼짐");
break;
// 안드로이드폰에서 버튼누를시 숫자1이 발생하는데 자바에서 숫자1이 출력하는거까지는 되는데
아두이노로 안넘어가집니다 혹시 이소스에서 잘못된 점있나요??
자바에서 시리얼 port까지 잡혀있습니다.
|