微机原理课程设计题1

第一篇:微机原理课程设计题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

       姓

       名:

       一、设计题目及要求:

       利用 8259A中断,实现对8253多种计数初值的设定: 1.在中断服务程序中设定8253的计数初值。

       2.开关K1用于设定0.5秒方波的计数初值,K2用于设定1秒方波的计数初值,K3用于设定2秒方波的计数初值。

       3.用8253的输出信号,控制一个发光二极管,以演示修改效果。

       二、设计思想:

       整体设计:

       ①利用8259A芯片设定IR1、IR2、IR3三个中断,分别用三个开关的高低电平触发中断。

       ②在三个终端的中断服务子程序里面为8253芯片通道0设定不同频率的方波计数初值,使得在触发不同中断时8253芯片产生周期为0.5秒、1,秒、2秒的方波。③将8253的输出端口与发光二极管连接,通过二极管的亮灭显示出8253内部方波的频率。

       部分设计:

       ①8253芯片方式3初值确定:根据分频电路T(n)=T/2*公式以及0.5s、1s、2s方波的频率计算出初值分别为2580H、4B00H、9600H。

       ②8253芯片和8259芯片的片选方法:设定8259A和8253芯片的端口号分别为0FFE0H、0FFE1H,以及0FFFCH—0FFFFH,使得在连接138译码器时,A连A2,B连A3,C连A4,T0连接8259A芯片的CS端,T7连接8253芯片的CS端。

       ③8259A中断向量表写入以及芯片初始化:根据8259A各个中断在中断向量表中的地址,将IR0、IR1、IR2的中断服务程序入口地址写入向量表中;ICW4设定除中断0、1、2外其他位屏蔽。

       ④手动设置中断结束:为了不影响各个中断之间的交替响应,在每个中断服务程序结束之前写入中断结束方式,将20H输出到8259端口,将当前中断结束响应后再响应下一个中断。

       三、功能流程图:

       四、结果讨论:

       附录:实验代码:(完整的源程序)

       CODE

       SEGMENT

       ASSUME CS:CODE,DS:CODE,ES:CODE

       ORG 3400H Port0

       EQU 0FFE0H

       ;8259芯片的端口号 Port1

       EQU 0FFE1H START:

       CALL F8259 P0:

       CLI

       MOV AX,OFFSET INT0

       MOV BX,0020H

       MOV [BX],AX

       MOV BX,0022H

       MOV AX,0000H

       MOV [BX],AX

       STI

       P1:

       CLI

       MOV AX,OFFSET INT1

       MOV BX,0024H

       MOV [BX],AX

       MOV BX,0026H

       MOV AX,0000H

       MOV [BX],AX

       ;CALL F8259

       STI

       P2:

       CLI

       MOV AX,OFFSET INT2

       MOV BX,0028H

       MOV [BX],AX

       MOV BX,002AH

       MOV AX,0000H

       MOV [BX],AX

       ;CALL F8259

       STI P:

       JMP P;-----F8259: MOV AL,1BH

       ;8259的初始化00011011 icw1

       MOV DX,Port0

       OUT DX,AL

       MOV AL,08H

       ;00001000 icw2

       MOV DX,Port1

       OUT DX,AL

       MOV AL,01H

       ;00000001 icw4

       OUT DX,AL

       MOV AL,00H

       ;屏蔽只留IR0,IR1,IR2。OCW1

       OUT DX,AL

       RET;---------------------------INT0:

       CLI

       CALL FB0

       STI

       MOV DX,Port0

       MOV AL,20H

       OUT DX,AL

       IRET

       INT1:

       CLI

       CALL FB1

       STI

       MOV DX,Port0

       MOV AL,20H

       OUT DX,AL

       IRET

       INT2:

       CLI

       CALL FB2

       STI

       MOV DX,Port0

       MOV AL,20H

       OUT DX,AL

       IRET

       FB0:

       MOV DX,0FFFFH

       MOV AL,00110110B

       OUT DX,AL

       MOV AL,80H

       MOV DX,0FFFCH

       OUT DX,AL

       MOV AL,25H

       OUT DX,AL

       RET

       FB1:

       MOV DX,0FFFFH

       MOV AL,00110110B

       OUT DX,AL

       MOV AL,00H

       MOV DX,0FFFCH

       OUT DX,AL

       MOV AL,4bH

       OUT DX,AL

       RET

       FB2:

       MOV DX,0FFFFH

       MOV AL,00110110B

       OUT DX,AL

       MOV AL,00H

       MOV DX,0FFFCH

       OUT DX,AL

       MOV AL,96H

       OUT DX,AL

       RET

       ;--------------------------DONE: CODE

       ENDS

       END START

