您现在的位置:网站首页答辩论文工学论文电子论文

μCOS-II在PIC18F458上的移植与应用

  • 简介:(毕业论文 字数:3106 页数:6)摘要:简单介绍μCOS-II 的特点和内核结构,成功地将μCOS-II移植到Microchip公司的单片机PIC18F458上。并在此基础上实现了一个嵌入式数据采集系统。实践证明, 该系统具有成本低、便于移植和扩展性强等特点, ...
    • 请与管理员联系购买资料 QQ:5739126
  • 论文简介
  • 相关论文
  • 论文下载

(毕业论文 字数:3106 页数:6)摘要:简单介绍μCOS-II 的特点和内核结构,成功地将μCOS-II移植到Microchip公司的单片机PIC18F458上。并在此基础上实现了一个嵌入式数据采集系统。实践证明, 该系统具有成本低、便于移植和扩展性强等特点, 有良好的应用前景。

关键词: 嵌入式操作系统,PIC18F458 实时内核,数据采集系统

Abstract::The paper has analyzed the features and core architecture of μCOS-II, and gives a scheme about how to transplant it on PIC18F458 of Microchip Corporation. Furthermore, an embedded data acquisition system was realized based on the platform. It has proved that this system has a lot of advantages and a bright foreground of application.

Key words: Embedded Operation System, PIC18F458, Real-Time Core,
Data acquisition system

目录

1μCOS-II内核的特点[1]
2 μCOS-II 在PIC18F458上的移值[2]
3 应用设计
4 结束语

前言
在嵌入式应用领域,往往采用前后台系统[1]。在前后台系统中应用程序是一个死循环,循环中调用相应的函数完成相应的操作,这个部分可以看成后台行为。中断服务程序处理异步事件,这部分可以看成前台行为。对时间相关性很强的关键操作只有靠中断完成。前后台系统在处理任务级信息的实时性上比较差,对任务的调度能力也非常有限。当系统对响应时间要求较高时,就应该使用类似μCOS-II的抢占式内核。它是一款可移植、可裁剪、占先式、多任务的实时内核。自1992 年推出以来,以其高性能与高可靠性,已经成功地运行在数十种不同类型的CPU上。更重要的是,它的源码是完全免费、公开的,由此为二次开发和优化提供了有利的条件。μCOS-II除了提供核心的占先方式的任务调度功能外,还具有任务管理、时间管理、任务之间通信、内存管理等多种系统服务。
1μCOS-II内核的特点[1]
μCOS-II最多可以管理64个任务,其中系统占用8个,用户可以使用多达56个任务。每个任务由一个控制块和一个堆栈来保存任务的信息。每个优先级只有一个任务,任务的优先级也是任务的标志。μCOS-II采用抢占式内核,它总是让就绪状态优先级最高的任务先运行,中断程序可以抢占CPU。中断完成以后,内核让此时处于就绪状态优先级最高的任务运行(不一定是被中断的那个任务)。任务切换时间短,不会因任务数目的增加而增加。 系统提供了任务管理、时间管理、内存管理以及第三方提供的μC/GUI和μC/FS。系统为任务之间的通信和同步提供了信号量、邮箱、消息队列,以及在2.52版本中增加的互斥量等,系统内核最小可达1K。
2 μCOS-II 在PIC18F458上的移值[2]
2.1 PIC18F458简介
PIC18F458是Microchip公司一款增强型8位单片机,它带有8x8的硬件乘法器,采用RISC指令集,最高工作频率可以达到10MIPS,单片机内带有32K的FLASH存储器,1.5K的数据存储器和256字节的EEPROM。同时PIC18F458有SPI、I2C、CAN、RS232等丰富的外围模块,方便系统的应用和扩展。PIC18F458满足UCOS-II移植的几个要求:
(1)PIC18F458编译器的mcc18可以产生可重入代码;
(2)PIC18F458具有高低优先级两个中断,并且能够产生定时器中断;
(3)PIC18F458可以在C语言程序中开关中断;
(4)PIC18F458具有31级硬件堆栈;
(5)PIC18F458具有 PUSH等堆栈操作指令。
2.2 μCOS-II 的结构
μCOS-II 在设计初就具有良好的移植性,源代码的大部分都是用C语言编写的,但是在完成与PIC18F458有关的代码时一般要用汇编程语言来实现。这是因为在任务切换时,必须通过汇编语言处理PIC18F458的寄存器、堆栈等。μCOS-II的结构与层次如图1所示。

查看评论 已有0位网友发表了看法
  • 验证码: