文档库 最新最全的文档下载
当前位置:文档库 › 武汉科技大学微机原理课程设计

武汉科技大学微机原理课程设计

武汉科技大学微机原理课程设计
武汉科技大学微机原理课程设计

课程设计报告

学号:

姓名:

学院:信息科学与工程学院

专业:电子信息工程

班级:电信班

指导教师:熊庆国

用汇编语言实现电话本功能

一、目的:

运用所学汇编语言知识,编写一个具有电话本功能的程序,达到提高动手能力以及检验对微机原理课程学习和掌握的程度。

二、内容及要求:

1)能够储存50个电话号码,其中包括人名(20个字符),电话号码(11个字符)。

2)系统可以随时接收新的人名及电话号码。

3)系统具有随时查询号码的功能,输入人名后,在屏幕上显示其相应的电话号码。

4)运行此系统后,显示菜单选项进行功能选择。

三、数据存储方案:

对于电话薄的每一位联系人,姓名占20个字符,加上结束标志$共21字符;电话占11个字符,加上结束标志$共12个字符。所以每一位联系人共占据33个单元,这样我们可以在存储区开辟33*50=1650字节的地址空间。

四、流程图:

(1)程序框图:

在主菜单界面下有三大模块,分别是:添加联系人信息,搜索联系人信息,退出系统。

(2)汇编流程图:

有错误

有错误

有错误

建立、修改asm 文件

汇编生成obj 文件 正确?

链接、生成exe 可执行文件 正确? Debug 调试 正确?

结束 开始

五、汇编运行效果:

(1)在win7命令窗口下使用MASM对源程序进行编译,生成目标文件weiji.obj;

(2)对生成的weiji.obj文件使用link命令进行链接生成weiji.exe可执行文件;

(3)在win7继续执行debug weiji.exe,会出现如下结果,这是由于版本不兼容造成的。我之后的实验步骤均是在DOSBox软件下完成的。

(4)打开DOSBox,找到汇编路径。执行命令debug.exe,然后使用U命令进行反汇编。

(5)继续使用G命令运行程序,得到如下界面菜单显示。按“1”键后显示添加联系人信息,添加完毕后显示菜单。

(6)按“2”键后显示搜索联系人姓名,回车后显示对应联系人电话号码,同时显示菜单界。

(7)按“3”键后显示程序终止正常,退出系统。此时进入汇编命令界面,输入-Q(或-q)退出汇编。

六、问题及解决方法:

在做这个课程设计过程中,第一个问题便是电话薄中联系人信息的存储地址如何进行比较好的分配,同时尽量兼顾存储空间利用的最大化。其中还有一些小的细节问题,比如说在姓名和电话号码后分别需要加上结束标志字符“$”, 这样的话每个联系人的存储单元就要在原来的基础上增加2个单元。

其次的问题就是在各个模块子程序的最后结尾处如何正确使用好条件转移指令,如JMP、JE、JL和JNE等,刚开始的时候总是被这些东西搞得很迷糊,后来认真地复习了微机课本中这部分知识的内容,再加上同学的帮助,终于解决了。

除此之外,还有关于9号和10号功能调用的问题。9号功能调用执行后,显示器将显示待显示的字符串。执行前要在DS数据段定义一串字符,同时该字符必须以“$”结尾,这也就是上面所说的需要在姓名和电话号码后加上“$”标志的原因;10号功能调用,当需要输入字符串时,应当在DS数据段中事先定义一个变量数据区IBUF,需要注意的是,汇编语言是将Enter键仅定义为回车,即光标移至本行的行首,10号功能调用每次都要从键盘接收1个Enter键,当然就需要执行1个回车操作,将显示器光标移到本行的行首。

七、总结与心得体会:

在决定做这个课程设计时,首先的问题是在自己的个人电脑上无法实现程序的运行,在win7系统的cmd.exe命令窗口下不能执行相应的程序,因为64位的win7没有Debug.exe调试程序,于是出现了以上所提及的问题,如果不能执行程序,也就意味着无法验证程序的正确与否,本来准备放弃的,但是后来我在网上搜索相关资料,发现可以通过DOSBox软件实现程序的执行与汇编,于是喜出望外!

在程序编写工程中,我又认真学习了关于汇编语言的相关知识;在程序基本编好之后,我还需要重新复习上学期做过的《微机原理应用与汇编》实验,进一步熟悉Debug的各种常用命令和汇编程序编译的步骤,然后在编译过程中不断调试改正程序以达到预期目的。温故而知新,现在我对这些知识又有了新的更进一步的理解。

通过这一次微机课程设计,我对汇编程序流程图和编程模块化思想有了更深的认识,在程序设计过程中,首先要明白其算法和大致的流程,做到有一个宏观的认识,而流程框图刚好起到了这样的一个作用,让我们对每一步要完成的任务要有一个很清晰的思路。同时当要写一个功能很复杂的程序时可以分几个小的模块,每个模块实现后再进行整体的设计编写,这样不仅可以使编程变得更简单,而且便于发现和检查错误。

