基于STM32的_COS_系统移植的设计_马昊

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作 者 简 介 :马昊(1994-),男,本科在读,现就读于徐州工程学院 信电学院电子信息科学与技术专业。
- 21 -
监测,包括常规监测、在线监测和固体物调研,根据监测数据呈现水 算结果得出水体质量的调查结果。水质模拟的应用:
体质量的调查结果。
(1)数据分析;(2)系统分析;(3)设计效益分析;(4)环境影响评
对水质监测系统的要求:
价;(5)设计控制和管理调控的研发基础;(6)预警规划中的操作应
(1)取样技术:自动监测和与排放同步监测;(2)取样方式:代表 用。
2.5 修改 STM32F10X_IT.C 文件
疗系统、访问控制等。
为了实现和完成完整的中断,我们需要将 STM32F10X_IT.C 文
ST 公司针对 STM32 提供了 STM32 库作为函数接口,使得开发 件原有的 PendSV_Handler 空函数注释掉,同时编写 SysTick 中断服
人员得以脱离最底层的寄存器操作,有开发快速、易于阅读、维护成 务函数,代码如表 2:
引言
立的,IAR 在汇编的语法方面和我们使用的 MDK 编译器有一点区
随着人类社会经济的不断发展,科研领域不断的拓宽,嵌入式 别,所有我们对汇编文件的部分指令做如下修改:在 OS_CPU_A.
系统产品渐渐完善,并在全世界各行业得到广泛应用。通过移植嵌 ASM 文件中,将原来的 PUBLIC 指令改为 EXPORT,它们是等价的。
相关的文件和系统内核的各种服务文件。用户在移植时,需要对与
计算机硬件相关的文件进行修改:如 OS_CPU.H 文件,OS_CPU_A.
ASM 文 件和 OS_CPU_C.C 文 件 。而 系 统 内 核 的 各 种 文 件 ,如 :
OS_CORE.C、OS_FLAG.C、OS_MBOX.C、OS_MUTEX.C 等,与应用程
用 SysTick 的中断处理,所以我们采用 SycTick_Handler()函数。因
此,相应的对于 OS_CPU.H 文件的操作是:注释掉 OS_CPU_Sy-
sTickHandle(r )和 OS_SysTickIni(t )函数的声明。
2.2 修改 OS_CPU_C.C
OS_CPU_SysTickHandler()和 OS_CPU_SysTickInit()函 数 的 定
用专门设计的 ARM Cortex-M3 内核。我们所采用的 STM32F103 型, PUBLIC 指令改为 EXPORT。除此之外,在 CPU_A.ASM 文件中某些
其 内 核 为 ARM32 位 Cortex -M3 CPU, 最 高 工 作 频 率 72MHz, 标号带有冒号,如“CPU_CntLeadZeros:”、“CPU_RevBits:”、
图 1 M3 系统的概念-监测,模拟和管理
间和时间上确定水体的现状,以期达到合理规划管理水体的目的。 溢流浓度梯度;(4)取样时间间隔:溢流的时间段;(5)通信机制:准
如图 1 所示。
确及时的信息传输。
2.1 水质监测系统
2.2 水质模拟系统
水质监测系统进行水体质量监测,分别对点源污染和面源污染
水质模拟系统对输入的监测数据进行可信度验证,根据模拟计
和维护。
1 实时操作系统 μCOS-Ⅲ和 STM32 处理器
1.1 实时操作系统 μCOS-Ⅲ
μCOS-Ⅲ的前身是由美国嵌入式系统专家 Jean brosse 于
1992 年推出的嵌入式操作系统 μCOS,经过了不断的完善和扩充,
形成现在的 μCOS-Ⅲ。
μCOS-Ⅲ是一个可以基于 ROM 运行的、可裁减的、抢占式、实
时多任务内核,具有高度可移植性。所谓的移植,在一个平台环境能
够成功运行的程序,将它搬运到另一个平台环境,并且使其成功运
行。发展至今的 μCOS-Ⅲ,特别适合于微处理器和控制器,并且已
经移植到近 40 多种处理器体系上,涵盖了从 8 位到 64 位的各种
CPU。
μCOS-Ⅲ源码可分为:与应用程序相关的文件、与计算机硬件
1 概述
水质模型是描述各种物质在水体中的混合和输运、在时间和空
间上的迁移转化规律以及各影响因素之间相互关系的数学方程。它
是水环境管理规划、水环境污染治理规划决策分析、水容量研究分
析、水环境污染预警研究的重要工具和有效手段。水质模型是一种
数学描述,在对水质进行研究分析的过程中涉及到物理、化学、和生
物过程,因而要根据需求选择因子与研究方法,建立不同的模型。
性的混合样本;(3)取样周期:动态时间段,高时间精度和混合污水
如图 2 所示是 M3 系统中监测和模拟的应用。
(2)OSIntExi(t )函数,除了对嵌套层数 OSIntNesting 减 1 表示退 出中断外,还具有任务调度功能。
(3)OSTimeTick()函数主要工作是对系统统计事件的变量 OS- Time 加 1,另外,它还会遍历所有任务,对延时任务的时间减 1。
* 基金:江苏省大学生创新创业训练计划项目(201411998035Z)
- 20 -
科技创新
2015 年第 18 期 科技创新与应用
德国 DWA 水质模型
杨寅生 姚 刚 (四川大学建筑与环境学院,四川 成都 610065)
摘 要:DWA 水质模型可用于范围广泛的水资源管理规划任务,从数据和系统的方面分析水体中的因子,来进行水污染防治的 规划以及污染预警机制的建立。同时介绍了 M3 系统理论在模型中的应用,并以德国埃尔夫特河的应用为例,监测水体当前状态 进行模拟并预测未来水体质量。最后展望 DWA 模型在未来中国的水资源管理规划工作中的应用前景。 关键词:DWA 模型;水质模型;模拟;水资源管理
本低等优点。
表2
2 μCOS-Ⅲ的移植
2.1 修改 OS_CPU.H 文件
μCOS-Ⅲ的内核使用一个周期时钟中断,以计算任务延时时间
和进行任务调度,在 STM32 中,这样的时钟中断正适合由 SysTick
来提供。因为 OS_CPU_SysTickHandle(r )函数与 STM32 库所提供的
stm32F10x_it.c 文件中的 SycTick_Handler()函数功能一样,都是使
序相关的文件:INCLUDES.H 和 OS_CFG.H 则不需要修改。
2.4 修改 CPU_A.ASM 文件
1.2 STM32 处理器
在 CPU_A.ASM 汇编文件中,仍有因编译环境的不同而引起的
STM32 系列基于专为要求高性、低成本、低功耗的嵌入式应 错误,修改的方法同修改 OS_CPU_A.ASM 文件一样,将原来的
文章就 M(3 Monitoring,Modelling,Management)系统及德国 DWA
水质模型作一介绍与分析及其在埃尔夫特河(Erft River)的应用。
2 M3 系统理论
M3 系统由水质监测系统、水质模拟系统和水质管理系统三个 方面组成,是一个全面的对水体进行监测、模拟和管理的系统,从空
(1)OSIntEnter () 函 数 , 对 用 于 表 示 中 断 嵌 套 层 的 变 量
释掉。
OSIntNesting 加 1,它与 OSIntExi(t )函数成对出现,在进入中断服务
2.3 修改 OS_CPU_A.ASM 文件
函数时,都应该包含这两个函数,中断服务的内容位于这两个函数
我们下载的 μCOS-Ⅲ移植工程是在官方的 IAR 编译环境下建 之间。
科技创新与应用 2015 年第 18 期
科技创新
基于 STM32 的 μCOS-Ⅲ系统移植的设计
马昊 张冬 陈豹 (徐州工程学院信电学院,江苏 徐州 221000)
摘 要:随着嵌入式系统产品渐渐完善,并在全世界各行业得到广泛应用,通过移植嵌入式操作系统,计算机可以更好地管理内 存,并且在很大程度上提高系统的实时性。文章主要介绍了 μCOS-Ⅲ操作系统在基于 ARM Contex-M3 为内核的 STM32 处理器 的移植要点,并且实现了源码公开的嵌入式实时操作系统 μCOS-Ⅲ在 STM32 处理器上的成功移植。 关键词:μCOS-Ⅲ;STM32 处理器;移植
表3
至此,我们对 μCOS 的源码针对编译环境做了修改,将 SysTick 中断修改到 STM32 所提供的 STM32F10X_IT.C 文件后,就基本完成 了 μCOS 的移植了。
3 系统测试 我们现在需要对移植好的代码做一个简单的测试,通过编写流 水灯任务来验证移植的成功。流水灯任务的部分代码如表 3: 运行后我们发现实验板的流水灯按照循环的方式一直闪烁,验 证了 μCOS-Ⅲ在 STM32 处理器核上的成功移植。 4 结束语 作为一个成熟的嵌入式操作系统,μCOS-Ⅲ已经被广泛移植于 各种体系的微型处理器上了。在嵌入式技术高速发展的今天,基于 ARM 为内核的微处理器凭借 ARM 优秀的体系结构被运用于各种 行业。通过研究 μCOS-Ⅲ的移植,可以使得它在更广泛的平台得到 应用,更促进嵌入式技术的发展。
义在 OS_CPU_C.C 文件中,由于我们采用了 STM32 官方库提供的函
我们可以看到,在 SysTick 的函数中调用了 3 个函数,它们都是
数 来 对 SysTick 进 行 中 断 处 理 , 所 以 我 们 要 把 OS_CPU_C.C 的 μCOS 源码定义的函数,其基本功能如下:
OS_CPU_SysTickHandler()和 OS_CPU_SysTickInit()这 两 个 函 数 注
入式操作系统,计算机可以更好的管理内存,并且在很大程度上实 (见表 1)
现了系统的实时性。μCOS-Ⅲ作为一个微型实时操作系统,包括了
表1
一个操作系统最基本的特性,使用汇编语言和 C 语言编写的
μCOS-Ⅲ的构思巧妙,结构简洁精炼,可读性很强,作为一个源码开
放的嵌入式操作系统,用户只要做很少的工作就可以把它进行移植
1.25DMIPS/MHz。ECOPACK 封装,最多高达 112 个的快速 I/O 端口, “CPU_WaitForInt:”和“CPU_WaitForExpect:”,为了适应编译环境,需
最多多达 11 个定时器,最多多达 13 个通信接口,具有 3 种模式:休 要将其中的冒号去掉。
眠,停止,待机模式的低功耗,可以使其广泛的应用于工业控制、医
1925 年,美国工程师 Streeler 和 Phelps 提出了 S-P 模型,描述
一维稳态河流中的 BOD 和 DO 的变化规律。经过近一个世纪的发
展,水质模型的研究日益成熟,特别是近 30 年以来,随着计算机技
术的广泛应用,水质模拟领域也有了重大发展,各国相继出现了一
批功能强大、通用性好、准确可靠的综合水质模型。
参考文献 [1]刘火良,杨森.STM32 库开发实战指南[M].北京:机械工业出版社, 2013. [2]任哲.嵌入式操作系统基础 μC/OS-II 和 Linux(第 2 版)[M].北京: 北京航空航天大学出版社,2011. [3]野火开发板配套资料.μC/OS-Ⅲ在 STM32 的移植详解[Z]. [4]Joseph Yiu.ARM Contex-M3 权威指南[M].宋岩,译.北京:北京航 空航天大学,2009. [5]许伦辉,修科鼎.基于 ARM 处理器的 μCOS-II 移植[J].科技广场, 2010. [6]邓中亮,何双亮.基于 ARM 的嵌入式操作系统 μC/OS-II 的移植 研究[J].计算机技术与发展,2007.
相关文档
最新文档