微机原理综合实验题

2024-09-06

微机原理综合实验题(精选7篇)

微机原理综合实验题 篇1

微机原理课程设计题目——软件部分

软件程序设计两个班的同学一起选,每人一个题目,不能重复。题目

1、根据键盘输入的一个数字显示相应的数据螺旋方阵。如输入 4,则显示: 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 共需要显示 4^2=16 个数字。

要求:

1、根据键盘输入的数字(3-20),显示相应的数据方阵。

2、画出设计思路流程图,编写相应程序。题目2 通过键盘输入字母,然后显示相应的图形。

要求:输入 L,之后再输入两个点的坐标值,显示一段直线; 输入 R,再输入两个点的坐标值,显示一个矩形框。

题目3 在屏幕上接收一串带数字、字母及其它字符的字符串,然后统计其中数字、字母 的个数,并显示出来。

题目4 编写一个汇编程序,将键盘输入的小写字母用大写显示出来.若输入的是非字符,显示NON CHAR。

题目5 编程序实现十进制数与十六进制数之间的相互转换。

1、从键盘输入一个十进制数,转换成十六进制数,显示出来。要求:需要检测输入一个规范的十进制数。

2、键盘输入一个十六进制数,转换成十进制数,显示出来。要求:需要检测输入一个规范的十六进制数。

题目6 简易信息检索系统。

在数据区定义 msg0-msg9 共十条信息,然后从键盘接收 0-9 的数字,显示相应的信息。题目7 人名排序程序。

从键盘接收十个人名,人名由四个字母构成。按字母上升次序显示所输入的人名,每一个人名占一行。

题目8 在显示屏中央开一个窗口显示自已的名字(以拼音显示)。要求:窗口的大小(行列的象素数,可由用户输入两个数字调整)题目9 计算字符长度

提示输入字符串;输入任意字符串string,点击Enter结束输入;输出字符串string的长度;点击Enter程序退出。

题目10 字符串大小写字母相互转换(1)提示输入字符串;

(2)输入任意字符串string,点击Enter结束输入;将字符串string中的大写字母转换为小写字母输出;点击Enter程序退出;

(3)输入任意字符串string,点击Enter结束输入;将字符串string中的小写字母转换为大写字母输出;点击Enter程序退出。

题目11 计算字符串中某个字符出现次数

提示输入字符串;输入任意字符串string,点击Enter结束输入;提示输入字符;输入任意字符ch,点击Enter结束输入输出字符串string中字符ch的出现次数点击Enter程序退出。题目12 去除字符串中的某个字符

提示输入字符串;输入任意字符串string,点击Enter结束输入;提示输入字符;输入任意字符ch,点击Enter结束输入将字符串中字符ch去除,输出变化后的字符串string2点击Enter程序退出。

题目13 从字符串中截取指定长度的字符子串

提示输入字符串;输入任意字符串string,点击Enter结束输入;提示输入数字;输入任意数字int,点击Enter结束输入;截取string的前int位输出;点击Enter程序退出。

题目14 将字符串补齐为某个特定长度

提示输入字符串;输入任意字符串string,点击Enter结束输入;提示输入数字;输入任意数字int,点击Enter结束输入;提示输入字符;输入任意字符ch,点击Enter结束输入如果字符串string长度大于int,则截取string的前int位输出;如果字符串string长度小于int,则在string后面添加字符ch,直至使字符串长度等于int;如果字符串string长度等于int,则直接输出字符串。点击Enter程序退出。

题目15 字符游戏 随机显示字符ch,等待用户输入,如果输入字符与ch一致,则随机显示下一个字符ch2;否则显示“输入错误”;如此循环;输入Enter结束。

题目16 查找字符串中给定字符首次出现的位置

要求:字符串给定; 从键盘输入单个字符,Enter 键结束并显示该字符所处的位置。题目17 编密码

按一下规律编码:字母A变为E,a变为e,即变成其后的第4个字母,W变为A,Y变为C,Z变为D,非字母不变。如输入“China”变为“Glmre”。

要求:提示输入一字符串;键盘输入,Enter键结束输入,并换行显示结果。题目18 数组排序

数据段里有一个 N 个字的数组A,利用冒泡排序法对数组进行从大到小的排序,并输出结果。

要求:读出数据段中存放的数组A;换行显示排序后的数组A。题目19 分类统计字符数

从键盘输入一行字符,统计字母、空格、数字、其他字符的个数,并显示。要求:提示输入一行字符串; 键盘输入字符串,Enter键结束输入,并换行显示结果。

题目20 模拟幸运抽号

要求:程序运行时,在屏幕上随机跳出一组十位数字的号码,敲空格键时停止,得到一组幸运号码。

题目21 程序设计 设计一个程序,让计算机屏幕输出40个自然数来,使得其中任意两个数之差均不相等。题目22 查表

将键盘输入的数字月份查表后显示出相应英文字母的缩写形式。

要求:提示输入一个月份数字N;从键盘输入数字,Enter键结束输入,并换行显示查表结果。

题目23 数值比较

提示输入数字1;输入任意数字int1,点击Enter结束输入; 提示输入数字2;输入任意数字int2,点击Enter结束输入。

如果int1大于int2,则输出“int1> int2”;如果int1等于int2,则输出“int1=int2”;如果int1小于int2,则输出“int1< int2”;点击 Enter 程序退出。题目24 数值求和 提示输入数字,输入任意数字int,点击Enter结束输入,输出“1+2+3+„+int”的值; 点击 Enter 程序退出。

题目25 质数判断

提示输入数字;输入任意数字int1,点击Enter结束输入;如果int1是质数,则输出“int1 is aprime number”;如果int1不是质数,则输出“int1 is not aprime number”; 点击Enter程序退出。

题目26 闰年判断

提示输入年份; 输入四位数字 int1,点击 Enter 结束输入; 如果 int1 表示的年份是闰年,则输出“int1 years is a leap year” 如果 int1 表示的年份不是闰年,则输出“int1 years is not a leap year” ; 点击 Enter 程序退出。

题目27 编写程序求函数值

有一函数 x(x<1)y= 2x-1(1≤x<10)3x-11(x≥10)编写程序,实现输入 x 值,输出 y 值。

题目28 把 100-200 之间不能被 3 整除的数输出

要求:提示数据范围为 100-200; Enter 键换行显示结果。题目29 用循环程序,显示乘法表

要求输入 0-10 之间的数值 a,显示1到 a 值的乘法表。题目30 三角形判断

输入 a,b,c 三边后,判断是否能构成三角形,如能构成三角形,输出三角形的周长,否则输出“ERROR”。要求:提示输入三角形三边长度 a b c; 键盘输入,中间空格隔开; Enter 键结束输入z2,并换行显示判断结果。

题目31 要求用户从键盘输入一个不超过 5 位的整数,计算并输出该数的各位之和 要求:提示输入一十进制数; 键盘输入,Enter 键结束输入,并换行显示结果。题目32 计算并打印杨辉三角形 要求打印到第 N 行,N 由键盘输入。要求:提示输入一整数 N; 键盘输入,Enter 键结束输入,并换行显示结果。

题目33 成绩转换

