對于GitHub,可能做互聯(lián)網(wǎng)開發(fā)的同學(xué)會更加熟悉,尤其是前端,后端,安卓開發(fā)等技術(shù),GitHub甚至都算是寫代碼必備的工具了。而對于嵌入式,因為其軟硬件一體的特點,其實項目總量和受關(guān)注度都要差很多,但是相對于個人來說,還是有海量的可參考資料的。我從上大學(xué)到工作差不多十年的時間都在從事嵌入式方向,同時也收藏了很多GitHub上的好的資源,總結(jié)下做下記錄,也分享給需要的同學(xué)。
持續(xù)更新,以供參考!以防后邊找不到可以點贊收藏下。
正文
總結(jié)畢竟是有限的,這里也只放了部分,大家可以知道方向后自己在GitHub搜索,這里推薦一篇文章,自己學(xué)會方法才是王道。73個GitHub高級搜索技巧_github搜索技巧_執(zhí)章學(xué)長的博客-CSDN博客https://blog.csdn.net/PaperJack/article/details/118543980還有一些我收藏的嵌入式網(wǎng)站,其實這個比單純的項目更加有用。單片機(jī)、嵌入式的大神都平時瀏覽什么網(wǎng)站?https://zhuanlan.zhihu.com/p/571176468
值得收藏的嵌入式項目:
1.Awesome-IoT-Resources?精選物聯(lián)網(wǎng)資源的精彩集合(書籍、教程、博客、播客),資源收集非常多且全,還有很多嵌入式知名項目的網(wǎng)址,可以直達(dá),非常推薦。https://github.com/theepiccode/Awesome-IoT-Resources
2.嵌入式經(jīng)典書籍分享,這是知乎用戶 @科巖同學(xué)維護(hù)的項目, 包含的主要是嵌入式方向?qū)W習(xí)需要的書籍資源,非常推薦需要的同學(xué)自取。https://github.com/imKeYan/EmbedBooks
3.RT-Thread RT-Thread誕生于2006年,是一款以開源、中立、社區(qū)化發(fā)展起來的物聯(lián)網(wǎng)操作系統(tǒng)。而操作系統(tǒng)其實就是嵌入式開發(fā)的核心,所以可以多研究一下。https://github.com/RT-Thread/rt-thread
4.CMSIS DAP 升級版(DAPLink)這個用過野火電子家開發(fā)板的同學(xué)應(yīng)該知道,之前大家都是用ST-link居多,而DAPLink是軟硬件開源的,立創(chuàng)EDA上也有開源項目,有同學(xué)還魔改為了無線下載器,還是很實用的開源項目。https://github.com/ARMmbed/DAPLink
5.DreamSourceLab(夢源科技)邏輯分析儀,我第一次接觸夢源科技是我畢業(yè)的第一年(2017),單位有個他們家的邏輯分析儀,很小巧精致,插上傳輸線電腦就變?yōu)榱似聊?,這個對于當(dāng)時的我來說還是很有沖擊的,然后就一直關(guān)注著他們。他們的邏輯分析儀,從FPGA源代碼、MCU固件到Qt上位機(jī)都是開源的,現(xiàn)在產(chǎn)品比我了解的又多了不少。https://github.com/DreamSourceLab
6.Arduino,這個不必多說,Arduino的影響力其實已經(jīng)超脫了嵌入式,我也一直認(rèn)為Arduino是非常成功的開源硬件,它讓很多一點不懂技術(shù)的人也可以享受創(chuàng)意的快樂,豐富的開源軟件和項目,穩(wěn)定的硬件都是非常好的學(xué)習(xí)平臺。https://github.com/arduino
7.Lua,Lua是我之前在學(xué)校做項目的時候用到的,很多同學(xué)可能比較陌生,奇怪Lua和嵌入式的關(guān)系,Lua完全是由C開發(fā)的腳本語言,所以他對于C語言項目兼容非常好,這兩點就使其在嵌入式開發(fā)的時候作用很大。比如對于需要經(jīng)常更改的參數(shù),如果使用C語言就需要經(jīng)常編譯固件下載固件,這顯然不合適,而對于這部分可以使用Lua,只需要保留接口給使用人員,輸入改動即可直接運行。舉個例子,比如超市的收銀機(jī),經(jīng)常需要打折計費,你有想過是怎么實現(xiàn)的嗎?https://github.com/lua/lua
8.ardupilot,終于到了我的老本行,其實GitHub上關(guān)于無人機(jī)的開源項目很多,當(dāng)然這并不只適用于無人機(jī)(從傳統(tǒng)飛機(jī)、四翼飛機(jī)、多旋翼和直升機(jī)到漫游車、船只、平衡機(jī)器人,甚至潛艇),ardupilot是一個開源自動駕駛儀軟件項目。它一直由專業(yè)工程師、計算機(jī)科學(xué)家和社區(qū)貢獻(xiàn)者組成的多元化團(tuán)隊開發(fā)。非常值得學(xué)習(xí)控制或者自動化的同學(xué)參考,真的都是好東西。https://github.com/ArduPilot/ardupilot
9.Avem,接上邊,既然說無人機(jī)了,再介紹一個輕量級無人機(jī)飛控項目。我在學(xué)校的時候搞過很多四軸無人機(jī),但是資料都是零零散散的,這個Avem項目就是比較全的一個,主控是stm32f103,非常通用也很好理解,比較推薦學(xué)習(xí)。https://github.com/avem-labs/Avem
10.FreeModbus_Slave-Master-RTT-STM32,對于設(shè)計工控的同學(xué)對于modbus應(yīng)該比較熟悉,我是工作第一年的時候公司有個支線項目,做氣象監(jiān)控平臺,用到的傳感器都是modbus協(xié)議,所以開始使用學(xué)習(xí)。分享的這個項目概述:FreeModbus是一款開源的Modbus協(xié)議棧,但是只有從機(jī)開源,主機(jī)源碼是需要收費的。同時網(wǎng)上也沒有發(fā)現(xiàn)比較好的開源的Modbus主機(jī)協(xié)議棧,所以才開發(fā)這款支持主機(jī)模式的FreeModbus協(xié)議棧。https://github.com/armink/FreeModbus_Slave-Master-RTT-STM32github.com/armink/FreeModbus_Slave-Master-RTT-STM32
11.linux,這是由林納斯大神維護(hù)的項目,嵌入式雖然涉及非常廣泛,但是Linux絕對在里邊在一席之地,當(dāng)然Linux遠(yuǎn)不止嵌入式方向一個應(yīng)用,對于嵌入式人可以學(xué)習(xí)Linux內(nèi)核的精華用于開發(fā)之中。當(dāng)然就像很多講Linux的書籍一樣,不用從最新的內(nèi)核入手,可以回退到老的版本更加容易學(xué)習(xí)。https://github.com/torvalds/linuxgithub.com/torvalds/linux
12.MultiTimer 是一個軟件定時器擴(kuò)展模塊,可無限擴(kuò)展你所需的定時器任務(wù),取代傳統(tǒng)的標(biāo)志位判斷方式, 更優(yōu)雅更便捷地管理程序的時間觸發(fā)時序。https://github.com/0x1abin/MultiTimer/blob/development/examples/test_linux.c
13.iobroker?是一款物聯(lián)網(wǎng)集成平臺,它專注于樓宇自動化、智能計量、環(huán)境輔助生活、過程自動化、數(shù)據(jù)可視化和數(shù)據(jù)記錄等領(lǐng)域的應(yīng)用。通過將各種設(shè)備和系統(tǒng)連接到一個統(tǒng)一的平臺上,iobroker 旨在簡化樓宇管理和自動化過程,提高生活品質(zhì),降低能源消耗,并為企業(yè)提供更高效的生產(chǎn)過程。https://github.com/ioBroker/ioBroker
14.sagemaker-defect-detection 通過端到端深度學(xué)習(xí)工作流程檢測產(chǎn)品缺陷,以實現(xiàn)制造過程中的質(zhì)量控制。該解決方案接收產(chǎn)品圖像的輸入并通過邊界框識別缺陷區(qū)域。機(jī)器視覺檢測在制造業(yè)產(chǎn)品質(zhì)量控制中的應(yīng)用越來越廣泛。隨著人工智能技術(shù)和圖像處理技術(shù)的快速發(fā)展,機(jī)器視覺檢測技術(shù)逐漸成為制造業(yè)中重要的質(zhì)量控制手段。https://github.com/yuanzhongqiao/sagemaker-defect-detection
15.earth rover一家專注于農(nóng)業(yè)技術(shù),試圖徹底改變最古老的行業(yè)之一。他們利用深度學(xué)習(xí)、人工智能和創(chuàng)新機(jī)器人技術(shù)來生產(chǎn)價格實惠的無化學(xué)物質(zhì)和新鮮產(chǎn)品。開源智慧農(nóng)業(yè)機(jī)器人。
- Earth_rover_localization:ROS 包,用于配置 robots_localization 包的 EKF。使用 GPS Piksy Multi和 IMU MTi-3 AHRS的傳感器融合piksi_multi_rtk:包含 Piksi RTK 接收器設(shè)備的 ROS 驅(qū)動程序和實用程序的存儲庫。xsens_mti_ros_node:第三代和第四代 Xsens IMU 設(shè)備的 ROS 驅(qū)動程序。
https://github.com/earthrover
16.ROS(Robot Operating System,機(jī)器人操作系統(tǒng))是一個用于機(jī)器人開發(fā)的免費、開源的軟件框架。它旨在為機(jī)器人研究和開發(fā)提供一個通用、靈活的平臺,使得不同類型的機(jī)器人能夠在各種環(huán)境下實現(xiàn)自主行動。ROS 由世界多個大學(xué)和組織開發(fā)并維護(hù)。https://github.com/ros
17.CLN17電機(jī)驅(qū)動器是一款開源、緊湊、高性能的閉環(huán)步進(jìn)電機(jī)驅(qū)動器,專為 NEMA17 外形尺寸電機(jī)設(shè)計。該驅(qū)動器提供先進(jìn)的功能,如靜音和平穩(wěn)的運動、高精度的位置控制和節(jié)能功能,使其成為各種應(yīng)用的理想選擇,包括機(jī)器人、CNC 機(jī)床和 3D 打印機(jī)。https://github.com/creapunk/CLN17
18.Daytripper上班摸魚神器,分為接收器和發(fā)射器兩部分,發(fā)射器會利用激光檢測是否有物體通過,并通過無線協(xié)議通知接收器,而接收器可以根據(jù)設(shè)置切換到桌面!https://github.com/dekuNukem/daytripper
19.X-TRACK是一款開源騎行碼表
- 1.支持速度、距離、時間、卡路里、航向顯示2.擁有離線地圖,支持顯示實時位置,支持縮放3.支持計步4.支持經(jīng)緯度、海拔顯示5.支持RTC自動根據(jù)GPS校準(zhǔn)6.支持記錄軌跡,可導(dǎo)出GPX格式的文件7.支持掉電自動保存數(shù)據(jù)(JSON格式文件)8.四小時續(xù)航 (持續(xù)工作,始終亮屏)9.支持在PC模擬器模擬,脫離硬件調(diào)試(配置為Release x86)10.支持顯示實時軌跡
https://github.com/FASTSHIFT/X-TRACK
未完待續(xù),持續(xù)更新!以防后邊找不到可以點贊收藏下!