当前位置:文档之家› 东华大学信息学院微机课程设计硬件

东华大学信息学院微机课程设计硬件

东华大学信息学院微机课程设计硬件
东华大学信息学院微机课程设计硬件

目录

实验1 存储器读写实验 (1)

实验2 简单I/O口扩展实验 (5)

实验3 8255并行口实验 (8)

实验4 8253定时器/计数器接口实验 (12)

实验58259中断控制器实验 (15)

实验1 存储器读写实验

一、实验目的

1.掌握PC机外存扩展的方法。

2.熟悉6264芯片的接口方法。

3.掌握8086十六位数据存储的方法。

二、实验设备

微机实验箱、8086CPU模块。

三、实验内容

向02000~020FFH单元的偶地址送入AAH,奇地址送入55H。

四、实验原理介绍

本实验用到存储器电路

五、实验步骤和要求

1、实验接线:本实验无需接线。

2、编写调试程序

3、运行实验程序,可采取单步、设置断点方式,打开内存窗口可看到内存区的变化。

六、思考题

1.单步执行到“intram”标号的语句时,ds寄存器的数据是什么?采用断点方式运行时执行

到第一个断点处,2000H~202FH内存单元的数据是什么?执行到第二个断点处,2000H~200FH内存单元的数据是什么?并根据观察结果和对源程序的判读简述源程序的运行效果。

如图,单步执行到“intram”标号的语句时ds寄存器的数据为0100

采用断点方式运行时执行到第一个断点处,2000H~202FH内存单元的数据如图所示。

由源程序可知2000H~202FH内存单元中的内容全为0

执行到第二个断点处,2000H~200FH内存单元的数据如图所示。

由源程序可知程序的运行结果为向02000~020FFH单元的偶地址送入AAH,奇地址送入55H。

2.修改程序,实现从2010H到201FH内存单元依次赋值00H~0FH,从2020H到202FH内

存单元依次赋值0FH~00H的功能。

程序流程图:

程序代码:

code segment

assume cs:code

org 0100h ;在代码段0100h偏移地址处开始存放代码start: mov ax,0100h

mov ds,ax ;数据段地址

mov es,ax

mov si,1000h ;偏移地址

mov cx,0100h ;循环次数

mov al,0 ;使al中置0

intram: mov [si],al ;将al中的值赋给[si]

inc si ;使地址指针si加1

loop intram ;使0100:1000开始处的256个单元中的数据清0

mov si,1010h ;设置断点处

mov cx,0010h;预置循环次数16次

mov al,00h;al的初值为00h

fil: mov [si],al ;RAM区循环置数

inc si ;地址指针si加1

inc al ;使al中的值每执行一次循环加1,初始值为0,加到0F

loop fil ;使02010H到0201F的数据区中依次存放00H-0FH

mov al,0fh ;al的初值为0fh

mov cx,0010h ;预置循环次数16次

fil1: mov [si],al ;RAM区循环置数

inc si ;使地址指针si加1

dec al ; 使al中的值每执行一次循环减1,初始值为0FH,减到00h

loop fil1 ;使02020H到0202F的数据区中依次存放0FH-00H

nop ;设置断点处

jmp start

code ends

end start

七、实验中的问题及其解决方法

问题:

(1)在范例程序中按题目要求设置两个断点时,全速运行时只能运行第一个断点处的程序,而不知道怎么运行下一个断点处的程序。

(2)在做思考题程序时,运行所写程序时发现内存空间中上一个题目的运行结果还在里面,没有将其置为0。

解决方法:

(1)针对问题(1),当执行完第一个断点执行完毕应该取消该断点,这样在全速运行时可以运行到下一个断点,可以观察程序运行结果。

(2)针对问题(2),发现在初始化程序时,自己把所有的循环初值都设成了0010H,导致程序初始化时只初始化16个内存单元,而后面的内存单元没有初始化,保留了上次运行的程序运行结果,所以将初始化的循环初值设成0100H,这样就可以初始化256个内存单元了,把上次的结果初始化为0。

实验2 简单I/O口扩展实验

一、实验目的

1、熟悉74LS273,74LS244的应用接口方法。

2、掌握用锁存器、三态门扩展简单并行输入、输出口的方法。

二、实验设备

微机实验箱、8086CPU模块。

三、实验内容

逻辑电平开关的状态输入74LS244,然后通过74LS273锁存输出,利用LED显示电路作为输出的状态显示。

四、实验原理介绍

本实验用到两部分电路:开关量输入输出电路,简单I/O口扩展电路。

五、实验步骤

1、实验接线:(?表示相互连接)

CS0 ?CS244;CS1?CS273;平推开关的输出K1~K8 ? IN0~IN7(对应连接);O0~O7?LED1~LED8。

2、编辑程序,单步运行,调试程序

3、调试通过后,全速运行程序,观看实验结果。

4、编写实验报告。

六、实验结果

程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。例如:K2置于L位置,则对应的LED2应该点亮。

图1外围接线原理图

七、思考题:

修改连线:74LS244的片选信号CS244改接CS2,将74LS273的片选信号CS273改接CS3,开关K1,k2接74LS244的IN0、IN1,74LS273 的O0~O7接发光二极管L1~L8。编写程序实现以下功能:K1~K2置于L(上)位置时,L1~L8全灭;K1开关置于H(下)位置时,L1~L4亮,L5~L8灭;K2开关置于H(下)位置时,L1~L4灭,L5~L8亮;K1~K2均置于H(下)位置时,L1~L8全亮。

程序流程图:

程序代码:

assume cs:code

code segment public

org 100h ; 在代码段0100h偏移地址处开始存放代码

start: mov dx,04c0h ;74LS244地址

in al,dx ;读入开关量

and al,03h ;取后开关量后两位,即K2,K1的值

test al,02h ;检测开关量K2位是否为?1?

jz lp1 ;若K2不为1,则跳转

and al,0fh ;L5-L8清0

jmp lp2

lp1: or al,f0h ;L5-L8置1

lp2: test al,01h ;检测K1位是否为…1?

jz lp3 ;若K1不为1,跳转

and al,f0h ;L1-L4清0

jmp dispaly

lp3: or al,0fh ;L1-L4置1

display: mov dx,04d0h ;74LS273地址

out dx,al ;输出至LED

jmp start ;循环运行

code ends

end start

九、实验中的问题及其解决方法

问题:

(1)在编好程序时,运行调试中发现所得的结果全部与预期的相反,即K1~K2置于L(上)位置时,L1~L8全亮;K1开关置于H(下)位置时,L1~L4灭,L5~L8亮;K2开关置于H(下)位置时,L1~L4亮,L5~L8灭;K1~K2均置于H(下)位置时,L1~L8全灭。

(2)在问题(1)的解决过程中发现开关的逻辑也发生错误。