最后,在做课程设计过程中,通过查阅资料我学到了不少的新知识,拓宽了自己的知识面,开阔了视野。与此同时,我也体会到了和同学探讨的好处,当遇到了看书查资料仍然不能解决的问题时,可以尝试和同学讨论一下,在讨论中可以解决很多问题,而且还能加深自己的印象,从中获益匪浅。

八、附录:程序清单

STACK SEGMENT STACK ;堆栈段

DW 64 DUP(?)

STACK ENDS

DATA SEGMENT ;数据段

DISP DB '%%%%%%% Menu %%%%%%%%%%',0DH,0AH,

'Enter your choice',0DH,0AH,

'1.Add contacts information',0DH,0AH,

'2.Search contacts',0DH,0AH,

'3.Quit!',0DH,0AH,'%%%%%%%%%%%%%%%%',0DH,0AH,24H ERROR DB 'Error! Please input the right choice!$'

DISP1 DB 'Input the name:$'

DISP2 DB 'Input phone number:$'

DISP3 DB 'Input the name you want search:$'

DISP4 DB 'NO information exist!$'

DISP5 DB 0DH,0AH,'$'

DISP6 DB '%%% PhoneBook %%%',0DH,0AH,24H

DISP7 DB ' The information is successfully stored!$'

DISP8 DB ' %%%% $'

CHOICE DB 2,0,2 DUP(0) ;选择功能

NAMEBUF DB 21,0,21 DUP(0) ;姓名21单元

NUMBERBUF DB 12,0,12 DUP(0) ;电话12单元

SERCHNAME DB 21,0,21 DUP(0) ;搜索姓名

DB '$'

INFO DB 1650 DUP(0)

DA TA ENDS

CODE SEGMENT ;代码段

ASSUME CS:CODE,DS:DA TA,SS:STACK

START: PUSH DS

SUB AX,AX ;AX清零

PUSH AX ;压栈

MOV BX,OFFSET INFO

MOV AX,DATA

MOV DS,AX

A0: MOV DX,OFFSET DISP ;显示菜单选择界面

MOV AH,9

INT 21H

MOV DX,OFFSET DISP5

MOV AH,9

INT 21H

MOV DX,OFFSET CHOICE ;用户输入选择功能

MOV AH,10

MOV DX,OFFSET DISP5

MOV AH,9

INT 21H

MOV SI,OFFSET CHOICE ;判断用户输入

INC SI

INC SI

MOV AL,[SI]

SUB AL,31H

JE A1 ;选择功能1 执行A1

MOV AL,[SI]

SUB AL,32H

JE A2 ;选择功能2 执行A2

MOV AL,[SI]

SUB AL,33H

JE A3 ;选择功能3 执行A3

MOV DX,OFFSET ERROR ;选择错误,显示error!

MOV AH,9

INT 21H

MOV DX,OFFSET DISP5

MOV AH,9

INT 21H

MOV DX,OFFSET DISP6

MOV AH,9

INT 21H

JMP A0 ;显示出错后返回主菜单界面

A1: CALL ENTER

JMP A0 ;返回主菜单界面

A2: CALL SERCH

JMP A0 ;返回主菜单界面

A3: MOV AH,4CH

INT 21H ;退出程序

ENTER PROC NEAR ;进入添加联系人模块

SUB CX,CX

MOV DX,OFFSET DISP1 ;界面显示输入联系人姓名

MOV AH,9

INT 21H

MOV DX,OFFSET NAMEBUF ;用户输入联系人姓名

MOV AH,10

INT 21H

MOV SI,DX ;将缓冲区中名字复制到预定义存储区INFO中MOV CL,[SI+1]

N: MOV AL,[SI+2]

MOV [BX],AL

INC SI

LOOP N

MOV BYTE PTR [BX],'$'

MOV DX,OFFSET DISP5 ;界面显示输入号码

MOV AH,9

INT 21H

MOV DX,OFFSET DISP2 ;用户输入对应号码

MOV AH,9

INT 21H

MOV DX,OFFSET NUMBERBUF

MOV AH,10

INT 21H

MOV SI,DX ;将缓冲区中号码复制到预定义存储区INFO中MOV CL,[SI+1]

INC BX

P: MOV AL,[SI+2]

MOV [BX],AL

INC BX

INC SI

LOOP P ;循环操作

MOV BYTE PTR [BX],'$'

INC BX

MOV DX,OFFSET DISP5

MOV AH,9

INT 21H

MOV DX,OFFSET DISP7 ;界面显示信息存储成功

MOV AH,9

INT 21H

MOV DX,OFFSET DISP5

MOV AH,9

INT 21H

MOV DX,OFFSET DISP6

MOV AH,9

INT 21H

RET

ENTER ENDP

SERCH PROC NEAR ;查询联系人模块

MOV DX,OFFSET DISP3 ;界面显示用户输入查询的姓名

MOV AH,9

INT 21H

MOV DX,OFFSET SERCHNAME ;用户输入要查询的名字

MOV AH,10

INT 21H

MOV DX,OFFSET DISP5

MOV AH,9

INT 21H

MOV SI,OFFSET INFO ;执行查询操作

DEC SI

B00: MOV DX,OFFSET SERCHNAME

