微机原理第七个微机原理打字游戏课程设计程序带注释

微机原理第七个微机原理打字游戏课程设计程序带注释
微机原理第七个微机原理打字游戏课程设计程序带注释

。用于输出菜单:在光标在(op1,op2)开始地地方输出字符串 op3

menu MACRO op1,op2,op3

MOV AH,02h

MOV BH,00h

MOV DH,op1

MOV DL,op2

INT 10h

MOV AH,09h

LEA DX,op3

INT 21h

ENDM

。将左上角(op1,op2)右下角(op3,op4)决定地矩形区域清除显示字符

clear_screen MACRO op1,op2,op3,op4

MOV AH,06h

MOV AL,00h

MOV BH,07h

MOV CH,op1

MOV CL,op2

MOV DH,op3

MOV DL,op4

INT 10h

。*******************设置光标在 op1行,op2列

MOV AH,02h

MOV BH,00h

MOV DH,op1

MOV DL,op2

INT 10h

ENDM

。**********************************初始化游戏,用于设置游戏地边框

Init_game MACRO op1,op2,op3,op4,op5,op6

MOV CX,00h

。******************将光标设置在行:DH,列:DL

MOV DH,op1

MOV DL,op2

op6: MOV AH,02h

MOV BH,00h

INT 10h

PUSH CX

MOV AH,0ah

MOV AL,op3

MOV BH,00h

MOV CX,01h

INT 10h。******************在指定光标地位置输出字符op3 POP CX

INC CX

INC op4 。op4用来决定输出增长地方向是列还是行 DH:行 DL:列

CMP CX,op5

JNE op6。*******************重复输出字符op3,op5次,

ENDM

。***********************************数据段,用于初始化游戏有关地数据

data SEGMENT

ZK DB "WELCOME TO PLAY!$"

mes1 DB "data: 2011/01/08$"

mes2 DB "press Enter key to continue......$"

mes3 DB "when a letter is droping ,please hit it!$"

mes4 DB "press space key to pause!$"

mes5 DB "press ESC key to return main interface!$"

mes6 DB "press letter 'E'to exit!$"

lost DB "Game over!$"

letter DB "jwmilzoeucgpravskntxhdyqfbiytpkwnxlsvxrmofzhgaebudjqnwimzoexrphysfqtvdcgljukda" speed DW 30000D

letter_counter DB 0

present_position DB 0

data ENDS

CODE SEGMENT

ASSUME CS:CODE , DS:data

START:

MOV AX,data

MOV DS,AX

。*****************首先设置游戏地主边框

Init_game 00h,00h,0ah,DL,80d,L1

Init_game 24d,00d,0ah,DL,80d,L2

Init_game 00d,00d,0ah,DH,25d,L3

Init_game 00d,79d,0ah,DH,25d,L4

clear_screen 01d,01d,23d,78d

menu 05d,15d,ZK

menu 07d,15d,mes1

menu 09d,15d,mes2

menu 11d,15d,mes3

menu 13d,15d,mes4

menu 15d,15d,mes5

menu 17d,15d,mes6

MOV AH,02h

MOV BH,00h

MOV DH,22d

INT 10h 。**************设置光标地位置

MOV AH,01h 。********************设定DOS为键盘输入字符并回显功能 INT 21h

。********************判断输入地字符

CMP AL,0dh

JE speed3 。输入为enter键,跳到游戏主程序

CMP AL,45h

JE L10。输入为E,跳到退出,结束游戏

L10: JMP exit

speed3: clear_screen 01d,01d,23d,78d

Init_game 23d,01d,01d,DL,78d,next5

MOV AH,02h

MOV BH,00h

MOV DH,01d

MOV DL,01d

INT 10h

MOV CX,00h

LEA SI,letter

nextletter:

MOV DL,[SI]

MOV AH,02h

INT 21h

INC SI

INC CX

CMP CX,78d

JE nextcycle

JMP nextletter

。*********************改正下落地址超过78列地地址

from_front: SUB present_position,78d

JMP gobackto_di

nextcycle:

LEA DI,letter 。DI指向待下落字母地首地址

ADD present_position,31d 。将下落地字母地列数设置为在前一个下落字母基础上加上31

CMP p resent_position,78d 。比较设置过地下落地址地列数是否超过78列,若超过,则改正

JA from_front

。********************用于将光标定位在待下落地字母,用于操作该字母

gobackto_di:

ADD DI,WORD PTR present_position

DEC DI

MOV DL,present_position

MOV AH,02h

MOV DH,01d

INT 10h

。********************三层循环,第一层用于判断是否下落了21次,即一次下落是否完成

。第二层和第三层结合构成延时,控制每一行地下落速度 MOV CX,00h

nextrow:

PUSH CX

MOV CX,00h

out_cycle:

PUSH CX

MOV CX,00h

in_cycle:

INC CX

CMP CX,1000h

JNE in_cycle

PUSH DX

。*******************设置DOS为键盘输入字符且不回显状态

MOV AH,06h

MOV DL,0ffh

INT 21h

POP DX

。*******************判断输入字符:ESC--进入主程序选择界面 space--暂停下落地字符--消失

CMP AL,1bh

JE to_start1

CMP AL,' '

JE pause

CMP AL,[DI]

JE disappear

。************延时程序,用于控制下落过程中在每一行地延时时间时间=speed*10000 pass:

POP CX

INC CX

CMP CX,speed 。判断在一行地延时是否达到3000次(用于控制延时时间)

JE print。在该行延时时间达到且没有被击中,跳到print,即该行输出空格,下一行输出字母

JMP out_cycle。延时未达到,重新开始

。*******************用于响应空格地暂停程序:通过将DOS设置为按键输入且不回显状态实现,除非再次输入空格,否则循环检查

pause:

PUSH DX

MOV AH,06h

MOV DL,0ffh

INT 21h

POP DX

CMP AL,' '

JNE pause

JMP pass

。**********************用于转接跳转到开始主程序

to_start1:

JMP start

。***********当上一行停留时间达到且没有被正确击中,将上一行输出空格,该行输出下落地字母

print:

。*************将上一行输出空格

MOV AH,0ah

MOV AL,' '

MOv BH,00h

MOv CX,01h

INT 10h

。*************增加DH地值,使光标指向该行

INC DH

MOV AH,02h

MOV BH,00h

INT 10h

。*************在该行输出下落地字母

MOV AH,0ah

MOV AL,[DI]

MOV BH,00h

MOV CX,01h

INT 10h

。*************用于确定下落次数是否达到21次,即该字母下落是否完成

POP CX

INC CX

CMP CX,21d

JE print_next_letter。下落次数达到21次,字母下落完成,跳到下一个子程序,用于补充下落地字母

JMP nextrow。************当下落过程中击中该字母,使其消失,即输出空格代替disappear:

POP CX

POP CX

MOV AH,0ah

MOV AL,' '

MOV BH,00h

MOV CX,01h

INT 10h

JMP hit

print_next_letter:

。*************将下落到底且没有被击中地位置输出为空格

MOV AH,0ah

MOV AL,' '

MOV BH,00h

MOV CX,01h

INT 10h

。*****************将光标指向底层一排用于标识字母是否被击中地位置

INC DH

MOV AH,02h

MOV BH,00h

INT 10h

。*************在窗口底框上一次标识字母输出为空格,用于表示该列字母下降时未被击中 MOV AH,0ah

MOV AL,' '

MOV BH,00h

MOV CX,01h

INT 10h

INC letter_counter 。计算下落未被击中地次数

CMP letter_counter,78d 。下落地未被击中次数达到78次,返回主界面,重新来过 JE complete

hit:

。**************用于补充新字母,把光标设置下落字母地所在列地第一行

MOV AH,02h

MOV BH,00h

MOV DH,01h

MOV DL,present_position

INT 10h

。**************补充新字母

MOV AL,[DI]

ADD AL,7h

CMP AL,7ah

JA convey_letter。判断新字母是否超出了z地范围,超出则改正

DIsplay:

MOV AH,0ah

MOV BH,00h

MOV CX,01h

INT 10h

JMP nextcycle

convey_letter:

SUB AL,7ah

ADD AL,61h

JMP DIsplay

complete:

menu 11d,35d,lost

MOV CX,00h

。*******************游戏结束延时 LOOP1:

PUSH CX

MOV CX,00h

LOOP2:

INC CX

CMP CX,60000d

JNE LOOP2

POP CX

INC CX

CMP CX,30000d

JNE LOOP1

JMP START

exit:

MOV AH,4ch

INT 21h

CODE ENDS

END START

微机原理课程设计

微机原理课程设计

前言 加热器数字控制系统的设计与功能的实现要求学生在学习完微机原理及应用这门课的基础上,在对芯片类知识以及汇编语言有一定基础的前提下进行的一个非常体现学生综合能力的一个设计。要想很好的完成这个题目,必须对芯片的功能有很详细的了解,同时也要求学生的汇编语言基础要扎实。计算机技术的飞速发展,使的计算机知识和应用技能已成为人类知识经济的重要组成部分。《微型计算机原理》正是掌握计算机结构和工作原理的入门课程,它偏重于实际应用的课程,要求学生在学好理论知识的基础上,培养定的实践动手操作能力,学生将所学的理论知识和实践有机结合,初步掌握计算机应用系统设计的步骤和接口设计的方法,提高分析和解决实际问题的能力。微机原理课程设计是对《微型计算机原理》课程理论教学和实验教学的综合和总结。 通过该课程设计,可以使学生对微机原理及应用这门课有更深刻的了解与认识,同时在做课程设计的过程中也锻炼了学生将书本上的知识应用到具体实践上的能力。不仅回顾了上课老师所讲的知识,同时也培养了自身的创新能力,自主设计能力,纠错能力,加强了学生动手的能力。

目录 1.前言 (2) 2.课程设计题目 (4) 3.设计任务分析 (5) 4.总体设计思路 (6) 5.硬件设计 (7) 6.软件设计 (11) 7.小结 (13) 8.参考文献 (14) 9.设计图纸 (15) 10.程序清单 (16)

课程设计题目:数字控制系统在加热器中的应用 一、课程设计的目的意义 通过课程设计培养同学们的系统设计能力,使同学们达到以下能力训练:(1)调查研究、分析问题的能力; (2)使用设计手册、技术规范的能力; (3)查阅中外文献的能力; (4)制定设计方案的能力; (5)计算机应用的能力; (6)设计计算和绘图的能力; (7)技术经济指标的分析能力; (8)语言文字表达的能力。 二、课程设计任务介绍 当把物品放入加热器中,首先要启动加热器和电机工作,设定加热时间为5分钟,为使物品均匀加热,每隔30秒电机要反转一次,(正转→反转、反转→正转),加热时间到后,停止加热器和电机工作,并发声,告知加热结束。

2014年微机原理课程设计题目-汇总 (1)

