2023年综合系统设计试卷(最新版).pdf
《2023年综合系统设计试卷(最新版).pdf》由会员分享,可在线阅读,更多相关《2023年综合系统设计试卷(最新版).pdf(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、综合系统设计题目 题目一:智能时控开关设计 主要内容:利用单片机中的定时器、IO 接口、中断系统等资源,设计一智能时控开关系统,能根据时刻信息或倒计时信息对多路开关进行控制。基本要求:(1)系统含 24 小时时钟,用数码管可显示小时、分钟及秒时间信息。(2)可通过按键对时钟进行校准,可对定时时刻或倒计时时间进行设置。(3)定时时间到时,用发光二极管闪烁及蜂鸣器发声提示。人工干预后停止闪烁及发声,并用发光管指示开关状态。提高部分:(4)可对多路(35 路)开关进行定时控制。(5)可对每路按多个时间顺序设置开关控制。(如:8:00 开,12:00 关,14:00 开,16:00 关)。(6)尝试为
2、系统设置语音提示功能。题目二:交通信号灯模拟系统设计 主要内容:利用单片机中的定时器、IO 接口、中断系统等资源,设计一个十字路口交通信号灯的控制模拟系统。基本要求:(1)利用单片机的定时器定时,令十字路口的红绿灯交替点亮和熄灭。(2)可通过按键对红绿灯点亮和熄灭时间进行调整及设置。(3)能对红绿灯点亮和熄灭时间进行倒计时时间显示。提高部分:(4)可进行紧急或特殊情况的人工处理控制。(5)有内部 24 小时钟,可根据时间表对对红绿灯点亮和熄灭时间进行自动调整。(如高峰期:7:30-8:30,17:00-18:30 或夜间时段红绿灯主次干道时长比等)。(6)可根据交通流量自动调整对红绿灯点亮和熄
3、灭时间。题目三:智能温度采集与控制系统的设计 主要内容:利用单片机中的定时器、IO 接口、中断系统等资源,设计一个数字温度计,要求能在数码管上显示两位温度数值(假设温度变化范围为 050),且当温度每变化 1 度时立即更新显示。基本要求:(1)系统能通过 I/O 接口线对加热装置进行控制,并通过 A/D 转换电路采集该装置温度信息。(2)具内部 24 小时时钟,可利用两位 LED 数码管即时显示采集的温度值。(3)当温度每变化 1 度时应立即更新显示。提高部分:(4)设计温度控制功能,对加热装置的某个温度值进行控制。(5)设计温度控制功能,对加热装置的某个温度范围进行控制。题目四:乒乓球游戏模
4、拟器设计 主要内容:利用单片机中的定时器、IO 接口、中断系统等资源,设计一个乒乓球游戏模拟器,在仿真环境下进行模拟乒乓球比赛。用 8 个 LED 发光管的来回滚动显示模拟打乒乓球时乒乓球在两边球台上的来回运动。比赛双方各用 1 个按钮来模拟发球与接球,即发球方按动其控制的按钮,球从发球方一侧向对方运动(LED 发光管从发球方到对方逐个点亮,滚动显示)。当球运动至接球方时,接球方立即按动其控制的按钮,“击球”使球“弹回”发球方一侧。如此周而复始,直至在规定的击球时间内有一方未能完成击球动作,从而对方得一分;然后继续比赛。基本要求:(1)记分。比赛双方各用 3 位八段管记录得分,其中 1 位记录
5、盘分(大比分,如 3:2),2 位记录局分(小比分,如 09:05),盘分局分初始值均可预先设定。(2)十一分制。7 局 4 胜,两球轮换发球,在一局比赛中,先得 11 分的一方为胜方。比赛结束八段管显示胜负局数,按键后重新开始。(3)发球方的初始状态为:靠近己方的第 1 个 LED 闪烁发光,表示发球权的归属。(4)球以 1 LED/0.5s 的速度移动。在球到达前按下按钮无效(不起回球作用);在球到达后的 0.5s 内按下按钮有效(回球),否则失球(失分),本回合结束,刷新比分。*设计提示:球到达接球方后,立即读接球方的按钮状态,若未按则有效(若已按下则无效),然后不断读按钮状态,直到按下
6、代表“击球”动作。提高部分:(5)在一局比赛中,先得 11 分的一方为胜方,10 平后,先多得 2 分的一方为胜方。(6)可改变球移动速度,即每个 LED 点亮时间分别为 0.5s、0.4S,0.3s、0.2s。(7)可改变允许击球时间 0.5s、0.4S、0.3s、0.2s。(8)球移动速度取决于击球时间,即球移动速度(每个 LED 点亮时间)在 0.20.5s 内可变,具体取决于球到达接球方后击球所花的时间 00.5s,如花的时间短则回球后球移动速度快,反之回球后移动速度慢,如下表所示。球移动速度与击球时间对应表 球到达至击球时间/s 00.2 0.20.3 0.30.4 0.40.5 球
7、移动速度(灯点亮时间)/s 0.2 0.3 0.4 0.5 (9)比赛开始前双方争发球权。开始时刻 8 个 LED 发光管的第 4 个或第 5 个(中间位置)闪烁,按键或拔动开关产生 1 个随机数(0、1),0 向左方向,1 则向右方向滚动,得分方获发球权,题目五:设计并制作 4 路 LED 定时显示控制电路 主要内容:利用单片机中的定时器、IO 接口、中断系统等资源,设计一个 4 路 LED 定时显示控制电路。基本要求:(1)单片机系统设计。包括实时时钟的显示与调整,显示屏的驱动、键盘接口驱动电路等外围硬件的设计及其软件编程。(2)4 路 LED定时时间设置与存贮。(3)4 路 LED定时时
8、间的控制。通过比较当前时间和已存贮的 4 路 LED定时时间,完成对 4 路 LED的驱动显示。提高部分:(4)在对 4 路 LED定时时刻启动显示的基础上,完成对 4 路 LED定时时段的控制。题目六:模拟电梯设计 主要内容:利用单片机中的定时器、IO 接口、中断系统等资源,用键盘、按钮、八段数码管和 LED 模拟电梯工作过程。楼层设为 8 层,键盘数字键 18 用来键入希望停的楼层,8 个 LED 显示希望停的楼层,八段数码管指示电梯当前所在楼层,按扭用来启、停电梯。电梯正常运行时以每 2 秒 1 层的速度上升或下降。基本要求:(1)运行按钮。设当前电梯停在某层(八段码显示相应楼层,8 个
9、 LED 全灭)。键入 18 数字键,如键入的数字与当前电梯停层相同,则不发生任何动作;若不同则相应楼层的 LED 亮。如再按运行键,则电梯自动判别上升或下降(在运行过程中八段码显示楼层变化)一直到达希望停的楼层(八段码显示该楼层,相应 LED 灭);(2)动态增加新的停靠楼层。设当前电梯正在上升或下降运行(此时八段码显示楼层变化,LED 指示希望抵达的楼层),若键入新的希望停的楼层数字(相应的 LED 亮),则对同方向(上升或下降)未到的楼层能停,对其他情况则先停原希望停的楼层,然后按运行键后继续进行。如下几例:a)设电梯当前在 2 层,向上运行,LED 指示希望在 6 层停,此时若键入 4
10、,则电梯将在 4 层停;若再按运行键,则继续运行至 6 层停。b)同上情况,若键入的不是 4 而是 8,则电梯将先停在 6 层;再按运行键,运行至 8 层停。c)同上情况,若键入的不是 4 或 8,而是 1,则电梯先停在 6 层;再按运行键,运行至 1 层停。提高部分:(3)直达按钮。若按此按钮,电梯按直达方式运行,即对运行期间新键入的停靠楼层(即使是同方向未到楼层)不作停靠,直达终点楼层。(4)急停按钮。电梯运行中,若按此按钮,则电梯立即停在将要到达的楼层。(5)断电待修按钮。按下该按钮电梯不能工作,再按一下才能重新工作。附 1 论文形式(1)设计过程:系统分析及总体目标设计(含功能、使用规
11、范)总体方案确定 硬件设计、软件设计 系统组成及修改调试 实验设计报告(2)设计报告要求:必须独立完成,格式符合要求,文字(不含图形、程序)不少于 3000 字,图形绘制规范。设计报告的格式如下:1、封面 2、内容提要 3、目录 4、正文(1)所作题目的意义、本人所做的工作及系统的主要功能;(2)硬件电路设计及描述;(3)软件设计流程及描述;(4)源程序代码(要有注释);5、心得体会 6、参考文献 (3)论文形式示例 智能风扇设计报告 谭宇 何莹 姚瑶(武汉大学电子信息学院 430072)摘要:系统以单片机与 FPGA为核心,利用移相斩波法,使用光耦和可控硅,通过对 220V交流电的相位跟踪来
12、调节可控硅的导通角,实现对电压有效值的连续调节,从而实现风扇转速在 0-600 转的连续精确可调,并能控制风扇实现普通风、自然风、睡眠风三种智能功能,同时测出对应时刻的风扇转速,并且还带有红外遥控功能。整个系统结构简单,功能全面,达到了风扇转速的智能化控制的指标。关键字:0 引言 1 方案比较与论证 1.1 题目任务要求及相关指标的分析 1.2 方案的比较与选择 2 系统总体设计方案及实现方框图 3 理论分析与计算 4 主要功能电路的设计 5 系统软件的设计 6 测试数据与分析 7 结论 8 参考文献 附 2 乒乓球游戏模拟器设计 1)基本要求 用 8 个 LED 发光管的来回滚动显示模拟打乒
13、乓球时乒乓球在两边球台上的来回运动。比赛双方用按按钮(双方各用 1 个按钮)的方法来模拟发球与接球,即发球方按动其控制的按钮,球从发球方一侧向对方运动(LED 发光管从发球方到对方逐个点亮,滚动显示)。当球运动至接球方时,接球方立即按动其控制的按钮,“击球”使球“弹回”发球方一侧。如此周而复始,直至在规定的击球时间内有一方未能完成击球动作,从而对方得一分;然后继续比赛。比赛规则可参照一般的乒乓球比赛规则。比赛规则制订:(1)十一分制(两球轮换发球)二十一分制(五球轮换发球)。可用一位开关设定。(2)发球方的初始状态为:靠近已方的第 1 个 LED 闪烁发光,表示发球权的归属。应根据规则由系统自
14、动设定初始状态。一般要求可自行定义首次开局由左方先行发球。(3)失球后(未完成击球动作)应在八段码显示得失分数,并判断是否换发球,以继续比赛。(4)由开始时刻对规则的设定,当计满最高分时,(十一分、二十一分)结束当前局比赛,并熄灭所有 LED 发光管,(当前局结束标志)按键重新开始交换发球权,回到规则(2)。(5)设定 3 局 2 胜或 5 局 3 胜制,比赛结束八段码显示胜负局数,按键后可重新开始。设计要求:(1)球以每 0.5s 滚过 1 个 LED 的速度移动。(2)回球需在球到达后的 0.5s 内进行(按下按钮),否则按失球计。(3)球未到达提前按下按钮不起回球作用。(4)用 6 个八
15、段码为双方记分(每方 3 个八段码,十进制计数,初始值 0:0)。2)设计提示 球到达接球方后,立即读接球方的按钮状态,若未按则有效(若已按下则无效),然后不断读此按钮状态,直到按下代表“击球”动作。3)进一步设计要求(1)通过拨动开关改变球移动速度,即每个 LED 管点亮时间分别为 0.5s、0.4S,0.3s、0.2s。(2)通过拨动开关改变允许击球时间 0.3s、0.2s、0.1s。(3)球移动速度取决于击球时间,即球移动速度(每个 LED 点亮时间)在 0.20.5s 内可变,具体取决于球到达接球方后击球所花的时间 00.5s,如花的时间短则回球后球移动速度快,反之回球后移动速度慢,如
16、表 1 所示。表 1 球移动速度与击球时间对应表 球到达至击球时间/s 00.2 0.20.3 0.30.4 0.40.5 球移动速度(灯点亮时间)/s 0.2 0.3 0.4 0.5 (4)发球权由争球决定,开始时刻 8 个 LED 发光管的第 4 个或第 5 个(中间位置)闪烁,按键或拔动开关产生 1 个随机数(0、1),0 则向左方向,1 则向右方向滚动争球比赛开始,得分方获发球权,正式比赛开始。一、乒乓球比赛程序的数据设计 为叙述简单起见,将比赛双方称为 A 和 B(1)确定每局的比赛分数 即确定 11 分一局还是 21 分一局,这可定义一个称为 V1 的变量,它的内容为 11 或 2
17、1,表示一局比赛的分数,其数值用一个称为 K1 的拨动开关决定,可定义为当 K1 为“0”时,V1=11;K1 为“1”时,V1=21。(2)确定每方的发球次数 按照乒乓球比赛规定,若采用 11 分一局的赛制,每方发球次数为 2;若采用 21 分一局的赛制,每方发球次数为 5。故再定义一个称为 V2 的变量,它的内容为 2 或 5,表示每方的发球次数,其数值同样由上述的 K1 开关所确定,可定义为当 K1 为“0”时,V2=2;K1 为“1”时,V2=5。(3)确定每盘的获胜局数 这也是定义一个称为 V3 的变量,其内容为 2 或 3,分别表示“3 局 2 胜”或“5 局 3 胜”,其数值用一
18、个称为 K2 的拨动开关决定,可定义为当 K2 为“0”时,V3=2;K2 为“1”时,V3=3。(4)确定发球方 这可定义一个称为 V4 的逻辑变量,其内容为“0”或“1”,可规定为当 V4=“0”时由 A 发球;而当 V4=“1”时由 B 发球。若希望改变发球方,只要对 V4 变量执行“取反”操作即可。以下讲述“在比赛中如何确定发球方?”的处理方法,这只要为比赛双方分别定义两个“发球计数器”(用符号 CA 和 CB 表示),每赛完一分,先执行“将当前发球方的发球计数器的内容加 1”的操作,再进行“当前发球方的发球计数器的内容是否小于变量 V2?”的判断,若成立就维持当前发球方的发球权,否则
19、就执行“将当前发球方的发球计数器清除为 0”的动作后,再改变发球方。由于乒乓球比赛中有一个“轮换发球”的规定,即若比赛双方所获得的分数均不小于 10(或 20)分后,每赛完一分,就交换一次发球权,故只要当有这个条件,就要执行“将上述 V2 变量的数值设置为 1”的动作。(5)比赛分数统计 这只要为比赛双方分别定义两个“赛分计数器”(用符号FA和FB表示),比赛中谁获得了赛分,就执行“将与其对应的赛分计数器加 1”的动作。(6)确定获胜局 每获得一个赛分,都应进行“是否赛完了一局?”的判断,其处理过程如下(设想 A 获得了赛分),若“(FA)-(FB)不小于 2”和“(FA)不小于(V2)”这两
20、个条件都成立,那么 A 就得到了一个“获胜局”。(7)确定获胜方 每得到一个“获胜局”,都要进行“确定获胜方”的判断,为此应为比赛双方分别定义两个“局计数器”(用符号 JA 和 JB 表示),比赛中谁得到了一个获胜局,就执行“将与其对应的局计数器加1”的动作,再进行如下的判断(设想 A 得到了获胜局),若有“(JA)不小于(V3)”的条件成立,那么A 就是“获胜方”,否则执行“开始下一局比赛”的动作。二、系统的软件设计思路 任何软件的设计首先都应该对模型进行抽象使用形式化语言对任务进行描述。对于具体到本实验的设计:最需要描述和处理的事件就是击球动作(即按键的响应),比赛双方任何一人按下键都是一
21、个击球动作,需要判断是发球还是击球,是提前击球是滞后击球还是准确击球,这是本实验把乒乓球游戏抽象为系统模型的一个关键点。是否准确击球具体实现方法为:若有键按下则先判断 A 还是 B 击球(按下按键),再根据球所在位置(即当前 LED 的显示值)就可以判断击球准确还是失球。比如说现在 A 按键击球,而同时 LED 当前显示值为 01H(即 LED1 点亮,代表当前处于 A 的有效击球时间),则判 A 正确击球,反之若 LED 点亮处于其他任何状态都判 A 失球 B 得分;同样 B 的有效击球时间应为 LED显示值为 80H 的时间段内,其他时间段 B 有击球动作都判 B 失分。本实验另一个设计要
22、点就是 LED 的显示部分,球移动的动作抽象到系统模型即为 LED 的逐个点亮,而具体设计程序时,需要设计一个 LED 显示的子程序,再用不同的亮灯数值通过调用 LED 显示子程序刷新 LED 显示即可完成。另外定时中断在本实验中也占有相当大的比重,LED 逐个点亮的时间间隔,击球是否在规定时间内完成,这些都需要使用定时器来产生所需要的时间标度。本实验实现难点就在于程序编写过程中逻辑判断多且繁杂,为克服这一难点,对整个程序将用到的判断在程序开始统一设定标志位,这样既让程序显得简洁易懂又降低了程序的编写难度,例如:FZHI EQU 20H.0 ;20H.0 标志分制:0 为 11 分制;1 为
23、21 分制 FQIU EQU 20H.1 ;20H.1 标志发球权:0 为 A 发球;1 为 B 发球 其中各标志位的命名则由程序员的习惯而定。当程序实现功能较为复杂时,各子程序模块化的设计就显得尤为重要了。一个程序如果在模块化设计方面做得好,不仅使程序变得整洁易读,而且易于程序员修改与交流。本实验设计的程序主要包括主程序,键盘扫描子程序,判分子程序,显示子程序,中断服务子程序等五个大的模块。其中主程序主要初始化系统状态;键盘扫描子程序查询键盘返回键值并等待中断;显示子程序刷新 LED 和数码管的显示;定时中断服务子程序主要影响多个标志位。1 主程序 主程序在整个程序开始执行和乒乓球游戏重新开
24、始时被执行,实现系统的初始化,使软硬件各部分处于预定状态,其中对 8279 的初始化是相对比较复杂的一个部分,8279 初始化具体代码如下:MOV DPTR,#COM8279 ;8279 控制口地址 MOV A,#0D3H LOOP:MOVX A,DPTR JB ACC.7,LOOP ;8279 清零 MOV A,#34H ;20 分频 MOVX DPTR,A MOV A,#10H ;8 字符显示,右进,编码扫描,2 键锁定 MOVX DPTR,A ;8279 初始化 2 键盘查询程序 键盘查询程序应包含键盘扫描子程序和键值判断子程序,对于实验开发系统AEDK5196ET,键盘管理可以使用 8
25、255 或专用的键盘管理芯片 8279 来实现,在本文设计中,采用 8255 管理键盘,其中设计一个 2 行*8 列的键盘,2 根行线接在 PB0 和 PB1 上,8 根列线接在 PA0PA7 上,并将 8255 的片选信号 CS 接在编号为 8700H 的译码输出端.(具体代码可参考实验指导书)有了键盘扫描子程序,就可以设计键值判断程序调用键盘扫描程序后判断键值以转向不同的处理子程序.3 定时中断服务子程序 89C51 系统提供两个定时器,本文采用定时器 0 提供 10ms 的定时时间多次调用以产生10mS0.5S 或者更长的时间标度作为 LED 发光管移动的间隔时间。每次定时器溢出中断后程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 综合 系统 设计 试卷 最新版
限制150内