MOV DI,DX

INC DI

B0: INC DI

INC SI

CMP BYTE PTR [SI],'$' ;比较

JE B1 ;若SI指向内容为'$',找到信息,跳转到B1输出信息MOV AL,[DI]

CMP AL,[SI]

JE B0 ;逐个字符比较,相同跳回B0继续比较判断

CMP SI,BX ;若不同则与BX(INFO区已存信息末地址)比较JL B2 ;SI小于BX,则跳转至B2

JMP B3 ;反之,未查找到,跳转至B3

B2: MOV CX,2

DEC SI

B20: INC SI

CMP BYTE PTR [SI],'$' ;比较

JNE B20

LOOP B20

JMP B00 ;返回B00继续查找,进行比较判断B1: MOV DX,OFFSET DISP8 ;查找到信息,输出信息

MOV AH,9

INT 21H

MOV DX,SI

INC DX

MOV AH,9

INT 21H

MOV DX,OFFSET DISP8

MOV AH,9

INT 21H

MOV DX,OFFSET DISP5

MOV AH,9

INT 21H

MOV DX,OFFSET DISP6

MOV AH,9

INT 21H

JMP EXIT ;信息输出完毕,跳至EXIT结束子程序B3: MOV DX,OFFSET DISP4 ;未找到所需信息,提示输出并结束子程序MOV AH,9

INT 21H

MOV DX,OFFSET DISP5

MOV AH,9

INT 21H

MOV DX,OFFSET DISP6

MOV AH,9

INT 21H

EXIT: RET

SERCH ENDP

CODE ENDS

END START ;主程序结束

武科大微机原理课程设计

一、设计题目 键控数据采集及数值显示电路设计 二、设计任务 按不同的数字键(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设备之间传送

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

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),

微机原理课程设计报告

微机原理课程设计报告 课程设计是每一个大学生在大学生涯中都不可或缺的, 它使我们在实践中了巩固了所学的知识、在实践中锻炼自己的动手能力,本文就来分享一篇微机原理课程设计报告,希望对大家能有所帮助! 微机原理课程设计报告(一)以前从没有学过关于 汇编语言的知识,起初学起来感觉很有难度。当知道要做课程设计的时候心里面感觉有些害怕和担心,担心自己不会或者做不好。但是当真的要做的时候也只好进自己作大的努力去做,做到自己最好的。 我们在这个过程中有很多自己的感受,我想很多同学都 会和我有一样的感受,那就是感觉汇编语言真的是很神奇,很有意思。我们从开始的担心和害怕渐渐变成了享受,享受着汇编带给我们的快乐。看着自己做出来的东西,心里面的感觉真的很好。虽然我们做的东西都还很简单,但是毕竟是我们自己亲手,呵呵,应该是自己亲闹做出来的。很有成就感。 我想微机原理课程设计和其他课程设计有共同的地方, 那就是不仅加深和巩固了我们的课本知识,而且增强了我们自己动脑,自己动手的能力。但是我想他也有它的独特指出,那就是让我们进入一个神奇的世界,那就是编程。对于很多学过汇编或者其他的类似程序的同学来说,这不算新奇,但是对于我来说真的新奇,很有趣,也是我有更多的兴趣学习微机原理和其他的汇编。 微机原理与接口技术是一门很有趣的课程,任何一个计 算机系统都是一个复杂的整体,学习计算机原理是要涉及到整体的每一部分。讨论某一部分原理时又要涉及到其它部分的工作原理。这样一来,不仅不能在短时间内较深入理解计算机的工作原理,而且也很难孤立地理解某一部分的工作原理。所以,在循序渐进的课堂教学过程中,我总是处于“学会了一些新知识,弄清了一些原来保留的问题,又出现了些新问题”的循环中,直到课程结束时,才把保留的问题基本搞清楚。 学习该门课程知识时,其思维方法也和其它课程不同,

最新微机原理课程设计任务书模板

微机原理课程设计任 务书模板

