8051微型实时抢先多任务内核——Timic51

本文介绍了8051单片机上的微型实时抢先多任务内核Timic51的设计原理和实现方法。内核利用定时器T0实现20ms时间片切换,支持16个子任务,具有任务抢占功能,适用于资源有限的8051系统。通过扩展外部RAM,提供每个子任务独立的寄存器和堆栈空间,简化子任务编写。此外,文章讨论了任务切换、延时、子任务通信以及开发调试注意事项。
摘要由CSDN通过智能技术生成

8051微型实时抢先多任务内核——Timic51


  51系列单片机的优势是价格低廉,设计灵活,兼容性高,稳定可靠。从开发至今,在各行业中仍然广泛使用。在多数应用场合中,多任务系统有相当高的可用价值。在单片机有限的存储空间内,设计一种高可用性的多任务内核具有一定难度。
Proteus仿真电路图
(图中12864C/D引脚信号线A9连接方式在Proteus模拟中并不会产生错误,实际上应接A[0..15]BUS)
  使用多任务内核,突破存储器瓶颈,扩展了寄存器和堆栈。每个子任务都有独立的工作寄存器(R0~R7)和堆栈空间,大大降低了应用子程序的编写难度。子任务可自由的使用硬件设备,最大限度的拓展子程序发挥空间。本内核具有代码短小,多任务切换,实时抢先,子任务开发简便等特点。基本内核只占用约1KBytes程序存储空间,可以运行于最基础的8051系列单片机。
  一、内核及子任务配置与要求
  内核占用的硬件资源:
  1.定时/计数器T0。
  2.内部RAM地址范围08~1FH(24字节)。其中有一半保留空间,可由子任务使用。
  3.需要扩展外部RAM。占用外部RAM地址:0E0~0FFH(32字节),100~3FFH(768字节),其中有256+16字节保留空间,可由子任务使用。因任务切换数据频繁读写,不建议使用FLASH RAM。
  内核功能:
  1.20ms,100ms,定时。最多定时为256*100ms,可用作软件看门狗。
  *2.最多支持16个子任务。*20ms时间片定时切换任务。
  3.任务抢先。
  4.保护子任务现场:A,B,PSW,SP,DPTR,R0~R7,以及16字节堆栈数据。
  5.待机。
  子任务环境:
  1.自由使用单片机中断,定时/计数器,I/O端口,除内核占用外的系统资源任意部分,包括位寻址区&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值