IoT/Raspberry Pi2022. 1. 18. 22:35[라즈베리파이] UART 비동기 시리얼 통신 해보기 - 3 (양방향 통신)

1번글, 2번글에 이어집니다. 단방향으로 테스트를 완료했으니 서로의 회로보며 세팅하고 양방향으로 채팅하는 프로그램을 제작해봅니다. 양방향 채팅 프로그램 (C) #include #include #include #include #include #define BAUD 9600 int fd; char text[100] = {'\0'}; // 받는 스레드 void *thread_from() { printf("1"); while(1) { if(serialDataAvail(fd)) { printf("%c", serialGetchar(fd)); serialFlush(fd); } } } // 보내는 스레드 void *thread_send() { while(1) { printf("\n send text : "); fget..

IoT/Raspberry Pi2022. 1. 18. 22:32[라즈베리파이] UART 비동기 시리얼 통신 해보기 - 2 (단방향 통신)

[라즈베리파이] UART 비동기 시리얼 통신 해보기(루프백)- 1 UART (Universal Asynchronous Receiver/Transmitter) 데이터가 비트 단위로 직렬로 전송되는 직렬 통신 프로토콜이다. 비동기 직렬 통신은 바이트 지향 전송에 널리 사용된다. 비동기 직렬 통신에서는 한 번에 bantree.tistory.com 1번 글과 이어지는 내용입니다. 루프백 테스트 후 단방향 통신을 테스트합니다. Tx, Rx를 회로에 맞게 세팅하고 코드를 작동시킵니다. 보내는 부분_ 송신 (C) #include #include #include // delay() #include #define BAUD 9600 int main(void) { int fd; char text[100]; // 시리얼 오픈..

IoT/Raspberry Pi2022. 1. 18. 22:29[라즈베리파이] UART 비동기 시리얼 통신 해보기 - 1 (루프백)

UART (Universal Asynchronous Receiver/Transmitter) 데이터가 비트 단위로 직렬로 전송되는 직렬 통신 프로토콜이다. 비동기 직렬 통신은 바이트 지향 전송에 널리 사용된다. 비동기 직렬 통신에서는 한 번에 한 바이트의 데이터가 전송된다. 1:1 통신이다. Tx, Rx 라즈베리파이3의 경우 블루투스 포트가 UART포트를 사용한다. 이 부분 처리가 필요함. Tx 보내는 신호 Rx 받는 신호 UART 맵핑 확인 ls -l /dev 시리얼 속도 확인 sudo stty -F [시리얼] # 사용법 sudo stty -F /dev/ttyAMA0 시리얼 속도 변경 이건 직접 해본 결과 잘 안되는 것 같았다. sudo stty -F [시리얼] [속도] # 사용법 sudo stty -F..

image