南京工程学院 课程设计任务书 课程名称微机原理及应用院(系、部、中心 专业电气工程及其自动化 班级 起止日期 指导教师

[1] 李继灿.新编16/32微型计算机原理及应用[M].北京:清华大学出版社,2004 [2] 李干林. 微机原理实验指导书 [M] .南京工程学院,2010. [3]郑学坚,周斌. 微型计算机原理及应用[M] . 北京:清华大学出版社,2001. [4]朱定华等. 微型计算机原理及应用[M]. 北京:电子工业出版社,2005. 5.课程设计进度安排 起止日期工作内容 2010年9月6日9月7~5月9日 9月10日复习微机原理知识,根据任务书构思设计方案 完成8255、8253实验,并构思课设的硬件接线。进行课设内容的汇编程序设计及内容调试。 进行课设内容考核。 6.成绩考核办法 (1)工作表现:独立工作能力及设计过程的表现。占总成绩的30%。 (2)设计成果:设计说明书、程序、的质量。占总成绩的40%。 (3)考核测评:课程设计结束前,指导教师应采用考试对所指导的学生进行测 评。测评成绩占总成绩的30%。 教研室审查意见: 教研室主任签字: 年月日

七.参考文献 [1] 李继灿.新编16/32微型计算机原理及应用[M].北京:清华大学出版社,2004 [2] 李干林. 微机原理实验指导书 [M] .南京工程学院,2010. [3]郑学坚,周斌. 微型计算机原理及应用[M] . 北京:清华大学出版社,2001. [4]朱定华等. 微型计算机原理及应用[M]. 北京:电子工业出版社,2005.

微机原理实验报告

西安交通大学实验报告 课程_微机与接口技术第页共页 系别__生物医学工程_________实验日期:年月日 专业班级_____组别_____交报告日期:年月日 姓名__ 学号__报告退发 ( 订正、重做 ) 同组人_教师审批签字 实验一汇编语言程序设计 一、实验目的 1、掌握Lab6000p实验教学系统基本操作; 2、掌握8088/8086汇编语言的基本语法结构; 3、熟悉8088/8086汇编语言程序设计基本方法 二、实验设备 装有emu8086软件的PC机 三、实验内容 1、有一个10字节的数组,其值分别是80H,03H,5AH,FFH,97H,64H,BBH,7FH,0FH,D8H。编程并显示结果: 如果数组是无符号数,求出最大值,并显示; 如果数组是有符号数,求出最大值,并显示。 2、将二进制数500H转换成二-十进制(BCD)码,并显示“500H的BCD是:” 3、将二-十进制码(BCD)7693转换成ASCII码,并显示“BCD码7693的ASCII是:” 4、两个长度均为100的内存块,先将内存块1全部写上88H,再将内存块1的内容移至内存块2。在移动的过程中,显示移动次数1,2 ,3…0AH…64H(16进制-ASCII码并显示子

程序) 5、键盘输入一个小写字母(a~z),转换成大写字母 显示:请输入一个小写字母(a~z): 转换后的大写字母是: 6、实现4字节无符号数加法程序,并显示结果,如99223344H + 99223344H = xxxxxxxxH 四、实验代码及结果 1.1、实验代码: DATA SEGMENT SZ DB 80H,03H,5AH,0FFH,97H,64H,0BBH,7FH,0FH,0D8H;存进数组 SHOW DB 'THE MAX IS: ','$' DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA ;把数据的基地址赋给DS MOV DS,AX MOV DX,OFFSET SHOW ;调用DOS显示字符串 MOV AH,09H INT 21H MOV SI ,OFFSET SZ ;数组的偏移地址赋给SI MOV CX,10 ;存进数组的长度给CX MOV DH,80H ;将数组的第一个数写进DH NEXT: MOV BL,[SI] ;将数组的第一个数写进BL CMP DH,BL ;比较DH和BL中数的到校 JAE NEXT1 ;如果DH中的数大于BL中,将跳转到NEXT1 MOV DH,BL ;如果DH中的数小于BL中,将BL中的数赋给DH NEXT1: INC SI ;偏移地址加1 LOOP NEXT;循环,CX自减一直到0,DH中存数组的最大值 ;接下来的程序是将将最大值DH在屏幕上显示输出 MOV BX,02H NEXT2: MOV CL,4 ROL DH,CL ;将DH循环右移四位

微机原理课程设计报告

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

目录 一、课程设计题目................. 错误!未定义书签。 二、设计目的..................... 错误!未定义书签。 三、设计内容..................... 错误!未定义书签。 四、设计所需器材与工具 (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点阵显示器件一片。

微机原理与单片机实验报告

北京联合大学信息学院实验报告 课程名称:微型计算机原理学号: 姓名: 2012 年 6 月 9 日

目录 实验1 EMU8086模拟器的使用 (3) 实验2 数据传送指令的使用 (5) 实验3 多位十六进制加法运算实验 (9) 实验5 循环程序实验 (11) 实验6 由1 到100 求和实验 (13) 实验7 求表中正数_负数_0 的个数实验 (14) 实验8 数据排列实验(冒泡排序) (16) 实验9 系统功能调用(大小写转换) (18) 实验10 阶乘(递归运算) (20) 实验11 ProteusIO工程文件的建立 (21) 实验12 IO口读写实验(245、373) (22) 实验13 8255 接口实验 (24) 实验14 声光报警 (25) 实验总结 (28)

实验1 EMU8086模拟器的使用 一实验要求 利用EMU8086模拟器环境,完成创建源程序文件,运行调试,实验结果的查看二实验目的: 熟悉EMU8086实验环境 三EMU8086环境: 1 模拟器编辑窗口 2 模拟器调试窗口

四实验内容 实验内容1:新建文件。 运行emu8086 1. 新建文件:单击“新建”按钮,选择COM模板,在模拟器编辑窗口中输入如下程序代码: MOV AX, 1020H MOV BX, 2030H MOV AX, BX ADD AX, BX MOV [BX], AX MOV [2032H], AX HLT 2. 编译:单击“编译”按钮,对程序段进行编译; 3. 保存:编译通过,单击“完成”按钮,将其以文件名“EXP1”保存在本地磁盘上。 4. 仿真:单击“仿真”按钮,打开模拟器调试窗口和源文件窗口。 5.在模拟器调试窗口中的寄存器组区,查看数据寄存器AX,BX,CX,DX;段寄存器CS,ES,SS,DS;指令指针寄存器IP;指针寄存器SP,BP;变址寄存器SI,DI;标志寄存器的值。 6.单击“单步前”按钮,单步执行程序,并观察每次单步执行后,相关寄存器值的变化。 7.单击“重载”按钮,将程序重载,并调整指令运行步进时延为400毫秒,单击“全速”按钮,运行程序, 8.程序运行之后,在程序调试窗口中,选择[view]/[memory],查看模拟器环境中,内存单元0700:0100开始的连续10个单元的内容 9.将“存储器”中的地址改为0700:2030,查看开始的四个字节的内容,并思考其内容与程序

微机原理课程设计实验报告DOC

河北科技大学 课程设计报告 学生姓名:学号: 专业班级: 课程名称: 学年学期: 指导教师: 年月

课程设计成绩评定表 学生姓名学号成绩 专业班级起止时间2011.12.24—2012.11.28 设计题目字符串动画显示 指 导 教 师 评 语 指导教师: 年月日

目录 一、课程设计的目的 (1) 二、设计题目 (1) 三、设计内容要求 (2) 四、设计成员及分工 (2) 五、课程设计的主要步骤 (2) 六、课程设计原理及方案 (3) 七、实现方法 (3) 八、实施结果 (8) 九、总结 (8) 十、体会感受 (8)

一、课程设计的目的 课程设计是以自己动手动脑,亲手设计与调试的。它将基本技能训练、基本工艺知识和创新启蒙有机结合,培养我们的实践和创新能力。课程设计的意义,不仅仅是让我们把所学的理论知识与实践相结合起来,提高自己的实际动手能力和独立思考的能力。作为信息时代的大学生,基本的动手能力是一切工作和创造的基础和必要条件。 课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识解决实际工程设计和应用问题的能力的重要教学环节,它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一种较好方法。 《微机原理及应用》是一门应用性、综合性、实践性较强的课程,没有实际的有针对性的设计环节,学生就不能很好的理解和掌握所学的技术知识,更缺乏解决实际问题的能力。所以通过有针对性的课程设计,使学生学会系统地综合运用所学的理论知识,提高学生在微机应用方面的开发与设计本领,系统的掌握微机硬软件设计方法。 通过课程设计实践,不仅要培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅专业资料、工具书或参考书,掌握工程设计手段和软件工具,并能以图纸和说明书等表达设计思想和结果的能力。培养学生事实求是和严肃认真的工作态度。 通过设计过程,要求学生熟悉和掌握微机系统的软件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。让学生独立或集体讨论设计题目的系统方案论证设计、编程、软件调试、查阅资料、编写说明书等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练的熟练掌握微机系统的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的软件调试方法和步骤,熟悉微机系统的软件开发工具的使用方法。 二、设计题目

微机原理课程设计题目

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

南邮微机原理实验报告资料

《微型计算机原理与接口技术》 上机实验 学院:电子科学与工程 专业:电磁场与无线技术 姓名:陈秀慧 课程号:B0300062S 学号: B14020604 任课老师:欧晓鸥 2016年 3 月 21日

一、实验目的 熟悉第四章汇编语言程序设计中简化段定义格式,汇编语言循环结构的实现,DOS功能的调用等功能,以及算术运算程序设计中字符串处理程序设计中内容的显示,十六进制ASCII码与各数值的转化,比较搜索等命令。 二、实验任务 1.在微型计算机上用汇编语言编程完成实验内容所规定的实验; 2.记录源代码和程序调试过程; 3.完成实验报告。 三、主要仪器设备 硬件:微型计算机 软件:未来汇编 四、实验内容 上机题1.显示5行HELLO 源程序: .486 DATA SEGMENT USE16 MESG DB 'HELLO' DB 0,0,0 DATA ENDS CODE SEGMENT USE16 ASSUME CS:CODE,DS:DATA BEG: MOV AX,DATA MOV DS,AX MOV ES,AX MOV CX,5 LL1: MOV MESG+5,0DH MOV MESG+6,0AH MOV MESG+7,'$' CALL DISP MOV MESG+5,0 MOV MESG+6,0 MOV MESG+7,0 LOOP LL1 MOV AH,4CH INT 21H DISP PROC MOV AH,9 MOV DX,OFFSET MESG INT 21H RET

DISP ENDP CODE ENDS END BEG 运行结果: 上机题2.询问用户姓名并等待输入,用户输入姓名后按回车键程序再把输入的姓名复制显示在屏幕上 源程序: .586 DATA SEGMENT USE16 MESG DB 'What is your name?$' MESG2 DB '?(Y/N)$' BUF DB 30 DB ? DB 30 DUP(?) DATA ENDS CODE SEGMENT USE16 ASSUME CS:CODE,DS:DATA BEG: MOV AX,DATA MOV DS,AX AGAIN:MOV AH,9 MOV DX,OFFSET MESG INT 21H MOV AH,0AH MOV DX,OFFSET BUF

武汉科技大学微机原理课程设计

课程设计报告 学号: 姓名: 学院:信息科学与工程学院 专业:电子信息工程 班级:电信班 指导教师:熊庆国

用汇编语言实现电话本功能 一、目的: 运用所学汇编语言知识,编写一个具有电话本功能的程序,达到提高动手能力以及检验对微机原理课程学习和掌握的程度。 二、内容及要求: 1)能够储存50个电话号码,其中包括人名(20个字符),电话号码(11个字符)。 2)系统可以随时接收新的人名及电话号码。 3)系统具有随时查询号码的功能,输入人名后,在屏幕上显示其相应的电话号码。 4)运行此系统后,显示菜单选项进行功能选择。 三、数据存储方案: 对于电话薄的每一位联系人,姓名占20个字符,加上结束标志$共21字符;电话占11个字符,加上结束标志$共12个字符。所以每一位联系人共占据33个单元,这样我们可以在存储区开辟33*50=1650字节的地址空间。 四、流程图: (1)程序框图:

在主菜单界面下有三大模块,分别是:添加联系人信息,搜索联系人信息,退出系统。 (2)汇编流程图: 有错误 有错误 有错误 建立、修改asm 文件 汇编生成obj 文件 正确? 链接、生成exe 可执行文件 正确? Debug 调试 正确? 结束 开始

五、汇编运行效果: (1)在win7命令窗口下使用MASM对源程序进行编译,生成目标文件weiji.obj; (2)对生成的weiji.obj文件使用link命令进行链接生成weiji.exe可执行文件; (3)在win7继续执行debug weiji.exe,会出现如下结果,这是由于版本不兼容造成的。我之后的实验步骤均是在DOSBox软件下完成的。

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

合肥工业大学 计算机与信息学院 课程设计 课程:微机原理与接口技术设计专业班级:计算机科学与技术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、时间运算子程序设计 该子程序的主要功能是对时、分、秒的运算,并把运算出的最终结果存到事先已经开辟

微机原理课程设计

微机原理课程设计

《微机原理与接口技术》课程设计 院系: 班级: 姓名: 指导教师: 日期:

一设计任务: 编写一汇编语言程序,要求从键盘接收一个四位的十六进制数,并在终端上显示与它等值的二进制数和十进制数。(课例027、017、024) 二设计方案 将接收到的数转成16进制数,将这个数保存在一个通用寄存器中(如AX),然后对AX循环做16次SHL,由carry标志寄存器的状态来判断显示0/1。十六位二进制数保存在BX中,对BX中的二进制数循环左移,每次移一位,然后把BL中的二进制数送给AL,再对AL 的前7位进行屏蔽,只留一位原本是最高位的那位二进制数,它要么为1,要么为0。然而把AL中的这位二进制数转换为十进制数,并且输出,由于AL高7位都为0,所以转换位十进制后,然后要么为1,要么为0,并且与那位二进制数相对应。这样循环做16次,就把整个BX中的二进制数都显示出来。 软件VisulASMSetup汇编程序的上机过程是: 1)打开软件建立新文件并把程序粘贴在文件上点击汇编源程序2)下一步然后再点链接目标码 3)然后点调试程序 4)最后点运行程序

