- 以下皆搬运于 keil C51->Help 下的RTX51 Tiny User’s Guide,经过强大的Google傻瓜式翻译而来,因语义都基本符合专业术语。故未作更改。
前沿
1.RTX51 Tiny现在支持代码分页。 必须在CONF_TNY.A51配置文件中启用此选项。 与所有其他代码库应用程序一样,您必须在L51_BANK.A51文件中定义代码库硬件配置。
2.新函数(os_switch_task)允许任务立即执行任务切换到处于READY状态的另一个任务。
3.新的RTX51 Tiny库例程isr_set_ready和os_set_ready允许您为任务设置READY标志. READY标志可用于立即将等待间隔,超时或信号的任务(参考os_wait)置于READY状态。 该任务将在下一次机会中恢复。
4.新的RTX51 Tiny库例程isr_set_ready和os_set_ready允许您为任务设置READY标志.READY标志可用于立即将等待间隔,超时或信号的任务(参考os_wait)置于READY状态。该任务将在下一次机会中恢复。
5.RTX51 Tiny现在允许您在空闲任务中进入空闲(Idle)模式(在许多设备上可用)。
6.您现在可以将自己的代码添加到RTX51 Tiny Timer Tick Interrupt。 对于您自己的例程,您可以使用与RTX51 Tiny相同的固定时钟速率。 必须在CONF_TNY.A51配置文件中启用此选项
此外,RTX51 Tiny已经过完全重组,以获得灵活性,加速性能并减少代码和数据空间要求。 RTX51 Tiny Version 2具有可扩展性,可在满足以下条件时显着减少代码大小。
循环任务切换被禁用。很少使用RTX51 Tiny系统功能。
(新版本)解决问题
以下是RTX51 Tiny Version 1.06中的已知问题列表。这些问题在RTX51 Tiny Version 2中得到了解决。
1.在RTX51 Tiny V1.06中,当os_wait期间发生中断时,isr_send_signal函数可能会破坏READY状态。这会导致任务挂起,等待来自中断的信号。在RTX51 Tiny Version 2中,此问题已得到纠正。
2.在RTX51 Tiny V1.06中,K_IVL和K_SIG事件可能不会在对os_wait例程的调用中组合,因为在信号发生时无法调整间隔定时器值。 RTX51 Tiny Version 2提供了os_reset_interval例程,允许您正确调整间隔计时器。
3.在RTX51 Tiny V1.06中,Round-Robin的TIMESHARING EQU 不能设置为1.如果是,并且在设置了Round-Robin时间之前发生了中断,则Round-Robin周期可能会被破坏并延迟256个ticks而不是1.在RTX51 Tiny Version 2中,此问题已得到纠正。
4.在RTX51 Tiny V1.06中,当用户中断的执行时间超过RTX51 Tiny System时钟定时器时,RTX51 Tiny系统时钟定时器将被递归调用。这会覆盖值SAVEPSW和SAVEACC,通常会导致系统崩溃。在RTX51 Tiny Version 2中,此问题已得到纠正。如果应用程序包含执行时间超过RTX51 Tiny System时钟计时器间隔的中断函数,则LONG_USR_INTR配置选项可设置为1。如果您的应用程序大部分时间都在执行高优先级中断例程,则可能需要此选项。
系统配置
-------参数------------------------------------- 限制
最大定义任务数 ------------------------------- 16
最大活动任务数---------------------------------16
所需的CODE空间------------------------------900Bytes(MAX)
所需数据空间------------------------------------7Bytes
必需的堆栈空间---------------------------------3Bytes/task
必需的XDATA空间-----------------------------0Bytes
系统占用定时器---------------------------------timer0
系统时钟除数------------------------------------1,000-65,535
中断延迟------------------------------------------20周期或更少
上下文切换时间---------------------------------100-700周期
工具要求
使用RTX51 Tiny需要以下软件应用程序:
C51编译器
A51宏汇编程序
BL51 Linker或LX51 Linker
RTX51TNY.LIB和RTX51BT.LIB库文件必须存储在库路径中。 通常,这是\ KEIL \ C51 \ LIB 文件夹。
RTX51TNY.H包含文件必须存储在包含路径中。 通常,这是\ KEIL \ C51 \ INC文件夹。