Micchip RN2483 LORA 모듈 용 플랫폼 독립적 임베디드 C 라이브러리.
참고 : 이 저장소는 현재 유지 관리되지 않았으며 Lorawan Spec의 V1.0에 대해 작성되었습니다. 지금은 감가 상각되는 것을 고려하십시오. Lemme는 당신이 원하는지 알고 있습니다
이것은 Microchip RN2483 LORA 모듈과 상호 작용하기위한 임베디드 C 라이브러리입니다. 단순하고 모듈 식이기를 목표로합니다 (다른 플랫폼으로 쉽게 포팅하기에 충분합니다).
이 라이브러리의 주요 기능 중 하나는 휴대 성입니다. I/O가있는 내장 라이브러리는 결코 휴대용이 가능하지 않으므로 리포지토리의 별도의 분기에서 특정 플랫폼이 지원됩니다. 이 repo의 마스터 브랜치는 핵심 플랫폼 독립적 코드입니다. 개별 지점 (예 : platform/mbit )은 플랫폼에 사용하기 위해 이것을 배포하려는 경우 실제로 사용하려는 것입니다.
이 라이브러리가 재구성 한 유일한 하드웨어 별 기능은 UART를 RN2483 모듈로 R/W로 만드는 기능입니다. 결과적으로 이것은 래퍼 기능으로 처리됩니다 : read 및 write . 마스터 브랜치에서는 단순히 컴파일시 이용을 구현하도록 지시하는 #ERROR로 가득 차 있습니다.
특정 플랫폼에 대한 지원 추가에 대한 자세한 내용은 6. AddingPlatforms를 참조하십시오 .
특정 플랫폼 지원의 예는 5. 지원되는 플랫폼을 참조하십시오 .
Doxygen 문서가 있으며 , 기본 디렉토리에서 Doxygen doxycfg를 실행하면 문서/ 폴더가 생성됩니다. 모든 의견은 Doxygen 호환이어야하며 가능한 한 철저하려고 노력했지만 사용 편의성을 위해 간단한 개요를 제공하겠습니다.
라이브러리는 표준 C (C99)로 작성되었으며 RN2483 모듈의 전체 기능을 제공합니다.
유효한 명령을 모듈에 쓸 수있는 command 함수가 있습니다 (유효한 명령에 대한 명령 참조 참조).
rn2483.cfg 파일에 정의 된 설정을 사용하는 initMAC 명령이 있습니다 ( makefile 로 config.h 에 작성)는 To Lorawan 네트워크를 성공적으로 연결하는 데 필요한 모든 Lorawan 특정 설정을 초기화합니다.
이 외에도 다른 주목할만한 기능은 join (네트워크 가입) 및 tx (연결된 네트워크를 통해 데이터 전송)로 Lorawan 핸드 셰이크를 처리합니다.
참고 : 앞으로이 라이브러리를 확장하고 정리하고자합니다.
Lorawan 설정을 구성하고 MakeFile을 실행하려면 RN2483.CFG 파일을 확인하십시오.
설정은 플랫폼에 따라 달라 지므로 특정 플랫폼 브랜치의 readme을 볼 수 있습니다. 걱정할 핀을 설정하기위한 초기 기능이나 아무것도 없습니다. 모든 것이 read 및 write 기능 (USECase를 위해 구현)에서 수행됩니다.
마스터 브랜치에서는 초기에 printf 및 getc 기능을 가지고있었습니다 (사용자가 stdin 및 stdout 스트림을 재배치하거나 매크로로 기능을 재정의 할 의도로) 그러나 BBC Micro : Bit의 CMAKE 빌드 프로세스를 경험 한 후에 나는 각 플랫폼에 대해 수정 된 래퍼 기능을 사용하기로 결정하기로 결정했습니다.
설정 외에도 일반적인 사용법은 다음과 같습니다.
RN2483_Command () 함수를 통해 RN2483의 다른 기능에 액세스 할 수 있습니다.
분기 : 플랫폼/MBIT 의 readme.md를 참조하십시오.
플랫폼을 최대한 추가하는 데 필요한 변경 사항을 모듈화하려고 노력했습니다. 이것은 주로 RN2483.c의 읽기/쓰기 래퍼 함수를 통해 이루어 지지만 BBC Micro : Bit Branch를 보면 어떤 경우에는 이것보다 더 많은 것을 변경해야한다는 것을 알 수 있습니다 (자세한 내용은 해당 지점의 readme 참조).
rn2483.c 에서 변화가 필요한 기능 :
분명히, 이것은 결코 간단하지 않으므로 추가 수정이 필요한 일부로드 블록이 발생할 수 있습니다. 예를 들어, 플랫폼/MBIT 분기에서 포인터 주위를 마이크로 비트의 연쇄 물체로 전달해야했습니다.