📄 ——嵌入式系统通用的应用软件结构研究.htm
字号:
<P
style="TEXT-INDENT: 30px">OSMemFreeList—指向下一个空闲控制块或下一个空闲内存块的指针;</P>
<P
style="TEXT-INDENT: 30px">OSMemBlkSize—内存分区中内存块的大小,是用户建立该内存分区时指定的;</P>
<P
style="TEXT-INDENT: 30px">OSMemB1ks—内存分区中总的内存块数量,是用户建立该内存分区时指定的;</P>
<P style="TEXT-INDENT: 30px">OSMemNFree—内存分区中当前可以得到的空闲内存块数量。</P>
<P style="TEXT-INDENT: 30px">在<FONT
face=Arial>μC/OS-II</FONT>中,也可以使用常规的malloc()和free()内存管理函数来增强其可移植性,但在使用更严格的场合,应使用系统提供的特殊的内存管理。</P>
<P style="TEXT-INDENT: 0px"><B>2 应用软件</B></P>
<P style="TEXT-INDENT: 30px">2.1 应用软件原型</P>
<P
style="TEXT-INDENT: 30px">对于8051单片机系统的编程,最基本的架构是一个无限循环,应用的所有事情基本上都是在这个超循环中实现的。在这种系统中,系统上只有一个任务在运行,应用就是整个系统,而整个系统就是一个应用。</P>
<P style="TEXT-INDENT: 30px">与这种简单系统相似,超循环结构在复杂的实时操作系统<FONT
face=Arial>μC/OS-II</FONT>中也是一个基本结构;但不再是系统级的,而只是任务级的。图1为超循环的结构示意。<BR><IMG
height=198 hspace=10 src="——嵌入式系统通用的应用软件结构研究.files/2a.gif" width=549
vspace=10 border=0><BR> <SPAN
class=main1>在一个应用中,至少有一个这样的任务,它包含这样一个超循环,以使其拥有与应用相同的生存期,并由它完成应用的全部或部分功能。图2为应用软件结构框图。</P>
<P style="TEXT-INDENT: 30px">2.2 基本应用软件结构</P>
<P
style="TEXT-INDENT: 30px">应用软件结构存在不同性,是由应用本身决定的;但作为基本结构,则是相似甚至是相同的。因为对于不同的系统,所调用的函数是不同的。下面给出基本应用软件结构的文字描述。</P>
<P style="TEXT-INDENT: 30px">①声明系统的包含文件。</P>
<P style="TEXT-INDENT: 30px">②声明全局数据:任务数、任务的栈空间等。</P>
<P style="TEXT-INDENT: 30px">③主函数:</P>
<P style="TEXT-INDENT: 30px">*系统初始化;</P>
<P style="TEXT-INDENT: 30px">*创建主任务;</P>
<P style="TEXT-INDENT: 30px">*启动多任务执行。</P>
<P style="TEXT-INDENT: 30px">④主任务:</P>
<P style="TEXT-INDENT: 30px">*主任务初始化;</P>
<P style="TEXT-INDENT: 30px">*若必要,可创立多个子任务;</P>
<P style="TEXT-INDENT: 30px">*进入超循环或退出主任务。</P>
<P style="TEXT-INDENT: 30px">⑤子任务:</P>
<P style="TEXT-INDENT: 30px">*子任务初始化;</P>
<P style="TEXT-INDENT: 30px">*进入超循环或退出子任务。</P>
<P style="TEXT-INDENT: 30px">2.3 应用软件实例</P>
<P style="TEXT-INDENT: 30px">(1)样例1</P>
<P style="TEXT-INDENT: 30px">为了简要说明软件结构思想,我们在PC平台、Windows
98系统下,采用了Borland公司的C++命令行编译环境,说明我们的第一应用。</P>
<P style="TEXT-INDENT: 30px">其中文件的主要功能,就是显示一个Hello<FONT
face=Arial>μC/OS-II embedded world</FONT>!字符串。由于其是在<FONT
face=Arial>μC/OS-II</FONT>下实现的,与原理有相通性,这里就不再更多介绍了。</P>
<P style="TEXT-INDENT: 30px">(2)样例2</P>
<P style="TEXT-INDENT: 30px">使用Cirrus
Logic公司的开发板EP7212,运行的操作系统是RedHat公司的ECOS。本应用的主要功能是,把从串口2接收到的数据再发送回去,并且在初始化时加发一个“Hello
eCos World!”字符串。</P>
<P style="TEXT-INDENT: 30px">ECOS是一个比<FONT
face=Arial>μC/OS-II</FONT>更复杂的系统,其支持的软件结构更丰富,但其对我们所抽象的软件结构依然支持得很好;只是在我们应用的主函数中,已更好地将系统的初始化部分隐藏了起来。
</SPAN></P>
<P></P></DIV></TD></TR>
<TR>
<TD align=middle height=15>
<TABLE cellSpacing=0 cellPadding=0 align=center border=0>
<TBODY>
<TR>
<TD>
<DIV></DIV></TD></TR></TBODY></TABLE></TD></TR>
<TR>
<TD align=right height=2>
<TABLE cellSpacing=0 cellPadding=0 width="80%" border=0>
<TBODY>
<TR>
<TD width=75>【<A href="javascript:doPrint();">打印本稿</A>】</TD>
<TD width=8></TD>
<TD width=75>
<P>【<A
href="http://www.21ic.com/new_info/news/review.asp?title=嵌入式系统通用的应用软件结构研究target="
_blank?>发表评论</A>】</P></TD>
<TD width=10></TD>
<TD width=79>【<A
href="http://www.21ic.com/new_info/news/sendmail.asp?num=嵌入式系统通用的应用软件结构研究">推荐</A>】</TD></TR></TBODY></TABLE></TD></TR>
<TR>
<TD align=right height=2></TD></TR>
<TR>
<TD align=right height=2><A href="javascript:window.close();"><IMG
height=20 src="——嵌入式系统通用的应用软件结构研究.files/close_c.gif" width=77
border=0 name=Image161></A><FONT
color=#ffffff>----</FONT></TD></TR></TBODY></TABLE><BR><BR>
<TABLE cellSpacing=0 cellPadding=0 width=520 align=center border=0>
<TBODY>
<TR>
<TD vAlign=bottom align=middle width=114 bgColor=#999a76
height=1><IMG height=1 src="——嵌入式系统通用的应用软件结构研究.files/blank.gif"
width=1></TD>
<TD width=466 height=1></TD></TR>
<TR>
<TD align=middle width=114 bgColor=#ece8db height=19>相关新闻</TD>
<TD width=466 height=19></TD></TR>
<TR bgColor=#999a76>
<TD colSpan=2 height=1><IMG height=1
src="——嵌入式系统通用的应用软件结构研究.files/blank.gif" width=1></TD></TR>
<TR>
<TD colSpan=2 height=1></TD></TR></TBODY></TABLE>
<TABLE borderColor=#000000 cellSpacing=0 cellPadding=0 width=520
align=center border=0>
<TBODY>
<TR>
<TD vAlign=top>
<TABLE class=RelatedTable width="100%" border=0>
<TBODY>
<TR class=RelatedTr>
<TD class=RelatedTd>
<SCRIPT language=javascript
src="——嵌入式系统通用的应用软件结构研究.files/about.htm"></SCRIPT>
</TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><BR></TD>
<TD vAlign=top align=middle width=150 bgColor=#ece8db height=2>
<TABLE cellSpacing=0 cellPadding=1 width="100%" border=0>
<TBODY>
<TR>
<TD bgColor=#000000>
<TABLE cellSpacing=0 cellPadding=2 width=150 bgColor=#ece8db
border=0>
<TBODY>
<TR>
<TD>
<META content="Microsoft FrontPage 5.0" name=GENERATOR>
<META content=FrontPage.Editor.Document name=ProgId><BR><A
href="http://www.hhcn.com/chinese/cnindex.html"
target=blank>华恒<BR>(ARM,PowerPC,冷火,龙珠)</A><BR><A
href="http://www.embedon.com/" target=blank>远峰</A> <BR><A
href="http://www.21ic.com/custom/jhb/index.htm"
target=blank>复旦金海博</A><BR><A
href="http://www.emdoor.com/index.asp"
target=blank>亿道</A><BR><BR>单片机 <BR><BR><A
href="http://www.hk.renesas.com/"
target=blank>Renesas</A><BR><A
href="http://www.zlgmcu.com/tools/kaifaban.asp"
target=blank>周立功 Philips</A> <BR><A
href="http://www.strong-ic.com/" target=blank>胜创特</A> <BR><A
href="http://www.holtek.com.tw/" target=blank>盛群 Holtek</A>
<BR><A href="http://www.xhl.com.cn/"
target=blank>Cygnal单片机</A><BR><A href="http://www.lierda.com/"
target=blank>利尔达MSP430</A> <BR><BR>接口电路:<BR><BR><A
href="http://www.whjmw.com/" target=blank>金迈威</A> <BR><A
href="http://www.21ic.com/custom/maiwei/mw.htm"
target=blank>迈威</A> <BR><A href="http://www.rs232.net.cn/"
target=blank>瑞赛特</A><BR><BR><BR>存储器<BR><A
href="http://www.huazhoucn.com/"
target=blank>铁电存储器免费样品</A><BR><BR><BR>模拟器件<BR><A
href="http://www.unique-ap.com.cn/"
target=blank>Linear</A><BR><BR><BR>编程器<BR><A
href="http://www.xeltek.com.cn/"
target=blank>西尔特编程器</A><BR></TD></TR>
<TR>
<TD
height=5></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width=766 align=center border=0>
<TBODY>
<TR>
<TD vAlign=top colSpan=6></TD></TR>
<TR>
<TD vAlign=top colSpan=6 height=10></TD></TR>
<TR>
<TD vAlign=top bgColor=#999999 colSpan=6 height=2></TD></TR>
<TR>
<TD class=stxt vAlign=center align=middle colSpan=6
height=6></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width=766 align=center border=0>
<TBODY>
<TR>
<TD class=s width=973 height=12></TD></TR>
<TR>
<TD class=s width=973 height=20>
<DIV align=center><FONT face="Arial, Helvetica, sans-serif"><!--start copyright-->
<DIV align=center><FONT color=black>
<TABLE cellSpacing=0 cellPadding=0 width=600 align=center border=0>
<TBODY>
<TR>
<TD align=middle width="100%" colSpan=2><BR>Better View:800*600 Best
View:1024x768 为了本系统能够更好的为您服务,请使用IE4.0或以上版本浏览器
<BR><BR>版权所有(C)21IC中国电子网 电话:010-82357510, 82357511 传真: 010-82357512
</TD></TR></TBODY></TABLE><!--start copyright--></FONT></DIV></FONT></DIV></TD></TR></TBODY></TABLE><BR></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -