计算机综合大作业.docx

上传人:b****0 文档编号:9754875 上传时间:2023-05-21 格式:DOCX 页数:14 大小:162.59KB
下载 相关 举报
计算机综合大作业.docx_第1页
第1页 / 共14页
计算机综合大作业.docx_第2页
第2页 / 共14页
计算机综合大作业.docx_第3页
第3页 / 共14页
计算机综合大作业.docx_第4页
第4页 / 共14页
计算机综合大作业.docx_第5页
第5页 / 共14页
计算机综合大作业.docx_第6页
第6页 / 共14页
计算机综合大作业.docx_第7页
第7页 / 共14页
计算机综合大作业.docx_第8页
第8页 / 共14页
计算机综合大作业.docx_第9页
第9页 / 共14页
计算机综合大作业.docx_第10页
第10页 / 共14页
计算机综合大作业.docx_第11页
第11页 / 共14页
计算机综合大作业.docx_第12页
第12页 / 共14页
计算机综合大作业.docx_第13页
第13页 / 共14页
计算机综合大作业.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

计算机综合大作业.docx

《计算机综合大作业.docx》由会员分享,可在线阅读,更多相关《计算机综合大作业.docx(14页珍藏版)》请在冰点文库上搜索。

计算机综合大作业.docx

计算机综合大作业

大连理工大学

 

本科实验报告

 

课程名称:

计算机原理实验

学院(系):

电子信息与电气工程学部

专业:

电子信息工程

班级:

电英1001

学号:

201081550

学生姓名:

相煜

 

2013年12月19日

综合设计实验报告

 

题目:

基于“准PWM技术”的直流电机调速系统设计

(一)设计要求

利用实验台上的开关(K7-K0),实现3V直流电机的转速控制。

利用8253产生“准PWM”(占空比50%~0%)波形,不同的占空比影响着直流电机的转速。

通过秒中断服务程序读取K7-0的数据、修改PWM的占空比,实现直流电机的转速控制。

具体要求:

1.以8253为核心,通过8253的OUT1输出方式2的方波经反相器后控制电机;

a)设置8253的CNT0为方式三,将输入的1MHZ信号进行5000分频,在OUT0上得到200HZ对称方波,送CLK1使用;

b)设置8253的CNT1为方式二,利用8253的CNT1的OUT1输出的不对称方波(参见图2.1),经一个反相器输出后,与直流电机连接、控制电机的转速;

2.利用D8255A的PA7-PA0做输入,与K7-K0连接。

利用开关数据控制电机的转速。

根据PA的数据设置CNT1的初值在10~2之间变化(共9档速度)、实现电机转速的控制;

3.利用8253的CNT2做秒脉冲发生器(CLK2与OUT0连接以获取200HZ脉冲),在OUT2上输出0.5HZ的周期性方波,并由此方波与主8259的MIR5连接,引发中断服务ISR。

在ISR中对D8255A的PA口进行输入,并根据此数据修改CNT1的初值(PWM的占空比)。

 

(二)设计分析及系统方案设计

利用8253的CNT0与CNT1串联输出“准PWM”波形。

其中CNT0设定为方式三(周期性对称方波);CNT1设定为方式二(周期性方波)模式,调制占空比。

8253的CNT0对1MHZ信号进行5000分频,在OUT0和CLK1上得到200HZ方波频率。

CNT1的OUT1经反相器输出的波形,其高电平的占空比由CNT1的初值确定,范围为50%~0%。

当初值N=2时,占空比最大(为50%),随着N值的增加,高电平的占空比逐渐下降。

实验中,通过8255读入开关状态和ADC0809读入电位器状态两种方式得到N。

(三)系统电路图

外围接口模块硬件电路功能描述

接口器件

0809

8253

8255

8259

元件引脚图

 

功能说明

ADC0809的通道0(IN0)做输入,与电位器RW1连接,利用电位器控制输入0~5V电压。

通过ADC0809的模数转换,输出相应数字量,控制电机的转速。

CNT0与CNT1把1MHZ分频成200HZ可变占空比的信号,CNT2做秒脉冲发生器,在OUT2上输出0.5HZ的周期性方波

利用D8255的PA7-PA0做输入,与开关连接。

根据PA的数据设置CNT1的初值在10~2之间变化、实现电机转速的控制

CNT2与主8259的MIR5连接,引发中断服务ISR。

在ISR中对D8255的PA口进行输入,并根据此数据修改CNT1的初值(PWM的占空比)。

 