1.根据键盘输入的一个数字显示相应的数据螺旋方阵。如输入4,则显示。 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 共需要显示4^2=16个数字。 要求:①根据键盘输入的数字(3-20),显示相应的数据方阵。 ② 画出设计思路流程图,编写相应程序。 2.显示日期或时间。要求:有提示信息,输入字母“r”,可显示系统当前日期;输入字母“s”,可 显示系统当前时间;输入字母“q”,退出程序。 3.字符游戏 随机显示字符ch,等待用户输入 如果输入字符与ch一致,则随机显示下一个字符ch2;否则显示“输入错误”; 如此循环; 输入Enter结束 点击Enter程序退出; 4.从键盘上输入7名裁判的评分(0-10,整数),扣除一个最高分,扣除一个最低分,计算出其它五 个分数的平均值(保留一位小数),并在显示其上输出 “The final score is:”和最终结果。 5.为短跑比赛设计一个确定成绩次序的程序,要求能够输入8个队员编号,成绩;输出最终的排名 次序编号及成绩。(成绩时间格式--秒数:百分秒数,如12:15) 6.为评委设计一个显示选手通过的指示器,以电脑显示屏作为指示屏。当从键盘输入0时,显示屏 上呈现“×”图形,表示选手被淘汰;当从键盘输入1时,显示屏上呈现“√”图形,表示选手通过。 7.试设计一个道路收费系统,将车型分为大型车、中型车、小型车,每种车型分别有各自的单公里 收费标准,如下表所示,在收费时,将车型和公里数输入系统,就可自动生成收费额,(公里数取整。收费额以元为单位,保留一位小数)。 序号 车型 单公里收费(单位:0.1元) 1 大型车 5 2 中型车 3 3 小型车 1 8.通过实验箱TDN实现8个LED灯循环闪烁。 要求:首先是1、3、5、7号LED灯以此亮1秒钟,当第7号LED灯亮后,这四个灯同时闪烁5下; 然后,2、4、6、8号灯依次亮1秒钟,当第8号灯亮后,这四个灯同时闪烁5下。 9.为男子25米手枪速射决赛设计一个排名程序。决赛有6名运动员参加,每人每轮次打5枪,每枪 打中靶子的中心区就计一分,打不中就记0分。四轮比赛之后,先将成绩最低的选手淘汰(即为

微机原理课程设计报告交通灯

WORD格式微机原理课程设计 设计题目交通灯的设计 实验课程名称微机原理 姓名王培培 学号080309069 专业09自动化班级2 指导教师张朝龙 开课学期2011至2012学年上学期

一、实验设计方案 实验名称:交通灯的设计实验时间:2011/12/23 小组合作:是□否?小组成员:无 1、实验目的: 分析实际的十字路口交通灯的亮灭过程,用实验箱上的8255实现交通灯的控制。(红,黄,绿三色灯) 2、实验设备及材料: 微机原理和接口技术实验室的实验箱和电脑设备等。 3、理论依据: 此设计是通过并行接口芯片8255A和8086计算机的硬件连接,以及通过8253延时的方法,来实现十字路口交通灯的模拟控制。 如硬件连接图所示(在后),红灯(RLED),黄灯(YLEDD)和绿灯(GLED)分别接在8255 的A,B,C口的低四位端口,PA0,PA1,PA2,PA3分别接1,2,3,4(南东北西)路口的红灯,B,C口类推。8086工作在最小模式,低八位端口AD0~AD7接到8255和8253的D0~D7,AD8~AD15通过地址锁存器8282,接到三八译码器,译码后分别连到8255和8253的CS片选端。8253的 三个门控端接+5V,CLOCK0接由分频器产生的1MHZ的时钟脉冲,OUT0接到CLOCK1和CLOCK,2 OUT1接到8086的AD18,8086通过检测此端口是否有高电平来判断是否30s定时到。OUT2产生 1MHZ方波通过或门和8255的B口共同控制黄灯的闪烁。8255三个口全部工作在方式0既基本 输入输出方式,红绿灯的转换由软件编程实现。

4、实验方法步骤及注意事项: ○1设计思路 红,黄,绿灯可分别接在8255的A口,B口和C口上,灯的亮灭可直接由8086输出0,1 控制。 设8253各口地址分别为:设8253基地址即通道0地址为04A0H,通道1为04A2H,通道2 为04A4H,命令控制口为04A6H。 黄灯闪烁的频率为1HZ,所以想到由8253产生一个1HZ的方波,8255控制或门打开的时 间,在或门打开的时间内,8253将方波信号输入或门使黄灯闪烁。 由于计数值最大为65535,1MHZ/65536的值远大于2HZ,所以采用两个计数器级联的方 式,8253通道0的clock0输入由分频器产生的1MHZ时钟脉冲,工作在方式3即方波发生器方 式,理论设计输出周期为0.01s的方波。1MHZ的时钟脉冲其重复周期为T=1/1MHZ=1s,因此 通道0的计数初值为10000=2710H。由此方波分别作为clock1和clock2的输入时钟脉冲,所以 通道1和通道2的输入时钟频率为100HZ,通道1作计数器工作在方式1,计数初值3000=BB8H 既30s,计数到则输出一个高电平到8255的PA7口,8255将A口数据输入到8086,8086检测 到高电平既完成30s定时。通道2工作在方式3需输出一个1HZ的方波,通过一个或门和8086 共同控制黄灯的闪烁,因此也是工作在方波发生器方式,其计数初值为100=64H,将黄灯的状态 反馈到8055的端口PB7和PC7,同样输入到8086,8086通过两次检测端口状态可知黄灯的状态 变化,计9次状态变化可完成5次闪烁。 三个通道的门控信号都未用,均接+5V即可。 ○ 2硬件原理及电路图 由于8255A与8086CPU是以低八位数据线相连接的,所以应该是8255A的A1、A 0 线分别与 8086CPU的A2、A线相连,而将8086的 1 A 0 线作为选通信号。如果是按8255A内部地址来看, 则在图中它的地址是PA口地址即(CS+000H),PB口地址为(CS+001H),PC口地址为(CS+002H),

微机原理课程设计报告

微型计算机技术课程设计 指导教师: 班级: 姓名: 学号: 班内序号: 课设日期: _________________________

目录 一、课程设计题目................. 错误!未定义书签。 二、设计目的..................... 错误!未定义书签。 三、设计内容..................... 错误!未定义书签。 四、设计所需器材与工具 (3) 五、设计思路..................... 错误!未定义书签。 六、设计步骤(含流程图和代码) ..... 错误!未定义书签。 七、课程设计小结 (36)

一、课程设计题目:点阵显示系统电路及程序设计 利用《汇编语言与微型计算机技术》课程中所学的可编程接口芯片8253、8255A、8259设计一个基于微机控制的点阵显示系统。 二、设计目的 1.通过本设计,使学生综合运用《汇编语言与微型计算机技术》、《数字电子技术》等课程的内容,为今后从事计算机检测与控制工作奠定一定的基础。 2.掌握接口芯片8253、8255A、8259等可编程器件、译码器74LS138、8路同相三态双向总线收发器74LS245、点阵显示器件的使用。 3.学会用汇编语言编写一个较完整的实用程序。 4.掌握微型计算机技术应用开发的全过程,包括需求分析、原理图设计、元器件选用、布线、编程、调试、撰写报告等步骤。 三、设计内容 1.点阵显示系统启动后的初始状态 在计算机显示器上出现菜单: dot matrix display system 1.←left shift display 2.↑up shift display 3.s stop 4.Esc Exit 2.点阵显示系统运行状态 按计算机光标←键,点阵逐列向左移动并显示:“微型计算机技术课程设计,点阵显示系统,计科11302班,陈嘉敏,彭晓”。 按计算机光标↑键,点阵逐行向上移动并显示:“微型计算机技术课程设计,点阵显示系统,计科11302班,陈嘉敏,彭晓”。 按计算机光标s键,点阵停止移动并显示当前字符。 3.结束程序运行状态 按计算机Esc键,结束点阵显示系统运行状态并显示“停”。 四.设计所需器材与工具 1.一块实验面包板(内含时钟信号1MHz或2MHz)。 2.可编程芯片8253、8255、74LS245、74LS138各一片,16×16点阵显示器件一片。

微机原理课程设计

、 微机原理课程设计 —数据采集系统(查询法) # (

一、课设目的 进一步掌握微机原理只是,了解危机在实时采集过程中的应用,学习、掌握编程和程序调试方法。 , 二、课设内容 用查询法,将ADC 0809通道0外接0~5V电压,转换成数字量后,在七段LED数码管上,以小数点后两位(几十毫伏)的精度,显示其模拟电压的十进值;0809~道0的数字量以线性控制方式送DAC0832输出,当通道O的电压为5V时,0832的OUT为0v,当通道O的电压为0时,0832的OUT为2.5V;此模拟电压再送到ADC0809通道1,转换后的数字量在CRT上以十六进制显示;通道0的数字量经74LS574输出到八位LED上,且以一定的要求,点亮LED指示灯。调整电位器,用示波器或三用表观察0832的变化,观察七段LED数码管数值的变化,观察LED灯的变化, ADC 0809的CLK脉冲,由定时器8254的OUT0提供;ADC 0809的EOC信号,用8255的PC0检测;74LS574外接的LED灯变化如下:若电压值小于0.5V,则最低位(DO)’LED灯亮,若电压值大于4.5V,则最高位LED灯亮,若电压值在0.5V~4.5V,则八位LED灯由低向高变化亮,且高位LED灯亮时低位灯全亮。 要有较好的人机对话界面;控制程序的运行。 三、硬件设计 1、电原理框图 见附件1 2、电原理框图工作过程的简要说明 【 (1)、ADC 0809的INO采集电位器0—5V电压,INl采集0832输出的模拟量。(2)、DAC 0832将ADC 0809的INO数字量后重新转换成模拟量输出。 (3)、8255用于检测ADC 0809转换是否,为七段LED数码管显示提供显示驱动信息。 (4)、七段LED数码管显示ADC 0809的INO的值。 (5)、74LS574驱动八位发光二极管,使它们按要求点亮:来指示当前采样值的范围。 (6)、8254提供ADC 0809的采样时钟脉冲。 (7)、74LSl38译码器为各芯片提供地址信息。 四、软件设计 【 首先进行程序初始化显示提示信息,判断是否有键按下,按下1则继续往下执行,按下2则退出。首先对8254进行初始化选择工作方式及赋初值,然后启动0809的IN0,接着初始化8255,并检测PA7的状态检测转换是否,否继续检测

武科大微机原理课程设计

一、设计题目 键控数据采集及数值显示电路设计 二、设计任务 按不同的数字键(0、1、2、3、4、5、6、7)采集0809相应数据通道的模拟量,并在LED 数码管上显示值。设定输入模拟量在0—5V范围内,显示值在0—255范围内。 三、设计要求 1.画出连接线路图或功能模块引脚连接图。 2.采用8088CPU作主控制器,0809作A/D转换器,采用直接地址译码方法,给各芯片分配地址,选取芯片中必须包含有8255。 3.采用3个共阴极型LED动态显示,只需显示0—255范围内的值。 四、设计思想及需要用的主要芯片 1、设计思想 首先通过编程对8255初始化,然后通过8255对ADC0809转换器初始化,通过0~7号按键(在这里0~7号按键用开关实现,有按键的过程中会有抖动,所以需要加入一个74LS244芯片,用于缓冲),经8088微处理器处理后选择ADC0809的模拟通道,将0~5V内的模拟量通过选择的模拟通道传递给模数转换器,通过转换器把模拟量转换为0~255之间的数字量,将数字量通过可编程并行接口8255(在这里端口A作为数据输入端,端口B作为数据输出端,端口C作为控制端),送给LED数码管显示。 2.主要芯片及其功能 ADC0809与系统的接口包括两个输出口和一个输入口,第一个输出口用于控制芯片内部的模拟通道选择,CPU输出的通道地址从ADC0809的引脚ADDA、ADDB、ADDC输入,并利用ALE信号触发锁存;第二个输出口是哑元,用以触发ADC0809的引脚START启动转换。当转换结束后,ADC0809的引脚EOC会产生一个高电平的状态信号,该信号用于检测,也可用于申请中断。随后,CPU可以从ADC0809的引脚D0-D7输入转换后的数据。其芯片引脚图如下 8255是并行通信接口芯片,其基本功能是以并行的方式在系统总线与I/O设备之间传送

微机原理课程设计

微机原理与应用课程设计

目录 一、设计任务 1、计时秒表,具有分、秒和百分之一秒的计时功能。 2、可以在屏幕中央显示计时结果,屏幕显示彩色图案和文字。 3、秒表具有键控启/停功能,而且可以随时通过键盘复位,清零。 二、设计原理 1、HALT(启动子程序) 2、DIS(宏定义——苹果显示程序) 3、DISS(宏定义——字符串的输出) 4、CLOUR(字体颜色设置程序) 5、IOSET(设置光标位置子程序) 6、GO(初始化显示子程序) 7、TIME(延时子程序) 8、TRAN(压缩BCD码转ASCII码程序) 9、复位、停止等功能的实现 三、流程图 a)主程序流程图 b)压缩BCD转ASCII码子程序流程图 c)延时子程序流程图 四、程序段 五、程序调试 六、程序运行结果 七、心得体会

八、参考文献 一、设计任务: 1.计时秒表,具有分、秒和百分之一秒的计时功能,并可以在屏幕中央显示计时结果。 2.屏幕显示彩色图案和文字。 3.秒表具有键控启/停功能,而且可以随时通过键盘复位,清零。 二、设计原理: 本程序的主要设计原理是用主程序完成百分之一秒与秒之间的转换,显示计时结果,实现暂停,暂停再启动,复位,复位再启动的功能,并通过调用一些附加程序,缩减主程序的长度,提高运行效率和精度,现将用到的所有附加程序的原理及其在运行过程中所起到的作用汇总如下: 1.DIS(宏定义——苹果显示程序) 通过宏调用,实现苹果图案的显示。在宏定义里,设置一个形参变量,作为移动光标的位置,在下面调用宏中,给予变量X不同的实参,输出苹果图案。 2.DISS(宏定义——字符串的输出) 原理同上。 3.CLOUR(字体颜色设置程序) 通过字体颜色设置程序,实现屏显字体颜色的改变。当改变BX值时,字体颜色会改变。 4.HALT(启动子程序) 通过启动子程序,实现计时的开始,当从键盘输入一个字符时,判断是否等于S,如果不等,则在循环执行启动子程序中动态等待,直到输入的字符为S 时,计时开始。 5.IOSET(设置光标位置子程序) 通过设置光标子程序,来设置显示的区域。一般整个屏幕可显示25行,80列,屏幕左上角字符位置为0行0列,右下脚字符为24行79列,对应十六进制为:左上脚为(0,0),右下脚为(18,4F)。入口信息为:(AH)=2 要设置光标;(BH)=0 页号;(DH,DL)=00要置光标于0行0列。DX赋值为0D27H,光标置位于屏幕中央。 6.GO(初始化显示子程序) 通过将在数据段定义的BUFFER数组的首址赋给BX,将待显示初值字符串00:00存入数组中的相应位置,当每次复位以后,重新调用该子程序,将程序的执行结果修正为00:00,并显示于屏幕上,从而实现了程序的初值设定和复位功能。 7.TIME(延时子程序) 计算机每执行一条指令,虽然很快,但是需要一些时间,因此在本程序中可以通过延时程序,让计算机去执行一些无关的程序,来达到时钟秒与百分之一秒转换时的时间延迟。每条指令执行时间的长短,是以计算机的时钟周期为基本单位的,因此不同的计算机可以通过修改延时程序数值来使其达到准确计时。 8.TRAN(压缩BCD码转ASCII码程序)

微机原理课程设计题目