三流程图 N N 开始 初始化循环计数值 BX 循环逻辑左移一个数位 输入一个四位的 十六进制数 >9吗? 转换为十进制 显示二进制数 循环计数器 =0? 结束

1.程序运行结果截图

附录 STACK SEGMENT PARA STACK 'STACK' DW200DUP(0);初始化堆栈大小为 STACK ENDS DATE SEGMENT TRANB DB0DH,0AH,'The transformed binary is:',0DH,0AH,'$' TRAND DB0DH,0AH,'The transformed demical is:',0DH,0AH,'$' RESULT DB5DUP(?),'$' DATE ENDS CODE SEGMENT

北京邮电大学微机原理硬件实验报告

北京邮电大学微机原理硬件实验报告

实验报告一:I/0地址译码和简单并行接口 ——实验一&实验二 一、实验目的 掌握I/O地址译码电路的工作原理;掌握简单并行接口的工作原理及使用方法。 二、实验原理及内容 a) I/0地址译码 1、实验电路如图1-1所示,其中74LS74为D触发器,可直接使用实验台上数 字电路实验区的D触发器,74LS138为地址译码器。译码输出端Y0~Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H~ 287H,Y1:288H~28FH,……当CPU执行I/O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。 例如:执行下面两条指令 MOV DX,2A0H OUT DX,AL(或IN AL,DX) Y4输出一个负脉冲,执行下面两条指令 MOV DX,2A8H OUT DX,AL(或IN AL,DX) Y5输出一个负脉冲。 利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔经过软件延时实现。 2、接线: Y4/IO地址接 CLK/D触发器