给出一个百分制成绩,要求输出成绩等级 A、B、C、D、E。90 分以上为 A,80-89 分为 B,70-79 分为 C,60-69 分为 D,60 分一下为 E。要求:提示输入一分数 score; 键盘输入,Enter 键结束输入,并换行显示结果。

题目34 成绩统计

输入 10 个学生的成绩按后,依次在界面上显示:及格人数 x 个,不及格人数 y 个。要求:提示输入 10 学生成绩 score,成绩之间空格隔开,键盘送入; 换行输出“10 学生成绩分别为„„” 换行显示结果:及格人数 x 个,不及格人数 y。

题目35 求 2 个正整数 N1 和 N2 的最小公倍数

要求:提示输入两十进制正整数; 键盘输入,两整数之间空格隔开,Enter 键结束输入,并换行显示结果。

题目36 求 2 个正整数 N1 和 N2 的最大公约数

要求:提示输入两十进制正整数; 键盘输入,两整数之间空格隔开,Enter 键结束输入,并换行显示结果。

题目37 打印回文数

如果一个数从左边和从右边读都是相同的数,就称它为回文数,例如 383。求出 500 以内的回文数并输出显示。要求:提示数据范围为 0-500; Enter 键,换行显示结果。题目38 计算平方根

从键盘输入一个正整数,计算其平方根并输出。要求:提示输入一整数; 键盘输入,Enter 键结束输入,并换行显示结果。

题目39 屏幕输出 10 到 200 之间的孪生素数对。孪生素数对指两值相差 2 的一对素数,如 11 与 13。题目40 输出满足条件的数

屏幕输出 1000 以内同时满足如下条件的数:个位数与十位数之和除以 10 所得的余数等于百位数字。

题目41 打印输出所有水仙花数

水仙花数:三位数,各个位数的立方和为数字本身。要求:提示“Enter 键输出所有水仙花”; Enter 键,换行显示结果。

题目42 输出完数

一个数如果恰好等于它的因子之和,这个数就成为“完数“。例如 6 的因子为 1,2,3,且 6=1+2+3,因此 6 为完数。编程找出 10000 以内所有完数并输出。要求:提示“Enter 键输出 10000 以内所有完数”; Enter 键,换行显示结果。

题目43 输出满足条件的数

22求具有 abcd=(ab+cd)性质的 4 位数并输出。例如 3025=(30+25)。要求:Enter 键,输出所有结果。

题目44 输出两个数的平方差

求出两个数的平方差,若是负数,要输出负号。要求:由键盘输入两整数 a、b,中间空格隔开; Enter 键结束输入,并换行显示结果。

题目45 输出满足条件的数

从键盘输入一个以 Enter 结束的十进制数字串(不超过 20 个),按 ASCII 码值的降序显示这个数字串 ASCII 码值最大和最小的两个数字。

微机原理课程设计题目——硬件部分

硬件设计题目以班为单位选题,可以2-3个人一个组,每个组的题目不能相同。

题目一 基于汇编语言的电子秒表设计

(一)设计目的

培养和锻炼在学习完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力。通过课程设计,要求熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,得到微机开发应用方面的初步训练。

本设计要求学生采用8086微处理器完成电子秒表系统的独立设计。通过本次课程设计掌握8255、8259、8253等芯片使用方法和编程方法,进一步理解所学的相关芯片的原理、内部结构、使用方法等,学会相关芯片实际应用及编程,同时并了解综合问题的程序设计掌握实时处理程序的编制和调试方法,掌握一般的设计步骤和流程,为后续课程和今后的工作实践打下一定的基础。

(二)设计内容

设计一个可任意启动/停止的电子秒表,要求用6位LED数码显示,计时单位为1/100秒。利用功能键进行启/停控制。其功能为:上电后计时器清0,当第一次(或奇数次)按下启/停键时开始计数。第2次(或偶数次)按下该键时停止计时,再一次按启/停键时清零 后重新开始计时。可用开关控制,也可用按键控制

(三)设计要求

1、基本要求:

1)设计可以显示1~60秒的无存储功能的秒表,最小单位为毫秒。

2)通过键盘按键控制秒表清零、暂停、继续,退出等。其中数字0控制清零,数字1控制继续和退出。

3)软硬件设计最后通过proteus软件仿真验证。

2、提高要求:

1)秒表可以分组存储、批量显示、倒计时等。

2)采用图像显示,界面精美,设置报警声等

题目二 用8255、8253实现交通灯的模拟控制

一、设计目的

通过该设计,掌握8255并行接口芯片的使用和数码管的使用,并掌握相应的程序设计和电路设计的技能。是对8255并行接口芯片章节理论学习的总结和补充,为后续的硬件课程的学习打下基础。

二、设计内容

南北方向和东西方向的红绿黄灯由对应的2组LED表示,这6个LED灯由8255端口A控制。

三、基本原理

1、交通灯分红黄绿,红灯禁止通行,黄灯减速,绿灯通信。开始南北方向绿灯亮(东西方向应立即变为红灯),时间为60秒,时间到0后,黄灯亮3秒后(东西方向红灯的时间为63秒),红灯亮,红灯为33秒。东西方向绿灯为此0秒,黄灯为3秒。

2、延时1秒可以采用软件延时实现。3、8255端口A与LED连接图如右: 4、8255A控制数码管的原理见项目5。

四、设计步骤

1.电路设计:根据设计内容,通过分析,设计出相应的电路图。2、8255控制字设计:根据要求,设计出各自8255的控制字。

3、程序设计:根据要求,设计程序流程图,并设计相应的程序。

4、验证:用Proteus软件进行仿真测试和验证。

题目三 基于PROTEUS的跑马灯系统设计及仿真

(一)跑马灯的控制

1.通过8255A并口来控制LED发光二极管的亮灭。2.A口作为输出控制LED灯的亮灭,B口作为按键信号的输入作为跑马灯方式选择。

3.用按键控制不同的跑马灯方式。

(二)设计要求

第一种灯光变换效果:L1→L2→L3→L4→L5→L6→L7→L8,如图6所示。

第二种灯光变换效果:L8→L7→L6→L5→L4→L3→L2→L1; 第一种变换效果反向即为第二种效果。

第三种灯光变换效果:L1L8→L2L7→L3L6→L4L5→L3L6→L2L7→L1L8,如下 图所示。

图7 LED第三种变换效果

步骤

1.电路设计:根据设计内容,通过分析,设计出相应的电路图。2、8255控制字设计:根据要求,设计出各自8255的控制字。

3、程序设计:根据要求,设计程序流程图,并设计相应的程序。

4、验证:用Proteus软件进行仿真测试和验证。

题目四 基于PROTEUS的8 个 LED 灯循环闪烁

要求:首先是 1,3,5,7 号 LED 灯依次亮 1 秒钟,当第 7 号 LED 亮后,这四个灯同时 闪烁 5 下; 然后是,2,4,6,8 号依次亮 1 秒钟,当第 8 号 LED 亮后,这四个灯同时闪 烁 5 下。

硬件设计提示:构建8086最小系统,然后设计基于8255A的LED灯控制系统。

设计报告:写出主要设计思路,工作原理;画出硬件接线图;调试出现的问题及解决方法;提交程序清单。

题目五 抢答器控制模拟程序

设计任务:用汇编语言模拟设计一抢答器工作的程序。抢答开始后,显示各抢答输入的 时间,并将最快抢答标识为红色,且闪烁。