(3)将程序编写完毕,编译链接,没有得到预期结果,然而把74LS244的片选信号CS244改接CS0,将74LS273的片选信号CS273改接CS1,结果出现。

解决方法:

(1)针对问题(1),通过观察外围接线原理图发现,LED为共阳极,只有当信号为“0”时才导通,信号为“1”时不导通,正好与自己程序中的逻辑关系相反。所以将程序中“1”改为“0”即可实现预期结果。

(2)一般来说,开关向上拨时,为“1”,处于高电平,而此实验箱开关在下面时候为“1”,而开关向上拨时为“0”,逻辑与平时的习惯相反,所以将开关的逻辑关系全变成它的相反就能达到预期结果。

(3)针对问题(3)说明前一次的程序还保存在实验箱中,每进行一次编译和链接都需要将实验箱复位,复位完成,结果能得到。

实验3 8255并行口实验

一、实验目的

掌握8255A的编程原理。

二、实验设备

微机实验箱、8086CPU模块。

三、实验内容

8255A的A口作为输入口,与逻辑电平开关相连。8255A的B口作为输出口,与发光二极管相连。编写程序,使得逻辑电平开关的变化在发光二极管上显示出来。

四、实验原理介绍

本实验用到两部分电路:开关量输入输出电路和8255可编程并口电路。

五、实验步骤

1、实验接线

CS0?CS8255;PA0~PA3?平推开关的输出K1~K4;PB0~PB3?发光二极管的输入L1~L4。

2、编程并全速或单步运行。

3、全速运行时拨动开关,观察发光二极管的变化。当开关某位置于L时,对应的发光二极管点亮,置于H时熄灭。

六、实验提示

8255A是比较常用的一种并行接口芯片,其特点在许多教科书中均有介绍。8255A有三个8位的输入输出端口,通常将A端口作为输入用,B端口作为输出用,C端口作为辅助控制用,本实验也是如此。实验中,8255A工作于基本输入输出方式(方式0)。

七、实验结果

程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。例如:

K2置于L位置,则对应的LED2应该点亮。

八、思考题:

1、修改接线CS2?CS8255,PA0~PA3?平推开关的输出L1~L4;PB0~PB3?发光二极管的输入K1~K4。修改程序达到以下要求:开关K1置“H”(下)位置时L1~L4全亮;K2置“H”(下)位置时L1、L3亮;K3置“H”(下)位置时L

2、L4亮;K4置“H”(下)位置时L1和L4轮流闪烁,修改程序实现相应功能

程序流程图:

程序代码:

assume cs:code

code segment public

org 100h ; 在代码段0100h偏移地址处开始存放代码start: mov dx,04c6h ;控制寄存器地址

mov ax,90h ;设置为A口输入,B口输出

out dx,ax ;将控制字写入控制寄存器地址

mov cx,0001h ;初始化cx

start1: mov bx,0 ;初始化bx

mov dx,04c0h ;A口地址

in ax,dx ;输入

f1: test ax,0001h ;判断开关K1是否值H

jz f2 ;不是则跳转

or bx,000fh ;当开关K1为H时,使BX后四位为“1”

f2: test ax,0002h ;判断开关K2是否值H

jz f3 ;不是则跳转

or bx,0005h ;当开关K2为H时,使BX后四位为0101

f3: test ax,0004h ;判断开关K3是否值H

jz f4 ;不是则跳转

or bx,000ah ;当开关K3为H时,使BX后四位为1010

f4: test ax,0008h ;判断开关K4是否值H

jz display ;不是则跳转,显示

call delay ;是则,调用延时

xor cx,0009h;

and bx,0006h

or bx,cx

mov cx,bx;

and cx,0009h ;该程序段的功能第一次的得到bx的值为0008h,下一次得到的值为0001如此周而复始,便使LED1与LED4循环闪烁

display: mov ax,bx

not ax ;共阳极电路,取反,为零时灯亮

mov dx,04c2h ;B口地址

out dx,ax ;输出

jmp start1

delay proc near

push cx

mov cx,0ffffh

dis: nop

loop dis ;空循环来实现延时

pop cx

ret

delay endp

code ends

end start

九、实验中的问题及其解决方法

问题:

(1)编程完毕调试程序发现结果恰好相反,K1为高时发现全部不亮,而K2为高发现L2和L4亮,K3为高时发现L1和L3亮,而闪烁的结果也相反。

(2)调试过程中发现LED灯的闪烁频率过快。

解决方法:(1)由程序可知,输出的端口的逻辑关系放在BX中,在将BX的值赋到AX中,所以当输出结果相反时,只要添加一条取反指令,对AX的值取反,即“not ax”便可得到正确的运行结果。

(2)在编写延时程序时,用的是给CX赋值,然后不断执行空循环实现延时,在最初的程序中CX的值赋值过小,导致循环执行的时间过短,后来将CX赋一个很大的值,实现轮流闪烁。

实验4 8253定时器/计数器接口实验

一、实验目的

掌握8253定时器的编程原理,用示波器观察不同模式下的输出波形。

二、实验设备

微机实验箱、8086CPU模块、示波器。

三、实验内容

了解8253计数器的不同工作方式,掌握其初始化控制字对定时/记数效果的影响。四、实验原理介绍

本实验用到两部分电路:脉冲产生电路、8253定时器/计数器电路

五、实验步骤

1、实验连线:

CS0?CS8253 OUT0?8253CLK2 OUT2?LED1 OUT1?LED2

CLK3?8253CLK0,CLK3?8253CLK1

2、编程调试程序

3、全速运行,观察实验结果

六、实验提示

8253是计算机系统中经常使用的可编程定时器/计数器,其内部有三个相互独立的计数器,分别称为T0,T1,T2。8253有多种工作方式,其中方式3为方波方式。当计数器设好初值后,计数器递减计数,在计数值的前一半输出高电平,后一半输出低电平。实验中,T0、T1的时钟由CLK3提供,其频率为750KHz。程序中,T0的初值设为927CH(37500十进制),则OUT0输出的方波周期为(37500*4/3*10-6=0.05s)。T2采用OUT0的输出为时钟,则在T2中设置初值为n时,则OUT2输出方波周期为n*0.05s。n的最大值为FFFFH,

所以OUT2输出方波最大周期为3276.75s(=54.6分钟)。可见,采用计数器叠加使用后,输出周期范围可以大幅度提高,这在实际控制中是非常有用的。

七、实验结果

程序全速运行后,LED1按一定周期闪烁(周期理论值为0.2s),LED2在高频脉冲信号(约15KHz)影响下,有微弱的光亮,但无明显的周期变化现象。

八、思考题:

1. 为什么说范例程序运行时LED1闪烁周期的理论值是0.2秒?在范例程序设置LED2的最大闪烁周期是多少?请分析说明。

