
大家好,我是雜燴君。
今天中午我登錄我的Gitee賬號,發(fā)現(xiàn)有一條留言:

然后我去瞅了一眼他的gitee賬號,發(fā)現(xiàn)是個大佬,必須推薦一波~
EventOS Nano倉庫:
https://gitee.com/event-os/eventos-nano
EventOS Nano同時也已收錄至咱們的資源貼中:
https://gitee.com/zhengnianli/EmbedSummary
EventOS Nano,是一個面向單片機、事件驅動的嵌入式開發(fā)平臺。它主要有兩大技術特色:一是事件驅動,二是超輕量。
EventOS Nano以及其母項目EventOS,目標是開發(fā)一個企業(yè)級的嵌入式開發(fā)平臺,以事件總線為核心,打造一個統(tǒng)一的嵌入式技術生態(tài),為廣大企業(yè)用戶和嵌入式開發(fā)者們,提供搞可靠性的、高性能的、現(xiàn)代且高開發(fā)效率的嵌入式開發(fā)環(huán)境。
EventOS Nano的主要特性列舉如下:
如果你想寫一個清晰的、結構健壯且利于維護的源代碼,又不想使用傳統(tǒng)的RTOS,那么EventOS Nano是你的不二選擇。
EventOS Nano的前身,曾經(jīng)讓我在過去的工作中受益匪淺,讓我非常高效的寫出了很多可靠的程序,能力和回報都有了質的提升。
現(xiàn)在,我將以前的技術成果整理重構,在各方面都向著規(guī)范的開源項目靠攏,包括源碼、注釋、文檔、單元測試和例程等等。
未來,EventOS Nano這個項目我會一直完善下去。我的目標是,將EventOS Nano項目在2022年底前做成Gitee推薦項目,2024年年底前將EventOS項目,做成Gitee的GVP項目。造福更多的嵌入式工程師。
EventOS Nano的移植和入門,在documentation文件夾里,可以參考以下幾個文檔:
EventOS Nano有關的博客:
之所以叫Nano,是因為它真的非常輕量。全功能的EventOS Nano目前經(jīng)MDK編譯后,框架本身占用RAM 200Byte,ROM約3.5KB(優(yōu)化等級為-O3)或4.5KB(優(yōu)化等級為-O0)。
裁剪后,最小功能的EventOS Nano,目前經(jīng)MDK編譯后,框架本身占用RAM 172Byte,ROM約1.2KB(優(yōu)化等級為-O3)或1.5KB(優(yōu)化等級為-O0)。
之所以叫EventOS Nano,一是因為它的技術特色與核心思想,就是事件驅動;二是因為它是另外一個開源項目EventOS(準備中)的簡化實現(xiàn),EventOS是一個事件驅動的、分布式的、可跨平臺開發(fā)的嵌入式RTOS,面向32位單片機和更高處理器的嵌入式開發(fā)平臺。
事件驅動和事件總線,是EventOS Nano的核心,也是EventOS的核心。事件機制,與RTOS中事件概念完全不同,它更像是windows編程中的消息。事件,可以認為是主題 + 不定長數(shù)據(jù),通過事件,可以極大解耦模塊間的耦合,增強軟件的可測試性,還可以進行跨平臺開發(fā)和分布式擴展。
EventOS Nano使用了大量的斷言,對系統(tǒng)的運行過程和用戶對EventOS Nano的使用進行大量的檢查。我們強烈建議,用戶要對斷言接口函數(shù)進行精心的設計和實現(xiàn),在實際的產品代碼中,依然打開斷言。這樣,軟件將以非常快的速度,收斂于穩(wěn)定狀態(tài)。
EventOS Nano提倡跨平臺開發(fā)。所謂跨平臺開發(fā),就是在Windows和Linux等便捷友好的開發(fā)環(huán)境里,完成絕大部分的開發(fā)工作,包括編程、調試、運行和單元測試等工作,然后在目標平臺上進行最后的移植、調試和適配工作。
跨平臺的優(yōu)點有很多,比如開發(fā)效率非常高、工程師進入到更多的編程領域和程序穩(wěn)定可靠等。EventOS Nano主要在32位MinGW平臺和Linux平臺上開發(fā)。
開發(fā)環(huán)境的搭建,見文檔開發(fā)環(huán)境搭建。當然,也完全可以用MDK在單片機上直接開發(fā),效率稍低而已。
無論是廣播式的事件發(fā)送機制,還是發(fā)布-訂閱式的事件發(fā)送機制,實際上,都是為了消除軟件模塊間的耦合。
我完全沒有考慮過EventOS Nano將來如何,也沒有考慮過所謂商業(yè)模式。我有自認為還不錯的工作,收入夠用,家庭溫馨而和睦。我現(xiàn)在只是想,把EventOS Nano項目做好,做成一個工業(yè)級的軟件產品,被眾多網(wǎng)友和用戶認可,并在成千上萬的嵌入式產品中廣泛應用起來。至于其他,就隨遇而安吧。
我深知完善豐富的文檔,對一個開源項目的重要意義。因此,我堅持每一個特性的升級,每一個BUG的修復,都跟隨著相應的文檔。讓EventOS Nano和EventOS項目的文檔專業(yè)化、體系化,包含用戶手冊、版本特性、原理說明、博客、例程等等。
嵌入式的開源項目,用戶最關心的,是軟件的可靠性。單元測試,是保證軟件健壯與可靠的重要手段。對于EventOS Nano這種系統(tǒng)級、框架級的軟件,穩(wěn)定性與可靠性更加重要。從EventOS Nano誕生之日起,它就是面向單元測試的。詳盡而嚴謹?shù)膯卧獪y試,保證了EventOS Nano將絕大多數(shù)的BUG,消除在了開發(fā)階段。EventOS Nano的每一次重構、升級與發(fā)布,都是經(jīng)過了嚴謹?shù)膯卧獪y試的。
軟件如何發(fā)展,代碼向哪個方向前進,EventOS Nano完全聽從用戶們的聲音,完全從需求出發(fā)。我們從各個渠道,微信、QQ、論壇等獲取的意見建議,都將體現(xiàn)到EventOS Nano的開發(fā)中去。
一些Python腳本和工具。
文檔包含Doxygen代碼文檔的生成路徑(未完成)、圖片、代碼相關文檔(如快速入門文檔、移植文檔、開發(fā)環(huán)境搭建說明文檔等)。

1.別錯過嵌入式系統(tǒng)與軟件領域年度盛會~
2.兩會中的“芯”提案
3.AMD將用FPGA干什么?
4.串口傳輸中,共用體和結構體如何轉換?
5.RISC-V CTO: 我們不會像 Arm 和 x86 那樣左右芯片的設計
6.C函數(shù)指針別再停留在語法,得上升到軟件設計~

免責聲明:本文系網(wǎng)絡轉載,版權歸原作者所有。如涉及作品版權問題,請與我們聯(lián)系,我們將根據(jù)您提供的版權證明材料確認版權并支付稿酬或者刪除內容。