DSP实时多任务操作系统设计与实现


请输入要查询的词条内容:

DSP实时多任务操作系统设计与实现




基本信息


作者: 邬可军 朱铭锆 曹建树 张泽

丛书名: DSP应用丛书

出版社:电子工业出版社

ISBN:7121018454

出版日期:2005 年11月

开本:16开

页码:340

内容简介


本书以目前流行的tms320c2000系列数字处理器件和易于学习开发的dsp rtos嵌入式操作系统为核心,结合编者多年开发研制工作实践,介绍基于dsp芯片的dsp rtos操作系统的移植和应用实例。.

本书共分8章,前3章介绍嵌入式操作系统的基本概念、内核及管理。第4、第5章介绍tms320c2000系列原理、汇编语言、c语言编程方法及汇编语言和c语言混合编程方法。第6章介绍北京飓风中天科技公司开发的dsp实验板。第7、第8章两章介绍基于tms320c2000系列的dsp rtos操作系统的移植和应用

目录


第1章 嵌入式操作系统和dsp概述

1.1 嵌入式系统简介

1.1.1 什么是嵌入式系统

1.1.2 嵌入式系统的特点

1.1.3 嵌入式系统的分类

1.2 嵌入式系统的现状和发展趋势

1.2.1 嵌入式系统的现状

1.2.2 未来嵌入式系统的发展趋势

1.2.3 什么是dsp及dsp的特点

1.2.4 dsp的应用和开发前景

1.3 嵌入式系统的应用领域

1.4 嵌入式系统在机电控制方面的应用

1.5 基于dsp的嵌入式操作系统的移植

第2章 嵌入式操作系统的基本概念

2.1 基本概念

2.2 内核

2.3 任务管理

2.4 中断管理

2.5 实时系统小结

2.5.1 对存储器的需求

.2.5.2 使用实时内核的优、缺点

2.5.3 实时系统小结

第3章 dsp rtos嵌入式操作系统

3.1 dsp rtos嵌入式操作系统的特点

3.2 dsp rtos嵌入式操作系统的内核结构概述

3.2.1 临界段、os_enter_critical()和os_exit_critical()

3.2.2 任务

3.2.3 任务状态

3.2.4 任务控制块(os_tcb)

3.2.5 就绪有

3.2.6 任务调度

3.2.7 任务级的任务切换,os_task-sw()

3.2.8 空闲任务

3.2.9 dsp rtos中的中断

3.2.10 时钟节拍

3.2.11 dsp rtos初始化

3.2.12 dsp rtos的启动

3.3 事件控制块和与事件相关的函数

3.3.1 事件控制块

3.3.2 将任务置于等待事件的任务列表

3.3.3 从等待事件的任务列表中使任务脱离等待状态

3.3.4 在等待事件的任务列表中查找优先级最高的任务

3.3.5 空余事件控制块链表

3.3.6 初始化一个事件控制块,os_eventwaitlistinit()

3.3.7 使一个任务进入就绪态,os_eventtaskrdy()

3.3.8 使一个任务进入等待某事件发生状态,os——eevnttaskwait()

3.3.9 由于等待超时而将任务置为就绪态,os_eventto()

3.4 任务管理函数

3.5 时间管理函数

3.6 消息邮箱管理函数

3.6.1 建立一个邮箱,osmboxcreate()

3.6.2 删除一个邮箱,osmboxdel()

3.6.3 等待邮箱中的消息,osmobxpend()

3.6.4 向邮箱发送一则消息,osmboxpost()

3.6.5 向邮箱发送一则消息,osmboxpostopt()

3.6.6 无等待地从邮箱中得到一则消息,osmboxaccept()

3.6.7 查询一个邮箱的状态,osmboxquery()

3.6.8 用邮箱作为二值信号量,

3.6.9 用邮箱实现延迟,而不使用,ostimedly()

3.7 消息队列管理函数

3.7.1 建立一个消息队列,osqcreate()