(1)因为OUT0?8253CLK2 OUT2?LED1,所以8253计数器2采用OUT0的输出为时钟脉冲,且8253计数器2中设置计数值为04h,则OUT2输出方波周期为4*0.05s=0.2s。(2)因为OUT1?LED2,所以LED2的闪烁周期即为计数器1的周期,且计数器1设置的计数值为32h,化为十进制为3*16+2=50,则范例程序设置LED2的最大闪烁周期为50*4/3*10^6=6.67x10^(-5)s。

2.修改片选信号接线使CS1和CS8253连接,并要求LED1的闪烁周期变为4秒(亮2秒,灭2秒),修改程序实现功能。

4/0.05=80,化为16进制数为50h,则8253计数器2中设置计数值为50h。

程序框图:

源程序:

assume cs:code

code segment public

org 100h ; 在代码段0100h偏移地址处开始存放代码

start:

mov dx,04b6h ;控制寄存器地址

mov ax,36h ;计数器0,方式3

out dx,ax

mov dx,04b0h ;计数器0的地址

mov ax,7Ch ;计数初值的低位为7Ch

out dx,ax

mov ax,92h ;计数初值的高位为92h

out dx,ax ;计数值927Ch

mov dx,04b6h ;控制寄存器地址

mov ax,76h ;计数器1,方式3

out dx,ax

mov dx,04b2h ;计数器1的地址

mov ax,32h ;计数初值的低位为32h

out dx,ax

mov ax,0 ;计数初值的高位为00h

out dx,ax ;计数值32h

mov dx,04b6h ;控制寄存器地址

mov ax,0b6h ;计数器2,方式3

out dx,ax

mov dx,04b4h ;计数器2的地址

mov ax,50h ;计数初值的低位为50h

out dx,ax

mov ax,0 ;计数初值的高位为00h

out dx,ax ;计数值50h

next:

nop

jmp next ;让程序一直循环执行

code ends

end start

九、实验中的问题及其解决方法

问题:在完成对范例程序修改后调试发现LED1灯的闪烁周期过快,与题目要求相差很大,没有4s的时间

解决方案:在检查程序的发现将计数器2设计初值设计成28H,即2S时间,对周期的计算还没有完全弄清楚,仔细阅读实验指导书后知道,应该根据周期为4s,则4/0.5=80,化为16进制数50H,则8253计数器2中设置计数值为50h,于是完成实验要求。

实验58259中断控制器实验

一、实验目的

1、掌握8259A的工作原理。

2、掌握编写中断服务程序方法。

3、掌握初始化中断向量的方法。

二、实验设备

微机实验箱、8086CPU模块。

三、实验内容

了解中断处理的原理,掌握利用中断控制器进行中断申请和中断操作的方法。

四、实验原理介绍

本实验用到三部分电路:电平开关电路、简单I/O口扩展电路和8259中断控制器电路。

五、实验步骤

1、实验接线

CS0 ?CS8259 CS3 ?CS273 O0~O3?LED1~LED4 K1~K4?IR0~IR3 INT?INT( 8086CPU板) INTA?INTA(8086CPU板)

2、编译调试程序

3、将所有开关K1~K4置于H(下)位置后,全速运行程序,拨动某一电平开关(推到L 位置,再拨回H位置),观察LED的亮灭情况。

六、实验提示

1、8259的使用说明请详细阅读教科书。

2、8086的中断系统是向量中断方式。内存中特定位置有一中断向量表,表内存有不同中断类型的中断向量(中断入口地址)。不同中断类型的中断向量在表内有对应的偏移地址,其计算方法是:中断类型*4。

3、中断类型由8259通过数据总线送给8086,8086内部电路会将该类型值自动乘4,而后赋给指令指针,从而转向中断向量表的相应单元取得中断入口地址,之后就进入中断服务程序。请仔细研读8259的工作时序。

4、中断类型的高5位由8259寄存器ICW2决定,低3位由中断源IRx的编码自动填入。IR0~IR7的编码分别为000,001,010,011,100,101,110,111。

七、实验结果

全速运行程序,由上往下拨动开关时,相应位置的LED点亮,其余LED全灭。

八、思考题:

1.按位说明范例代码8259初始化所设置的所有中断控制字的值和含义。

ICW1(初始化字),写入的值为13h,化为二进制后:00010011。

含义:边沿触发,地址间距为8,单片8259A,需要ICW4。

ICW2(中断类型码字),写入的值为80h,化为二进制后:10000000。

含义:说明对应于IR0~IR7的中断类型码为80h~87h。

ICW4(中断结束方式字),写入的值为01h,化为二进制后:00000001。

含义:普通全嵌套方式,非缓冲方式,正常EOI,8086/8088模式。

OCW1(屏蔽控制字),写入的值为00h,即00000000b。

含义:全部为复位屏蔽,开放所有中断。

2.按要求接线CS0 ?CS8259 CS3 ?CS273 74LS273的O0~O3?L1~L4 8295的INT?INT( 8086CPU板) 8259的INTA?INTA(8086CPU板)IR1?Pulse键(实验箱右下角)。并修改源程序,实现以下功能:平时运行时L1、L3亮,L2、L4灭,当按下实验箱右下角“Pules”键时L1、L3灭,L2、L4亮,延续一段时间后恢复平时状态。

程序流程图:

源程序:

assume cs:code

code segment public

org 100h ; 在代码段0100h偏移地址处开始存放代码start: mov cx,0

start1: cli ;关中断,防止有些硬件中断对程序的干扰

mov dx,04a0h ;写入ICW1的端口地址为04a0h

mov ax,13h ;ICW1为13H,化为二进制为00010011

out dx,ax ;ICW1, 边沿触发,地址间距为8,单片8259A,需要ICW

mov dx,04a2h ;写入ICW2的端口地址为04a2h

mov ax,80h ;ICW1为80H,化为二进制为10000000

out dx,ax ;ICW2,中断类型80h,IR0~IR7的中断类型码为80h~87h

mov ax,01h;01 ;ICW4为01H,化为二进制为00000001

out dx,ax ;ICW4,普通全嵌套方式,非缓冲方式,正常EOI,8086/8088模式

mov ax,00h

out dx,ax ;OCW1, 开放所有中断

nop ;以上为8259初始化

mov ax,0

mov ds,ax

mov di,200h ;初始化中断向量表

mov ax,offset int0 ;;IR0的中断服务程序入口地址放入中断向量表中

mov ds:[di],ax ;先放IP(后同)

add di,2

mov ds:[di],100h ;再放CS值(后同)

add di,2

mov ax,offset int1 ;IR1的中断服务程序入口地址放入中断向量表中

mov ds:[di],ax

add di,2

mov ds:[di],100h

add di,2

mov ax,offset int2 ;IR2的中断服务程序入口地址放入中断向量表中

mov ds:[di],ax

add di,2

mov ds:[di],100h

add di,2

mov ax,offset int3 ;IR3的中断服务程序入口地址放入中断向量表中