第三篇:微机原理课程设计

       接口技术课程设计

       一、设计内容

       设计一个投票统计器,完成投票、计票统计和票数显示等功能。

       二、设计原理及方案

       在8086最小工作模式下,连接一块8255A芯片。在 8255A的C端口连接8个开关,开关按下表示支持,灯亮,开关不按便是反对,灯不亮,从8255A的C端口输入投票结果,经8086运算统计出结果;在 8255A的A端口连接一块7段LED数码管,将输出结果通过数码管显示出来。电路图:

       接口技术课程设计

       程序代码: A_PROT B_PROT C_PROT CT_PROT DATA DATA CODE

       MOV DX,C_PROT IN AL,DX EQU EQU EQU EQU 200H 202H 204H 206H

       ;可通过计算获得,连接的是IO1 SEGMENT ENDS SEGMENT MOV AX,DATA MOV DX,AX MOV AL,10001001B MOV DX,CT_PROT OUT DX,AL

       ;控制字写入

       ;A端口输出,C端口输入 TAB1 DB 7FH,07H,7DH,6DH,66H,4FH,5BH,06H,3FH ASSUME CS:CODE,DS:DATA

       START: MOV DX,C_PROT MOV AL,0 OUT DX,AL

       ;C端口清零

       AGAIN: TJ: XOR AH,AH

       MOV CX,8 LOOP1: SAL AL,1

       ADC AH,0

       LOOP LOOP1

       MOV AL,AH

       PUSH BX

       LEA BX,TAB1

       XLAT

       MOV DX,A_PROT

       OUT DX,AL

       PUSH CX

       MOV CX,2801 WAIT1: LOOP WAIT1

       POP CX

       JMP AGAIN

       MOV AH,4CH INT 21H CODE ENDS END START

       接口技术课程设计

       ;统计1个数

       ;进位加CF,以统计出C端口中1的个数

       ;延时10ms

       接口技术课程设计

       三、运行结果

       程序结果图:

       接口技术课程设计

       四、设计总结与体会

       为期一周的微机原理课程实践终于结束了,回过头来,感慨万千。过了一个多月,书本上的好些知识已然忘却,刚开始拿到课题时,看到一大堆传说中的神器,霎时凌乱了,选来选去,从仅剩的课题中挑了“投票统计器”,上网搜索了一下,大体上把设计的方向搞清了,接下来,便是开始设计了。

       画模拟图对于我们来说,还是比较困难的,特别是8086那一块儿,大家参考网上的资料,反复讨论,着实花了不少时间。接下来的画图连线就比较简单了,为了节省时间,在做模拟图的同时,其他两个人便开始编写程序了。将设计流程图简略写下来,对照流程图,分块儿编写程序,显得很有条理,简单轻松些。

       就这样,三次课之后,设计的图和程序都好了,只剩下调试程序,查看模拟结果了。这是检错和纠错的过程,轻松但也不轻松,因为那么多东西,如果看不仔细了,你就找不到错误,也就没法儿解决问题了,费事费力还一无所获,这是最伤脑筋的事情。还好,运气不错,只是程序出现了小小的问题,改好之后,得到了很满意的结果。

       最后的验收,是对书本与实践知识的融汇总结,本以为毫无问题的我们,没想到被程序中的一个问题给秒杀了,大家四处找资料,和别的组的同学讨论,反复演算了半天,终于会了。当然,就算是会了,我们也只是懂得了微机原理中的一点皮毛而已,学的扎实很重要,因为这样才能把理论知识运用到实践中去,不断地提高自己。

       五、参考文献 1.周明德.微型计算机系统原理及应用.北京:清华大学出版社

       2.张弥左,王兆月,邢立军等.微型计算机接口技术.北京:机械工业出版社 3.戴梅萼,史嘉权.微型计算机技术及应用.北京:清华大学出版社 4.沈美明,温冬婵.IBM-PC汇编语言程序设计.北京:清华大学出版社