基本要求: 具有8个抢答输入(由8个开关代替,其它按键不起作用);显示抢答剩余时间(初始10秒);显示抢答成功者(显示数字);抢答成功后,有声音提示;时间分辨率小于10ms;

设计报告:写出主要设计思路,工作原理;画出硬件接线图;调试出现的问题及解决方法;提交程序清单。

题目六 电子钟的制作

一、设计目的

通过该设计,掌握8255并行接口芯片的使用,和数码管的使用,并掌握相应的程序设计和电路设计的技能。是对8255并行接口芯片章节理论学习的总结和补充,为后续的硬件课程的学习打下基础。

二、设计内容

利用6位数码管显示分和秒,分秒的数字之间用数码管上的小数点隔开。要求秒钟显示从00-59,分钟显示从00-59,60秒后,分钟要进1。

三、基本的技术原理

2、数码管的原理见下图。

数码管由8255端口B和端口C联合控制,端口B负责控制某个数码管中的那些段码的显示和小数点的显示(PB7)。端口C的PC4,PC5,PC6发送的信号通过译码后,负责选择6个数码管中的1个显示,即某时刻只有1个数码显示,如果要让几个同时显示,则采用来回扫描显示的方法,且当某个数码管显示时,必须要有一定的延时,约在100ms左右,太短显示不明显(发光不够),太长会产生闪烁。数码管的控制如下图所示:

3、延时1秒可以采用软件延时实现,也可以利用8253对1MHz的信号分频得到。

四、实验步骤

1.电路设计:根据设计内容,通过分析,设计出相应的电路图。2、8255控制字设计:根据要求,设计出各自8255的控制字。

3、程序设计:根据要求,设计程序流程图,并设计相应的程序。

4、验证:用Proteus软件进行仿真测试和验证。题目七 数字秒表的设计

一、设计目的

通过该设计,掌握8255并行接口芯片、8253定时计数芯片的使用和数码管的使用,并掌握相应的程序设计和电路设计的技能。是对8255并行接口芯片章节理论学习的总结和补充,为后续的硬件课程的学习打下基础。

二、设计内容

利用8253计数器2和计数器1,实现1Hz信号的产生,然后计数器采用硬件触发选通方式计数,CPU读取计数结果,并转换为读秒计数,并把读秒计数的结果用数码管显示出来(2位)。

三、基本原理

1、数码管的工作原理参见项目5。2、8253的连接图如下:

四、设计步骤

1.电路设计:根据设计内容,通过分析,设计出相应的电路图。2、8255控制字设计:根据要求,设计出各自8255的控制字。

3、程序设计:根据要求,设计程序流程图,并设计相应的程序。

4、验证:用Proteus软件进行仿真测试和验证。

微机原理综合实验题 篇2

“微机原理”课程是我校工学院机电信息类专业本科生一门必修的专业基础平台课, 它在专业的人才培养方案中起着承前启后的作用, 为《单片机原理与应用》、《DSP原理及其应用》、《嵌入式系统原理与应用》、《计算机控制技术》、《可编程控制器应用》、《PLC原理与应用》等后续课程的学习打下重要的基础。通过该体系课程的学习, 主要培养学生的应用与创新实践能力。

作为一门实践性和工程性很强的技术基础课, 本课程不仅要重视理论教学, 还应注意实践技能的培养和训练。过去, 微机原理实验基本上就做一些基础性实验项目, 部分学生就按实验指导书的实验步骤做完实验, 根本不理解实验内容, 实验效果不明显。本课程组通过这两年的课程建设, 探讨出一套行之有效的实践教学方法, 把实验过程分为几个层次, 逐层深入。首先学生在较好完成验证性实验的基础上, 再引入综合设计性实验, 指导老师只提供基本的设计思想和设计方法, 不提供具体的、详细的电路与程序, 学生自己查阅有关资料, 自定设计方案, 自行设计、编制调试程序, 观察实验现象, 分析实验结果, 写出实验报告。学生通过综合设计性实验这一环节, 建立了系统控制的概念, 可以更加了解本课程在专业培养中的核心地位, 对后续课程的学习有很好的辐射作用。

1、实验原理

本文讨论的综合设计性实验为交通灯控制实验, 实验时数为6学时, 其目的是实现交通灯定时控制, 并实现数码管显示。本实验采用8086CPU芯片作为控制器, 其控制对象是该系统配置的数码管和红绿灯, 利用系统中的可编程定时器8253和可编程中断控制器8259实现定时和中断, 并利用并行I/O接口芯片8255实现数码管显示。系统框图如图1。

2、芯片设置

8255具有A、B、C三个8位并行接口和一个控制口, 其工作方式包括:方式0 (基本输入/输出) 、方式1 (选通输入/输出) 和方式2 (双向选通输入/输出) 。本实验用A口分别与4个红灯与4个绿灯相连, A口工作在方式0;用B口的与数码管相连, 显示红绿灯时间。B口工作在方式0, 且为输出, 其方式选择控制字为80 H (10000000B) , D7=1为方式选择控制字特征位, D6 D5=00设定A口工作于方式0 (基本输入/输出) , D4=0设定A口为输出端口, D3=0设定B口工作于方式0 (基本输入/输出) , D2=0设定B口为输出端口。此方式选择控制字必须在初始化时写入8255的控制口;8253计数定时器有3个计数定时通道, 可以工作于6种方式, 由于8253定时时间的限制, 用两个通道级连的方式进行定时设置, 工作于方式3;8259中断控制器主要提供定时中断信号, 控制较简单。

学生要根据不同的控制要求编写软件, 最终实现控制要求。图1是系统的实验流程图。主程序中进行系统初始化, 循环等待, 等待定时中断, 然后进行数码管和红绿灯的定时刷新。

3、定时中断流程

结合实验室试验箱条件, 有些硬件连线已固定, 不能更改, 例如各芯片的地址译码电路已确定, 初始化主要包括中断向量表、8255、8253、8259芯片的初始化, 还有数码管和灯状态的初始化。

3、结束语

通过交通灯控制实验, 使学生能够掌握可编程并行I/O接口芯片8255、计数定时芯片8253、中断控制芯片8259等芯片的使用, 掌握各I/O接口芯片之间以及与CPU的硬件连接。结合软件的编写和系统调试, 首先巩固了《微机原理与应用》课程所学知识, 而且也让学生建立起了微型计算机系统的概念, 培养了学生的综合应用能力, 为后续课程的学习打下基础。

摘要:微机原理与接口技术课程是一门实践性和工程性很强的技术基础课, 课程实验是其重要组成部分。本文以交通灯控制实验为例, 结合《微机原理与接口技术》硬件接口与软件知识, 主要培养学生的应用与创新实践能力。

关键词:微机原理,交通灯控制,设计性实验

参考文献

[1]周荷琴, 吴秀清.微型计算机原理与接口技术 (第四版) [M].合肥:中国科学技术大学出版社.2007.12

[2]陈甦欣.《微机原理及应用》课程综合性实验初探[J].中国科技信息.2006.18.

[3]左韬, 熊庆国.微机原理实践教学方法研究[J].科技信息.2007.34.

微机原理综合实验题 篇3

[关键词] 教学模式 实验教学 创新能力

