| 1. 프로젝트 사용한 보드 종류  브레드 보드, 아두이노 UNO     2. 사용한 개발 프로그램명   아두이노     3. 사용한 센서 모델명   DS18B20, DHT-11, pulsesensor, KY-037(고감도 소리감지 센서), I2C 2대, LED, HC-06, HC-05, 220옴, 470옴     4. 연결한 회로 설명 (또는 이미지)  아두이노 우노 한대에는   DS18B20, DHT-11, pulsesensor, KY-037(고감도 소리감지 센서), I2C,LED,   HC-05, 220옴, 470옴을 연결했습니다.    다른 아두이노 우노 한대에는 I2C, HC-06 을 연결했습니다.       5. 소스코드 (주석 필수) 마스터 코드 HC-05 는 이렇습니다. #define USE_ARDUINO_INTERRUPTS true#include   // pulse sensor의 라이브러리를 불러온다.
 #include    // LCD의 라이브러리를 불러온다.
 #include
 #include
 #include
 SoftwareSerial HI(2,3);
 #include
 #include
 #define ONE_WIRE_BUS 4OneWire oneWire(ONE_WIRE_BUS);
 DallasTemperature sensors(&oneWire);
 #define DHTPIN 9 #define DHTTYPE DHT11
 LiquidCrystal_I2C lcd(0x27,16,2);  // 사용할 LCD의 주소는 0x27이고, 화면은 가로로 16개의 문자를 사용할 수 있고 세로로 2줄 사용 가능하다. DHT dht(DHTPIN, DHTTYPE); int sensor=A1; //고감도 소리감지 센서 A핀 연결입니다.
 int led= 11; // LED를 11번에 연결했습니다.
 const int PulseLine = A0;  // PulseLine이라는 상수를 int형으로 선언해 주고 아날로그 핀 0에 연결해 줄 것이기 때문에 A0이라고 설정한다.
 
 PulseSensorPlayground pulseSensor; // PulseSensorPlayground 라이브러리 안에 pulseSensor라는 객체를 생성시킵니다.
 void setup() { 
 
 lcd.init();  // LCD를 초기화해주는 코드이며, 시동을 걸어주는 역할이다.
 
 Serial.begin(38400);
 HI.begin(38400);
   pulseSensor.analogInput(PulseLine); //   심박 센서에 PulseLine이라고 선언했던 상수를 입력한다.pulseSensor.blinkOnPulse(led);       // 아두이노의 심장센서가 측정할 때마다 LED를  깜빡여주는 코드이다.
 pulseSensor.begin();
 dht.begin(); // DHT 센서를 가동해 줍니다.
 pinMode(led,OUTPUT);
 pinMode(sensor,INPUT);
 sensors.begin();
 
 }
 void loop(){
     if (HI.available()) //블루투스를 통해 데이터가 들어오면Serial.write(HI.read());
 if (Serial.available()) //시리얼 모니터에서 데이터를 보내면
 HI.write(Serial.read());
 float h = dht.readHumidity(); // 습도float t = dht.readTemperature(); // 온도
 float temp;
 int myBPM = pulseSensor.getBeatsPerMinute();  // 측정된 심박수를 int형변수로 선언한 myBPM에 저장
 int val;
 val = analogRead(sensor);
 int light = map(val,100,1023,0,255);
 analogWrite(led,light);
 sensors.requestTemperatures();
     lcd.backlight();  // 화면을 ON lcd.display();  // 내용이 표시
 lcd.print("BPM: ");
 lcd.print(myBPM);
 lcd.print(", TEM:");
 lcd.println(sensors.getTempCByIndex(0));
 lcd.print(temp);
 lcd.setCursor(0,1);
 lcd.print("T:");
 lcd.print(t);
 lcd.print(",H: ");
 lcd.print(h);
 delay(1000);
 lcd.clear(); // 계속 업데이트되도록 설정
  Serial.print("온도: ");Serial.print(t);
 Serial.println("도");
 Serial.print("습도: ");
 Serial.print(h);
 Serial.println("%");
 Serial.print("BPM: "); // BPM: 이라고 출력해준다.
 Serial.println(myBPM);
 Serial.print("temperature : ");
 Serial.println(sensors.getTempCByIndex(0));
 //Serial.println(temp);
 Serial.print("sound:  ");
 Serial.println(val);
 Serial.println("---------------------------------------");
 delay(100);
    
 HI.print("BPM: "); // BPM: 이라고 출력해준다.
 //myBPM = HI.write(HI.read());
 HI.println(pulseSensor.getBeatsPerMinute());
 HI.print(myBPM);
 HI.print("temp: ");
 // temp =  HI.write(HI.read());
 HI.println(sensors.getTempCByIndex(0));
 HI.println(temp);
 delay(1000);
 
 
 }
 마스터 코드는 I2C에서 센서값이랑 다 잘 나오는데 6. 문제점 및 에러 내용    슬레이브 코드인 hc-06 이렇게 되고  마스터에서 오는 값이 전달이 안되는 것 같습니다. 슬레이브 코드 문제 인것 같은데 도대체 뭘까요ㅠㅠ    #include    // LCD의 라이브러리를 불러온다. #include
 SoftwareSerial HI(2,3);
 #include
 LiquidCrystal_I2C lcd(0x27,16,2);  // 사용할 LCD의 주소는 0x27이고, 화면은 가로로 16개의 문자를 사용할 수 있고 세로로 2줄 사용 가능하다.
 void setup() {
 
 Serial.begin(9600);
 HI.begin(38400);
 lcd.init();  // LCD를 초기화해주는 코드이며, 시동을 걸어주는 역할이다.
 Serial.println("LCD통신 시작"); // 시리얼 통신 시작 문자 출력
  
 }
 void loop(){
     if (HI.available()){ //블루투스를 통해 데이터가 들어오면
 int myBPM;
 float temp;
 
 
 lcd.backlight();  // 화면을 ON
 lcd.display();  // 내용이 표시
 lcd.print("BPM: ");
 myBPM = HI.write(HI.read());
 lcd.print(myBPM);
 lcd.setCursor(0,1);
 lcd.print("TEM:");
 temp = HI.print(HI.read());
 lcd.print(temp);
  delay(1000); lcd.clear(); // 계속 업데이트되도록 설정
  Serial.print("BPM: "); // BPM: 이라고 출력해준다.Serial.println(myBPM);
 Serial.print("temperature : ");
 Serial.println(temp);
 Serial.println("---------------------------------------");
 delay(10);
 
 }
     }       둘이 페어링은 성공했는데 HC-05에서 HC-06으로 센서 값이 넘어가질 않습니다 도와주세요   |