第四篇:微机原理课程设计

       电子信息科学与技术《微机原理》课程设计

       一、本次课程设计的目的和意义

       学习和掌握计算机中常用接口电路的应用和设计技术,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结合的实践和锻炼。通过这次设计实践能够进一步加深对专业知识和理论知识学习的认识和理解,使自己的设计水平和对所学的知识的应用能力以及分析问题解决问题的能力得到全面提高。

       二、设计时间、基本要求

       (一)、设计时间:二周(二)、基本要求:

       a.每题2人;b.设计出完整的接口电路;c.编写出全部程序;d.在实验系统上调试通过。

       三、设计选题与要求

       选题一:多路模拟数据采集系统设计

       要求:设计一个2路以上的模拟数据采集系统。

       1、用按键选择那一路;

       2、用LED显示转换结果(十进制数);

       3、将每一路采集的100个数据存放到各自的存储区中。

       选题二:温度测控系统的设计

       要求:利用ADC0809设计一个温度测控系统,在LED数码显示器上显示温度值,并对温度进行测试和控制,当检测温度到达温度上限60℃时开风扇(即开启电动机,或以一个灯的亮灭表示),低于下限30℃时关闭风扇,LED上的显示内容为:XX ℃(采用十进制显示)。

       选题三:函数发生器的设计(一)要求:利用DAC0832设计一个函数发生器,并利用按键选择输出波形,能分别产生三角波、阶梯波(每阶梯1V)、正向锯齿波、负向锯齿波和方波。并利用按键(自行定义)进行输出波形选择,同时将当前输出波形显示在LED上(左边位):0为方波、1为正向锯齿波、2为负向锯齿波、3 为三角波、4为阶梯波。

       选题四:函数发生器的设计(二)要求:设计一个三角波发生器,可利用键盘改变其输出波形的幅值。例如,可利用1-5这5个数字键改变其输出波形的幅值,当按下1-5数字键时使D/A输出幅值从1V增加到5V。

       选题五:电子音乐播放器

       要求:设计要求:利用8253作为音阶频率发生器,应先对“2022年奥运会主题歌”进行编码后存入音符表,并建立好音阶表(只建立一个8度即可),音符长度不能少于60个,连续播放3遍后停止。

       选题六:键盘电子乐器

       要求:利用并行接口8155作为键盘接口,设计一个具有2个八度音阶的键盘乐器,音阶键不少于16个,采用扫描方式管理键盘,音域范围自行定义。

       选题七:电子时钟设计

       要求:利用8253定时器设计一个具有时、分、秒显示的电子时钟,并定义一个启动键,当按下该

       键时时钟从当前设定值(可在显示缓冲区中予置)开始走时。

       选题八:压力测控系统的设计(一)要求:对压力传感器的信号进行检测并在LED数码显示器上显示压力值,当压力低于30pa时,黄灯闪烁,闪烁周期为1秒。当压力高于150pa时,红灯闪烁。LED的显示内容为P=XXX。X为测试值。

       选题九:可变输出频率方波发生器设计

       要求:设计一个输出方波频率可利用按键改变的方波信号发生器(可以使用D/A也可以直接使用8253产生方波),利用键盘选择方波发生器的输出频率并驱动喇叭。输出频率=键号*100HZ

       选题十:直流电机速度控制器设计

       要求:利用D/A转换器和按键设计一个直流电动机转速控制器。按键定义如下:0 停止,1-1/10转速,2-2/10转速„„ 9 最高速(D/A输出满量程),键号每加1,D/A输出增加0.5V

       选题十一:可任意启动/停止的电子秒表设计

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

       选题十二:温度测试系统设计

       要求:利用温度传感器和ADC0809设计一个温度测试系统,将测试结果(十进制)在LED上显示出来,并定义一个保持按键,当按下该键时,将当前测试值保持不变(按键不动作时为正常测量显示)。温度显示格式为:XXX ℃。(可以每隔0.3秒测量一次)

       选题十三:压力测试系统设计(二)要求:利用压力传感器和ADC0809设计一个压力测试系统,并将测试结果(十进制)在LED上显示出来,并定义一个测试最大值按键,当按下该键时,可进行最大值测量(按键不动作时为正常测量显示),即:只有当当前测量值大于上次测量值时才刷新显示,显示格式为:P=XXX。可以每隔0.3秒测量一次。

       选题十四:简易计算器系统设计

       要求:设计一个可以进行2位数四则运算的计算器。

       1、用按键输入数和运算符号;

       2、用LED显示运算过程和结果(十进制数);

       3、可以表示出当前的运算类型;

       4、具有清零和复位功能;

       5、具有连续运算功能。

       选题十五:交通灯控制系统

       要求:按照时间控制原则,利用并行接口和定时器,设计一套十字路口的交通灯管理系统,通行时间(或禁止时间)30秒,准备时间3秒,在准备时间里黄灯闪烁3次,闪烁频率为0.5秒,周而复始。可利用8255、8253等接口电路。

       选题十六:计件系统设计

       要求:利用8253计数,对外界脉冲技术,并将计数值在数码管上显示,可通过键盘控制重新计数。

       四、设计任务及要求

       1、接口设计:根据所选题目和所用的接口电路芯片设计出完整的接口电路,并在实验系统上完成电路的连接和调试通过。

       2、程序设计:要求画出程序框图,设计出全部程序并给出程序设计说明和程序解释。

       3、课程设计报告:(1)设计题目;

       (2)系统的主要功能、作用以及主要技术性能指标;

       (3)总体设计方案、工作和组成原理(框图)或设计说明、采用的技术路线等;

       (4)系统设计:接口电路设计,程序设计(程序框图和程序清单及解释)其他有关的理论分析和计算;

       (5)设计总结:对整个设计工作过程进行归纳和综合,对设计中所存在的问题和不足进行分析和总结,提出解决的方法、措施、建议和对这次设计实践的认识、收获和提高。