mov ds:[di],ax

add di,2 ;上述程序为芯片8259的初始化程序

mov ds:[di],100h

main: mov ax,0FAh ;设置平时的状态,为LED1与3亮,LED2与4灭mov cx,offffh ;给cx赋值,做延时用

sti ;开中断。

waiting: cmp ax,0h

je waiting ;没发生中断,则等待

nop

nop

Lp : mov dx,04d0h

out dx,ax ;对应LED灯亮

loop lp ;利用cx的循环减一实现延时一段时间恢复常态

mov cx,0

delay: loop delay ;数字滤波,按键去抖

jmp start1

int0: cli ;关中断。以下类推。

nop ;此两行为IR0的中断服务程序

mov ax,0feh

iret ;中断返回,以下类推。

int1: cli

nop ;此两行为IR1的中断服务程序,

mov ax,0f5h ;L1,L3灭,L2,L4亮

iret

int2: cli

nop ;此两行为IR2的中断服务程序,

mov ax,0fbh ;用户可修改。

iret

int3: cli

nop ;此两行为IR3的中断服务程序,

mov ax,0f7h ;用户可修改。

iret

code ends

end start

九、实验中的问题及其解决方法

问题:

(1)在完成对实验范例程序的修改后,编译和连接,并进行了复位,发现按下“Pules”,结果无影响,还是L1,L3亮,L2,L4灭。

(2)使用实验软件“TECH”用于进行汇编程序的运行调试时,多次出现连不上实验箱箱,运行图标和复位图标都是暗的,同时无法进行编译和链接。

解决方法:

(1)针对问题(1),说明在IR1的中断服务程序部分修改出错了,重新查看中断服务程序设定,应当将“mov ax,0fdh”改为“mov ax,0f5h ”,而开始改成的是“mov

ax,ofah”。之后将改好的程序再次编译和链接,复位之后运行发现按下“Pules”,L1、L3灭,L2、L4亮。

(2)针对(2)遇到的问题,可以尝试将源程序保存一下,然后关闭“TECH”软件,重启实验箱电源,重新打开编程软件,在出现的对话框中单击“确定”后,按一下实验箱的“PRESET”按钮,等到实验箱左上方的LED数码管显示“C_”,表示已建立通信连接,启动完成。否则可以重新尝试以上操作看是否能完成链接。

路由器配置_实验四

路由器配置实验 专业:信息安全 班级: 姓名: 学号: 指导教师: 日期:

一、实验概述 1.1 实验目的 1. 根据网络拓扑,了解如何设计静态路由表 2. 对CISCO 路由器配置静态路由 1.2 实验内容 1.2.1 实验要求 本实验为个人实验,实现以下目标: 使用5 台电脑,配置在3 个局域网网段中,需要通过路由器的静态路由表配置,使得这5台电脑能相互通信。 5台电脑的网络结构为:

5台电脑模拟:4台电脑在一个单位的局域网内,1 台电脑在外网。4 台局域网中的电脑又被分到了两个子网中。每个子网最多10 台电脑,外网所在的网络最多100 台电脑。 以上所有电脑、路由器的IP 地址均需从一个网段中(比如:10.10.81.0/24)选取,不得使用其他IP 地址。(注意,这里的81需要根据用户自己的机器编号而变,看自己显示器上的编号是多少,这里就配为多少) 1.2.2 实验拓扑 上图中: 路由器R3 的f0/0 接口与PC1、PC2 处于10.10.81.0~10.10.81.15 网段中 路由器R2 的f0/0 接口与PC3、PC4 处于10.10.81.16~10.10.81.31 网段中 路由器R4 的f0/0 接口与PC5 处于10.10.81.128~10.10.81.255 网段中 10.10.81.0/24 网段剩余的IP 地址段为:10.10.81.32~10.10.81.127,请将这些地址合理分配到R1,R2,R3,R4 的串口S0/0,S0/1,S0/2 上,并配置静态路由,使得这5 台电脑能相互通信。

注意: 1)配置路由器串口的IP地址时,不得使用以上提到的地址段以外的地址。 2)上述拓扑中所有电脑均由路由器模拟,因此,需要在它们的f0/0 接口配置IP 地址、子网掩码,还需要配置静态路由。

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

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点阵显示器件一片。

武科大微机原理课程设计

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

微机原理与接口技术-键盘LED显示【课程设计报告】

微机原理与接口技术-键盘LED 显示【课程设计报告】

重庆大学 课程设计报告 课程名称:微机原理与接口技术 设计题目:键盘LED显示 院系:电气信息学院 班级:2007级 设计时间:2009年12月

第一章概述 (2) 1.1学习目的 (2) 1.2 计算机的应用 (3) 1.3学习计算机的意义 (3) 1.4课程设计目的 (4) 第二章总体方案设计 (4) 2.1 设计注意问题 (4) 2.2 总体思路 (5) 第三章硬件设计 (5) 3.1 8255工作原理 (5) 3.2 键盘工作原理 (7) 3.3 键特征值的形成 (8) 3.4段值的形成 (9) 3.5 8255接线图 (11) 第四章软件设计 (12) 4.1 8255初始化 (12) 4.2 键盘扫描的处理方法 (12) 4.2.1. 判断是否有键被按下的方法 (12) 4.2.2. 判断是否有键被按下的源程序 (13) 4.2.3 防抖动 (13) 4.2.4.防抖动的延时子程序 (14)

4.3 程序核心部分 (14) 4.3.1 逐行扫描 (14) 4.3.2逐行扫描的源程序 (15) 第五章源程序代码 (15) 5.1 根据整体思路以及软件设计得到的代码. 15 5.2 以上代码存在问题分析 (19) 第六章难点分析 (20) 第七章体会感慨建议 (25) 第八章参考文献 (26) 第一章概述 1.1学习目的 “微机原理与接口技术”是电气工程及其自动化专业的一门重要

的专业基础课程。我们通过该门课的学习,知道了微机的工作原理,微型计算机的基本结构,接口技术及汇编语言程序设计,为后续的课程的学习和今后的工作打下坚实的基础。通过实验可以培养学生利用计算机技术和编程手段分析,解决专业领域的各种问题的能力和意识,并进一步感受微机发展的微机发展的新技术和新方法。 1.2 计算机的应用 目前计算机的应用已经遍布各个行业,如科学计算、数据处理、过程控制、人工智能、网络应用等。 科学和工程计算:科学和工程计算的特点是计算量大,而逻辑关系相对简单,它是计算机重要应用领域之一。 数据和信息处理:数据处理是指对数据的收集、存储、加工、分析和传送的全过程。这些数据处理应用的特点是数据量很大,但计算相对简单。多媒体技术的发展,为数据处理增加了新鲜内容,都涉及更广泛的数据类型,这些数据处理过程不仅数据量大,而且还会带来大量的运算和复杂的运算过程。 过程控制:过程控制是生产自动化的重要技术内容和手段,它是由计算机对所采集到的数据按一定方法经过计算,然后输出到指定执行机构去控制生产的过程。 人工智能:人们把计算机模拟人脑力劳动的过程成为人工智能。人工智能是利用计算机来模拟人的思维过程,并利用计算机程序来实现这些过程。 1.3学习计算机的意义 电子计算机是一种能自动高速地进行大量运算的电子机器。电子计算机的出现和发展,是科学技术和生产力的卓越成就之一,反过来,它也极大地促进了科学技术和生产力的发展。

