轻松自编小型嵌入式操作系统的附录基础系统源码

轻松自编小型嵌入式操作系统的附录基础系统源码

ID:21772891

大小:87.91 KB

页数:43页

时间:2018-10-24

轻松自编小型嵌入式操作系统的附录基础系统源码_第1页
轻松自编小型嵌入式操作系统的附录基础系统源码_第2页
轻松自编小型嵌入式操作系统的附录基础系统源码_第3页
轻松自编小型嵌入式操作系统的附录基础系统源码_第4页
轻松自编小型嵌入式操作系统的附录基础系统源码_第5页
资源描述:

《轻松自编小型嵌入式操作系统的附录基础系统源码》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、是书后的代码,用的是keil51软件,目标器件是AT89C52我把它放在一个文件中了,然后建立工程添加Main.c后,右键Main.c选择第一项,勾选GenerateAssemblerSRCfIle和AssembleSRCfile然后由于是内嵌汇编,所以还得做一件事:右键SourceGroup添加文件然后去安装keil的命令下找到C51文件夹下的Lib文件,找到个文件,加入进去然后就编译运行调试的时候全速运行,LED灯就闪亮了 #include   sbitLED1=P0^1;sbit LED2=P0^2;sbit LED3=P0^3;sb

2、it LED4=P0^4;voidrenwu_0();voidrenwu_1();voidrenwu_2();voidrenwu_3();voidrenwu_4(); #definerwzons5//任务总数#define ch_danzhan_zs18 //任务栈长度配置#definech_sjzs 3//任务时间片长度总数,如果定时时间是10ms,那么单个任务连续一次的运行时间是50ms#define ch_tick_zs 0xdc//10ms系统时间粒度配置#definech_ticks 10//10ms延时节拍=时间粒度#definech_rwtd_

3、xs 1//堆栈操作模式#definech_gn_rw 0//功能函数配置  //信号量使能配置#define ch_xhl_en 0#definech_xhl_zs 0//邮箱使能配置#definech_yx_en 0#define ch_yx_zs0//消息队列使能配置#definech_xxdl_en0#definech_xxdl_zs0#definech_fuwu_en0typedefunsignedcharuc8;typedefunsignedintui16;typedefunsignedlongul32;//系统状态模式的宏标志#definec

4、h_tzms0x00 //系统处于停止的状态 #definech_yxms0x01//运行 #definech_hcms0x02//互斥 #definech_fwms0x04//服务运行 //任务状态宏标志 #definech_yunxing0x01 //任务是处于就绪运行态之中的 #definech_yanshi0x02  //任务处于延时运行态中 #definech_dengdai_zd0x20//等待中断状态 #definech_tingzhi 0x40//状态停止//变量状态宏定义,比如P43说道,RW/CZXT小型嵌入式操作系统的系统管理器中有一个

5、系统运行标志,ch_xtyx,如果操作系统//进入运行,那么运行标志为真,即ch_xtyx=ch_on,如果操作系统未启动或停止运行,那么运行标志为假,即ch_xtyx=ch_off//又比如ch_zd_on和ch_zd_off分别用来开方CPU总中断和禁止CPU总中断,EA=ch_zd_on,相等于EA=1//等等,那么ch_xtyx不就是变量了嘛 #definech_on0xff // 系统运行 #definech_off0x00 //系统停止 #definech_sj_on0xff//有任务要优先运行 #definech_sj_off 0x00 //无

6、任务要优先运行 #definech_zd_on1 //中断开 #definech_zd_off0 //中断关 #definech_dengdai_cs_on 0xff//等待超时 #definech_dengdai_cs_off0x00 //没有超时 uc8yxhao;uc8ch_xtyx;//系统运行标志uc8xyxhao;//存放新运行任务的任务号uc8ch_tdsuo;//调度锁uc8ch_zdzs;//中断嵌套计数器uc8ch_rwsjzs;typedefstruct  guanlikuai //管理控制块,简称系统管理器,这是RW/CZXT最核心的

7、数据结构{uc8yxhao; uc8xyxhao;//存放新运行任务的任务号uc8ch_xtyx;//系统运行标志uc8ch_rwsjzs;uc8ch_tdsuo;//调度锁uc8ch_zdzs;//中断嵌套计数器 ;uc8ch_xtzt;  //系统状态uc8ch_sjyx;//优先运行标志}GLK; GLK ch_xtglk;#define ch_rwzs5// 配置任务的数量#definech_rwzhan_cd20 //配置每个任务栈的长度uc8idatarwzhan[ch_rwzs][ch_rwzhan_cd];uc8idatach_yxb[ch_

8、rwzs]; //定义任务的运行队列uc8idata

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。