第五篇:微机原理课程设计

       汇编程序设计题

       题目一 密码设置模拟

       该程序可以进行密码的设置(第一次)和修改(已设置密码)。要求输入的密码不显示。题目二 计算器

       编辑程序可以实现键盘输入数据与运算符,进行“加减乘除”运算。(提示:先输入数据与运算符,保存,再按照运算符选择对应的子程序;输入的数据是用字符表示的,需要转换;要有良好的界面(提示信息))

       题目三工作周期判断程序

       输入年、月、日,能够判断当日的星期数,并进行输出。(以校历为依照,可设某日为起点,根据相差的天数与7的关系进行判断)。

       题目四 PC扬声器发声

       利用8253驱动PC机内扬声器发声,PC结构参考相关文献资料。题目五 乐曲播放

       利用PC机内8253实现乐曲播放。题目六 按键选择乐曲播放

       利用按键选择播放不同乐曲。(★)(自制交互界面实现按键选择★★)题目七 实现闪烁文字效果 编程提示:

       提示信息于屏幕中央显示出来,用光标定位子程序将光标定位于80*25显示方式的第8行第10列,然后输出一条提示信息,接着调用屏幕上卷子程序上卷一行,接着再定位光标,然后显示下一条提示信息,直到所有信息显示完毕,对于闪烁的信息,同样是定位光标,然后用BIOS功能调用13H来显示闪烁信息,当BL的高位为1时,字符闪烁。mov ah,00h mov al,03h ;设置显示方式为80*25,16色文本 int 10h 题目八

       数字秒表

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

       倒计时牌

       设计日期倒计时牌界面,可输入设定日期,显示当前日期的统计天数,如奥运计时牌。题目十

       数字时钟

       编程实现时钟功能,按秒刷新,要求定位在屏幕右上角。

       硬件设计题

       总体要求:根据题意自行设计电路,编写相关汇编程序。题目一

       交通灯控制系统

       1.利用8253定时,8259中断及8255设计电路,实现十字路口交通灯模拟控制。2.实现能自动控制和手动应急控制。

       3.实现能随时可以调整自动模式的绿灯和红灯时间。题目二 实现特定功能的键盘及LED显示

       了解键盘及LED显示接口原理,设计实验电路图完成以下功能: 1.按1键显示年; 2.按2键显示月日; 3.按3键显示GOOD ;

       4.按4键数码管由左到右字符“0”循环显示。5.自行设计特效显示功能。题目三

       LED七段数码管数字钟

       设计并完成LED七段数码管数字钟电路,数字钟显示格式为:HH:MM:SS。要求:具有通过键盘能够调整时、分、秒的功能。题目四

       闪烁灯

       利用8253和LED灯相结合实现闪烁灯效果。题目五

       电子钟

       利用8253定时器设计一个电子钟,并定义一个启动键。当按下该键时电子时钟从当前设定值开始走时。

       附录:实验箱功能模块电路图