아두이노 Mini D1 친구한테 받은 보드
RF 통신 설정 방법
아두이노 Mini D1 + nRF24L01
1. 기본설정
파일 – 환경설정 – 추가적인 보드 매니저 URLs 에 입력
http://arduino.esp8266.com/stable/package_esp8266com_index.json
스케치 – 라이브러리 포함하기 – 라이브러리 관리
Nrf24l01 검색
RF24 설치
툴 – 보드매니저 –
Esp 검색 esp8266 설치 버전 3.0.1
보드 선택
D1 R2 & mini
2. 장치 연결
아두이노 핀배치
https://escapequotes.net/esp8266-wemos-d1-mini-pins-and-diagram/
데이터시트
https://components101.com/wireless/nrf24l01-pinout-features-datasheet
명칭 - GPIO번호 (핀번호)
// CE - 2 (D4)
// CSN - 15 (D8)
// MOSI - 13 (D7)
// MISO - 12 (D6)
// SCK - 14 (D5)
코드에서는 GPIO번호로 초기화
아두이노 연결 후 포트 확인
Com3 송신 Com5 수신 코드 업데이트
송신 코드
#include <SPI.h> #include "RF24.h" RF24 radio(2, 15); //CE , SS const byte address[6] = "00001"; void setup() { // put your setup code here, to run once: Serial.begin(115200); //보내는쪽 radio.begin(); radio.setPALevel(RF24_PA_LOW); radio.openWritingPipe(address); radio.stopListening(); // } void loop() { // put your main code here, to run repeatedly: const char text[] = "nRF24l01 Send Test"; radio.write(&text, sizeof(text)); delay(1000); } |
수신코드
#include <SPI.h> #include "RF24.h" RF24 radio(2, 15); //CE , SS const byte address[6] = "00001"; void setup() { // put your setup code here, to run once: Serial.begin(115200); //받는쪽 radio.begin(); radio.setPALevel(RF24_PA_LOW); radio.openReadingPipe(1,address); //0 -> 1 radio.startListening(); // } void loop() { // put your main code here, to run repeatedly: if (radio.available()) { char text[32] = ""; radio.read(&text, sizeof(text)); Serial.println(text); } } |
동작
참고
https://www.youtube.com/watch?v=wPDX8vz1kiU
https://m.blog.naver.com/twophase/221132324612