计算机科学与技术04级 微机原理课程设计 一、课程设计的目的 课程设计是实验的提高和综合。通常,学习知识是由浅入深、由此及彼,一点点的学习和积累的,而应用知识则是综合运用所积累的知识来分析和解决实际问题、从知识的系统性来检验对各层次知识的掌握程度。 ?课程设计的目的是让学生把理论学习和实验教学阶段所掌握的知识通过一个设计实例,经历一次理论和实践结合、软件和硬件结合的综合训练,也是一次工程实践能力的检验。这次课程设计大家应当把它作为毕业设计的预演。 ?锻炼通过各种媒体和途径主动获取知识的能力。 二、课程设计的要求 ?课程设计要求独立完成、严禁抄袭; ?较大的题目可以多人合作完成,但每个人都应有自己所承担的任务,并在自己的报告中客观如实地反映; ?课程设计既是综合能力的锻炼,也是协作精神和科学诚信品质的锻炼。如果做相同的题目,要保证各自的独立性,实现方法的多样性。 ?微机原理是一门硬件技术为主、软硬件结合的课程,因此要求,所有的选题都要描述清楚硬件设计的原理和软件设计的逻辑思路。设计尽量在实验箱上完成。 ?在功能设计上尽量完善、贴近实用、有人机交互(人机交互可实用实验箱上的键盘重新定义) ?登录本系的网页,查阅毕业设计的相关文件和设计规范,学习设计报告撰写的各个环节,并在课程设计中认真实践。 ?要珍惜这次课程设计,这是一次总结复习、知识拓展、能力锻炼的大好机会。 ?课题完成后要有一分规范的设计报告。 三、课程设计的时间安排 课程设计的时间为2个完整的教学周。每天的上午一班,下午二班实验室开放,为大家提供调试、辅导的时间。 四、课程设计报告要求 ?为锻炼学生的论文写作能力,为今后的毕业设计(毕业论文)做准备,对设计报告的完成尝试做较高的要求。

微机原理课程设计交通灯

一、课程设计题目 交通灯控制 二、课程设计目的 ●综合运用《微机原理与应用》课程知识,利用集成电路设计实 现一些中小规模电子电路或者完成一定功能的程序,以复习巩 固课堂所学的理论知识,提高程序设计能力及实现系统、绘制 系统电路图的能力,为实际应用奠定一定的基础。 ●掌握8255A方式0的使用与编程方法 ●PC机及配套的接口电路实验装置 ●IC芯片:8255A应用和8253 三、课程设计容 ●采用8255A设计交通灯控制的接口方案 ●采用8253设计延时电路 ●插接电路 ●编写控制程序 四、课程设计过程 1、设计原理 ●8255 8255是Intel公司生产的可编程并行I/O接口芯片,有3 个8位并行I/O口。具有3个通道3种工作方式的可编程 并行接口芯片(40引脚)。其部与引脚图如图所示:

8255有三个端口A、B、C端口,3种不同的工作方式,在其控制字的作用下使某一个端口工作于某一种工作状态下。 8253 intel8253是NMOS工艺制成的可编程计数器/定时器,其部有三个计数器,分别成为计数器0、计数器1和计数器2,他们的机构完全相同,如图所示:

每个计数器的输入和输出都决定于设置在控制寄存器中的控制字,互相之间工作完全独立,采用减1计数方式。控制字如图所示: 在门控信号有效时,每输入1个计数脉冲,通道作1次计数操作。当计数脉冲是已知周期的时钟信号时,计数就成为定时。各通道可有6种可供选择的工作方式,以完成定时、计数或脉冲发生器等多种功能。在这里我们主要采用方式0:计数结

束产生中断 (由低电平变为高电平)。其波形图如图所示: a. 写CW后:OUT=0,直到计数到0 b. 写N后:下1个CLK脉冲下降沿开始计数 c. 计数过程中,可重写N,重写N后,同b. d. GATE的作用:GATE=1计数、=0暂停计数 e. 计数到0:OUT=1,直到再写CW或N 2、方案设计 考虑普通十字路口,交通灯的控制可分东西向和南北向两 组,每组可用红、黄、绿三个灯进行交通管理,所以本方 案要点是至少对六个交通灯进行控制。由于灯光控制只需 要开、关两个状态,所以可以采用开关量实施控制。开关

微机原理课程设计

微机原理与接口技术课程设计报告 设计课题:电动机速度控制器 专业班级:测控技术与仪器 学生姓名:jcl 学生学号:2008 指导教师:ddd 成绩: 二○一一年一月十一日

电动机速度控制器 一、设计目的 1.微机原理与接口技术是一门实践性很强的课程。课程设计教学环节十分重要。通过课程设计,使用微处理器芯片及其它典型的接口芯片,设计微处理器应用的典型接口电路,加深对微处理器、典型接口芯片特性的理解,掌握微处理器接口电路设计的初步方法,并进行一定的编程训练,加强微机应用的工程实践能力; 2.掌握接口芯片8255A和DAC0832的工作原理,熟悉8255A可编程并行口的使用方法,会写8255A 的控制字以及掌握三种工作方式的特点并会使用;会根据DAC0832的输入输出器和DAC寄存器的不同控制方法,选择不同的工作方式:单缓冲方式、双缓冲方式、直通方式。 3.学会自己独立设计电路,熟悉设计的过程,学会利用各种资源。 二、设计要求 利用开关量来实现对输出电压的定量控制,从而控制电动机的转速。 1、通过8255A工作在方式0的基本输入输出功能,输入一个八位的二进制数,同时在利用DAC0832的模数转换功能将其转换成电压信号,从而对输出的电压大小实现量控。 2、用八个开关的输入作为八位二进制数输入,CPU从8255A中读取放在AL中;然后将AL中的数据送入DAC0832中转换成模拟量,从而完成对电压的量控输出,即控制电动机的转速。 3、对于两个接口芯片的操作是用CPU的地址总线通过译码器选中其中一个,从而对其进行读写;DAC0832的工作方式是单缓冲方式。 4、8255A方式选择控制字如下图所示:

微机原理课程设计报告-数字时钟的实现(附代码)

合肥工业大学 计算机与信息学院 课程设计 课程:微机原理与接口技术设计专业班级:计算机科学与技术x班学号: 姓名:

一、设计题目及要求: 【课题6】数字时钟 1.通过8253 定时器作产生秒脉冲定时中断。在中断服务程序中实现秒、分、小时的进位(24小时制)。 2.在七段数码管上显示当前的时分秒(例如,12 点10 分40 秒显示为121040)。 3.按“C”可设置时钟的时间当前值(对准时间)。 二、设计思想: 总体思想: 1、功能概述: 实验箱连线: 本实验建立在Dais实验箱基础上完成的基本连线及程序如下: 138译码器: A,B,C,D,分别连接A2,A3,A4,GS; y0连接8253的CS片选信号; y1连接8259的CS片选信号; 8253连线: 分频信号T2接8253的CLK0; 8253的OUT0接8259的IR7; 8253的gate信号接+5V; 8259连线: 8259的数据线接入数据总线;