《微机原理与接口技术》课程是大多数计算机及电子类专业学生的必修课程,同时也是一门动手性及实用性很强的计算机课程。在科学技术日益增长的今天,我国需要很多的既具备软件编程能力,又了解硬件知识的复合性人才。学好这门课程,将会为学生在后续的计算机开发应用中打下坚实的基础。这门课程是实践性很强的专业技术基础课程,学习过程中应充分重视实践环节,只有经过实践才能加深对理论课的学习和理解,提高分析问题和解决问题的能力。

在以往实验教学过程中,由于对实验课的重视程度不够及实验仪器的局限性,导致在实验课堂的组织及具体实施等方面都存在着某些问题。针对上述情况,我们在实验教学改革中做了如下尝试,取得了较好效果。

一、引导学生学习,提高学生学习积极性

很多学生在开始接触这门课程时会存在以下疑问,为什么学习这门课程?学了以后有什么用?汇编语言在编程过程中需要了解计算机底层的一些东西,加上繁琐的指令系统,因此很多学生在学习这门课的时候感觉很吃力,觉得无从下手,最后对该实验课程也引不起足够的重视。这就要求教师跟学生进行很好的沟通,消除学生的畏难情绪,化被动学习为主动求知。

本着由浅入深的教学思路,将实验内容分为验证性实验、设计性实验、综合性实验、创新性实验,其中又将这些实验分为必做和选作,因材施教,消除优秀生“吃不饱”,少数学生“吃不了”的现象,从而更好的满足不同学生的需求。

另外,教师在辅导实验过程中,也要注意营造交流沟通的氛围,在学生验证、修改实验的过程中,给予积极的引导,让学生真正成为“学习的主体”。当学生通过自己的努力完成了实验,他们不仅可以树立自信心,而且学会了主动接受知识、认真思考,学生的学习兴趣也得到很大的提高。

二、讨论性小组的开展

在某些实验中,教师可以组织同学讨论,从而提高学生的学习兴趣。例如,十字路口交通灯设计实验,交通灯是学生很熟悉的事物,这样可引起同学的讨论兴趣。教师可把学生分成3~5人的学习小组,充分发挥团队协作精神,从而更好更快地解决问题。在讨论过程中,教师可以发挥主导作用,提出问题让同学们来共同讨论解决。问题可以由易到难,逐层深入。如在交通灯实验中可以首先这样设置问题:东西、南北两方向各延时30秒,要求精确定时,如何来实现?

此时,同学们经过讨论,可以找到问题的突破口,确定选用前面实验中用到的8253、8259芯片,结合8255A控制发光二极管,来模拟十字路口交通灯。如此可以很好地巩固和加深对以前知识的消化和吸收。同学们经过反复实验,从中可以发现问题、共同解决。最终实现了对现实交通灯的模拟,相信对同学们自信心的加强会很有帮助。

此时教师可以进一步设置问题,如:如果使用七段数码管来显示交通灯时间的控制显示,如何实现?这样同学们可进一步学习到更多的知识。

最后教师可以指出:实际上不同时刻的车辆流通状况是复杂多变的,还经常受到人文因素的影响。采用定时控制会经常造成道路有效应用时间的浪费,如何更好的解决呢?这样的话会更大的激发学生的学习积极性,教师可以鼓励学生利用图书馆和网络资源,讨论小组可以分工合作,共同研究,相信同学们可以从中学到很多从理论课本上未曾接触的东西,并能从中享受学习的快乐,培养学生学习的积极性,增加同学们的沟通协调能力,使得同学们动手能力得到更好的锻炼。

三、增加实验室开放时间

实验室是学生锻炼和提高动手能力的良好场所,保证实验室开放时间,可以充分利用实验室资源,增加学生自主学习时间。如果没有实验环境,学生做预习一般采取预习下次要做的实验内容,写出实验程序,但是程序可不可以运行,学生只有等到上机调试后才知道,达不到预习的良好效果;如果实验室增加了开放时间,学生可对下一次的实验内容做更好的预习,有了实验调试环境,学生可对自己的程序先做初步的调试,遇到不能解决的问题可以做好记录,在课堂上可以与教师进行很好的沟通,学生的学习效果会更高,并可提升整个课堂学习效率。

一些能力强的同学可利用开放的实验室,做一些创新性实验的开发、研究。学生可增加对理论知识更加深刻的理解,学生的动手能力和创新能力会得到很好的培养。同时,在实验室开放时间内,学生之间可以进行很好的交流,达到互帮互学的目的,最终学生的整体科学素质会得到很好的提高。

四、结束语

《微机原理与接口技术》实验改革之路任重道远,还需要教师在今后的教学中探索新思路和新方法。接口技术与设备在不断的发展,教师应该密切关注当前最新技术,适时补充一部分当前微机接口技术中较新的内容,实验设备也应适当更新,从而培养出紧跟时代步伐的优秀学生。

参考文献:

[1]朱莹等.发现法在“汇编语言与接口技术”课程教学中的应用[J].计算机教育,2009,(8):134-135.

[2]陈静等.“微机原理及应用”实验教学改革[J].重庆工学院学报,2006,11(20):177-178.

[3]黄海萍.汇编语言与微机接口技术实验教程[M].国防工业出版社,2007.

微机原理综合实验题 篇4

课程设计名称:

微机原理与接口技术课程设计

课程设计题目:

微机打印口外接交通灯模拟LED显示器

称:

信息工程学院

专业:

计算机科学与技术

班级:

学号:

姓名:

评分:

教师:

X

X

设计选题及功能说明

设计选题:微机打印口外接交通灯模拟LED显示器。

课题要求及功能说明:

通过微机打印插座(25D)设计,用微机编程可实现对打印口外接12个路口交通灯(红、绿、黄)的控制显示等。

设有一个十字路口,1、3为南北方向,2、4为东西方向,初始为四个路口的红灯全亮,之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车;

延时一段时间后,1、3路口的绿灯熄灭,而1、3路口的黄灯开始闪烁,闪烁若干次后,1、3路口红灯亮,而同时2、4路口的绿灯亮,2、4方向通车;

延时一段时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次后,再切换到1、3路口方向,之后重复上述过程。

硬件电路设计

硬件电路采用Protel

Technology公司的CAD工具Protel

99进行设计。

2.1

8255A芯片选择

按照课题设计要求,我们选择通过8255A并口来控制LED发光二极管的亮灭,8255A具有3个通道3种工作方式的可编程并行接口芯片。使用前要写入一个方式控制字选择A、B、C三个端口各自的工作方式,共有三种;

方式0

:基本的输入输出方式,即无须联络就可以直接进行的I/O方式。其中A、B、C口的高四位或低四位可分别设置成输入或输出。

方式1

:选通I/O,此时接口和外围设备需联络信号进行协调,只有A口和B口可以工作在方式1,此时C口的某些线被规定为A口或B口与外围设备的联络信号,余下的线只有基本的I/O功能,即只工作在方式0.方式2:

双向I/O方式,只有A口可以工作在这种方式,该I/O线即可输入又可输出,此时C口有5条线被规定为A口和外围设备的双向联络线,C口剩下的三条线可作为B口方式1的联络线,也可以和B口一起方式0的I/O线。

8255A引脚信号如右图