3.7.2 删除一个消息队列,osqdel()

3.7.3 等待消息队列中的消息,osqpend()

3.7.4 向消息队列发送一则消息(fifo),osqpost()

3.7.5 向消息队列发送一则消息(lifo),osqpostfront()

3.7.6 向消息队列发送一则消息(广播,fifo或lifo),osqpostopt()

3.7.7 无待等地从消息队列中获得消息,osqaccept()

3.7.8 清空消息队列,osqflush()

3.7.9 获取消息队列的状态,osqquery()

3.7.10 使用消息队列读取模拟量的值

3.7.11 消息队列用做计数型信号量

3.8 信号量管理函数

3.8.1 建立一个信号量,ossemcreate()

3.8.2 删除一个信号量,ossemdel()

3.8.3 等待一个信号量,ossempend()

3.8.4 发出一个信号量,ossempost()

3.8.5 无等待地请求一个信号量,ossemaccept()

3.8.6 查询一个信号量的当前状态,ossemquery()

第4章 tms320c2000系列dsp介绍

4.1 tms320lf240x芯片介绍

4.1.1 tms320lf240xdsp cpu控制器的体系结构和引脚

4.1.2 tms320lf240x dsp引脚功能介绍

4.1.3 tms320lf240x dsp存储器映射

4.1.4 tms320lf240x dsp外设存储器映射

4.2 中央处理单元(cpu)

4.2.1 tms320lf240x dsp 的cpu内部功能模块介绍

4.2.2 存储器和i/o空间

4.2.3 系统配置和中断

4.2.4 程序控制

4.3 tms320lf240x寻址方式和指令系统

4.3.1 寻址方式

4.3.2 指令集

4.3.3 典型提令说明

第5章 程序设计和ccs编译器

5.1 软件开发平台code composer及功能

5.1.1 code composer的安装

5.1.2 主要菜单及功能介绍

5.1.3 工作窗口区

5.1.4 调试一个程序的步骤

5.2 汇编语言程序设计

5.2.1 几个常用的汇编伪指令介绍

5.2.2 4种基本的文件

5.3 汇编语言编程实例

5.4 c语言程序设计

5.4.1 c语言函数库

5.4.2 函数调用规则

5.4.3 中断函数

5.4.4 4个基本文件和1个库函数文件

5.4.5 利用ccs编译器开发应用程序的步骤

5.4.6 c语言编程实例

5.4.7 c语言和汇编语言的混合编程方法

第6章 tms320lf2407实验板介绍

6.1 cy_evm2407ea实验板

6.1.1 cy_evm2407特征和功能

6.1.2 cy_evm2407的操作

6.1.3 扩展总线和接口

6.1.4 各种跳线

6.1.5 配置

6.2 cy_evm2407电机控制开发套件概述

第7章 dsp rtos在tms320c2000系列上的移植

7.1 dsp rtos移植的条件

7.2 开发工具

7.3 目录和文件

7.4 includes.h头文件

7.5 os_cup.h头文件

7.6 os_cup.c文件

7.6.1 任务堆栈初始化函灵敏ostaskstkinit()

7.6.2 ostaskcreathook()

7.6.3 ostaskdelhook()

7.6.4 ostaskswhook()

7.6.5 ostcbinithook()

7.6.6 os_cpu_c.c文件小结

7.7 os_cpu_a.asm文件

7.7.1 运行最高级任务函数osstarthighrdy()

7.7.2 任务级任务切换函数osctxsw()

7.7.3 时钟占断服务程序osticksr()

7.7.4 中断级任务调度函数osintexit()

7.8 测试移植代码

7.8.1 确保ccs编译器正常工作

7.8.2 验证ostaskstkinit()和osstarhighrdy()函数

7.8.3 测试osctxsw()函数

7.8.4 测试ostickisr()函数和osintctxsw函数

第8章 编程实例

8.1 实例1

8.2 实例2

8.3 实例3

参考文献