標(biāo)題: small_rtos - C51單片機(jī)的實(shí)時操作系統(tǒng)源碼 [打印本頁]

作者: zhaobolove    時間: 2020-9-30 10:56
標(biāo)題: small_rtos - C51單片機(jī)的實(shí)時操作系統(tǒng)源碼
small_rtos  是小輕級別的 C51 實(shí)時系統(tǒng).  

是免費(fèi)的,  公開的,  

作者  陳明計(jì), 是他寫的 small rtos ,他根據(jù)ucos的原理寫的。這個small rtos是可以再51單片機(jī)上運(yùn)行的,就是為了C51內(nèi)存的限制。
作為單片機(jī)開發(fā)的時刻都得想著內(nèi)存的問題,因?yàn)?1單片機(jī)芯片資源有限。


先上  手冊 和 源程序.


下一步 ,我準(zhǔn)備帶大家一步一步的學(xué)習(xí)掌握這個 系統(tǒng). 并好好的利用這個系統(tǒng)

全部資料51hei下載地址:
small_rtos1.12.1.zip (88.61 KB, 下載次數(shù): 268)
Small_RTOS(51)_1.12.1v手冊.pdf (132.54 KB, 下載次數(shù): 255)

作者: zhaobolove    時間: 2020-9-30 11:22
現(xiàn)在 開始 打開源程序, 上第一個 實(shí)驗(yàn)代碼,  先熱一身, 熟悉一下這個系統(tǒng).  

附件是我的 第一個 應(yīng)用small_rtos 做的實(shí)驗(yàn).
它有 OS文件夾  包含 OS_core.c   OS_q.c  OS_sem.c 組成,  和硬件無關(guān), 屬于系統(tǒng)核
還有 User文件夾  包含我們的實(shí)驗(yàn)代碼 ext1.c
還有TargetCPU文件夾, 包含 OS_CPU_c.c  OS_COU_a.asm   和硬件有關(guān),  其實(shí)就是管理C51的定時器

編譯后默認(rèn)路徑  E:\temp\   ,可以修改一下的 , 得到 .m51的文件  , 進(jìn)行查看


Small RTOS(51)文件列表

根目錄:
list.txt                        :本文件
README.TXT                      :一些說明
license.txt                     :許可協(xié)議
manual.txt                      :用戶手冊
faq.txt                         :網(wǎng)友的一些問題及解答

.\ex1:
這是第1個例子的目錄
README.TXT                      :本例子的一些說明
ext1.c                          :本例子的程序文件
OS_CFG.H                        :本例子的Small RTOS(51)配置文件
config.h                        :本例子的配置文件
OS_CPU.H                        :本例子的與cpu相關(guān)的配置文件
test.Uv2                        :keil c51工程文件
test.plg                        :keil c51工程附屬文件
test.Opt                        :keil c51工程附屬文件

.\ex2:
這是第2個例子的目錄
README.TXT                      :本例子的一些說明              
ext2.c                          :本例子的程序文件              
OS_CFG.H                        :本例子的Small RTOS(51)配置文件
config.h                        :本例子的配置文件              
OS_CPU.H                        :本例子的與cpu相關(guān)的配置文件
display.c                       :對仿真dll的一些操作函數(shù)         
display.h                       :display.c的頭文件         
test.Uv2                        :keil c51工程文件              
test.Opt                        :keil c51工程附屬文件
test.plg                        :keil c51工程附屬文件

.\ex3:
這是第3個例子的目錄
README.TXT                      :本例子的一些說明               
ext3.c                          :本例子的程序文件               
OS_CFG.H                        :本例子的Small RTOS(51)配置文件  
config.h                        :本例子的配置文件               
OS_CPU.H                        :本例子的與cpu相關(guān)的配置文件
display.c                       :對仿真dll的一些操作函數(shù)         
display.h                       :display.c的頭文件               
test.Uv2                        :keil c51工程文件               
test.Opt                        :keil c51工程附屬文件            
test.plg                        :keil c51工程附屬文件                    

.\keilc51
這是與CPU(8051系列)相關(guān)的移植代碼
OS_CPU_C.C                      :移植代碼C語言部分
OS_CPU_A.ASM                    :移植代碼匯編語言部分

.\os
這是Small RTOS(51)與CPU無關(guān)部分
OS_CORE.C                       :Small RTOS(51)核心
OS.H                            :Small RTOS(51)頭文件
OS_q.c                          :Small RTOS(51)消息隊(duì)列代碼
OS_q.h                          :Small RTOS(51)消息隊(duì)列頭文件
OS_SEM.c                        :Small RTOS(51)信號量代碼
OS_SEM.h                        :Small RTOS(51)信號量頭文件

.\h
這是用戶使用Small RTOS(51)時的一些頭文件例子
OS_CFG.H                        :Small RTOS(51)配置文件  
config.h                        :用戶配置文件               
OS_CPU.H                        :cpu相關(guān)的配置文件

