嵌入式操作系统--魔幻盒子文档.docxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实训题目:魔幻盒子 1 系统设计 1.1 设计要求 1.1.1 设计任务 以VM ware虚拟机软件和Red hat 9.0操作系统为平台,使用shell脚本编写程序,用ASCII码字符设计一个长、宽可变的四边形。要求使用linux shell编写程序脚本(Bash风格),并提供友好的的交互界面。 1.1.2 性能指标要求 基本要求 四边形的绘图(40点*30点) 边的ASCII字符可以在按下某按键的情况下可以修改(如从“-”- “*”) 四边形的四个角要求用不同的ASCII字符 四边形的大小可变 四边形中间输出自己的姓名与学号 在按下某按键的情况下四边形的颜色可变 2、发挥部分 在按下某按键实现四边形的立体化。 1.2 设计思路及设计框图 1.2.1设计思路 一开始选这个题目时,可以说是完全不懂。但是,通过这学期所学的嵌入式Ubuntu应用编程实战这本书以及按照老师给的要求去查资料,开始慢慢的了解实训所需要做的大概是怎么一回事,在linux系统中,利用画图函数draw_char控制ASCII码字符画出一个长宽可变,边框符号可变,颜色可变和输出自己学号姓名的四边形,同时这个四边形实现立体化。 在画图开始时,先把之前所画的四边形清除,所以必须先进行清屏。接着按照要求要使所画的四边形的初始大小为40点*30点,所以给四边形的长和宽定义俩个初始量,分别为40和30,并且四边形的大小可变,就需要给四边形的长和宽俩个变量赋值,每画一个四边形就需要重新给长和宽赋值。然后改变四边形的边的ASCII字符,只需要给四条边定义四个不同的变量。而改变四边形的颜色,只需要调用哪个颜色的函数,然后通过输入选择数字来改变四边形的颜色。为控制不同的变化,则需要设定不同的case语句或if语句来进行相应的变化。要想实现四边形的立体化,需要在之前画好的四边形的基础上在画三条斜线,一条横线和一条竖线共五条线来实现四边形的立体化。 同时设置变量来实现四边形立体化后改变大小。 1.2.2总体设计框图 清屏 改变四边形立体化后的颜色1.四边形的大小e.退出程序d.立体化3.四边形的颜色2.四边行的ASCII子字符 画四边形While循环定义四边形的初始位置,初始长和宽,初始颜色和边的ASCII字符 改变四边形立体化后的颜色 1. 四边形的大小 e. 退出程序 d. 立体化 3. 四边形的颜色 2. 四边行的 ASCII子字符 画四边形 While循环 定义四边形的初始位置,初始长和宽,初始颜色和边的ASCII字符 判断能否立体化 判断能否立体化 对相应变量重新赋值并画图 对相应变量重新赋值并画图 2 各个模块程序的设计 2.1 初始化定义 clear #清屏 R=5 #定义起始横坐标 C=10 #定义起始纵坐标 H=30 #定义初始四边形的宽 W=40 #定义初始四边形的长 col=0 #定义初始四边形的颜色 HORZ=- #定义初始四边形边ASCII字符 VERT=| D=0 let W=$W+$W #四边形长宽比为1:1.9 draw_box $R $C $H $W $col $HORZ $VERT 2.2draw_box画图函数 draw_box(){ BOX_HEIGHT=`expr $3 - 1` BOX_WIDTH=`expr $4 - 1` T_ROWS=`tput lines` #获取终端的宽 行列宽长 T_COLS=`tput cols` #获取终端的长 plot_char(){ echo -e \E[${1};${2}H$3 #启用转义序列,将光标移动到$1和$2所定位处,输出$3 } #设置颜色的格式: \e[背景

文档评论(0)

白丫 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档