2.2电路设计

本设计用DB25

连接8255控制12个LED亮灭

电路原理图如图1:

图1

交通灯原理图

2.3印刷电路图设计

制作pcb印刷电路板,采用的是自动布线的方法。即利用正确的原理图制作网络表,然后新建CAM

output

configuration文件,在设定好印刷板得规格大小后导入刚才生成的网络表,然后再调整各元件的位置,等待其自动布线。经过多次设计修改,本交通灯模拟LED显示器的PCB图如图2所示

图2

交通灯模拟LED显示器

测试程序

用汇编语言编写对交通灯的测试程序要根据交通灯原理图,主机与8255A连接:从交通灯原理图可以看出,低电平有效/CS选择8255A,通过对A0、A1控制选择8255A的PBPC端口,低电平有效/WR控制输入;8255A与交通灯连接:8255A的端口PB高4位分别与交通灯的四个方向的绿灯相连,PC端口的低4位与四个方向的红灯相连,PC端口的高4位与四个方向的黄灯,从交通灯原理图可看出一下特点(1)相对方向的灯保持一致,如1、3,方向,2、4方向。那么在设计程序时,1、3方向的一样,2、4方向的一样(2)四个方向的交通灯可能出现的组合:红绿、红黄,不会出现绿黄。既不能出现端口PB高4位与PC端口的高4位同时有效的情况。根据以上所述程序可以设计为如下

DATAPT

EQU

378H

CTRLPT

EQU

37AH

INTCNT

EQU

GDURA

EQU

YDURA

EQU

RDURA

EQU

GSTATE

EQU

0

Y1STATE

EQU

Y2STATE

EQU

RSTATE

EQU

Y3STATE

EQU

Y4STATE

EQU

DSEG

SEGMENT

OLD1CH

DD

?

LTSTATE

DB

?

YBLKCNT

DB

0

DSEG

ENDS

CSEG

SEGMENT

ASSUME

CS:

CSEG,DS:

DSEG

START:

MOV

DX,CTRLPT

MOV

AL,11101100B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,10000000B

OUT

DX,AL

MOV

AX,351CH

INT

21H

MOV

WORD

PTR

OLD1CH,BX

MOV

WORD

PTR

OLD1CH

+

2,ES

MOV

DX,OFFSET

NEW1CH

MOV

AX,251CH

CALL

GREEN

INT

21H

MOV

AH,0

INT

16H

LDS

DX,OLD1CH

MOV

AX,251CH

INT

21H

MOV

AH,4CH

INT

21H

NEW1CH:

CMP

CX,0

JZ

NEXT

DEC

CX

IRET

NEXT:

CMP

LTSTATE,GSTATE

JZ

GRN

CMP

LTSTATE,Y1STATE

JZ

YLW1

CMP

LTSTATE,Y2STATE

JZ

YLW2

CMP

LTSTATE,RSTATE

JZ

RD

CMP

LTSTATE,Y3STATE

JZ

YLW3

CMP

LTSTATE,Y4STATE

JZ

YLW4

GRN:

CALL

GREEN

IRET

YLW1:

CALL

YELLOW1

IRET

YLW2:

CALL

YELLOW2

IRET

RD:

CALL

RED

RET

YLW3:

CALL

YELLOW3

IRET

YLW4:

CALL

YELLOW4

IRET

GREEN

PROC

;

;绿灯

PUSH

AX

PUSH

DX

MOV

DX,CTRLPT

MOV

AL,11101000B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,11110000B;1、3方向的绿灯,2、4方向的红灯亮30秒

OUT

DX,AL

MOV

DX,MOV

AL,11100100B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,10100101B

OUT

DX,AL

MOV

CX,GDURA

*

INTCNT

MOV

LTSTATE,Y1STATE

POP

DX

POP

AX

RET

GREEN

ENDP

YELLOW1

PROC

;黄灯

PUSH

AX

PUSH

DX

MOV

DX,CTRLPT

MOV

AL,11100100B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,11110101B

;

1、3方向的黄灯亮0.5秒(黄灯一共闪烁3次,即亮灭各3次)

OUT

DX,AL

MOV

DX,CTRLPT

MOV

AL,11101000B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,10100000B

OUT

DX,AL

MOV

CX,INTCNT

/

MOV

LTSTATE,Y2STATE

POP

DX

POP

AX

RET

YELLOW1

ENDP

YELLOW2

PROC

PUSH

AX

PUSH

DX

MOV

DX,CTRLPT

MOV

AL,11101000B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,11110000B;

1、3方向的黄灯灭0.5秒(黄灯一共闪烁3次,即亮灭各3次)

OUT

DX,AL

MOV

CX,INTCNT

/

INC

YBLKCNT

CMP

YBLKCNT,YDURA

JZ

CHGRED

MOV

LTSTATE,Y1STATE

JMP

Y2RET

CHGRED:

MOV

LTSTATE,RSTATE

MOV

YBLKCNT,0

Y2RET:

POP

DX

POP

AX

RET

YELLOW2

ENDP

RED

PROC

;红灯

PUSH

AX

PUSH

DX

MOV

DX,CTRLPT

MOV

AL,11100100B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,01011010B;

1、3方向的红灯,2、4方向的绿灯亮30秒

OUT

DX,AL

MOV

CX,RDURA

*

INTCNT

MOV

LTSTATE,Y3STATE

POP

DX

POP

AX

RET

RED

ENDP

YELLOW3

PROC;

PUSH

AX

PUSH

DX

MOV

DX,CTRLPT

MOV

AL,11100100B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,11111010B

;

2、4方向的黄灯亮0.5秒(黄灯一共闪烁3次,即亮灭各3次)

OUT

DX,AL

MOV

DX,CTRLPT

MOV

AL,11101000B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,01010000B

OUT

DX,AL

MOV

CX,INTCNT

/

MOV

LTSTATE,Y4STATE

POP

DX

POP

AX

RET

YELLOW3

ENDP

YELLOW4

PROC

PUSH

AX

PUSH

DX

MOV

DX,CTRLPT

MOV

AL,11101000B

OUT

DX,AL

MOV

DX,DATAPT

MOV

AL,11110000B

;

2、4方向的黄灯灭0.5秒(黄灯一共闪烁3次,即亮灭各3次)

OUT

DX,AL

MOV

CX,INTCNT

/

INC

YBLKCNT

CMP

YBLKCNT,YDURA

JZ

CHGGRN

MOV

LTSTATE,Y3STATE

JMP

Y4RET

CHGGRN:

MOV

LTSTATE,GSTATE

MOV

YBLKCNT,0

Y4RET:

POP

DX

POP

AX

RET

YELLOW4

ENDP

CSEG

ENDS

END

START

小结

通过本次关于微机打印口外接交通灯模拟LED显示器的课程设计,我了解了交通灯的工作原理,而在此基础上设计原理图和硬件电路板,则让我对课本上的知识进行了实际的应用,例如DB25

25帧的打印机接口,8255A芯片,对他们的功能及作用都有了较深的理解。完成本次实验的工具软件是protel99,这是一款电子工程师设计电路原理图和PCB的行业软件。不过值得注意的是,本软件的汉化版经常出现问题,特别是对制作pcb图的影响很大。所以建议使用protel99的英文版。通过主机打印口和8255A接口的连接,对db25各个针脚功能有了更深入得了解,拓展了课本上的知识。因为在整个小组中我主要负责制作pcb这一块,所以觉得确定印刷电路板的尺寸大小,定印刷电路层次和元器件布局很重要。实验的最后一部分是编写程序,增强了我的汇编语言能力。

