2014-06-21 5 views
2

나는 시간이 지남에 따라 확대 될 Arduino 기반 시스템을 개발 중이다. 현재 습도 및 온도 읽기 기능 만 있습니다. 그러나 곧 문 통제, 녹음 및 gsm 웹 클라이언트 지원이 추가 될 것입니다. 이 모든 것을 라이브러리로 포함시키고 주요 부분에서 사용하기를 원합니다. 나는 다른 모든 모듈을 포함하고 그 함수를 호출하는 하나의 ino 파일을 생각하고있다. 제 질문은 그것을하기에 가장 좋고 가장 깨끗한 방법은 무엇입니까?여러 파일로 프로젝트를 만드는 가장 좋은 방법

+0

그래서 라이브러리를 만듭니다. 귀하의 질문은 무엇인가? –

답변

3

예를 들어 라이브러리 및 라이브러리 디렉토리를 사용하는 것이 좋습니다. 인터페이스 할 각 구성 요소에 대한 라이브러리입니다. 이것은 여러면에서 도움이 될 것입니다. 디버깅 및 재사용과 같은.

C:\Users\myself\Google Drive\Arduino\libraries\componentX\componentX.h 
C:\Users\myself\Google Drive\Arduino\libraries\componentX\componentX.cpp 
C:\Users\myself\Google Drive\Arduino\libraries\componentY\componentY.h 
C:\Users\myself\Google Drive\Arduino\libraries\componentY\componentY.cpp 
etc... 

이렇게하면 모듈화되고 구획화됩니다.

알림 Arduino의 IDE 환경 설정이 Google 드라이브로 변경되었습니다. (클라우드 백업 및 휴대) 다음

스케치 폴더에있는 것이 아니라 하나 개의 큰 INO 파일이

C : \ 사용자 \ 아두 이노 \ somethingBIG \ somethingBIG.ino

Google 드라이브 \ 자신을 \

C에 INO 파일을 구현 : 사용자 \ \ mflaga는 \ Google 드라이브 \ 아두 이노 \ 라이브러리 \ 구성 요소 \ 예.

디렉토리. 이렇게하면 GITHUB 또는 Google 드라이브에 구성 요소를 게시하여 시스템간에 공유 할 수 있습니다.

그런 다음 모든 구성 요소를 주 프로젝트에 함께 묶는 스케치 파일을 가질 수 있습니다.

C : \ 사용자가 Google 드라이브 \ 자신을 \ \ 아두 이노 \ somethingTOPlevel \ somethingTOPlevel.ino

+0

그래서 하나의 ino 파일과 많은 cpp 및 h 파일을 갖게 될 것입니다. ino 파일 안에 setup() 및 loop() 함수가 있어야합니까? 나는 그것이 main.c처럼 작동 할 것이라고 생각한다. –

+0

INO 파일은 항상 하나만 있어야하며 setup() 및 loop() 인스턴스 만 있어야합니다. H 파일과 해당 CPP 파일은 기본적으로 항상 INO로 가져온 라이브러리입니다. – mpflaga

+0

감사합니다. 이제 프로젝트를 시작할 수 있습니다. 처음부터 나는 그 방법으로 프로젝트를 조직 할 생각을했습니다. 감사. –

1

당신은 Bare Arduino Project를 살펴 할 수 있습니다. 내 자신의 프로젝트 Moti를 들어

, 나는 아두 이노 IDE를 떠나 내 프로젝트를 개발하기 위해 더 나은 도구를 사용할 필요가 느꼈다. 심볼릭 링크를하거나 모든 도서관을 옮기는 일은 곧 매우 번거롭고 또 다른 해결책을 찾았습니다. 동시에 나는 Makefile의 힘을 발견하고 Sudar's 놀라운 프로젝트를 우연히 발견했다 : Arduino-Makefile.

내 폴더 정리에 많은 시간을 할애하여 다른 사람들에게 유용 할 수 있다고 생각했습니다.

자신의 프로젝트를 시작하기위한 프레임 워크로 Bare Arduino Project을 생각해 볼 수 있습니다.

많은 문서를 작성하는 데 시간이 걸렸습니다. README.mdInstallation Instructions을 사용하여 프레임 워크에 대해 자세히 알아볼 수 있습니다.

일부 항목이 누락 된 것처럼 느껴지거나 의견이 있으면 보내 주시면 감사하겠습니다.

희망이 있습니다.:)

관련 문제