BASIC4MCU | 질문게시판 | 답변 : 아두이노 코딩합치기질문입니다.
페이지 정보
작성자 master 작성일2019-12-16 12:05 조회3,298회 댓글0건
https://www.basic4mcu.com/bbs/board.php?bo_table=gac&wr_id=11194
본문
// MCU BASIC: https://www.basic4mcu.com// DateTime : 2019-12-16 오후 12:03:42// by Ok-Hyun Park//#include <SoftwareSerial.h>#include <TinyGPS.h>TinyGPS gps;//SoftwareSerial btSerial(2,3);SoftwareSerial gpsSerial(6,5);//int piezo=7,sw=5,numTones=8;//long lat,lon;int tones[]={ 700,294,700,294,700,294,700,294,700,294,700,294,700,294,700,294,700,294,700,294,700,294,700,294,700,294,700,294,700,294,700,294,700,294,700,294,700,294,700,294};float lat_float,lon_float;//void setup(){pinMode(piezo,OUTPUT);pinMode(sw,INPUT_PULLUP);Serial.begin(9600); Serial.println("Start GPS...");gpsSerial.begin(9600);btSerial.begin(9600);}//void loop(){while(gpsSerial.available()){if(gps.encode(gpsSerial.read())){gps.get_position(&lat,&lon);// display positionlat_float=(float)lat/1000000;lon_float=(float)lon/1000000;Serial.print("Position: ");Serial.print("lat: "); Serial.print(lat_float); Serial.print(" ");Serial.print("lon: "); Serial.println(lon_float);btSerial.print("lat: "); btSerial.println(lat_float);btSerial.print("lon: "); btSerial.println(lon_float);}}if(Serial.available()){btSerial.write(Serial.read());}if(btSerial.available()){char bt;bt=btSerial.read();if(bt=='a'){Serial.write(btSerial.read());for(int i=0; i<numTones; i++){ tone(piezo,tones[i]); delay(320); }noTone(piezo);}}}
SoftwareSerial btSerial(2,3);SoftwareSerial gpsSerial(6,5);소프트웨어 시리얼은 송신은 2개이상도 가능하지만
수신은 1개만 가능합니다.
메가 또는 레오나르도 같이 하드웨어 시리얼이 2개 이상 가능한 것을 사용하세요
댓글 0
조회수 3,298등록된 댓글이 없습니다.