rtx51中文手册.pdf

  1. 1、本文档共72页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
rtx51中文手册

第二章 实时程序 实时程序必须对实时发生的事件快速响应。事件很少的程序不用实时操作系统也 很容易实 。随着事件的增加,编程的复杂程度和难度也随之增大,这正是RTOS 的用武之地。 一、单任务程序 嵌入式程序和标准C程序都是从main函数开始执行的,在嵌入式应用中,main 通常是一个无限循环,可以认为是一个持续执行的单个任务,例如: void main (void) ﹛while(1) /*永远重复*/ ﹛ do_something(); /*执行 do_something “任务”*/ ﹜ ﹜ 在这个例子里,do_something函数可以认为是一个单任务,由于仅有一个任 务在执行,所以没有必要进行多任务处理或使用多任务操作系统。 二、多任务程序 许多C程序通过在一个循环里调用服务函数 (或任务)来实现伪多任务调度。如: void main(void) ﹛ intcounter=0; while(1) /*一直重复执行*/ ﹛ check_serial_io(); /*检查串行输入*/ process_serial_cmds() ; /*处理串行输入*/ check_kbd_io(); /*检查键盘输入*/ process_kbd_cmds(); /*处理键盘输入*/ adjust|ctrlr_parms(); /*调整控制器*/ counter++; /*增加计数器*/ ﹜ ﹜ 该例中,每个函数执行一个单独的操作或任务,函数(或任务)按次序依次执行。 当任务越来越多,调度问题就被自然而然的提出来了。例如,如果 process_kbd_cmds函数执行时间较长,主循环就可能需要较长的时间才能返 回来执行check_sericd_io函数,导致串行数据可能被丢失。当然,可以在主 循环中更 频繁的调用check_serial_io函数以纠正这个问题,但最终这个方法还是会失 效 三、RTX51Tiny 程序 当使用Rtx51Tiny时,为每个任务建立独立的任务函数,例如: void check_serial_io_task(void)_task_ 1 ﹛/*该任务检测串行I/0*/ ﹜ void process_serial_cmds_task(void)_task_ 2 ﹛/*该任务处理串行命令*/ ﹜ void check_kbd_io_task(void)_task_ 3 ﹛/*该任务检测键盘I/O*/ ﹜ void process_kbd_cmds_task(void)_task_ 4 ﹛/*处理键盘命令*/ ﹜ void startup-_task(void)_task_ 0 ﹛ os_create_task(1); /*建立串行I/O任务*/ os_create_task(2); /*建立串行命令任务*/ os_create_task(3); /*建立键盘I/O任务*/ os_create_task(4); /*建立键盘命令任务*/ os_delete_task(0); /*删除启动任务*/ ﹜ 该例中,每个函数定义为一个RTX51Tiny任务。RTX51Tiny程序不需要main 函数,取而代之,RTX51Tiny从任务0开始执行。在典型的应用中,任务0 简单的建立所有其他的任务。 第三章 原理 RTX51 Tiny 用于管理目标系统的资源,本章讨论RTX51 Tiny 如何使用这些资源。 一、定时器滴答中断 RTX51 Tiny 用标准8051的定时器0 (模式1)生产一个周期性 的中断。该中断就是RTX51Tiny 的定时滴答 (TimerTick)。 库 函数中的超时和时间间隔就是基于该定时滴答来测量的。 默认情况下,RTX51每10000个机器周期产生一个滴答中断,因 此,对于运行于12MHZ的标准8051来说,滴答的周期是0.01 秒,也即频率是 100HZ(1

您可能关注的文档

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档