你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【安富莱】【RTX操作系统教程】第3章 初学RTX操作系统准备...

[复制链接]
baiyongbin2009 发布时间:2016-1-16 14:55
第3章      初学RTX操作系统准备工作
    俗话说万事开头难,学习一门新的知识,往往难的不是知识本身,而是如何快速上手,需要什么资料和开发环境,一旦上手后,深入的学习相对就要容易些了。
    本章节就起到这样的作用,主要说明下初学RTX操作系统需要做的准备工作。
    3.1 开发环境
    3.2 重要说明
    3.3 RTX系统参考资料
    3.4 RTX的调试方法
    3.6 RTX调试组件功能介绍
    3.5         总结
3.1  开发环境
1.   IDE:MDK4.74,建议用户使用此版本操作教程配套的例子。
2.   调试器使用JLINK,ULINK或者STLink均可。
3.   配套开发板是安富莱STM32-V4开发板,MCU是STM32F103ZET6和STM32-V5开发板,MCU是STM32F407IGT6。

2 Y" m! h4 y# B3 I- H1 q1 @9 l
3.2  重要说明
1.    RTX操作系统是由KEIL公司(现在已经被并入ARM公司旗下)开发并进行升级维护的。
2.    每个MDK的安装目录里面都会有一个RTX源码,对于MDK4.XX来说,大家使用的那个MDK版本,务必使用那个MDK版本下面的RTX,这样使用MDK自带的RTX调试组件时,才能显示正确的调试信息。
3.    当前STM32F103和STM32F407开发板使用的RTX源码是MDK4.74里面的,KEIL官方已经放弃MDK4系列的更新了,这个版本号是MDK4系列里面最新版本了。如果需要使用MDK自带的RTX调试组件显示信息,请务必使用MDK4.74
4.    对于MDK5.XX,RTX也在其安装目录里面,但是RTX已经不作为单独版本发布了,它有一个全新的名字叫CMSIS-RTOS RTX。ARM官方在RTX的基础上给RTX又做了一层封装。

1 g' F  D0 f: M0 q
3.3    RTX系统参考资料
    学习RTX主要有两个可以参考的资料:
1.   KEIL MDK安装目录里面的rlarm.chm文件。
2.   KEIL官网上在线查看。
    当然,两者的内容是一样的。其实不光RTX操作系统是这样,像FreeRTOS和uCOS现在也是这种形式,一个离线方式的电子手册和一个在线的手册。
    rlarm.chm文件在MDK4.74的安装目录C:\Keil_v474\ARM\Hlp里面,下图3.1就是打开后的效果
                              
3.1.png
图3.1 RTX手册
官网的在线查看方式在地址:http://www.keil.com/support/man/docs/rlarm/rlarm_ar_artxarm.htm。下图3.2就是打开后的效果(部分截图):
3.2.png
图3.2 RTX手册在线查看
等RTX操作系统入门后,主要看这两个手册即可,基本可以解决大部分问题。
* q) G0 z: O# b+ _/ S: K) u
: d0 T/ t& q) l7 o, q
收藏 评论10 发布时间:2016-1-16 14:55

举报

10个回答
baiyongbin2009 回答时间:2016-1-16 15:00:14
本帖最后由 baiyongbin2009 于 2016-1-16 15:01 编辑 . |9 f& k& F, N+ H  p