参考文献

戴梅萼

史嘉权

微型计算机技术及应用(第4版)

清华大学出版社

2008年2月

Protel

99SE电路设计基础与工程范例

赵景波

王臣业编著

清华大学出版社2008年5月

Protel

99SE

电路设计与制板

朱云芳

江桦

翟旭等编著

机械工业出版社

2007年11月

汇编语言程序设计教程

(第二版)

卜艳萍编著

清华大学出版社

2007

胡景春

实践优秀作品选编

东南大学出版社

2010年2月

胡景春

刘洪

微机原理\单片机应用实验指导(第二版)

南昌航院计算机系

2004

附录一

电路原理图

附录二

PCB图

附录三

25针并行口打印机口的针脚功能表

微机原理与接口实验教学改革探讨 篇5

关键词:微机原理与接口,汇编语言,c语言,教学方法

《微机原理与接口》课程是电子类主干专业基础课程, 主要介绍80x86/Pentium微处理器构成的微型计算机的原理、应用及最新发展现况。课程是对《汇编语言程序设计》、《数字电子线路基础》、《模拟电子线路》等基础课程的延伸, 同时又是学好嵌入式系统的先决条件, 起到承前启后的重要作用。熟练掌握这门课程将使学生成为既具备软件编程能力又了解硬件知识的复合性人才。本课程不同于其他课程, 对学生理论联系实际的能力有较高要求。自课程开设以来, 几乎各大院校都以汇编语言作为编写工具进行教学, 虽然汇编语言具有运行速度快、占用空间少等优点, 但其作为面向机器的程序设计语言又存在着如代码的可重用较低、可读性和可维护性不强、可移植性低等缺点。因此较难被学生普遍接受。我们尝试以传统汇编语言实验程序为基础, 在学生初步掌握汇编语言程序编程的基础上, 加入C语言程序进行试验性教学。C语言因其具有简洁紧凑、灵活方便、程序设计自由度大、适用范围广、方便跨硬件平台的软件移植、适合进行嵌入式实时操作系统编程等优点被广泛使用。本次改革获得了师生的广泛好评, 同时也为学生提供了实践应用C程序设计课程的机会, 更是为后期嵌入式系统学习开发打下了坚实的程序设计基础。

一、适宜汇编和C语言的双语教学模式

《微机原理与接口》课程作为一门专业基础课程, 其发展受到了各大院校的足够重视。《微机原理与接口》实验是在其基础上开设的相对独立的实验课程。但由于本课程讲授的大多是8086、Pentium等低级CPU的结构及原理, 而目前市场主流的CPU大多都为双核甚至是四核CPU, 导致了学生对于课程的重视度不够, 如果实验课中单一使用汇编语言, 则难以激发学生对课程的兴趣。对于电子信息类专业的学生动手实践能力的培养很重要, 实验课程的系统训练往往起到决定性的作用, 如果这门实验课程没有给学生带来学习兴趣, 将会严重影响到其他后续课程的学习。这里笔者试用了如多媒体教学、学生亲自设计实验、设计开放性实验等很多新型方法进行教学, 但使用汇编语言编写程序依然是难点。结合学生此前已经开设过C语言课程, 对C语言有较好的驾驭能力和开发技巧, 借鉴运用C语言开发51系列单片机的启发, 并将C语言成功运用于《微机原理与接口》实验中, 改变了以前单调沉闷的课堂气氛, 激发了学生的学习热情。

二、实例:C语言方式下控制8253

实验内容:将计数器0、1设为模式3 (方波) , 计时器2设为模式2 (分频) , 计数器0的输出脉冲作为计数器1的时钟输入, 计数器1的输出脉冲作为计数器2的时钟输入。用LED观察计数器0、1和2的输出频率关系, 8253控制端口地址为203H;计数器0地址为200H;计数器1地址为201H;计数器2地址为202H。以下为C语言参考程序:

这里用LED观察计数器0, 1, 2输出状态的过程中运用的是C语言而不是汇编语言。从中可以直观地看出, 如果使用汇编语言对8253写入控制字MOV DX, 203H, MOV AL, 36H, OUT DX, AL, 需要三条语句完成, 用c语言只需调用outport函数:outport (0x203, 0x36) , C语言的代码长度短了很多。

汇编语言和C语言的双语教学模式极大地调动了学生的学习主动性, 同时加强了学生对相关学科的自主学习能力。此方法也为Arm嵌入式系统的学习和开发奠定了坚实的基础。双语实验的成功推广实现了研究性、探索性教学, 并在实际教学中取得了一些成果:2007级本科生在大三第一学期的创新创业实践中, 运用新学习的知识和练就的动手能力, 研制月球采壤车、光纤管道智能监控系统等, 初步接近实际应用的水平。同时我院《微机原理与接口》课程也被认定为省级精品课程, 学生在全国大学生电子设计大赛中屡获佳绩。为适应信息技术日异月新的发展, 更需要在今后的实验教学中不断探索新思路和新方法, 不断完善实验教学体系和管理模式, 努力适应技术的进步, 促进学生个性化发展, 永远是我们这一课程的追求目标。

参考文献

[1]马义德, 张在峰, 徐光柱, 杜桂芳.微型计算机原理及应用 (第二版) [M].北京:高等教育出版社, 2001.

[2]晁阳.单片机MCS-51原理及应用开发教程[M].北京:清华大学出版社, 2007.

[3]谭浩强.C程序设计 (第三版) [M].北京:清华大学出版社, 2005.

微机原理综合实验题 篇6

《微机原理与接口技术》是一门发展迅速、应用性和实践性都很强的重要的专业基础课。该课程的授课内容必须兼顾微机的硬件结构和软件编程两个方面, 同时还要与实验教学相结合。作为汇编语言、计算机组成原理课程的后继专业课程, 是计算机专业学生有效提高专业技能和动手、创新能力的一门重要课程, 也是该专业与其它专业区分的一门主干课程。要达到有效提高该门课程教学质量, 培养学生的动手能力和创新能力, 就必须对实验教学进行改革, 下面就这个方面进行详细探讨。

1.1 目前的实验教学状况

1.1.1 实验和实习经费不足, 学生人均设备

的台套数很少, 依托设备的实验次数很低, 这严重制约着高校实验教学质量的提高, 也限制着学生个性化和创造力的培养和发展。

1.1.2 现在高校中对于该门课程的实验都

采用实验箱, 对芯片功能进行验证性实验就算了。在实验中, 老师把程序编写好, 学生照着老师的步骤连接好各种线路, 再把程序录入、调试运行, 观察结果写出实验报告就行了。最后导致所有学生的实验报告都是一个结论。

1.1.3 实验软件版本较低、操作流程单一、

实验效果不佳, 造成学生对实验兴趣不够和实验过程束手束脚的情况。即使部分院校开放了实验室, 学生也无法进行更深入的实验, 这对学生对理论知识的理解, 或是课程设计和其他实践环节无疑影响很大。