微机原理实验指导书-硬件部分(2015)

微机原理实验指导书硬件实验部分 东华大学信息学院 信息与控制实验中心 2015.12

关于微机原理硬件部分实验的说明 ●硬件实验主要分为基础实验和综合设计实验两部分。 基础实验部分每个实验需完成各自的实验报告。报告内容以每项实验的思考题内容为主,不需要抄录实验指导书提供的范例程序。报告内容具体要求为: 1、实验名称、所需设备、实验要求; 2、实验步骤简述 3、思考题解答; 4、有关思考题的程序的流程框图及源程序代码,源程序 需加上必要的注释; 5、思考题的程序在调试中出现的问题及解决过程。 综合设计实验须按照设计要求,利用实验设备提供的软硬件条件设计一个简单的红绿灯模拟系统。要求每小组完成硬件连线设计、连接,软件编程及调试,并提交相关的设计和调试报告。系统运行情况需进行实际运行检查。 ●基础实验必须完成,综合实验部分根据自身能力选做。 ●实验中先完成基础实验部分,再做综合设计实验。 ●硬件实验成绩按考勤情况(5%)、基本实验情况(85%)和综合设 计实验情况(10%)综合评定。

一、实验设备及软件介绍 第1部分硬件系统介绍 1. CPU单元及外围芯片 1)、微处理器:8086 2)、时钟频率:6MHz 3)、存储器 6264 系统RAM,地址范围 0~3FFFH,奇地址有效 6264 系统RAM,地址范围0~3FFFH,偶地址有效 27C64 系统ROM,地址范围 FC000~FFFFFH,奇地址有效 27C256 系统ROM,地址范围 FC000~FFFFFH,偶地址有效4)、可提供的对8086的基本实验 (1).简单I/O扩展实验 (2).存储器扩展实验 (3).CPLD地址译码实验 (4).8255可编程并口实验 (5).8253定时/计数器实验 (6).A/D0809实验 (7).D/A0832实验 (8).8250可编程串口实验 (9).8279显示器接口实验 (10).8279键盘扩展实验 (11).8259可编程中断控制器实验 (12).8237DMA控制器实验 5)、系统资源分配 本系统采用可编程逻辑器件(CPLD)EPM7128做地址的编译码工作,可通过芯片的JTAG接口与PC机相连,对芯片进行编程,可完成系统器件,如监控程序 存储器、用户程序存储器、数据存储器、系统显示控制器、系统串行通讯控制器 等的地址译码功能,同时也由部分地址单元经译码后输出(插孔CS0---CS5)给 用户使用,他们的地址固定,用户不可改变。

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

摘要 霓虹灯主要是通过8255A对LED亮灭状态的控制,和8254定时/计数器的定时功能实现霓虹灯闪烁控制系统,外设是红、绿、黄三种颜色的发光二极管,在程序自动控制下,按照不同规律闪烁同时由数码管显示相应的闪烁方式。 关键字: 8255A 8254 LED 数码管

一、设计的任务和要求 设计霓虹灯闪烁控制系统,是外设的红、绿、黄三种颜色的发光二极管,在开关的控制下或者在程序自动控制下,按照不同规律闪烁。 要求发光二极管的亮、灭变化有一定的规律;发光二极管变化规律要求有多种状态。 二、设计小组成员及分工 本次课设由冀任共同完成,在课设中遇到的问题四个人共同思考解决。 三、总体设计 1、8254用于定时:定时/计数器0与定时器/计数器1共同构成100ms的定时器,确定执行相邻闪烁方式的间隔时间。 2.8255A用于控制LED的状态和数码管显示:PA0接8254的输出,B口接数码管,显示对应的闪烁方式,C口输出控制LED的状态。 3、六种闪烁方式: 方式1:从左向右依次点亮8个LED灯,数码管显示1 方式2:从右向左依次点亮8个LED灯,数码管显示2 方式3:从左向右依次点亮4个的红灯、2个黄灯和2个绿灯,数码管显示3 方式4:从左向右两个两个的点亮8个LED灯,数码管显示4 方式5:从两边向中间依次点亮8个LED灯,数码管显示5 方式6:按红、绿、黄顺序点亮相同颜色的灯,数码管显示6 1、芯片介绍 (1)芯片8255A 8255A是具有3个8位并行I/O口3种工作方式的可编程并行接口芯片。8255共有40个引脚,采用双列直插式封装。

D0--D7:三态双向数据线,与单片机数据总线连接,用来传送数据信息。 CS:片选信号线,低电平有效,表示芯片被选中。 RD:读出信号线,低电平有效,控制数据的读出。 WR:写入信号线,低电平有效,控制数据的写入。 Vcc:+5V电源。 PA0--PA7:A口输入/输出线。 PB0--PB7:B口输入/输出线。 PC0--PC7:C口输入/输出线。 RESET:复位信号线。 A1、A0:地址线,用来选择8255内部端口。 GND:地线。 三种工作状态: 1) 工作方式 0 :这是 8255A 中各端口的基本输入 / 输出方式。它只完成简单的并行输入 / 输出操作, CPU 可从指定端口输入信息,也可向指定端口输出信息,如果三个端口均处于工作方式 0 ,则可由工作方式控制字定义 16 种工作方式的组合。

东华大学自动控制原理实验一

各位同学请注意: 1.上机实验为1-8周,每次上机请按照第一次的座位坐。 2.请先自习上机内容,实验内容可参考指导书。 3.9号机房座位安排见后面的名单,请按机位号入座,要点名哦。 实验一典型环节的MATLAB仿真 一、实验目的 1.熟悉MATLAB桌面和命令窗口,初步了解SIMULINK功能模块的使用方法。2.通过观察典型环节在单位阶跃信号作用下的动态特性,加深对各典型环节响应曲线的理解。 3.定性了解各参数变化对典型环节动态特性的影响。 二、SIMULINK的使用 MATLAB中SIMULINK是一个用来对动态系统进行建模、仿真和分析的软件包。利用SIMULINK功能模块可以快速的建立控制系统的模型,进行仿真和调试。1.运行MATLAB软件,在命令窗口栏“>>”提示符下键入simulink命令,按Enter 键或在工具栏单击按钮,即可进入如图1-1所示的SIMULINK仿真环境下。2.选择File菜单下New下的Model命令,新建一个simulink仿真环境常规模板。