Y5/IO地址接 CD/D触发器 D/D触发器接 SD/D触发器接 +5V Q/D触发器接L7(LED灯)或逻辑笔 b) 简单并行接口 1、按下面图4-2-1简单并行输出接口电路图连接线路(74LS273插通 用插座,74LS32用实验台上的“或门”)。74LS273为八D触发器, 8个D输入端分别接数据总线D0~D7,8个Q输出端接LED显示电 路L0~L7。 2、编程从键盘输入一个字符或数字,将其ASCⅡ码经过这 个输出接口输出,根据8个发光二极管发光情况验证正确 性。 3、按下面图4-2-2简单并行输入接口电路图连接电路 (74LS244插通用插座,74LS32用实验台上的“或门”)。 74LS244为八缓冲器,8个数据输入端分别接逻辑电平开关 输出K0~K7,8个数据输出端分别接数据总线D0~D7。 4、用逻辑电平开关预置某个字母的ASCⅡ码,编程输入这 个ASCⅡ码,并将其对应字母在屏幕上显示出来。 5、接线:1)输出 按图4-2-1接线(图中虚线为实验所需接线,74LS32为实验 台逻辑或门) 2)输入 按图4-2-2接线(图中虚线为实验所需接线,74LS32为实 验台逻辑或门) 三、硬件连线图 1、I/O地址译码

微机原理及应用课程设计报告最终版

《微机原理及应用》课程设计报告 题目LED16*16点阵实验 学院电子信息工程学院 专业电子信息工程 组长姓名和学号 学生姓名和学号 指导教师 2015 年 1 月 22 日

目录 1 选题目的、意义及任务 (1) 1.1 选题目的 (1) 1.2 选题意义 (1) 1.3 设计任务 (1) 2 方案设计 (2) 2.1设计思路......................... . (2) 2.2总体设计 (3) 2.3设计论证 (3) 2.4硬件连接 (3) 3 设计流程 (6) 3.1程序流程图 (6) 4 主程序分析 (7) 4.1程序分析 (7) 4.2功能解释 (9) 5 调试结果 (9) 5.1硬件、软件实现 (9) 5.2结果图 (10) 6 团队构成 (10) 7 问题分析 (11) 8 心得体会 (11) 8 附录 (14)

1 选题目的、意义及任务 1.1 选题目的 本次微机原理及应用课程设计我们组的选题是LED16*16点阵实验。LED点阵通过LED(发光二极管)组成,以灯珠亮灭来显示文字、图片、动画、视频等,LED点阵常常被用来做点阵屏。点阵屏是各部分组件都模块化的显示器件,通常由显示模块、控制系统及电源系统组成。LED点阵显示系统中各模块的显示方式有静态和动态显示两种,静态显示原理简单、控制方便,但硬件接线复杂,在实际应用中一般采用动态显示方式,动态显示采用扫描的方式工作,由峰值较大的窄脉冲驱动,从上到下逐次不断地对显示屏的各行进行选通,同时又向各列送出表示图形或文字信息的脉冲信号,反复循环以上操作,就可以显示各种图形或文字信息。对于我们的课程设计主要目的如下: ①熟悉8155、8255的功能,了解点阵显示的原理及控制方法; ②学会使用LED点阵,通过编程显示不同字符; 1.2选题意义 LED显示屏具有亮度高、工作电压低、功耗小、微型化、易与集成电路匹配、驱动简单、寿命长、耐冲击、性能稳定等特点。广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。因此16*16LED点阵实验的课程设计对实际的生产和生活具有非常重要的指导意义。通过LED16*16点阵实验来让我们更好地理解微机工作的原理,并更深层次的了解各大芯片的用法以及功能。 1.3设计任务 设计一个能显示16X16点阵图文LED显示屏,要求能显示文字,文字应稳定、清晰,文字以卷帘形式向上滚动显示“欢迎使用星研实验仪”。

北京交通大学微机原理实验报告

微机原理 实 验 报 告 隋伟 08212013 自动化0801

目录 一、I/O地址译码与交通灯控制实验 (3) 二、可编程定时器/计数器(8253) (6) 三、中断实验(纯DOS) (11) 四、模/数转换器………………………………………………………… 18 五、串行通讯…………………………………………………………… 16 六、课程综合实验(抢答器) …………………………………………… 28 七、自主设计实验——LED显示 (32) 八、参考文献 (35)

一、I/O地址译码与交通灯控制实验 一.实验目的 通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用。 二.实验内容 如图5-3,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通灯变化规律燃灭。 十字路口交通灯的变化规律要求: (1)南北路口的绿灯、东西路口的红灯同时亮3秒左右。 (2)南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮。 (3)南北路口的红灯、东西路口的绿灯同时亮3秒左右。 (4)南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁若干次。 (5)转(1)重复。 8255动态分配地址: 控制寄存器: 0C40BH A口地址: 0C408H C口地址: 0C40AH

三.程序流程图和程序清单 DATA SEGMENT X DB ? DATA ENDS STACK1 SEGMENT STACK DW 100H DUP(0) STACK1 ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK1 START: MOV AX,DATA MOV DS,AX ;---------------INIT---------------- MOV DX,0C40BH ;写控制字

微机原理课程设计任务书v1.0

二○一三~二○一四学年第一学期 信息科学与工程学院 自动化系 课程设计计划书 班级: 课程名称:微机原理及应用课程设计学时学分: 1 周 1 学分 指导教师: 二○一三年月日