! W4 w. R) z- `! e* Q! F' n8 o3.4  RTX的调试方法
    MDK(以MDK4.74为例)中自带RTX的调试组件,本小节就给大家介绍下如何使用RTX的调试组件。首先将基于RTX的MDK工程进行全编译,然后进行软件仿真或者硬件仿真,因为只有在仿真状态下才可以使用RTX的调试组件。下面是详细的设置步骤:
第1步:进行MDK工程全编译
第2步:点击MDK的这个图标
3.3.png
第3步:进入调试状态后,选择如下选项System and Viewer
3.4.png
选择后,可以看到右侧弹出如下窗口:
3.5.png
第4步:选择如下选项Event Viewer
3.6.png
选择后,可以看到右侧弹出如下窗口:
3.7.png
第5步:使能调试状态下的窗口周期性更新功能
3.8.png
第6步:这里就是最后一步了,点击RUN图标:
3.9.png
点击运行后,可以看到窗口System and Viewer在不断的刷新RTX多任务的执行情况,
3.10.jpg
而窗口Event Viewer上面没有数据更新,这是因为需要配置Serial Wire Viewer(简称SWV),SWV仅在调试接口使用SW模式的时候才可以工作,调试接口使用JTAG模式是无法工作的。JTAG和SW的切换可以在MDK的下图所示位置进行设置:
3.11.png
图3.3 MDK设置
3.12.png
图3.4 JTAG和SW接口在MDK中的切换位置
另外配置SWV模式需要使用到STM32的SWO引脚,本教程配套的STM32F103和STM32F407开发板的调试接口没有使用SWO引脚,所以关于Event Viewer功能就不做过多介绍了。
重要说明:实际测试MDK4.74使用Event Viewer有bug,这部分就不作为教程内容了,详情请看帖子:http://bbs.armfly.com/read.php?tid=14879
JTAG接口和SWD接口区别
     下图分别是20pin的标准JTAG引脚和SWD( Serial Wire Debug)引脚,一般SWD接口仅需要Vref,SWDIO,SWCLK,RESET和GND五个引脚即可,SWO(Serial Wire Output)引脚是可选的。有了SWO引脚才可以实现数据从芯片到电脑端的数据发送。
        
3.13.png                                      3.14.png
JTAG接口                                                                SWD接口
6 J' |* N- q: X
词条—SWV(Serial Wire Viewer
    SWV是由仪器化跟踪宏单元ITM(Instrumentation Trace Macrocell)和SWO构成的。SWV实现了一种从MCU内部获取信息的低成本方案,SWO接口支持输出两种格式的跟踪数据,但是任意时刻只能使用一种。两种格式的数据编码分别是UART(串行)和Manchester(曼彻斯特)。当前JLINK仅支持UART编码,SWO引脚可以根据不同的信息发送不同的数据包。当前M3/M4可以通过SWO引脚输出以下三种信息:
     1.  ITM支持printf函数的debug调用(工程需要做一下接口重定向即可)。ITM有32个通道,如果使用MDK的话,通道0用于输出调试字符或者实现printf函数,通道31用于Event Viewer,这就是为什么实现Event Viewer需要配置SWV的原因。
     2.  数据观察点和跟踪DWT(Data Watchpoint and Trace)可用于变量的实时监测和PC程序计数器采样。
     3.  时间戳,ITM 还附带了一个时间戳的功能:当一个新的跟踪数据包进入了 ITM 的 FIFO 时, ITM 就会把一个差分的时间戳数据包插入到跟踪数据流中。跟踪捕获设备在得到了这些时间戳后,就可以找出各跟踪数据之间的时间相关信息。另外,在时间戳计数器溢出时也会发生时间戳数据包。
6 h1 R; w" z0 U* u* Z. Q6 g) h
baiyongbin2009 回答时间:2016-1-16 15:03:36
3.5  RTX调试组件功能介绍
    由于STM32F103开发板和STM32F407开发板没有引出SWO引脚,调试组件Event Viewer是无法使用的,这里仅介绍一下System and Viewer组件。下图3.5是System and Viewer界面。
3.15.jpg
图3.5 System and Viewer界面
下面是系统部分功能介绍:
Timer Number:0表示使用芯片的滴答定时器,1表示使用外设定时器。
Tick Timer:RTX的时钟节拍周期。
Roud Robin Timeout:时间片溢出时间,即时间片调度时任务分配的时间片大小。
Stack Size:任务栈大小,单位字节。
Stack Overflow Check:设置是否支持栈溢出检测。
Tack Usage:任务创建情况,Available表示可以创建的最大任务数,Used表示实际创建的。
User Timers:软件定时器个数,Available表示可以创建的最大任个数,Used表示实际创建的个数。

5 C. u  O% L5 h" L+ ?( Y
下面是任务部分功能介绍:
ID:任务的ID标示。
Name:任务的函数名。
Priority:任务优先级。
State:任务状态。
Delay:任务延迟时间。
Event Value:任务当前的事件标志数值。
Event Mask:任务等待的事件标志数值。
Stack Load:任务堆栈利用率。
. Y* h2 R/ W3 X: }9 I- |/ I% d* z
3.6  总结
     本章节就为大家讲解这么多,建议初学者花些时间对RTX系统的参考资料章节结构了解一下,随着以后的学习最好可以达到熟练查看这个手册的程度。
6 z0 W2 z% ^  `+ e$ m" V5 J5 Z
moyanming2013 回答时间:2016-1-17 13:58:17
不能更新到MDK V5吗
埃斯提爱慕 回答时间:2016-1-18 14:08:38
提示: 作者被禁止或删除 内容自动屏蔽
ptiinngg 回答时间:2016-1-18 16:46:29
学习了
disheng4688 回答时间:2016-1-20 09:32:54
谢谢分享         
123tango 回答时间:2016-1-20 11:27:46
学习了了
板子粉丝 回答时间:2018-3-22 09:08:39
听课学习第三章
arulc 回答时间:2018-6-8 11:09:06
顶起来* L) V0 b9 z5 m6 _
Jdden 回答时间:2018-8-25 10:01:43
感谢分享!

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版