서버와 클라이언트통신 (TCPIP,라즈베리파이,아두이노,c언어,mysql) (완료) 1. 아두이노로 온・습도 값을 측정하고 불쾌지수를 구한다. (블루투스를 연동하여 데이터를 확인할수있다.) 2. 온・습도・불쾌지수를 버퍼에 담는다. 3. 버퍼에 담은 데이터를 클라이언트(우분투) 를 사용하여 서버 (Raspberry Pi ,Putty) 로 보낸다. 4. 서버에서 버퍼에 담아온 데이터를 쪼갠다. (ex 온도, 습도, 불쾌지수로 나눔) 5. 나눈 데이터 온도 데이터를 이용하여 옷차림을 만들어 낸다. 6. 옷차림 데이터와 온도, 습도, 불쾌지수 데이터를 서버에서 MY_SQL과 연동하여 DB에 저장한다. 우분투, 아두이노 스케치, 라즈베리파이, c언어 mysql 를 사용하였다. 아두이노 소스코드 #include #..
온도별 옷차림과 부가기능(c언어,라즈베리파이) (완료) #include #include #include #include #include #define SHT20_I2C_ADDR 0x40 #define SHT20_I2C_CMD_MEASURE_TEMP 0xF3 #define SHT20_I2C_CMD_MEASURE_HUMI 0xF5 #define SHT20_SOFT_RESET 0xFE #define LIGHT_I2C_ADDR 0x23 #define LIGHT_I2C_POWER_DOWN 0x00 #define LIGHT_I2C_POWER_ON 0x01 #define LIGHT_I2C_RESET 0x07 #define LIGHT_I2C_CON_HR_MODE 0x10 #define LED_I2C_ADDR 0x20 ..
client.c 소스코드 #include #include #include #include #include #include #include #include #define BUF_SIZE 100 #define NAME_SIZE 20 void *send_msg(void * arg); void *recv_msg(void * arg); void error_handling(char *msg); char name[NAME_SIZE] = "[DEFAULT]"; char msg[BUF_SIZE]; int main(int argc, char *argv[]) { int sock; struct sockaddr_in serv_addr; pthread_t snd_thread, rcv_thread; void * thread_ret..
SERVER.C 라는 서버 코드 #include #include #include #include #include #include void error_handling(char *message); int main(int argc, char*argv[]) { int serv_sock; int clnt_sock; struct sockaddr_in serv_addr; struct sockaddr_in clnt_addr; socklen_t clnt_addr_size; char message[] = "Hello World!"; if(argc!=2) { printf("Usage : %s \n", argv[0]); exit(1); } serv_sock=socket(PF_INET, SOCK_STREAM, 0); if(se..
라즈베리파이 BLUETOOTH 소스코드 RASPBERRY-PI #include #include #define BLUE_PORT "/dev/rfcomm0" #define BAUD_RATE 115200 int main(void) { int dev; if((dev = serialOpen(BLUE_PORT, BAUD_RATE)) < 0) { return -1; } printf("Port Open.\n"); serialFlush(dev); while(1) { char ch = serialGetchar(dev); if(ch=='x') { break; } else { fputc(ch, stderr); serialPutchar(dev, ch); } } printf("Port Closed.\n"); serialClose..
라즈베리파이 IR(적외선) 소스코드 RASPBERRY-PI #include #include const int pinIr = 19; int main(void) { wiringPiSetupGpio(); pinMode(pinIr, INPUT); while(1) { if(!digitalRead(pinIr)) { printf("Read\n"); delay(100); } } return 0; }
라즈베리파이 SOUND 1 소스코드 RASPBERRY-PI #include #include #include #define CS_ADC7 #define SPI_CHANNEL0 #define SPI_SPEED1000000 int adcRead(char adcChannel) { char buff[3]; int adcValue = 0; buff[0] = 0x06 |((adcChannel & 0x07) >>2); buff[1] = ((adcChannel &0x07)
라즈베리파이 소리(SOUND) 소스코드 RASPBERRY-PI 1 #include #include #include #define CS_ADC7 #define SPI_CHANNEL0 #define SPI_SPEED1000000 int adcRead(char adcChannel) { char buff[3]; int adcValue = 0; buff[0] = 0x06 |((adcChannel & 0x07) >>2); buff[1] = ((adcChannel &0x07)
라즈베리파이 TEMP HUMI 온도 습도 코드 1 #include #include #include #define SHT20_I2C_ADDR0x40 #define SHT20_I2C_CMD_MEASURE_TEMP0xF3 #define SHT20_I2C_CMD_MEASURE_HUMI0xF5 #define SHT20_SOFT_RESET0xFE int fd; int main(void) { float temp = 0.0; float humi = 0.0; int aData[2]; int value; int i; if((fd=wiringPiI2CSetup(SHT20_I2C_ADDR))
라즈베리파이 CDS 조도센서 코드 1 #include #include #include #define CS_ADC7 #define SPI_CHANNEL0 #define SPI_SPEED1000000 int adcRead(char adcChannel) { char buff[3]; int adcValue = 0; buff[0] = 0x06 |((adcChannel & 0x07)>>2); buff[1] = ((adcChannel &0x07)