1、课程设计目的: 综合运用本课程知识,全面掌握微型计算机及其接口的工作原理、编程和实用方法的重要实践环节。通过独立提出并论证设计方案,进行软、硬件调试,最后获得正确的运行结果,可加深和巩固对理论教学和实验教学内容的掌握,进一步建立计算机系统整体概念,初步掌握微机硬件开发方法,为以后进行实际的计算机软、硬件应用开发打下良好的基础。 2、课程设计时间安排: 第一天:教师布置设计任务,讲解设计要求,提示设计要点。 第二~四天:查阅资料(在图书馆或上网),提出设计方案。 第三~八天:画出详细设计图(电路图),编写程序,调试程序,得出实验结果并写出设计报告。 3、课程设计内容及要求: 题目一智能工业供水系统的设计与模拟 某工业供水系统中有水网供水和大(30kw)、小(22kw)两个水泵从地下抽水3种方式。为保证供水和节约用水,需设计一个控制系统,根据水网水压在3中方式之间自动切换。 设计要求: (1)随时检测水网水压(用0-5v模拟信号代替),当该信号低于3V时,打开小水泵抽水,当该信号低于2V时候,打开大水泵抽水。大于3V时直接使用 水网供水。 (2)当某一水泵电机过热时(有0-5v模拟信号表示发热程度,如果该信号大于4V时表示过热),自动切换到另一水泵上,并且显示过热水泵泵号(LED 显示),若两泵电机均过热,则报警,两泵编号交替显示,并切换到水网供 水。 (3)输出的控制信号可用8255A的输出或DAC0832的模拟输出。 题目二铁路司机防睡控制系统 铁路司机的在工作过程中不允许睡觉,需设计一个防睡控制系统让火车正常运行。(需要大家自学8253部分的内容) 设计要求: (1)每10min用较低声音(可直接用PWM控制蜂鸣器,或者用DAC输出较低电平控制蜂鸣器)提醒一次司机,司机按某一按键后复位,计 时重新开始。 (2)若计时到11min时无人按复位键,则以较高声音报警,同时黄灯点亮,每隔1分钟计数器加1,记录司机睡眠时间。 (3)当计时到20min时红灯点亮,并以最高声音报警。以LED显示分和秒。

微机原理课程设计心得体会3篇

微机原理课程设计心得体会3篇课程设计是对课程的各个方面做出规划和安排,是连接课程基本理念和课程实践活动的桥梁。下面是为大家带来的微机原理课程设计心得体会,希望可以帮助大家。 微机原理课程设计心得体会范文1: 计算机网络的设计是一个要求动手能力很强的一门实践课程,在课程设计期间我努力将自己以前所学的理论知识向实践方面转化,尽量做到理论与实践相结合,在课程设计期间能够遵守纪律规章,不迟到、早退,认真完成老师布置的任务,同时也发现了自己的许多不足之处。 在课程设计过程中,我一共完成了11个实验,分别是1.制作直通电缆和交叉UTP、2.交换机Console口和Telnet配置、3.交换机端口和常规配置、4.虚拟局域网VLAN配置、5.路由器Console口Telnet 配置方法和接口配置、6.路由器静态路由配置、7单臂路由配置、8.动态路由协议配置、9.PPP协议配置、10路由器访问控制表(ACL)、11.网络地址转换(NAT)。 在制作直通电缆和交换UTP的实验中,我起初不能完全按照要求来剪切电缆,导致连接不通,后来在同学的帮助下,终于将实验完成。 在做到单臂路由配置和动态路由协议配置的实验,由于自身的基础知识掌握不牢,忘掉了一些理论知识,在重新翻阅课本和老师的指导之下,也成功的完成了试验。

从抽象的理论回到了丰富的实践创造,细致的了解了计算机网络连接的的全过程,认真学习了各种配置方法,并掌握了利用虚拟环境配置的方法,我利用此次难得的机会,努力完成实验,严格要求自己,认真学习计算机网络的基础理论,学习网络电缆的制作等知识,利用空余时间认真学习一些课本内容以外的相关知识,掌握了一些基本的实践技能。 课程设计是培养我们综合运用所学知识,发现、提出、分析、解决问题的一个过程,是对我们所学知识及综合能力的一次考察。随着科学技术日新月异的不断发展,计算机网络也在不断的变化发展当中,这就要求我们用相应的知识来武装自己,夯实基础,为将来走向工作岗位,贡献社会做好充分的准备。 微机原理课程设计心得体会范文2: "微机原理与系统设计" 作为电子信息类本科生教学的主要基础课之一,课程紧密结合电子信息类的专业特点,围绕微型计算机原理和应用主题,以Intelx86CPU为主线,系统介绍微型计算机的基本知识,基本组成,体系结构和工作模式,从而使学生能较清楚地了解微机的结构与工作流程,建立起系统的概念。 这次微机原理课程设计历时两个星期,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。以前在上课的时候,老师经常强调在写一个程序的时候,一定要事先把程序原理方框图化出来,但是我开始总觉得这样做没必

微机原理课程设计

微机原理与应用课程设计

目录 一、设计任务 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码程序)

相关文档
相关文档 最新文档