.\SerialIn
這是消息隊(duì)列的例子所在目錄
README.TXT                      :本例子的一些說明               
Serial.c                        :本例子的程序文件               
OS_CFG.H                        :本例子的Small RTOS(51)配置文件  
config.h                        :本例子的配置文件               
OS_CPU.H                        :本例子的與cpu相關(guān)的配置文件
Test.ini                        ;本例子的調(diào)試文件
test.Uv2                        :keil c51工程文件               
test.Opt                        :keil c51工程附屬文件            
test.plg                        :keil c51工程附屬文件   

.\SerialOut
這是信號量的例子所在目錄
README.TXT                      :本例子的一些說明               
Serial.c                        :本例子的程序文件               
OS_CFG.H                        :本例子的Small RTOS(51)配置文件  
config.h                        :本例子的配置文件               
OS_CPU.H                        :本例子的與cpu相關(guān)的配置文件
test.Uv2                        :keil c51工程文件               
test.Opt                        :keil c51工程附屬文件            
test.plg                        :keil c51工程附屬文件   


作者: zhaobolove    時間: 2020-9-30 11:24
縱觀51的RTOS,keil c51 所帶的RTX Full 太大(6k多),且需要外部ram,又無源代碼,很多時候不實(shí)用。RTX Tiny雖然。900多字節(jié)),但是任務(wù)沒有優(yōu)先級和中斷管理,也無源代碼,也不太實(shí)用。而ucosII雖有源代碼,但是它太大,又需要外部ram,所有函數(shù)又必須是重入函數(shù),用在51這類小片內(nèi)RAM的單片機(jī)上有點(diǎn)勉強(qiáng).
作者: apple_01    時間: 2021-1-7 17:53
這個系統(tǒng)早就有了,而且出過書的。
作者: timixiaoyouxi    時間: 2021-2-24 09:09
apple_01 發(fā)表于 2021-1-7 17:53
這個系統(tǒng)早就有了,而且出過書的。

你好,請問書名叫什么
作者: timixiaoyouxi    時間: 2021-2-24 13:12
這個后續(xù),怎么沒了
作者: bxzday    時間: 2021-2-25 23:04
多謝樓主,最近剛好在看這個,
作者: apple_01    時間: 2021-5-21 10:37
很早的事情了,現(xiàn)在的small rtos 支持 ARM的。
作者: xmf_bebe    時間: 2021-5-24 16:39
有人下載可以跑起來嗎
作者: huangl53    時間: 2021-6-19 16:16
xmf_bebe 發(fā)表于 2021-5-24 16:39
有人下載可以跑起來嗎

下載到單片機(jī)中試了,有效果。
作者: huangl53    時間: 2021-6-19 20:09
整理了一下  STC15W4K32S4   22.1184M


三個燈,有興趣的可以試下。

RTOS_STC15W.rar

98.31 KB, 下載次數(shù): 87, 下載積分: 黑幣 -5


作者: cooleaf    時間: 2021-6-24 21:03
這個比較實(shí)用,感謝!
作者: cooleaf    時間: 2021-9-18 12:02
針對資源少的單片機(jī),資源占用少是必須,樓主辛苦
作者: csgtli    時間: 2021-12-13 22:12
編譯的時候報這個錯,請教各位,是什么意思?沒遇見過。:C:\Keil_c51\C51\Inc\stdlib.h(62): error C141: syntax error near 'code'
作者: QiaoZhiZhong    時間: 2022-9-25 16:42
看來,我這個老兵,必須從頭開始了
作者: Longan.Wang    時間: 2022-11-10 14:29
有源碼就是好啊
作者: 西點(diǎn)鐘靈毓秀    時間: 2023-2-17 10:49
學(xué)習(xí)了,學(xué)51又有力氣了
作者: V5_471G    時間: 2023-8-25 10:12
為什么移植沒有效果呢
作者: rayran    時間: 2023-9-23 08:12
學(xué)習(xí)一下,研究一下實(shí)現(xiàn)理論
作者: wdliming    時間: 2023-10-29 19:35
huangl53 發(fā)表于 2021-6-19 20:09
整理了一下  STC15W4K32S4   22.1184M

不錯,謝謝分享~~
作者: hclin    時間: 2023-12-28 00:49

這個比較實(shí)用,謝謝分享~~
作者: chscn    時間: 2024-6-29 11:56
csgtli 發(fā)表于 2021-12-13 22:12
編譯的時候報這個錯,請教各位,是什么意思?沒遇見過。:C:\Keil_c51\C51\Inc\stdlib.h(62): error C141:  ...

你好,怎么解決的?
作者: chscn    時間: 2024-6-30 17:01
csgtli 發(fā)表于 2021-12-13 22:12
編譯的時候報這個錯,請教各位,是什么意思?沒遇見過。:C:\Keil_c51\C51\Inc\stdlib.h(62): error C141:  ...

我把里面的  display.c文件移除,修改任務(wù)數(shù)量,編譯就過了,具體不知道原因




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1