因此寻求一种新的《微机原理与接口技术》实验教学模式, 改善实验环境和实验内容, 转变教学方式, 更新教学方法手段已势在必行。由于虚拟仪器的硬件是以通用微型计算机为基础的, 普通高校的实验室一般都拥有相当数量的通用计算机, 因此, 只要购买一定的仪器模板以及相应的软件就可以构成足够数量的虚拟仪器供学生使用。另一方面, 在同一台计算机上, 通过操作者的不同定义, 可以虚拟出不同的器件, 各器件之间还可以通过不同的窗口进行切换, 因此实验室无需配备各种传统仪器, 可以通过软件设计使虚拟仪器和实验室设备不断更新。学生在计算机上操纵各种虚拟仪器进行试验, 就如同是在操作传统仪器一样有效, 与在真实实验室的现场试验做出的实验结果是一样的。这样, 使用虚拟实验来代替实际现场试验, 能很好地解决现有实验教学中的矛盾, 又符合现代实验技术的发展方向。

2 虚拟实验室的构建

2.1 虚拟实验室的简介

虚拟实验室 (Virtual Laboratory, VL) 最早在1989年由美国弗吉尼亚大学 (Universityof Virginia) 的威廉·沃尔夫 (William Wulf) 教授提出, 其初衷是为了方便不同实验室中的科研人员共享彼此的数据、仪器, 并交流思想和进行远程科研合作。它可以向实验者提供通过软件实现的不实际存在的虚拟实验场景及其中的虚拟仪器设备;也可以通过硬件接口技术将真实仪器与计算机相连, 利用计算机强大的处理能力扩充仪器的功能, 使其成为一台虚拟仪器。因此, 研究人员或学生可以完全占据主导地位, 他们将不受时空限制, 能随时随地进行虚拟实验操作, 共享仪器设备, 共享数据和计算机资源, 进行协作或得到远程指导等, 突破了传统实验教学的局限性和被动性。

2.2 构建的思路

为了确保实验教学的顺利进行, 此虚拟实验室可分四个阶段予以实施。

第一阶段, 在充分利用现有的计算机资源的基础上, 购买所需的仪器模块和软件 (如Labview) , 借助学院的研发力量, 集中业务专家、专业教师、多媒体软件开发专家的群体智慧, 选择《微机原理与接口技术》经典实验为实践内容, 开发出真正网络化的多媒体CAI实验软件。然后利用先进的虚拟技术和多媒体技术将实验过程中使用的指令运行过程、芯片连接、硬件电路等形象地表现出来。最后将《微机原理与接口技术》网络化虚拟实验软件与局域网联通, 使学生在实践过程中不但能随时获取真实的、动态的信息 (如专业知识、错误提示等) , 从而形成一个信息化的网络实验教学环境。以实现现有仪器设备的模拟。这样有效增加了实验设备的数量, 从根本上改善学生实验条件, 保证实验教学质量。

第二阶段, 学生可以充分利用计算机软件对数据采集、储存、分析、处理、传输及控制的强大功能, 在同一台PC机上虚拟出各种接口硬件, 搭建虚拟实验平台。该平台由硬件仿真实验平台和代码分析器组成的编译调试平台共同组成。可提供实验所需要的仿真工具、器件、实验状态、数据采集与处理、数据分析与显示、实验技术支持等内容。通过网络环境成功登陆后, 根据实验要求和内容, 进行汇编程序的编制、编译和调试, 或者是接口硬件电路的搭建和仿真。当调试完毕后, 学生可以观察运行结果和实验现象, 从而验证代码设计与电路设计的正确性。当学生完成实验, 该模块根据学生实验的具体情况、难易程度、处理方法等, 自动生成标准格式的实验报告, 供教师批阅。学生还可根据实验要求, 自行设计各种软面板, 定义仪器的功能, 并以各种形式表达输出实验结果, 进行实时分析。

第三阶段, 增加综合性实验项目, 并鼓励学生选做设计性实验。要求学生自己选题, 拟订方案, 编写程序, 设计虚拟仪器实验系统。在虚库等。尽可能地将实验内容抽象变为具体, 将枯燥变为生动, 激发学生的学习兴趣, 使学生的被动式学习方式成为主动探索式学习方式, 提高实验课程的教学质量, 达到预期的教学效果。

第四阶段, 组织科研小组, 在原有的模块上进行二次开发, 拓宽其应用范围。这样一方面设计和构建新的虚拟仪器, 另一方面全面带动学校的教学、科研上质量。对于实验教学而言, 第二阶段的内容是学生在实验中应当达到的虚拟实验的基本要求和效果。

摘要:《微机原理与接口技术》是计算机及相关专业必修的一门专业基础课, 同时也是一门发展迅速、应用性和实践性都很强的技术课。针对目前实验教学中存在的一些问题, 就本门课程虚拟实验室的构建做一些思考。

关键词:微机原理与接口技术,实验教学,虚拟实验室

参考文献

[1]张易知.虚拟仪器的设计与实现[M].陕西:西安电子科技大学出版社, 2002, 6-20.[1]张易知.虚拟仪器的设计与实现[M].陕西:西安电子科技大学出版社, 2002, 6-20.

[2]陈秀清.关于虚拟实验室的建设[M].福建:福建广播电视大学出版社, 350003.[2]陈秀清.关于虚拟实验室的建设[M].福建:福建广播电视大学出版社, 350003.

[3]李伯成, 候伯亨.微型计算机原理及应用[M].陕西:西安电子科技大学出版社, 2005.[3]李伯成, 候伯亨.微型计算机原理及应用[M].陕西:西安电子科技大学出版社, 2005.

微机原理综合实验题 篇7

微机原理与接口技术是计算机专业的重要课程之一, 它包含了微型计算机系统的组成、工作原理以及常规接口技术和接口程序设计, 是应用和开发微型计算机的重要技术[1,2]。由于微机接口实验常常需借助专门硬件实验设备才可以进行, 从而会受到实验设备数量不足, 实验设备易损坏、老化等制约, 因此虚拟实验越来越广泛地受到重视。虚拟实验有多种方式, 有硬软结合的虚拟实验, 通过客户端的操作, 借助网络控制真实实验设备, 并通过网络反馈给用户结果信息, 但由于网络的延迟性, 该方法多用于局域网;还有一种是基于Web的虚拟实验, 通过直接利用Java虚拟机及对I/O端口读写的捕获技术[3,4]或编写仿真汇编解释器[5,6,7,8], 再借助Web来实现的全软虚拟实验。但通过多年的教学实践, 我们发现必要的实物实验对学员正确理解实际时序以及芯片间的关联关系有着很重要的作用, 所以我们从另一个角度进行了有益地尝试, 开发了《微机原理与接口技术网上虚拟实验平台》。它通过虚拟实验使学员在进行实物实验前就熟悉了已有实验, 进而再通过分组分批完成实物实验, 这样可以用较少的时间和设备, 满足课程实验要求。该平台还可以供用户提交创新实验, 经老师验证和管理员审核后, 再提交到平台, 达到扩展实验内容和提高实验效率的目的。该平台部署如图1。