本程序包括显示模块,键盘扫描模块,时间计数模块,设置模块等几个模块, (1)程序运行后,LED显示000000初始值,并且开始计数 (2)按C键进行设置初始时间,考虑到第一个数只能是0,1,2,当第一个数显示2时第二个数只能显示0~4,同理下面各位应满足时钟数值的合理的取值; (3)在手动输入初始值时,按D键进行回退1位修改已设置值,连续按D键可以全部进行删除修改。 2、主程序设计 主程序中完成通过调用子程序完成对8253及8259的初始化,对8259进行中断设置。主要在显示子程序和键盘子处理程序之间不断循环,8253每一秒给8259一个刺激,当8259接受到刺激后会给CPU一个中断请求,CPU会转去执行中断子程序,而中断子程序设置成时间计数加,即完成电子表的整体设计。详细流程图见图三-1。 3、LED显示子程序设计 本程序显示部分用了6个共阳极LED作为显示管,显示程序要做到每送一次段码就送一次位码,每送一次位码后,将位码中的0右移1位作为下次的位码,从而可以实现从左到右使6个LED依次显示出相应的数字。虽然CPU每隔一定时间便执行显示程序,但只要这个时间段不太长,由于人眼的视觉作用,就可以在6个LED上同时见到数字显示。 4、键盘扫描子程序设计 本程序需要用键盘对时间的初始值进行设置,因此对键盘扫描的子程序需要满足的功能如下: 判断是否是C键,若不是就返回至主程序,若是C键就开始对时间初始值进行设置,同时因注意到第一个值不可以超过2,第一个数是2时第二数不能超过4,余下的同理要满足时间数值的取值范围呢,若不是合法输入不予反应继续等待输入。当遇到输入数值错误时可以按下D键进行删除一位重新设置;当6位初始值全部设置成功后,电子表将自动开始走表。 5、时间运算子程序设计 该子程序的主要功能是对时、分、秒的运算,并把运算出的最终结果存到事先已经开辟

8086.8088微机原理课程设计

8086/8088微机原理课程设计 1、课程设计说明 “微机原理与接口技术课程设计”主要是测试学生的8086/8088系统输入输出技术应用能力、数字电路应用能力和程序设计能力。 设计题目中综合了《数字逻辑》、《微机原理与接口技术》和《程序设计基础》等课程中的相关知识点。特别是电气工程系各专业学习了《模拟电子》、《传感器技术》、《单片机技术》等课程,给题目的扩展和实际应用提供了基础。本课程的课程设计实际上是一个综合性应用的设计和制作。 这里只给出了部分课程设计的题目,主要和接口电路有关,每个题目的实现方式和扩展空间都很大,指导教师可根据学生的具体情况决定设计题目的内容和设计量。纯汇编语言软件的设计未在这里列出。 欢迎学生自拟题目,经指导教师审核其难易程度和确定所用器材,优先选用。 2、课程设计计分办法 课程设计的计分由课设题目(60)、课设报告(20)、考勤(20)三部分组成。 一、题目的选择 设计题目分为星级制(★),根据选择题目的难易程度确定成绩,以百分制计算,按比例计入总成绩。要根据个人情况合理选择题目,不可多组选择同一题目。 1、无星为最简题目,做完多个题目仅记分为及格(69分及以下)。 2、1星(★)为简单题目,做完1个题目记分为良(70~89分)。 3、2星(★★)为较难题目,做完1个题目记分优(90~100分)。 4、星级题目多做可提高分值。 5、课设一般为分组实施,主要设计者记原星级分值,辅助者减1星。 6.、未完成设计者视设计程度减星计分。 7、无星题目可单人完成,但不选题目者记0分。 二、报告要求 课设报告应按规定格式书写,并按时上交。报告原则上要求手工书写,如要打印必须是独立版本,遇雷同课设报告均不计入总成绩。 三、考勤 考勤。点名一次未到扣5分,5次以上记0分。

微机原理课程设计

课程设计说明书 课程名称:微机原理课程设计 题目:数制转换实验 院系:理学院 专业班级:应用物理13-1 学号: 2013305188 学生:立才 指导教师:声 2016年 6 月 17 日

理工大学课程设计(论文)任务书 年月日

理工大学课程设计(论文)成绩评定表

目录 1. 课程设计实验目的与要求 (1) 1.1从键盘输入数据并显示 (1) 1.2将键盘输入的小写字母转换成大写字母 (1) 2.课程设计实验容 (1) 2.1从键盘输入数据并显示 (1) 2.2将键盘输入的小写字母转换成大写字母 (2) 3.课程设计实验流程图 (2) 3.1从键盘输入数据并显示 (2) 3.2将键盘输入的小写字母转换成大写字母 (3) 4.课程设计实验程序 (4) 4.1从键盘输入数据并显示 (4) 4.2将键盘输入的小写字母转换成大写字母 (8) 5. 课程设计实验运行结果 (12) 5.1从键盘输入数据并显示 (12) 5.2将键盘输入的小写字母转换成大写字母 (13) 6. 课程设计实验心得 (14)

1.课程设计实验目的与要求 1.1从键盘输入数据并显示 1.掌握键盘接受数据的方法,并了解将键盘数据显示时必须转换为 ASCII码的原理,编写程序,将键盘接受到的四位十六进制数据转换 为等值的二进制数显示。 2.掌握子程序定义和调用的方法。 3.掌握循环移位指令的用法和无符号数比较大小的方法。 1.2将键盘输入的小写字母转换成大写字母 1.了解小写字母和大写字母在计算机的表示方法,并学习如何进行转 换,编写程序,接受键盘字符,并将其中的小写字母转变为大写字 母,然后显示在屏幕上。 2.熟练掌握汇编语言程序设计的方法及上机步骤 3.掌握将小写字母转换为相应的大写字母的方法 4.掌握子程序的设计方法 5.掌握DOS功能的调用方法 2.课程设计实验容 2.1从键盘输入数据并显示 为了解小写字母和大写字母在计算机的表示方法,并学习如何进行转换,编写程序,接受键盘字符,并将其中的小写字母转变为大写字母,然后显示在屏幕上。 课程设计要求进行小写字母到大写字母的转换。其实字母大小写的区别在于他们的ASCII码围,它们之间的转换其实就是加减相应的ASCII码值。在判断输入的字母是大写的还是小写的(即判断输入符号ASCII码在41H~5AH还是在61H~7AH)之后,决定判断是加上还是减去ASCII码值

微机原理课程设计报告

— 微机原理 课程设计报告 ——电子表程序设计 ^ 。

