




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、嵌入式系统课程设计宋超信息工程学院1、为期两周:18周和19周。2、出勤3次: 18周周一。 19周周一。 19周周五进行课设答辩。3、19周周日之前提交课设报告: 纸质版和网络教学平台。时间安排一、设计题目:基于STM32和uC/OS-II的多任务设计二、设计内容: 使用uC/OS-II的任务管理函数和STM32库函数控制相应的寄存器,完成一个多任务设计。整个设计共有3个任务,包括驱动一个LED指示灯闪烁、由3个LED指示灯组成的流水灯和驱动蜂鸣器。三、设计要求 理解和熟练使用KEIL软件、STM32寄存器、STM32库函数和uC/OS-II任务管理函数;用KEIL软件完成编程和调试,下载到
2、开发板中实现3个设定的任务;完成课程设计报告。一、设计任务书A组要求:1、LED1闪烁,间隔为5s。2、LED2LED4为流水灯,从LED2到LED4依次点亮,时间间隔0.5s。3、蜂鸣器响1.5s,停0.5s。B组要求:1、LED2闪烁,间隔为3s。2、LED1、LED3、LED4为流水灯,从LED1到LED3到LED4依次点亮,时间间隔1s。3、蜂鸣器响0.5s,停1s。C组要求:1、LED3闪烁,间隔为1s。2、LED1、LED2、LED4为流水灯,从LED1到LED2到LED4依次点亮,时间间隔1.5s。3、蜂鸣器响1s,停1.5s。考核方法:按一下几个方面进行考核1、实现设计目标:按
3、照设计的完成程度进行考核,包括设计功能完成的完整度和程序设计的合理性。2、课程设计报告:不少于3000字、是否独立完成(抄袭后果自负)、报告格式是否合理完整。3、课程设计答辩:现场演示完成的课程设计,包括新建工程、加入文件、编译、下载等;对课程编程中的部分语句进行提问,考察学生对实际编程中用到的函数和系统知识的理解程度。4、出勤:共出勤3次。二、考核方法1、实现设计目标成绩分成5档:A档30分,B档25分,C档20分,D档15分,E档10分2、课程设计报告成绩分成5档:A档30分,B档25分,C档20分,D档15分,E档10分3、课程设计答辩成绩分成5档:A档30分,B档25分,C档20分,D
4、档15分,E档10分4、出勤3次,共10分三、评分标准1使用KEIL软件创建工程并编译下载。2、解释整个程序代码的含义。3、解释用到的寄存器、库函数和uC/OS-II任务管理函数的作用。四、答辩内容(一)设计步骤(二)时间进度安排(三)参考文献五、设计指导书1、理解设计题目,理清学习和设计思路。2、掌握KEIL、STM32寄存器、库函数和uC/OS-II任务管理函数用法。3、使用STM32函数库和uC/OS-II任务管理函数编程,完成整个设计。4、完善和优化整个系统设计,编写课程设计报告。5、课程设计答辩。(一)设计步骤(二)时间进度安排序号 设计阶段工作内容时间分配1理解题目,理清思路,安装
5、软件。1天2学习Keil软件、STM32寄存器和函数库、uC/OS-II任务管理函数的用法。4天 3编写3个任务模块,编写uC/OS-II任务管理模块,完成整个设计,画出系统流程图。5天4完善和优化整个系统,编写设计报告3天5设计答辩1天1STMciroelectronics.STM32F107VC datasheet. .2ARM.MDK-ARM .3STMicroelectronics.RM00008 Reference mannual. .4STMicroelectronics.UM0427 User mannual. .5 . 广 州 佳 佳 . S T M 3 2 神 舟 I V 好
6、 嵌 入 式 开 发 板 初 学 宝 典 . .6.任哲.嵌入式实时操作系统uC/OS-II原理及应用.2005.北京航空航天大学出版社.7J.Labrosse.嵌入式实时操作系统uC/OS-II(2nd).2002.(三)参考文献六、参考资料清单1.示例、库文件、参考文档、课设说明和软件;2.课设材料:分组清单、报告模板、评分标准、任务书、指导书;3.参考资料:开发板用户手册、stm32数据手册、参考手册(寄存器)、固件库使用手册(库函数)、uC/OS-II书籍4.软件:KEIL软件和JLINK驱动1 新建工程 2 管理工程目录以及源文件 3 建立文件 4 编译和链接工程 5 程序下载和仿真
7、 6 几个使用技巧 1、KEIL软件用法 七、相关知识 2、硬件说明 芯片引脚开发板模块PD2LED1PD3LED2PD4LED3PD7LED4PA3蜂鸣器n设计中,只用到时钟和GPIO相关的寄存器。(1)STM32F107VC的GPIO分成A、B、C、D、E组,通过各个寄存器来控制GPIO输出高电平或低电平。其中寄存器CRL和CRH用来确定IO管脚的方向和速率以及何种驱动模式,BSRR可直接修改某一个GPIO引脚的高低电平,BRR可将GPIO置零。(2)在使用配置GPIO寄存器之前,都要先配置GPIO的时钟。通过RCC寄存器当中的CR、CFGR来设置系统时钟。GPIO挂在APB2总线上,可对
8、APB2ENR寄存器来使能所用到的GPIO时钟。(3)uC/OS-II用Cortex-M3的SysTick定时器产生操作系统需要的滴答中断,作为整个系统的根基。SysTick定时器的4个寄存器控制每隔一定时间产生一个中断使uC/OS-II系统能进行多任务控制。3、STM32F107寄存器(1)直接配置寄存器开发,可读性差。ST开发软件封装库,开发者可调用函数接口(API)来完成相应的开发工作,配置寄存器的工作由接口函数完成。(2)库目录和文件简介Libraries文件夹下是驱动库的源代码及启动文件。在使用库开发时,需要把libraries目录下的相关库函数文件添加到工程中。关于内核与外设的库文
9、件分别存放在CMSIS和STM32F10 x_StdPeriph_ Driver文件夹中。(3)用到的库函数:SysTick_Config 、SystemInit、 RCC_APB2PeriphClockCmd、 GPIO_Init 、GPIO_SetBits、GPIO_ResetBits。 3、STM32库函数(1) uC/OS-II是一个可裁减的、抢占式、实时多任务内核,具有高度可移植性,特别适合于微处理器和控制器,已经移植到近40多种处理器体系上。 (2)一个uC/OS-II任务的代码就是一个C语言函数,但这些函数是由主函数main()来负责创建和启动,然后由操作系统负责调度和运行,而不
10、是调用的关系。 (3)设计中用到的任务管理函数包括任务的创建、uC/OS-II的初始化和任务的启动。(4)每个任务都应该配有自己的堆栈。任务堆栈是任务的重要组成部分。使用数据类型OS_STK来定义任务堆栈大小。具体过程:首先调用初始化函数OSInit(),对uC/OS-II自身的运行环境进行初始化;然后用OSTaskCreate()创建任务,OSStart()来启动任务。使用OSStart()之后,任务就交由操作系统来管理和调度。用任务延时函数OSTimeDlyHMSM()进行延时操作。4、uC/OS-II任务管理函数 #include includes.h#include stm32f10
11、x.h #include stm32f10 x_rcc.h const uint32_t SystemFrequency = 72000000; GPIO_InitTypeDef GPIO_InitStructure;#define START_TASK_PRIO 5 #define START_TASK_STK_SIZE 100 static OS_STK start_task_stkSTART_TASK_STK_SIZE; /定义栈void Task_LED(void *arg) while (1)GPIO_ResetBits(GPIOD,GPIO_Pin_2); /点亮LED1OSTim
12、eDlyHMSM(0, 0,0,500); /此处不能自己定义一个delay函数 GPIO_SetBits(GPIOD,GPIO_Pin_2);/熄灭LED1OSTimeDlyHMSM(0, 0,0,500);示例:uC/OS-II单任务int main(void) SystemInit();/* 配置系统时钟为72M */ SysTick_Config(SystemFrequency/OS_TICKS_PER_SEC); /* 使能SysTick定时器 */ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE); /*使能LED使用的GPIO时钟*/ GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOD, &GPIO_InitStructure); /*LED灯相关GPIO口初始化*/ GPIO_SetBits(G
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年北京市顺义区城区社区卫生服务中心招聘真题
- 安全工程师职业道德与行为规范试题及答案
- 数学硕士考博试题及答案
- 烧烤生意测试题及答案
- 2025年软件定义存储合作协议书
- 积极反馈的幼儿园数学考试试题及答案
- 开拓思维土木工程师考试试题及答案
- 家具行业设计中的工艺与工匠精神探讨试题及答案
- 2025年全自动变焦照相机项目建议书
- 推动教师反思与成长的策略试题及答案
- 2025年福建省福州市电子信息集团有限公司招聘笔试参考题库含答案解析
- 2025年人博会贵州出版集团有限公司招聘笔试参考题库含答案解析
- 非标自动化培训资料
- 2024年山东省公务员录用考试《行测》真题及答案解析
- DB32T 3921-2020 居住建筑浮筑楼板保温隔声工程技术规程
- 跨越架施工方案
- 流动团员管理服务告知书
- Excel在财务管理中的应用(第五版)第10章综合案例
- 高考理综试题答题技巧方法!课件
- 行书典范《兰亭序》鉴赏PPT共32页课件
- 一体化泵站检测报告(共6页)
评论
0/150
提交评论