3.在simulink仿真环境下,创建所需要的系统。 以图1-2所示的系统为例,说明基本设计步骤如下:

1)进入线性系统模块库,构建传递函数。点击simulink 下的“Continuous ”,再将右边窗口中“Transfer Fen ”的图标用左键拖至新建的“untitled ”窗口。 2)改变模块参数。在simulink 仿真环境“untitled ”窗口中双击该图标,即可改变传递函数。其中方括号内的数字分别为传递函数的分子、分母各次幂由高到低的系数,数字之间用空格隔开;设置完成后,选择OK ,即完成该模块的设置。 3)建立其它传递函数模块。按照上述方法,在不同的simulink 的模块库中,建立系统所需的传递函数模块。例:比例环节用“Math ”右边窗口“Gain ”的图标。 4)选取阶跃信号输入函数。用鼠标点击simulink 下的“Source ”,将右边窗口中“Step ”图标用左键拖至新建的“untitled ”窗口,形成一个阶跃函数输入模块。 5)选择输出方式。用鼠标点击simulink 下的“Sinks ”,就进入输出方式模块库,通常选用“Scope ”的示波器图标,将其用左键拖至新建的“untitled ”窗口。 6)选择反馈形式。为了形成闭环反馈系统,需选择“Math ” 模块库右边窗口“Sum ”图标,并用鼠标双击,将其设置为需要的反馈形式(改变正负号)。 7)连接各元件,用鼠标划线,构成闭环传递函数。 8)运行并观察响应曲线。用鼠标单击工具栏中的“”按钮,便能自动运行仿真环境下的系统框图模型。运行完之后用鼠标双击“Scope ”元件,即可看到响应曲线。 三、实验原理 1.比例环节的传递函数为 221211 ()2100,200Z R G s R K R K Z R =- =-=-== 图1-3所示左侧为其对应的模拟电路右侧即为SIMULINK 的图形。

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

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

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

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

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

东华大学11级选课手册

东华大学2011级选课手册 东华大学学分制选课手册一、教学计划简介四年制本科专业教学计划是学校按照四年正常学习年限组织安排专业教学进程和课程教学的重要文件,是同学进行选课的基本依据,学校将根据教学计划和教学情况,确定并公布每学期的实际开设课程。同学在导师的指导下,参照教学计划中课程的建议学习时间,在开设课程范围内自主选择。教学计划总体框架和有关要求如下:1、教学计划理论教学和实践环节两部分组成。理论教学包含通识教育基础、学科基础、专业与专业前沿三部分课程,前两部分课程中有必修和选修课程之分,第三部分课程全为选修。实践环节包含综合实践和实践教学两类课程,全为必修课程。必修课程指学生必须修读的课程,因课程有前修和后续的关系,要求同学在教学计划

规定的学期内修读;选修课程指同学可以自主选读的课程。同学可以在各类选修课程中有目的地选课修读,但各类选修课要修满本专业教学计划规定的学分数。2、学生必须修满所在专业教学计划中规定的总学分数及各类别课程的规定学分后才能顺利毕业,不同类别课程的学分不能互相抵冲。“通识教育”课程包括政治法律、语言文字、自然科学、技术科学、军事体育和人文素质等六方面课程的学习与实践。除完成必修课程的学分外,还应修满大学外语类、计算机类、文化素质类、体育类等类别的选修课程学分。每类课程必须达到最低修读学分要求,例如大学英语学分要求合计为17学分,即大学英语类课程至少修满16学分,同时必须通过东华大学英语学业水平考试Ⅱ,获得1学分,方能取得毕业资格。“学科基础”按一级和二级学科设臵课程和实践环节,进行宽口径专业教育。学科基础必修课为学科大类或专业大类的公共课,学科

《微机原理与接口技术》课程设计-交通灯

信息工程系 计算机科学与技术 12计本1班 1214110214 黄 福 朱 茜 2015年06月29日 院 系: 专 业: 年级班级: 学 号: 姓 名:指导教师: 设计日期:

目录 一.课程设计目的 (3) 二.课程设计任务 (3) 三.总体设计方案 (3) 五.程序设计流程图 (4) 六. 程序连接图 (5) 七.程序清单 (5) 八.实验结果 (8) 九.课程设计总结和体会 (8)

一.课程设计目的 用汇编语言和微机原理实验箱完成实现双方向交通信号灯控制系统,以达到熟练运用汇编语言编程以及实验箱上各个芯片的灵活运用。 ⒈了解交通灯管理的基本工作原理 ⒉熟悉8253定时计数器的工作方式和编程应用 ⒊熟悉8255A并行接口的工作方式和编程应用 二.课程设计任务 本次课程设计的内容为双方向交通信号灯的控制和管理。 具体要求如下: 1.东西方向车辆放行20秒钟。即东西方向的绿灯和南北方向的红灯同时点亮25秒钟和黄灯点亮3秒钟。 2.南北方向车辆放行20秒钟后,转为南北方向的黄灯点亮3秒钟,以警示将切换红绿灯。此时东西方向仍维持红灯点亮。 3.循环重复执行1和2两步骤。 三.总体设计方案 1、用实验系统8255A实现对信号灯的控制(B端口),A端口的PA6、PA7口用来和8253共同控制信号灯点亮的时间。 2、实验中,8255选用(10010000)方式选择字,A组工作0方式,A端口输入,PC4-PC7输出,B组0方式,B端口输出,PC3-PC0输出 3、实验中,8253采用两个计数器级联的方式达到定时的效果,8253计数器0的CLK0输入1MHZ的时钟脉冲,工作在模式3即方波发生器,理论设计OUT0 输出周期为0.01S的方波,则计数器0的初值为10000;OUT0输出的方波分别作为计数器1、计数器2的CLK1和CLK2的输入时钟脉冲,计数器1和计数器2工作方式为模式1,计数器1的初值为2500,即OUT1输出25秒,控制红绿灯的时间;计数器2初值为300,即OUT2输出3秒,控制黄灯的时间。

微机原理步进电机控制课程设计报告

河北科技大学 课程设计报告学生姓名:学号: 专业班级: 课程名称: 学年学期: 2 0 —2 0 学年第学期指导教师: 2 0 年月 课程设计成绩评定表

目录 一、设计题目………………………………………………………………. 二、设计目的………………………………………………………………. 三、设计原理及方案………………………………………………………. 四、实现方法………………………………………………………………. 五、实施结果………………………………………………………………. 六、改进意见及建议……………………………………………………….

