我正在開發隨着時間的推移將會放大的基於Arduino的系統。目前它只有溼度和溫度讀取功能。但是很快就會增加一個門控制,錄音和gsm網絡客戶端支持。我希望所有這些都被包含在庫中,並在主要部分中使用。我正在考慮一個包含所有其他模塊並調用其功能的ino文件。我的問題是最好和最乾淨的方法是什麼?使用多個文件製作項目的最佳方法
回答
我推薦使用示例來粘貼庫和庫目錄。爲每個組件連接的庫。這將在很多方面有所幫助。如調試和重用。
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 Drive。 (雲備份和可移植性)
然後在你的草圖文件夾,而不是一個大INO文件
C:\用戶\自己\谷歌驅動器\ Arduino的\ somethingBIG \ somethingBIG.ino
實現INO文件中的
C:\ Users \ mflaga \ Google Drive \ Arduino \ libraries \ component \ examples。
目錄。這使得它可以快速發佈GITHUB或Google Drive上的組件以在系統之間共享。
然後,您可以創建一個草圖文件,將所有組件連接到主項目中。
C:\用戶\自己\谷歌驅動器\ Arduino的\ somethingTOPlevel \ somethingTOPlevel.ino
所以我只有一個ino文件和許多cpp和h文件,對吧?我應該在ino文件中設置setup()和loop()函數嗎?我想它會像main.c一樣工作。 –
應始終只有一個INO文件,它應該只有setup()和loop()的實例。 H文件和相應的CPP文件基本上總是被拉入INO的庫。 – mpflaga
謝謝,現在我可以開始這個項目。從一開始我就想到這樣組織項目。謝謝。 –
你可能想看看Bare Arduino Project。
對於我自己的項目Moti,我覺得有必要離開Arduino IDE並使用更好的工具來開發我的項目。不得不符號鏈接或移動每個庫很快感到非常麻煩,我尋找另一個解決方案。與此同時,我發現了Makefile
的力量,並偶然發現了Sudar's令人難以置信的項目:Arduino-Makefile。
我花時間組織我的文件夾,並認爲它可能對其他人有用。
您可以考慮將Bare Arduino Project作爲開始自己的項目的框架。
我花時間寫了大量的文檔。您可以通過README.md和Installation Instructions瞭解有關框架的更多信息。
如果你喜歡它或覺得有些東西缺失,我很樂意聽到你的反饋和改進。
希望它有幫助!:)
- 1. 保持多個項目中使用的文件同步的最佳方法?
- 2. 從Web方法返回多個項目的最佳方法?
- 3. 在多模塊Maven項目中使用的最佳方法?
- 4. 在maven中複製多模塊項目的最佳方法
- 5. 在VisualStudio中生成選項的最佳方法項目文件
- 6. 在1個C++項目中管理多個子項目的最佳方法?
- 7. 選擇多個複選框項目的最佳方法
- 8. 組織大型ASP.NET MVC2項目中文件的最佳方法?
- 9. 使多個Vuejs javascript文件一起工作的最佳做法
- 10. 振動UI項目的最佳方法?
- 11. 與Git的Symfony2項目:最佳方法?
- 12. 複製複雜目錄結構文件的最佳方法
- 13. 爲項目組織多個Delphi庫軟件包的最佳方法是什麼?
- 14. 將Google代碼wiki用於項目文檔的最佳方法
- 15. 在使用IGListKit的部分中使用多個項目時的最佳做法
- 16. 在Visual Studio中使用多個項目/解決方案的最佳方式?
- 17. 使用表格修改ObservableCollection中的項目的最佳方法
- 18. 製作ajax上傳文件的最佳方法?
- 19. 製作多點觸控應用程序的最佳方法
- 20. Jenkins:使用子項目構建項目的最佳方式
- 21. 將多個項目鏈接到MySQL中的單個項目的最佳方式
- 22. 從.NET使用卷影複製服務(VSS) - 可用的最佳方法/項目?
- 23. 使用Subversion作爲項目溝通工具的最佳方式?
- 24. 製作推文的最佳方法 - 這個按鈕?
- 25. 製作陣列的最佳方法
- 26. 製作中央SqlConnection的最佳方法
- 27. 製作3D網格的最佳方法?
- 28. 製作嚮導的最佳方法
- 29. 在.NET項目中複製本機DLL的最佳方法
- 30. 在Unity項目上執行版本控制的最佳方法
因此,使圖書館。你的問題是什麼? –