




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1UC/OS在ARM9上的移植S3C2440概要设计总页数2编制南昌航空大学东软班概要设计3修改履历修改编号日期修改人版本号修改内容1VER010初始做成23南昌航空大学东软班概要设计4目录1文档概述511文档目的和范围512术语/缩略语513参考文档52模块概述521模块功能定义622模块结构723模块动作时序83接口说明831数据结构定义8311模块间接口函数9南昌航空大学东软班概要设计51文档概述11文档目的和范围该项目主要完成主要包括C/OSII移植到ARM9S3C2440上,主要实现任务的启动和任务在中断级的调度和任务的上下文切换,还有实现中断处理服务和开关中断。12术语/缩略语序号术语/缩略语说明1任务调度通过一定的规则实现任务的切换213参考文档序号文档名作者时间版本1需求分析付海文20131211VER0102阶段文档模板东软实训中心2014414VER0102模块概述本模块是C/OSII移植到ARM9S3C2440上的最主要的工作,是连接C/OSII操作系统内核和处理器的中间桥梁,每个任务的任务控制块(TCB)中都有自己的堆栈空间用来保存任务的上下文,当需要启动该任务时,通过把管理模式下的堆栈指针SP指向任务的堆栈空间,以出栈的方式把任务的上下文导入到处理器的寄存器中,此时处理器程序计数器(PC)指向任务程序入口地址,即实现了任务的启动;当发生任务级的调度时,首先将当前处理器各寄存器压入栈中,然后在当前任务的TCB中保存任务的堆栈指针,最后将最高优先级就绪态任务切换到处理器中运行态;在中断级的任务切换中需要考虑到中断的嵌套和中断的返回。南昌航空大学东软班概要设计621模块功能定义序号功能点功能点详细内容1多任务启动用于用户程序开始启动任务,直接运行最高优先级就绪态任务2任务级的切换当前任务被挂起时,通过比较优先级判优进行任务切换3中断级的任务切换当中断处理结束后,在中断非嵌套情况下实现任务的切换4中断服务子程序当中断发生,保存CPU现场,调用中断处理程序,中断返回5关中断将处理器程序状态寄存器设置为关中断状态,禁止中断发生6开中断将处理器程序状态寄存器设置为开中断状态,使能中断7时钟中断处理发生时钟中断,调用内核时钟节拍处理函数8任务堆栈初始化每个任务都有一个任务堆栈,该堆栈用来保存任务的上下文。南昌航空大学东软班概要设计722模块结构图1模块间接口模块名称模块类型概要说明OSTASKSTKINIT接口任务堆栈初始化OSSTARTHIGHRDY接口最高优先级任务启动OSTASKSWHOOK接口用户自定义函数OSCTXSW接口任务级任务切换OSINTCTXSW接口中断级任务切换OSTICKISR接口时钟中断处理OSCPUSAVESR接口关中断OSCPURESTORESR接口开中断OS_CPU_IRQ_ISR接口中断服务程序南昌航空大学东软班概要设计823模块动作时序系统时钟产生中断后,CPU转去处理时钟中断如下图中断控制器CPU系统时钟中断向量表中断服务程序控制器告诉CPU中断号计数到达产生时钟中断CPU切换到中断模式CPU恢复到被中断的程序中断向量指向服务程序入口时钟中断处理调用中断处理程序图2CPU时钟中断处理的过程3接口说明31数据结构定义TYPEDEFUNSIGNEDCHARBOOLEAN/布尔变量/TYPEDEFUNSIGNEDCHARINT8U/无符号8位整形变量/TYPEDEFSIGNEDCHARINT8S/有符号8位整形变量/TYPEDEFUNSIGNEDSHORTINT16U/无符号16位整形变量/TYPEDEFSIGNEDSHORTINT16S/有符号16位整形变量/南昌航空大学东软班概要设计9TYPEDEFUNSIGNEDINTINT32U/无符号32位整形变量/TYPEDEFSIGNEDINTINT32S/有符号32位整形变量/TYPEDEFFLOATFP32/单精度浮点数(32位长度)/TYPEDEFDOUBLEFP64/双精度浮点数(64位长度)/TYPEDEFINT32UOS_STK/堆栈是32位宽度/TYPEDEFINT32UOS_CPU_SR/CPUSTATEREGISTER/DEFINEOS_CRITICAL_METHOD3DEFINEOS_ENTER_CRITICALCPU_SROSCPUSAVESR/DISABLEINTERRUPTS/DEFINEOS_EXIT_CRITICALOSCPURESTORESRCPU_SR/ENABLEINTERRUPTS/DEFINEOS_STK_GROWTH1/STACKGROWSFROMHIGHTOLOWONARM/函数DEFINEOS_TASK_SWOSCTXSW311模块间接口函数3111OSTASKSTKINIT函数名OSTASKSTKINIT文件名/OS_CPU_CC功能概要定义数据类型记述形式OS_STKOSTASKSTKINITVOIDTASKVOIDPD,VOIDP_ARG,OS_STKPTOS,INT16UOPT参数类型变量名I/O说明VOIDVOIDTASK,PD函数入口地址类型OS_STK说明堆栈栈顶指针正常结束返回值值详细说明任务堆栈初始化函数使用注意事项无南昌航空大学东软班概要设计103112OSTASKSWHOOK函数名OSTASKSWHOOK文件名/OS_CPU_CC功能概要用户自定以钩子函数记述形式VOIDOSTASKSWHOOKVOID参数类型变量名I/O说明VOID类型说明返回值值详细说明用户可以自己更改钩子函数使用注意事项如果更改此函数时不要在该函数里延时太长3113OSSTARTHIGHRDY函数名OSSTARTHIGHRDY文件名/OS_CPU_AS功能概要启动最高优先级就绪态任务记述形式OSSTARTHIGHRDY参数类型变量名I/O说明类型说明返回值值南昌航空大学东软班概要设计11详细说明此函数为汇编函数,在任务第一次启动时被调用使用注意事项不需要保存任务堆栈3114OSCTXSW函数名OSCTXSW文件名/OS_CPU_AS功能概要任务级任务切换记述形式OSCTXSW参数类型变量名I/O说明类型说明返回值值详细说明当任务被挂起时,通过优先级判优选择后,会调用此汇编函数执行任务调度使用注意事项首先保存当前任务的堆栈,然后在切换到最高优先级就绪态任务3115OSINTCTXSW函数名OSINTCTXSW文件名/OS_CPU_AS功能概要中断级任务调度记述形式OSINTCTXSW参数类型变量名I/O说明南昌航空大学东软班概要设计12类型说明返回值值详细说明当前中断退出后,若在非中断嵌套情况下,会调用该函数执行任务调度使用注意事项无需保存CPU现场,直接切换到最高优先级就绪任务3116OSTICKISR函数名OSTICKISR文件名/OS_CPU_AS功能概要时钟中断服务记述形式OSTICKISR参数类型变量名I/O说明类型说明返回值值详细说明当发生定时器中断时,此函数被中断服务子程序调用执行时钟中断服务使用注意事项在清除INTPND时必须通过写INTPND实现3117OS_CPU_IRQ_ISR函数名OS_CPU_IRQ_ISR南昌航空大学东软班概要设计13文件名/OS_CPU_AS功能概要发生IRQ,提供中断服务记述形式OS_CPU_IRQ_ISR参数类型变量名I/O说明类型说明返回值值详细说明该函数被安装在启动代码中,作为HANLERIRQ的处理程序使用注意事项中断向量的大范围跳转需要使用DCD3118OSCPUSAVESR函数名OSCPUSAVESR文件名/OS_CPU_AS功能概要关中断记述形式OSCPUSAVESR参数类型变量名I/O说明类型INT32U说明CPU_SR保存当前程序状态寄存器CPSR的控制位,在此使用R0,来保存该值返回值值详细说明OS_ENTER_CRITICAL()被宏定义为OSCPUSAVESR,实现临界段保护南昌航空大学东软班概要设计14使用注意事项通用寄存器R0被用来保存CPSR的值3119OSCPURESTORESR函数名OSCPURESTORESR文
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年水运工程试验检测师资格考试(水运材料)全真模拟试题及答案一
- 2025年医师资格考试(实践技能)复习题库及答案屯昌
- 酒驾专项考试题及答案
- 2025年煤矿采煤机(掘进机)操作证考试题及答案(完整版)
- 集材工设备调试考核试卷及答案
- 2025年三级公共营养师考试试题及答案
- 食堂工勤培训试卷及答案
- 废矿物油再生处置工操作考核试卷及答案
- 露酒酿造工理念考核试卷及答案
- 炭素混捏工专业技能考核试卷及答案
- 村播培训直播课件
- 2025年度云南省政府采购评审专家资格通关考试题库带答案解析
- 2025河南新乡长垣市公证处招聘合同制人员5人考试参考题库及答案解析
- 颈椎骨折课件导图
- 2025至2030中国工业云平台行业发展研究与产业战略规划分析评估报告
- 2025餐饮合伙经营合同协议书
- 2025年山东西学中题库及答案
- 14.2物质的比热容同步练习(含答案) 沪科版物理九年级全一册
- 《国家机构有哪些》课件
- 肉制品安全培训会课件
- 五年级数学口算训练题库及解题技巧
评论
0/150
提交评论