(一)设计任务: 用汇编语言设计一电子表程序,要求: ! (1)实现秒、分、时的计时,并显示于屏幕中央 (2)能够校时 (3)能够半点、整点报时 (二)设计原理 该程序主要由三部分构成:时间设置、延时程序和时钟显示。 (1)时间设置 … ①输入初始时间 先调用DOS操作系统模块2,在显示屏上显示‘:’,再调用DOS操作系统模块10,提示输入初始时间。由键盘输入的时间以字符串形式存放在已定义的存储器缓冲区内,继而调用TRAN1转换子程序和MUL10乘10子程序,将存放在存储器缓冲区内的ASCII字符转换为压缩BCD码,并将时、分、秒的值放置在寄存器CH、DH、DL中。 ②暂停计时 按Pause Break键即可暂停计时,再按下任意键恢复计时 ③重新输入时间 在程序运行时,可按下Esc键重新输入初始时间,此时程序检测到Esc(ASCII码为1BH)被按下,返回①步提示重新输入时间。 以上两步可实现校时的功能。

④半点、整点报时 《 程序运行时,分钟值每次改变都需要与30、60比较,若相等,则调用DOS操作系统模块7使计算机响铃并在时间后显示‘ ------’。同时若分、秒值为60则需进位,时为24时进位,保证时钟程序的正确性。 (2)延时程序 计算机在执行指令时,各种操作都按指令执行,但在像程序控制器那样由计算机发出指令控制外部设备是,由于外部设备所具有的机械惯性或其他原因,需要在计算机发出指令后有规律地延迟或等待一段时间。这类延时,可以用硬件延时来完成,单用软件来实现也是一种方便和常用的方法。 计算机执行每一条指令,虽然很快,但还是需要一段时间的。因此从理论上讲,可在程序中加一些与程序无关的指令去完成,要计算指令执行的时间,又不能过多的为了延时而增加编制程序的工作量。因此,编制延时程序,应尽量采用较少的指令,节约存储器,并且不能对主程序造成影响。 每条指令执行时间的长短,是以计算机的时钟周期为基本单位的。当CPU采用的时钟频率一定时,时钟周期也为定值。因此可根据时钟周期的多少来计算执行指令所需的时间。完成本设计任务使用的计算机采用Intel Pentium 4处理器,主频为,时钟周期约为。 通过时间约1s的长延时累加,并以时、分、秒的形式显示出来,就可以编写出一个时钟程序。 (3)时钟显示 … ①设置光标位置子程序IOSET

2012年微机原理课程设计题目

1.将键盘输入的十进制数转换成格雷码并显示(3位以内十进制数)。 2.编制将4位格雷码转换成十进制的转换程序。要去在键盘上输入任一格雷码,即可 在下一行显示出其对应的十进制 3.设计程序,实现从键盘上输入一个加减混合运算式,输入等号后,在下一行上显示 十进制计算结果。 显示示例:Input:3+5+7+8= 23 4.从键盘上输入7名裁判的评分(0~10,整数),扣除一个最高分,扣除一个最低分, 计算出其它五个分数的平均值(保留一位小数),并在显示其上输出“The final score is:”和最终结果。 5.利用小键盘的按键实现步进电机的启动,停止,换向,1X速,2X速,点动等几种运 行情况。 6.为短跑比赛设计一个确定成绩次序的程序,要求能够输入8个队员编号,成绩;输 出最终的排名次序编号及成绩。(成绩时间格式--秒数:百分秒数,如12:15) 7.为评委设计一个显示选手通过的指示器,以电脑显示屏作为指示屏。当从键盘输入 0时,显示屏上呈现“×”图形,表示选手被淘汰;当从键盘输入1时,显示屏上呈现“√”图形,表示选手通过。 8.试设计一个道路收费系统,将车型分为大型车、中型车、小型车,每种车型分别有 各自的单公里收费标准,如下表所示,在收费时,将车型和公里数输入系统,就可自动生成收费额,(公里数取整。收费额以元为单位,保留一位小数)。 车型单公里收费(单位:0.1元)序 号 1 大型车 5 2 中型车 3 3 小型车 1 9.为男子25米手枪速射决赛设计一个排名程序。决赛有6名运动员参加,每人每轮次 打5枪,每枪打中靶子的中心区就计一分,打不中就记0分。四轮比赛之后,先将成绩最低的选手淘汰(即为决赛第6名),另外五位队员继续比赛并累计成绩,一轮之后再淘汰最低分,依次进行,直到最后两个队员直接对决,决出冠军。 设计时可将运动员的编号设置为1~6号,且前4轮比赛已经结束,输入前四轮每位运动员的编号和成绩(1-20),找出末位运动员并设置为第6名,并将其去除,剩下5人。以后每轮输入运动员的成绩(0-5),与前面的成绩累加后进行末位排名,直

微机原理课程设计简单数字电压表的设计模板

微机原理课程设计简单数字电压表的 设计

《微机原理与接口技术》 课程设计 姓名:黄涛 学号: 班级: 09电信2班 专业:电子信息工程 学院:电气与信息工程学院 江苏科技大学张家港校区 6月

目录 一理论部分........................................................................ 错误!未定义书签。 1课题要求与内容 ....................................................... 错误!未定义书签。 2 系统方案设计 ........................................................... 错误!未定义书签。 3 系统硬件的设计 (3) 二实践部分 (4) 1 系统硬件原理简介 (4) 2 系统硬件调试中出现的问题及解决措施 (8) 3 系统软件 (8) 3.1 软件设计 (8) 3.2软件调试中出现的问题及解决措施 (10) 三附录 (11)

数字电压表的设计 一理论部分 1 课题要求与内容 基本要求: (1)使用AD0809获取电压数据。 (2)数据在数码管上面实时显示。 (3)经过按键设置采样时间,比如60秒采集一次。 (4)采样时间计时结束后产生中断,采集电压数据。 附加要求: (1)经过串口在PC上的串口调试助手显示实时电压信号。 2 系统方案设计 本电路采用模块化设计,主要由A/D转换模块、控制模块和LED 显示模块组成.

图 1 数字电压表原理框图 框图功能说明 基准电源:提供A/D转换参考电压,基准电压的精度和稳定性是影响转换精度的主要因素。 A/D电路:A/D转换器是数字电压表的核心部件,由它完成模拟量转换为数字量的任务。 译码驱动电路:将二--十进制(BCD)码转换成七段供LED发光显示信号。 显示电路:将译码器输出的七段信号进行数字显示,即A/D 转换结果。 积分RC元件:经过对RC元件的选取,控制测量量程。 字位驱动电路:根据A/D器上DS4~DS1端的位选信号,控制显示部分个、十、百、千位哪一位上进行显示。 3 系统硬件设计 本电路采用模块化设计,主要由A/D转换模块、控制模块和

2016微机原理与汇编语言课程设计参考题目(1)

