标题: 51单片机星光操作系统源程序与资料 [打印本页]

作者: supper战    时间: 2020-3-8 21:08
标题: 51单片机星光操作系统源程序与资料
      最近呢一直在忙着飞思卡尔智能车大赛的活,等待了许久今天终于出了规则。
今年各个组别对主控都有较大的变动,其中节能组甚至要求用STC主控,那么
上一个操作系统就是是有必要的。

      然后前几天研究操作系统时也发现了不少的案例,在51上跑操作系统或者RTOS
真的开始有用武之地了。查了一些资料,其中有一个很不错的包,叫星光操作系统,
可以完美移植到多款51单片机上。

      以下是具体的信息:

(1)支持AT89S52、STC89C52RC、STC90C58RDPlus、STC12C5A60S2、STC15F2K60S2、STC15W4K32S4、STC8A8K64S4A12和STC8F2K64S4单片机
(2)支持线程、信号量、屏障和信箱
(3)采用时间片轮转调度和抢占式调度,时间片为10毫秒
(4)支持以时钟周期为单位的延迟
(5)支持中断触发,使用中断系统默认的优先级
(6)提供组件、库和驱动,方便使用外设
(7)采用模块化设计,便于裁减和扩充功能
(8)只有一个文件使用8051汇编语言,其它文件使用C语言,具有良好的可移植性

星光操作系统的开发环境为Keil C51 V9.51a,使用9级优化,重点对大小进行优化,其最小编译结果如下所示:

表1  星光操作系统的最小编译结果
单片机                                  data           xdata             code
AT89S52                               153               0                5141
STC89C52RC(6T模式)         99                57               5593
STC90C58RDPlus(6T模式)   99                57               5593
STC12C5A60S2                      99                92               7407
STC15F2K60S2                      99                96               8521
STC15W4K32S4                     99               127              10835
STC8A8K64S4A12                  99               138              12877
STC8F2K64S4                        99              105               9335

在调试阶段,使用4级优化,调试通过后使用9级优化。如果9级优化后运行结果错误,增加调用栈的容量后重新编译。

星光操作系统支持的组件如下所示:

表2  星光操作系统支持的组件
   名称                                     功能
LCM1601                           1601液晶模块
LCM1602                           1602液晶模块
LCM12864                         12864液晶模块
DS18B20                           1线接口温度传感器
DS1302                             3线接口实时时钟
HS0038B                           红外线解码器
AT24C02                           IIC接口EEPROM
AT93C46                           3线接口EEPEOM
28BYJ48                            步进永磁减速电机
NRF24L01                          2.4GHz无线收发器
NRF24L01Plus                    2.4GHz无线收发器


Starlight_V0.2.zip (4.86 MB, 下载次数: 35)






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1