七、设计体会………………………………………………………………. 、 一、设计题目 编程实现步进电机的控制 二、设计目的 1.了解步进电机控制的基本原理 2.掌握控制步进电机转动的编程方法 3.了解8086控制外部设备的常用电路 4.掌握8255的使用方法 三、设计原理及方案 设计原理 步进电机驱动原理是通过对每相线圈中的电流的顺序切换(实验中的步进电机有四相线圈,每次有二相线圈有电流,有电流的相顺序变化),来使电机作步进式旋转。 驱动电路由脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速。 利用 8255对四相步进电机进行控制。当对步进电机施加一系列连续不断的控制脉冲时,它可以连续不断地转动。每一个脉冲信号对应步进电机的某一相或两相绕组的通电状态改变一次,也就对应转子转过一定的角度(一个步距角)。当通电状态的改变完成一个循环时,转子转过一个齿距。四相步进电机可以在不同的通电方式下运行,常见的通电方式有单(单相绕组通电)四拍(A-B-C-D-A…),双(双相绕组通电)四拍(AB-BC-CD-DA-AB…),八拍(A-AB-B-BC-C-CD-D-DA-A…)等。 通过编程对8255的输出进行控制,使输出按照相序表给驱动电路供电,则步进电机的输入也和相序表一致,这样步进电机就可以正向转动或反向转动。 硬件连接图 四.实现方法 .步进电机控制程序流图

2018年东华大学控制工程考研最详细经验帖

2018年东华大学控制工程考研最详细经验帖 在这里我就大体写一下我的复习过程,仅供参考。先介绍一下我自己的情况吧,我本科是江西理工大学,自动化专业。考的是东华大学专硕控制工程。 专业课篇 我们信息学院专业课是三选一,分别是自动控制原理,信号与系统,以及电路。我选择的是自动控制原理,因为这门课程我本科学的比较好,而且作为自动化专业核心课程,再次精研自控还是很有收获的,废话不多说。上干货。 首先参考资料,自控作为控制类的基础课,知识点杂而多,但根据考纲来看是二三四五六章最重要。因此复习时间选择在7月初开始。首先是过一遍基础,把书认真看一遍,每个考纲的知识点做到第一遍是理解的,学校给的参考书是《Modern Control Systems现代控制系统》(第九版)Richard C.Dorf Robert H.Bishop,2002年。《自动控制原理》(下),吴麒,清华大学出版社,1992年《自动控制理论》,胡寿松,科学出版社,1994年。其中英文教材是东华本科上课教材,但我选的是胡寿松的教材,经典且易懂。这部书一定要精读且把例题搞懂。 第二是复习时间规划,首先呢专业课的分值是和数学一样的,因此战略地位和数学也是一样的,只是难度来说比数学简单点,因此简单,就意味着你的分不能太低,低过头了就是谢谢参与了。有些人总以为暑假后也可以来得及,这种错误太低级了,因从我给的建议是从七月开始,每天至少三个小时复习时间。一直到考试前。 第三是复习方法。首先是教材的使用,我的建议是必须看两遍以上,第一遍首先建立自己已经忘记的差不多的知识体系,顺便温故一下知识点,然后做例题,做习题,根据习题的情况复习和巩固自己的知识。第二遍就是重点根据第一遍的自身情况再着重复习。其次是真题了,真题最能看出学校出题的思路和重点,一定要好好做和复习,最少三遍以上。 复试经验:

东华大学微机实验报告答案(软件)

目录 实验一DEBUG的启动及其基本命令的使用实验二内存操作数及寻址方法 实验三汇编语言程序的调试与运行 实验四查表程序设计 实验五系统功能调用 实验六分支程序设计 实验七循环程序设计 实验八子程序设计 实验九综合程序设计 实验心得体会 参考文献

实验一 DEBUG的启动及其基本命令的使用 源程序:(指导书中给出) DA TA SEGMENT STRING1 DB 'Move the cursor backward' STRING2 DB 'Move the cursor backward' MESS1 DB 'Match.',13,10,'$' MESS2 DB 'No Match.',13,10,'$' DA TA ENDS STACK SEGMENT STACK DB 40 DUP (?) STACK ENDS PROGNAM SEGMENT ASSUME CS:PROGNAM,DS:DA TA,ES:DA TA,SS:STACK MAIN PROC FAR START: PUSH DS XOR AX,AX PUSH AX MOV AX,DATA MOV DS,AX MOV ES,AX MOV AX,STACK MOV SS,AX LEA SI,STRING1 LEA DI,STRING2 CLD MOV CX,25 REPZ CMPSB JZ MA TCH LEA DX,MESS2 JMP SHORT DISP MATCH: LEA DX,MESS1 DISP: MOV AH,09h INT 21H RET MAIN ENDP PROGNAM ENDS END START 运行结果:

微机原理与接口技术_课程设计实验报告

课程设计实验报告 课程:现代微机原理与接口技术题目:键盘扫描实验

班级:数字媒体 1004 学号: 0305100417 学生:海洋 指导老师:天天 日期: 2012.6.18 一、实验目的 (1)掌握键盘扫描的应用及编程 (2)掌握LED的应用 二、实验设备 PC计算机一台,TD-PIT + 实验系统一套。 三、实验原理 (1)8255芯片:8255具有3个带锁存或缓冲的数据端口,它的并行数据宽度为8位。可与外设并行进行数据交换。A口和B口具有中断控制逻辑,在外设与CPU之间可用中断方式进行信息交换。把8255并口和键盘,组成一个键盘装置。通过cpu对8255的控制最总达到键扫的目的。每一个键对应一个ASCII 码字符,通过8255的输入和输出,最终显示在屏幕上。 (2)LED数码显示原理:数码管的 7 个段及小数点都是由 LED 块组成的,显示方式分为静态显示和动态显示两种。数码管在静态显示方式时,其共阳管的位选信号均为低电平,四个数码管的共用段选线 a、b、c、d、e、f、g、dp 分别与单片机的 8 根 I/O 口线相连,显示数字时只要给相应的段选线送低电平。数码管在动态显示方式时,在某一时刻只能有一个数码管被点亮显示数字,其余的处于非选通状态,位选码端口的信号改变时,段选码端口的信号也要做相应的改变,每位显示字符停留显示的时间一般为1-5ms,利用人眼睛的视觉惯性,在数码管上就能看到相当稳定的数字显示。 (3)键盘扫描原理:第一步,使行线为编程的输入线,列线是输出线,拉低所有的列线,判断行线的变化,如果有按键按下,按键按下的对应行线被拉低,否则所有的行

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

《微机原理与接口技术》 课程设计 报告书 课题:利用DAC设计波形发生器 学院:计算机科学与技术 班级:计 091 班 姓名:王骏(0913022030) 沈志轩(0913022033) 徐晓龙(0913022029) 指导教师:顾辉 提交日间:2012年6月17日

目录 一、引言 (3) 二、设计目的 (3) 三、设计内容及要求 (3) 四、选用器材 (4) 五、设计原理及方案 (4) 六、硬件设计 (5) 七、软件设计 (9) 八、调试方法与结果 (15) 九、收获、体会 (17) 十、参考文献 (18)