微机原理课程设计题目与要求 微机原理课程设计说明: 1. 要求使用 A4 纸打印,必须有封面和目录。 封面内容有课设题目、班级、学号、姓名、指导教师、日期等内容。 2. 课设内容一般应包含如下部分: ①课设目的、内容; ②问题分析、设计思路及原因; ③电路设计及功能说明,硬件原理图(包括接口芯片简介); ④软件部分的程序流程图,算法和使用的编程技巧; ⑤汇编源程序清单,对关键的语句(段)要给出简洁的注释; ⑥设计过程中的主要难点(自己遇到的)及解决思路和办法; ⑦课设结果及分析; ⑧收获、体会和建议。 选题规则: 1-2 班同学按顺次排号,名单附件2,一共88个人,每组4人,分22组,共22个题目,每组选举一个联系人,代表本组抽选题目,并加入讨论群,用于讨论实验事宜。 论文要求: 1.必须采用统一的稿纸。 2.封面按照附件1标准格式书写; 3.课程设计(论文)必须明确包含:题目、题目分析、硬件电路图(仅硬件题目提交)件流程框图、设计思路说明、程序清单(需加必要解释); 4.硬件电路图用A4纸单独绘制,统一装订在论文中; 5.题目相同的论文必须有不同之处,否则所有完全相同的论文都以0分计。 成绩评定:课程设计成绩分两部分,设计报告占40%,设计作品占60%(演示)。 硬件演示软件平台:Proteus、Labview或其他PC平台。

题目1 编程显示学校图书馆广场雕像。 用字符组成汽车图形,在屏幕显示从左向右开动的汽车。 题目2 人名排序程序。 从键盘接收十个人名,字母上升次序显示所输入的人名,每一个人名占一行。 题目3 多功能密码锁 密码锁在输入密码正确的条件下输出开锁电平,控制电控锁开启,同时显示 00 字样。当输入密码错误时,发出错误警告声音,同时显示FF 字样。当六次误码输入的条件下,产生报警电平报警。还可以实现对密码的修改,修改成功后,蜂鸣器发出确认音。 设计任务: 1、选用 8086 和适当的存储器及接口芯片完成相应的功能。 2、用 LED 显示器显示电子锁的当前状态。 3、画出详细的硬件连接图。 4、给出程序设计思路、画出软件流程图。 5、给出地址分配表。 6、给出所有程序清单并加上必要注释。 7、完成设计说明书(列出参考文献,所用器件型号) 题目4 汽车倒车测距仪 设计内容及要求: 设计一个微机控制的汽车倒车测距仪,能测量并显示车辆后部障碍物离车辆的距离,同时用间歇的“嘟嘟”声发出警报,“嘟嘟”声间隙随障碍物距离缩短而缩短,驾驶员不但可以直接观察到检测的距离,还可以凭听觉判断车后障碍物离车辆距离的远近; ①开机后先显示“———” ,并有开机指示灯。 ② CPU 发射超声波 1ms,然后显示 60ms;即1ms+60ms 为一个工作周期,等待回波,在次周期内完成一次探测。

微机原理课程设计模板

课程设计任务书 专业自动化班级 2 姓名李帅帅设计起止日期2015.06.29~2015.07.05 设计题目:模拟热水器控制设计 设计任务(主要技术参数): 按要求设计出模拟热水器控制系统。通过8086系统总线单元和输入输出并行接口8255单元、ADC0809数模转换单元以及数码管显示单元进行连接,并应用所设计的程序使连接好的线路工作正常。 指导教师评语: 成绩:签字: 年月日

整篇论文字数要不小于3000字! 1 引言(一级标题为三号宋体加粗) 随着科学技术的不断发展,在高精尖科技的面前微型计算机的应用是无处不在的,所以要学好微机原理及其应用。对于本次课程设计,按要求通过汇编语言设计出模拟热水器控制系统。根据提供的8086系统总线单元、输入输出并行接口8255单元、ADC0809数模转换单元以及数码管显示单元进行连接,并应用所设计的程序使连接好的线路工作正常。(正文为小四号宋体,行间距为1.5倍,每段的第一行缩进2个汉字。)本次课程设计的题目为“模拟热水器控制设计”,ADC单元中提供0-5V信号源作为ADC0809的模拟输入量,进行A/D转换,这里我们将采取模拟量的电阻变化来模拟温度的变化,通过启动A/D采样将采样的结果送入变量中。显示部分是通过8255单元与数码管显示单元连接来完成的。 程序设计的具体内容如下:将ADC0809单元的电阻调节到一定值,通过A/D转换以及采样,从给定的端口地址来读取采样值。然后经过数制转换后再利用8255单元将读取的值送到ADC0809的端口。利用试验箱的ADC0809单元和发光数码管显示单元,把模拟量的温度,通过制式转换显示在数码管上。将AD采样的结果与我们设定的两个温度值进行比较,如果温度低于30度值则使8255 C口输出00FH值信号让显示灯始终显示绿色,表示温度过低。如果温度超过100度值则使8255 C口输出0F0H值信号让显示灯始终显示红色灯,表示温度过高。

微机原理课程设计

微机原理课程设计报告书 信息工程学院 自动化0704班 学号: 姓名:

交通灯设计 摘要: 在十字路口需要两个方向通车和行人行走,为了保障安全和交通秩序,需要交通灯使得一个方向通车,另一个则截止。红灯亮时表示这个方向禁止通行;绿灯亮时表示这个方向可以通行;黄灯闪烁时表示这个方向有通行转为截止状态。 关键字:交通灯控制器,延时, 主要内容: 此系统实现了A、B口设置红、绿灯点亮时间的功能;红绿灯循环点亮,红绿灯变换之间,黄灯闪烁的功能,其中延时是通过设置指令的循环次数实现的。 a.东西南北红灯全亮 b.南北方向绿灯亮,东西方向红灯亮,存在延迟时间 c.南北方向黄灯闪烁,东西方向红灯亮,存在延迟时间 d.南北方向红灯亮,东西方向绿灯亮,存在延迟时间 e.南北方向红灯亮,东西方向黄灯闪烁,存在延迟时间 f.转b循环 工作原理: 初始状态为4个路口的红灯全亮,之后,南北方向绿灯亮,东西方向红灯亮,延迟20秒后,南北路口黄灯闪烁,闪烁5次后,东西方向绿灯亮,南北方向红灯亮,东西方向通车,延迟20秒后,东西方向黄灯闪烁,再切换到南北方向。之后,重复上述过程。

芯片说明: 8086 8086为16位微处理器,数据总线16位,地址总线20位,可寻址1MB存储空间,时钟频率为5-10MHZ.8086CPU的内部结构由执行单元和总线接口部件两部分组成。 8255A 8255A是40引脚双列直插式芯片,片内有A,B,C3个八位I/O 端口,可提供24条可编程的输入/输出端口线。8255A具有面向主机系统和面向外设两个方面的连接能力,即通过8255A,CPU可直接与外

相关文档
最新文档