[導(dǎo)讀]今天主要是收集并精選了一些自己所了解和學(xué)習(xí)過的優(yōu)秀的嵌入式開源框架代碼和項目,不太了解的就不推薦給大家了,因為開源的東西實在是太多了,魚龍混雜,所以取其精華去其糟粕是迫在眉睫的大事~當(dāng)然也不要總是沉浸在開源的東西之中無法自拔,開源雖然是一種很好的品質(zhì),但是開源的未必就一定是好東西...
今天主要是收集并精選了一些自己所了解和學(xué)習(xí)過的優(yōu)秀的嵌入式開源框架代碼和項目,不太了解的就不推薦給大家了,因為開源的東西實在是太多了,魚龍混雜,所以取其精華去其糟粕是迫在眉睫的大事~當(dāng)然也不要總是沉浸在開源的東西之中無法自拔,開源雖然是一種很好的品質(zhì),但是開源的未必就一定是好東西~下面是bug菌推薦的一些不錯的開源項目和代碼,大家有時間可以參考學(xué)習(xí)~1開源RTOS
bug菌最早接觸的開源代碼,應(yīng)該就是FreeRTOS了,從接觸到現(xiàn)在對于該RTOS的代碼研讀應(yīng)該有3遍的樣子,雖然工作以后也會用到其他的RTOS,感覺都大同小異,因為他們封裝的服務(wù)接口都很類似,一通百通,所以后面接觸的uCOS和RTThread雖然有時候也會看會代碼,但終究沒有從頭到尾研讀過,除非遇到了一些更底層點的問題。如果有RTOS開發(fā)需求或者是感興趣的朋友,建議都能夠認(rèn)認(rèn)真真研讀完一款RTOS的代碼,這樣對自身的編碼水平和能力會有較大的提升。當(dāng)然在首次閱碼的過程中會遇到很多理解上的問題,希望你能夠用心的補(bǔ)充相關(guān)軟件知識和數(shù)據(jù)結(jié)構(gòu)理論等,這樣才能獲得更大的學(xué)習(xí)收益。2開源UGUI
曾經(jīng)也嘗試閱讀過GUI的一些代碼,只要是嵌入式行業(yè)的伙計都會有一個徒手寫一款類似于手機(jī)界面的夢吧~其實很早玩的圖形界面就是uCGUI,uCGUI可以說是emwin的一版精簡版,老版本他們是開源的,而新版本都閉源了,而后來工作上對圖形界面這一塊需求不是很大,也就沒有再去繼續(xù)閱讀下去,僅僅理了一下圖形界面的設(shè)計思路吧。因為里面涉及到很多的計算機(jī)圖形算法等知識,數(shù)學(xué)等功底還不能少,難度不小,撤~后來兜兜轉(zhuǎn)轉(zhuǎn)換了一些公司又多多少少會涉及到一些小型的自研單色GUI,所以在需求設(shè)計和功能擴(kuò)展上也會去找一些相關(guān)開源的代碼來吸收和借鑒,比如:littlevGL、MonoGUI、MiniGUI、simpleGUI等等,這些基本上都讀過和測試過。3框架和庫
最后是一些常用的框架和庫,這一部分相對比較獨立,在平時的一些項目開發(fā)中可以帶來一些借鑒意義和靈感,不過不建議大家直接拿來就用,畢竟大部分組件的代碼量都不是很大,還是要理順一下思路,能夠在此基礎(chǔ)上擴(kuò)展那就再好不過了。當(dāng)然如果你真的時間不夠,也要了解清楚每個組件的適應(yīng)場景和使用條件,避免一些迷之bug。來看看bug菌推薦了哪些好東西?:?cJSON:基于ANSIC的超輕量級JSON解析器。MultiTimer :一個軟件定時器擴(kuò)展模塊,可無限擴(kuò)展你所需的定時器任務(wù),取代傳統(tǒng)的標(biāo)志位判斷方式, 更優(yōu)雅更便捷地管理程序的時間觸發(fā)時序。MultiButton:一個小巧簡單易用的事件驅(qū)動型按鍵驅(qū)動模塊,可無限量擴(kuò)展按鍵,按鍵事件的回調(diào)異步處理方式可以簡化你的程序結(jié)構(gòu),去除冗余的按鍵處理硬編碼,讓你的按鍵業(yè)務(wù)邏輯更清晰。lw_oopc:是了高先生及其MISOO團(tuán)隊創(chuàng)作的lw_oopc宏,一個輕量級的C語言面向?qū)ο缶幊炭蚣?/span>。cmd-parser : 一個非常簡單好用的命令解析器,占用資源極少極少,采用哈希算法超快匹配命令!letter shell?:?是一個C語言編寫的,可以嵌入在程序中的嵌入式shell,主要面向嵌入式設(shè)備,以C語言函數(shù)為運行單位,可以通過命令行調(diào)用,運行程序中的函數(shù)。eepromfs : 基于EEPROM的簡易類文件的數(shù)據(jù)讀寫庫,方便做動態(tài)功能增減時參數(shù)管理。增減參數(shù)塊類似增減文件,不會對已有數(shù)據(jù)存儲帶來影響。EFSM ?(event finite state machine,事件驅(qū)動型有限狀態(tài)機(jī)) : 是一個基于事件驅(qū)動的有限狀態(tài)機(jī),主要應(yīng)用于嵌入式設(shè)備的軟件系統(tǒng)中,EFSM的設(shè)計原則是:簡單!OpenBLT:主要用作STM32引導(dǎo)加載程序。它可以與幾乎任何微控制器一起工作,并使用幾乎任何類型的通信接口來執(zhí)行固件更新。NorthFrame : 是基于非UML極簡理念的狀態(tài)機(jī)框架,配合NF_FsmDesigner圖形化開發(fā)工具,可無負(fù)擔(dān)替代傳統(tǒng)switch-case狀態(tài)機(jī)開發(fā)。lwrb:庫提供了通用的FIFO環(huán)緩沖區(qū)實現(xiàn)。EasyLogger:是一款超輕量級(ROM<1.6K, RAM<0.3K)、高性能的 C/C 日志庫,非常適合對資源敏感的軟件項目,EasyFlash:是一款開源的輕量級嵌入式Flash存儲器庫,方便開發(fā)者更加輕松的實現(xiàn)基于Flash存儲器的常見應(yīng)用開發(fā)。SFUD:一款開源的串行 SPI Flash 通用驅(qū)動庫。解決 Flash 的差異現(xiàn)狀而設(shè)計,讓我們的產(chǎn)品能夠支持不同品牌及規(guī)格的 Flash,提高了涉及到 Flash 功能的軟件的可重用性及可擴(kuò)展性,同時也可以規(guī)避 Flash 缺貨或停產(chǎn)給產(chǎn)品所帶來的風(fēng)險。znfat?:振南的znFAT是一套高效、完備、精簡且具有高可移植性的嵌入式FAT32文件系統(tǒng)。bug菌經(jīng)常談到閱讀源碼、閱讀源碼,那么這里就為大家精選了一波開源代碼供大家學(xué)習(xí)參考,相關(guān)介紹來自于項目本身和修改。它們均可以在github,gitee等開源平臺搜索查找到,這里就不放鏈接了,自己動動手,快速查找資料也是一種能力~—— The End?——
本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。
關(guān)鍵字:
驅(qū)動電源
在工業(yè)自動化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護(hù)是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機(jī)驅(qū)動性能的關(guān)鍵。
關(guān)鍵字:
工業(yè)電機(jī)
驅(qū)動電源
LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗。要解決這一問題,需從設(shè)計、生...
關(guān)鍵字:
驅(qū)動電源
照明系統(tǒng)
散熱
根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。
關(guān)鍵字:
LED
設(shè)計
驅(qū)動電源
電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機(jī)驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...
關(guān)鍵字:
電動汽車
新能源
驅(qū)動電源
在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...
關(guān)鍵字:
發(fā)光二極管
驅(qū)動電源
LED
在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...
關(guān)鍵字:
LED照明技術(shù)
電磁干擾
驅(qū)動電源
開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源
關(guān)鍵字:
LED
驅(qū)動電源
開關(guān)電源
LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。
關(guān)鍵字:
LED
隧道燈
驅(qū)動電源
LED驅(qū)動電源在LED照明系統(tǒng)中扮演著至關(guān)重要的角色。由于LED具有節(jié)能、環(huán)保、長壽命等優(yōu)點,使得LED照明在各個領(lǐng)域得到廣泛應(yīng)用。然而,LED的電流、電壓特性需要特定的驅(qū)動電源才能正常工作。本文將介紹常用的LED驅(qū)動電...
關(guān)鍵字:
LED驅(qū)動電源
led照明
LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電源轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。
關(guān)鍵字:
LED
驅(qū)動電源
高壓工頻交流
崧盛股份9日發(fā)布投資者關(guān)系活動記錄表,就植物照明發(fā)展趨勢、行業(yè)壁壘等問題進(jìn)行分享。植物照明未來市場需求廣闊崧盛股份指出,植物照明將會走向長期產(chǎn)業(yè)領(lǐng)域。主要原因有三:第一,LED植物照明賦能終端種植更具有經(jīng)濟(jì)價值。由于LE...
關(guān)鍵字:
崧盛股份
驅(qū)動電源
在當(dāng)今高度發(fā)展的技術(shù)中,電子產(chǎn)品的升級越來越快,LED燈技術(shù)也在不斷發(fā)展,這使我們的城市變得豐富多彩。 LED驅(qū)動電源將電源轉(zhuǎn)換為特定的電壓和電流,以驅(qū)動LED發(fā)光。通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流電(即...
關(guān)鍵字:
LED
驅(qū)動電源
高壓直流
人類社會的進(jìn)步離不開社會上各行各業(yè)的努力,各種各樣的電子產(chǎn)品的更新?lián)Q代離不開我們的設(shè)計者的努力,其實很多人并不會去了解電子產(chǎn)品的組成,比如LED電源。
關(guān)鍵字:
LED
驅(qū)動電源
低壓直流
隨著科學(xué)技術(shù)的發(fā)展,LED技術(shù)也在不斷發(fā)展,為我們的生活帶來各種便利,為我們提供各種各樣生活信息,造福著我們?nèi)祟悺ED驅(qū)動電源實際上是一種電源,但是它是一種特定的電源,用于驅(qū)動LED發(fā)射帶有電壓或電流的光。 因此,LE...
關(guān)鍵字:
LED
驅(qū)動電源
電流
LED燈作為一種新型節(jié)能和無污染光源,由于其特有的發(fā)光照明特性,在現(xiàn)代照明應(yīng)用中發(fā)揮著革命性的作用。作為 LED 照明產(chǎn)業(yè)鏈中最為核心的部件之一,LED 驅(qū)動電源的驅(qū)動控制技術(shù)所存在的可靠性低、成本高等典型問題一直制約著...
關(guān)鍵字:
多路
LED
驅(qū)動電源
隨著社會的快速發(fā)展,LED技術(shù)也在飛速發(fā)展,為我們的城市的燈光煥發(fā)光彩,讓我們的生活越來越有趣,那么你知道LED需要LED驅(qū)動電源嗎?那么你知道什么是LED驅(qū)動電源嗎?
關(guān)鍵字:
LED
開關(guān)電源
驅(qū)動電源
早前有新聞稱,Cree在2018年開始宣布轉(zhuǎn)型高科技半導(dǎo)體領(lǐng)域,并一邊逐漸脫離照明與LED相關(guān)業(yè)務(wù),一邊持續(xù)投資半導(dǎo)體。在今日,Cree宣布與SMART Global Holdings, Inc.達(dá)成最終協(xié)議,擬將LED...
關(guān)鍵字:
cree
led照明