(五)主程序中主要变量说明

变量名称

内存单元

功能

io8253_0

200h

8253通道0

io8253_l

201h

8253通道1

io8253_2

202h

8253通道2

io8253_k

203h

8253控制口

io8255

210h

8255通道

ad_io

220h

0809地址

led_io

230h

字型码锁存器

led_io+1

231h

扫描码锁存器

 

(六)系统软件中各个子程序的功能描述

子程序名称

入口参数

出口参数

功能描述

int_proc

35h的CSIP

AL

实现转速控制

dispproc

实现转数显示

delayproc

实现延时

 

(七)主程序程序流程图

 

(八)程序清单

datasegment

io8253_0equ200h

io8253_1equ201h

io8253_2equ202h

io8253_kequ203h

io8255equ210h

ad_ioequ220h

led_ioequ230h

ledcodedb3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,67h;0-10led显示编码

bufdb?

dataends

ss_segsegmentstack

dw100dup(0)

ss_segends

codesegment

assumecs:

code,ds:

data,ss:

ss_seg

start:

cli

movax,data;data指向DS

movdx,ax

moves,ax

movdx,io8255;8255初始化,A口方式0输入

moval,90h

outdx,al

;---1MHZ分配200HZ脉冲,OUT2改变占空比---

movdx,io8253_k;8253初始化,CNT0方式三,N=5000

moval,36h

outdx,al

movax,5000

movdx,io8253_0

outdx,al

moval,ah

outdx,al

movdx,io8253_k;8253初始化,CNT2方式三,N=100,

moval,10110111b

outdx,al

movax,100

movdx,io8253_2

outdx,al

moval,ah

outdx,al

;---中断初始化---

inal,21h

andal,11011111b;开放IR5中断

out21h,al

;---设置中断向量表---

pushds

movax,0

movds,ax

leaax,cs:

int_proc

movsi,35h

addsi,si

addsi,si;

movds:

[si],ax

pushcs

popax

movds:

[si+2],ax

popds

sti

LLL:

nop

jmpLLL;等待中断

movah,4ch

int21h

int_procprocfar

pushax

pushcx

movdx,io8253_k

moval,74h

outdx,al

;----利用开关控制的模式----

movdx,io8255

inal,dx

cmpal,0

jzdwq;如果开关全为0电位器控制

movbx,10

circle:

shral,1

decbx;al每右移一次,bx减一次

jcgoo;如果CF=1,跳出循环

oral,al;如果开关全为0则跳出循环

jnzcircle

jmpgoo

;----利用ad控制的模式----

dwq:

movdx,ad_io

outdx,al

movdx,ad_io

adddx,02h

L1:

inal,dx

testal,01h

jzL1

incdx

inal,dx

movah,0

movbh,30;得到2~8档

divbh

movbl,10

subbl,al;用10减去商的值

andbx,00ffh

goo:

movdx,io8253_1

moval,bl

movbuf,bl

outdx,al

moval,00h

outdx,al

calldisp

moval,20h

out20h,al

popax

popcx

sti

iret

int_procendp

dispproc

pushbx

pushdx

movbx,offsetledcode

moval,buf

movdl,10

subdl,al

moval,dl

movah,0

addbx,ax;基地址+偏移量--->bx

moval,[bx];获取led字型码

movdx,led_io

outdx,al

moval,02h

incdx

outdx,al

calldelay

popdx

popbx

ret

dispendp

delayproc

pushcx

movcx,30h

L2:

loopL2

popcx

ret

delayendp

codeends

endstart

 

(九)系统调试运行结果说明、分析所出现得问题,设计体会与建议

本次实验课设计并实现用开关和电位器控制直流电机转速的程序,当开关不全为0则为开关控制,开关全为0则为电位器控制。

电机调速共设9档,N可取2—10,随着N值的增加,高电平的占空比逐渐下降,反向后直流电机转速上升。

实验将这二者联合起来的过程中两者如何实现状态切换是一个问题,采取的方法是开关状态全为零时则为电位器控制状态否则就是电位器控制状态。

可以快速切换两者的控制。

(十)结论及设计体会

实验结果可实现开关和电位器控制直流电机转速,共有9档速度。

实验现象符合预期要求。

通过计算机原理设计实验,学到了很多实际硬件与软件结合的知识,并且了解和熟悉了准PWM技术。

参考文献

[1]秦晓梅陈育斌,计算机原理综合实验教程,大连理工大学,2011年10月

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2