该平台的设计原则是依托现有机房资源, 使接口实验在时间、空间和质量上得到较好的优化:一是时间上, 实验可在正式上课时间进行, 也可在其他时间进行;二是空间上, 实验可以在实验机房内进行, 也可在宿舍等终端上进行;三是质量上, 学员可进行查询、学习和老师交流, 还可进行常规和创新实验, 教师可以管理、检查和指导。

2、平台的功能设计

本平台是使用C#.net 2005、SQL SERVER2000、DreamWeaver CS、Flash 8.0等工具联合开发而成, 采用了B/S结构, 各角色通过IE浏览器浏览实验中所涉及芯片的外观、结构图、引脚图;可以根据不同实验进行实验虚拟连线, 系统自动鉴别正误;可以根据不同实验进行程序流程图设计, 系统适时给出提示;可以根据不同实验进行汇编程序设计, 系统将用户答案与实际答案进行比较;可以考察不同实验的时序图;可以方便师生网上交流, 并具有友好的消息提示;可以获取实验目的、要求、内容等;实验中引入了计时器, 可以考察实验者的熟练程度。系统具备较强的平台维护功能, 可以增删用户;分配角色;管理权限;维护管理实验材料;增删实验资源;开设新实验等功能。

通过该平台进行实验, 学员不仅快速提高了实验的熟练程度, 而且还能通过在网上与教师的交流, 及时获得指导, 顺利较高水平的完成实验, 快速提高实验水平, 另一方面学员也可以进行研究型创新实验, 学员采用自己的方法, 进行先期设计、网上提交、教师审批, 从而促进感兴趣学生创新能力的提高。新的设计方案经验证后, 平台可以将其添加到资源库中, 以后为他人开放, 使平台更具开放性。

平台主要包括芯片展示、实验操作、互动、系统管理等子系统。

2.1 芯片展示子系统

该子系统包括展示芯片的外观、结构图、引脚图模块。展示芯片外观模块通过flash展示, 让用户熟悉芯片的外部特征, 在实验板上的位置以及对应的接线柱等。展示芯片结构图模块通过动画细致刻画芯片的编程结构图和功能结构图, 让用户从使用者的角度既熟悉芯片在编程中所涉及的寄存器和外部连接, 又熟悉芯片的内部工作原理, 理解各功能模块间的协作关系。展示芯片引脚图模块使用户熟悉芯片各引脚对应的信号含义。

2.2 实验操作子系统

该系统包括实验连线、流程设计、汇编程序设计、时序图仿真模块。实验连线模块主要是利用带有响应鼠标单击、拖动事件的动作脚本的flash技术来实现, 首先用户在虚拟的实验箱面板上, 通过单击芯片, 找出所做实验用到的芯片, 同时系统自动及时地给出正误提示, 当所有芯片找全找对时, 所涉及芯片以大图显示于面板的前景, 方便后续连线。其次利用绘图和鼠标热区技术实现芯片间正确的引脚连线, 系统能给出相应的语音信息。当连接全部正确完成后, 点击确定, 将切换到总界面, 并将所涉及芯片和实验连线缩小到实验箱面板, 形成连线的整体效果图。实现实验连线模块的关键步骤如下:

首先将实验所需的芯片的引脚制作成可以响应的按钮, 利用Flash8.0的ActionScript2.0动作脚本, 对响应的按钮添加绘制直线函数或者调用声音影片剪辑代码, 从而实现当用户选择了此引脚时就会牵出一条属性如代码所置的直线。

其次当用户鼠标落在了被连线的芯片上的正确引脚 (即连线的正确终点) 时, 调用脚本:on (press) {with (_root.t1) {gotoAndPlay (1) ;}}以完成连线, 同时还可以调用语音提示连线正确的影片剪辑。

流程设计模块是用来训练学员针对实验要求, 进行概要设计的能力。该模块随机生成一些流程图元, 供用户选择, 利用吸附和弹回表现正误。实现这一功能的关键是利用动作脚本中的鼠标拖拽对象和测试是否碰撞, 主要代码如下:

汇编程序设计模块是用来培养学员按流程设计编写程序的能力, 该模块可以让用户录入代码, 系统自动监测, 不断与数据库比对, 提示用户出现的问题, 用户还可以直接查看答案也可以重做。时序图仿真模块是用来训练学员熟悉每个信号的发出者和承受者, 并搞清楚各个信号之间的因果关系。该模块通过时间控制, 直观表现了信号的变动情况, 并在各关节点处强调出时序图中各参数含义和范围要求。

2.3 互动子系统

该子系统包括提交模块、审批模块、答疑模块。提交模块可以满足普通用户提交调试好的汇编程序、疑问、新设计方案等资源, 分别保存于服务器上由该用户独占的自保留资源目录、疑问资源目录以及新方案待审资源目录, 方便异地下载使用, 同时维护数据库中自保留资源信息表、疑问资源信息表以及新方案待审资源信息表。审批模块可以满足资源管理员审批由普通用户提交的新设计方案, 针对方案问题反馈给提交者修改意见, 没有问题的保存到系统资源目录, 并维护系统资源信息表, 供更多用户共享。答疑模块可以满足实验指导员在网上针对用户问题给出解决方案。提交模块实现的主要代码如下:

2.4 系统管理子系统

该子系统包括用户管理、角色管理、权限管理模块。将用户分配为普通用户角色、资源管理员角色、实验指导员角色、系统管理员角色, 并通过权限管理将页面名字对应于不同角色, 一般为多对多联系, 当用户登陆时将用户id传入session, 进而在页基类的page_load中检查有无访问该页的权限, 从而保证安全性。

3、在网页中嵌入动态FLASH的代码实现

网页中嵌入FLASH在一些文献[9]已见到, 但我们这里需要在网页中嵌入动态FLASH, 并能响应鼠标动作, 故需做一些改进。首先下载Adobe公司的swflash.cab升级包, 存放至网站根目录下, 使客户机通过IE从本网站自动升级其FLASH播放器。其次在网页中嵌入对象

4、结束语

整个系统操作简便、界面简洁、打印实用、系统安全可靠, 实现了接口技术网上虚拟实验的主要功能。经过测试证明, 本系统可以较好的满足我校微机原理与接口技术网上虚拟实验的需求。

参考文献

[1].戴梅萼.微型计算机技术及应用[M].北京:清华大学出版社, 1991.

[2].西安唐都科教仪器公司.80X86微机原理及接口技术实验教学系统实验指导书[M].2005

[3].朱刚.微机接口虚拟实验的研究[D].武汉:华中科技大学, 2004.

[4].王光伟, 陈利, 李丹等.微机接口虚拟实验系统的设计与实现[J].计算机应用与软件, 2008, 25 (11) :167-171.

[5].刘卫涛, 刘志强.基于网络的虚拟接口实验室设计与实现[J].电子设计工程, 2009, 17 (3) :60-62.

[6].黎茂锋, 毕国堂, 刘志勤.JApplet微机接口虚拟实验平台的设计与评估[J].计算机工程与设计, 2009, 30 (5) :1242-1244.

[7].陈真, 戴永寿, 王颜波.微型计算机原理接口实验的仿真设计[J].实验技术与管理, 2006, 23 (12) :82-84.

[8].张克非.虚拟微机接口技术实验室设计[J].计算机工程与设计, 2005, 26 (1) :22-23, 27.

上一篇:规划编制计划下一篇:物流成本分析报告