一.引言 波形发生器是一种常用的信号源,广泛的应用于电子电路、自动控制系统和教学实验等领域,是现代测试领域内应用最为广泛的通用仪器之一。在研制、生产、测试和维修各种电子元件、部件以及整机设备时,都需要有信号源。由它产生不同频率不同波形的电压、电流信号并加到被测器件或设备上,用其他仪器观察。测量被测仪器的输出响应,以分析确定它们的性能参数。信号发生器是电子测量领域中最基本、应用最为广泛的一类电子仪器。它可以产生多种波形信号,如锯齿波、三角波、梯形波等,因而广泛应用于通信、雷达、导航、宇航等领域。 本设计正是基于数模转换原理,采用8086最小系统经数模转换芯片DAC0832设计并制作出了多功能信号发生器。用该方法设计的多功能信号发生器具有频率稳定、幅值稳定、波形失真度低、原理简单等特点。 二、设计目的 (1)掌握方波,三角波,锯齿波,正弦波函数发生器的原理及设计方法。 (2)掌握8086的工作原理,电路连接以及其最小系统的设计。 (3)了解数模转换芯片的的工作方式和使用。 (4)学会用proteus 画电路原理图。 三、设计内容及要求 3.1、设计要求 利用DAC设计一个波形发生器,能分别产生三角波、正弦波、锯齿波和方波,要求自行设计输出波形的切换方式。 3.2、设计内容 ⑴以8086为CPU。利用D|A转换器,编程产生锯齿波,正弦波,三角波,方波信号。输出上述四种波形。 ⑵波形的控制由接在8255上的开关的实现:设计四个开关,KEY1,KEY2,KEY3,KEY4,分别控制输出正弦波、方波、三角波和锯齿波波形。 ⑶接在8255上的数码管显示4个数1、2、3、4分别代表三角波、正弦波、锯齿波、方波。 ⑷由接在8253上的扬声器产生四种声音do、ri、mi、fa分别代表三角波、正弦波、锯齿波、方波。

东华大学微机系统及原理实验报告

微机系统及应用实验 实验报告 实验一DEBUG的启动及其基本命令的使用 实验内容: 6:设堆栈指针SP=2000H,AX=3000H,BX=5000H;请仿照例程的格式编一程序段将AX和BX的内容进行交换。请用堆栈作为两寄存器交换内容的中间存储单元,用DEBUG调试程序进行汇编与调试。 写出在DEBUG状态下编写、运行步骤6所要求的程序过程(要求包含源程序)以及调试所中遇到的问题是如何解决的,并对调试过程中的问题进行分析,对执行结果进行分析。 程序清单: STACK SEGMENT STACK DB 2003H DUP(0) STACK ENDS CODE SEGMENT ASSUME CS:CODE,SS:STACK START: MOV AX,STACK MOV SS,AX MOV SP,2000H

MOV AX,3000H MOV BX,5000H PUSH AX MOV AX,BX POP BX MOV AH,4CH INT 21H CODE ENDS END START 运行及调试: 进入调试后,运行正常。 进行反汇编调试: 通过追踪指令观察SP、AX、BX变化 可知对SP、AX、BX赋值正确。

将AX入栈后 用显示内存单元内容的命令D观察堆栈段中SP为1FFF,2000的内容 [1FFF]=00 ,[2000]=30 说明已经AX=3000已经放入到堆栈段中。 结果可以看出:AX=5000,BX=3000 结果完成正确! 实验二内存操作数及寻址方法 实验内容: 1、设堆栈指针SP=2000H,AX=3000H,BX=5000H;请编一程序段将AX和BX的内容进行交换。请用堆栈作为两寄存器交换内容的中间存储单元,用字处理程序编辑程序,用masm.exe和link.exe对源程序进行汇编程和连接,用DEBUG 调试程序。 2、用masm和link 对以下程序进行汇编和连接,调试程序在DEBUG调试程序状态下进行。用单步执行的方法,分析每条指令源地址的形成过程,当数据传送完毕时,AX中的内容是什么。 程序清单如下: DATA SEGMENT

微机原理课程设计报告

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

(一)设计任务: 用汇编语言设计一电子表程序,要求: ! (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

微机原理与接口技术课程设计-----交通灯设计

中南大学 微机课程设计报告 题目交通灯设计 专业班级 姓名 学号 指导老师林立新老师

目录 1.课程设计题目、功能、目的 (2) 2.系统分析与设计 (3) 2.1系统所用芯片分析 (3) 2.2所选用芯片的简要介绍 (4) 2.3系统框图 (6) 3.程序设计 (7) 3.1十字路口交通灯状态转换表 (7) 3.2主程序流程图 (7) 3.3 中断子程序流程图 (8) 3.4 数码管码表 (8) 3.5 各芯片初始化说明 (9) 4.运行情况 (10) 5.具体源代码及注释 (11) 6.心得体会 (16)

一、课程设计题目、功能、目的 1.课程设计题目--------------交通灯设计 2.本设计所实现功能 1)实现十字路口交通灯各种状态的转换; 2)各种状态转换的时间可进行灵活设置; 3)采用中断的方法对状态转换进行控制,提高处理器效率; 4)在各个状态转换的同时实现倒计时提醒。 3.本次课程设计目的 1)通过《微机原理与接口》课程设计,使学生能够进一步了解 微型计算机工作原理, 微型计算机的硬件结构及微型计算机 软件编程。 2)要求学生根据接口电路的硬件要求进行计算机的汇编语言 程序设计,使学生的软件编程能力得到加强,对接口电路的 综合应用能力有较大提高。

二、系统分析与设计 1.系统所用芯片分析 1)首先本个系统需要一个中央处理器来负责对整个系统进行控 制管理,因为《微机原理与接口技术》这门课上介绍了8086 芯片,所以可以采用8086作为本系统的中央处理器。 2)由于本次的课程设计的题目是交通灯,而根据十字路口处的交 通灯南北和东西方向各有红、绿、黄三种颜色的灯,因此可 用8255来控制6个LED灯的实现模拟的南北和东西方向上的 交通灯。 3)而交通灯的状态转换时间要由中断方式来控制,所以很容易想 到了可以用8259作为中断芯片,与8086芯片相连。 4)交通灯的状态转换时间可灵活设置,于是想到了可以采用一块 8253或8254芯片和一个脉冲源相连,8253对脉冲源送来的 脉冲进行分频,然后将输出送到8259作为中断源,而8253 采用不用的计数初值其输出脉冲的频率就不一样,因此实现 了交通类状态转换时间的灵活设置。 5)最后关于交通灯状态转换的倒计时功能,可由一个七段数码管 来显示倒计时,而本次课程设计的实验箱没有提供单个数码 管,而是提供了一个八位一体七段数码管,所以还需一块 8279芯片来对数码管进行控制。

相关主题
文本预览
相关文档 最新文档