begin() 함수로 시리얼 통신 파라미터를 설정하십시오.
port.begin(baud)
port.begin(sets)
"(baudrate)[parity[data bit[stop bit[flow control]]]]"
※ (): 사용 필수, []: 생략 가능
파라미터 | 설정 범위 | 설명 | 기본 값 |
---|---|---|---|
baudrate | 1200 ~ 115200 | 통신 속도(bps) | 115200 |
parity | N, E, O, M 또는 S | 패리티 비트 (N: 없음, E: 짝수, O: 홀수, M: Mark, S: Space) |
N |
data bit | 8 또는 7 | 데이터 비트 | 8 |
stop bit | 1 또는 2 | 정지 비트 | 1 |
flow control | T 또는 N | TxDE제어 사용(T), TxDE제어 사용 안 함(N) | T |
※ 주의 : flow control 설정은 항상 기본 값인 T로 사용하는 것을 권장합니다.
#include <PhpocExpansion.h>
#include <Phpoc.h>
#define BUFFER_SIZE 100 // read and write buffer size, reduce it if memory of Arduino is not enough
byte spcId = 1;
ExpansionSerial port(spcId);
byte rwbuf[BUFFER_SIZE]; // read and write buffer
void setup() {
Serial.begin(9600);
while(!Serial)
;
Phpoc.begin(PF_LOG_SPI | PF_LOG_NET);
Expansion.begin();
// sets the parameters for serial data communication
port.begin("115200N81T");
}
void loop() {
int txfree = port.availableForWrite();
int rxlen = port.available();
if(rxlen > 0) {
if(rxlen <= txfree) {
int rwlen; // read and write length
if(rxlen <= BUFFER_SIZE)
rwlen = rxlen;
else
rwlen = BUFFER_SIZE;
// receive data
rwlen = port.readBytes(rwbuf, rwlen);
// send data
port.write(rwbuf, rwlen);
// print data to serial monitor of Arduino IDE
Serial.write(rwbuf, rwlen);
}
}
delay(1);
}