智能电风扇控制器

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

智能电风扇控制器 Company number:【WTUT-WT88Y-W8BBGB-BWYTT-19998】

《单片机课程设计》设计报告

设计题目:

系别:

专业:

班级学号:

姓名:

指导教师:

设计时间:

设计任务:利用DAC0832芯片进行数模控制,输出的电压经放大后驱动小直流电机的速度进行数字量调节,并显示运行状态。

1.小直流电机调速控制体统的总体方案设计

1)系统总体结构

2)芯片选择

主要芯片:8255A,DAC0832

本次实验用的是8255工作方式0,方式控制字为:

D7:方式控制字标识位,1--有效;

D6、D5:A口方式选择,00--方式0;01--方式1;1X--方式2;

D4:A口输入/输出选择,1--输入;0--输出;

D3:PC7~PC4输入/输出选择,1--输入;0--输出;

D2:B口方式选择,1--方式1;0--方式0;

D1:B口输入/输出选择,1--输入。0输出;

D0:PC3~PC0输入/输出选择,1--输入。0输出;

引脚功能:

DI0~DI7:8位数字信号输入端; CS*:片选端;

ILE:数据锁存允许控制端,高电平有效;

WR1*:输入寄存器写选通控制端。

当CS*=0、ILE=1、WR1*=0时,数据信号被锁存在输入寄存器中。 XFER*:数据传送控制

WR2* :DAC寄存器写选通控制端。当XFER*=0,WR2* =0时,输入寄存器状态传入DAC寄存器中

IOUT1:电流输出1端,输入数字量全“1”时,IOUT1最大,输入数字量全为“0”时,IOUT1最小。

IOUT2:D/A转换器电流输出2端,IOUT2+IOUT1=常数。

Rfb:外部反馈信号输入端,内部已有反馈电阻Rfb,根据需要也可外接反馈电阻。

Vcc:电源输入端,可在+5V~+15V范围内。

DGND:数字信号地。AGND:模拟信号地

3)DAC0832的主要性能指标

DAC0832是8分辨率的D/A转换集成芯片。与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等

优点,在单片机应用系统中得到广泛的应用。D/A转换器由8

位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。

2.硬件电路设计

1)AT89S52单片机最小系统(见附录)

2)DAC0832与AT89S52单片机接口电路设计

使用逻辑器件实现地址译码,地址为:FF80H。(参见附录)

3)显示电路与AT89S52单片机接口电路设计

使用逻辑器件实现地址译码,地址为:FF20H—FF23H。(参

见附录1)

3.软件设计

1)程序框图

4.调试与测试结果分析

1)实验系统连线

a)、、各接一拨码开关

b)将DAC0832驱动电路AOUT接至直流电机

c)将P0口接至DAC0832数字输入端

d)将地址译码电路(FF80H)接至DAC0832片选端

2)程序调试

程序上电时,直流电机停止不动,当来回拨动拨码开关1时,直流电机以低速转动,同时数码管显示速度等级1;当来回拨动拨码开关2时,直流电机以中速转动,同时数码管显示速度等级2;当来回拨动拨码开关3时,直流电机以高速转动,同时数码管显示速度等级3。

3)实验结果分析

电机运行正常可实现调速,拨码开关没有消抖并不影响调速,因为中断服务程序采用赋值的方式,拨码开关的高频抖动启动多次中断,赋的值都相同。

5.实验总结

课程设计是培养学生综合运用所学知识,发现、提出、分析和解决实际问题锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。随着科学技术发展的日新月异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中无处不在,因此单片机的开发技术是十分重要的。

通过此次单片机课程设计,我们不仅巩固了学过的知识,而且学到很多课本上没有的知识。这次经历是我懂得了理论与实际相结合是很重要的,用理论知识解决实际问题,活学活用,提高自己的实际动手能力和独立思考的能力。

附录:系统原理图和程序清单

附:源程序代码:

/************************智能电风扇***************************//*

本程序使用DAC0832实现直流电机的速度控制(三档:低速\中速\高速)

*//******************************************************************/

ORG 0000H

LJMP MAIN

ORG 0003H

LJMP INTX0

ORG 000BH

LJMP INTT0

ORG 0013H

LJMP INTX1

ORG 0040H

MAIN: S ETB EX0

SETB EX1

SETB IT0

SETB IT1

SETB ET0

MOV TH0,#0FFH

MOV TL0,#0FFH

MOV TMOD,#06H ;方式2(8位自动重装载)

SETB TR0

SETB EA ;外部中断0,外部中断1,定时器0(用作外部中断) 初始化

MOV DPTR,#0FF23H

MOV A,#80H

MOVX @DPTR,A ;8255模式0(直通方式)

MOV DPTR,#0FF20H

MOV A,#0FEH

MOVX @DPTR,A ;位选第一个数码管

MOV R0,#00H ;R0作为输出电压大小的存储器

相关文档
最新文档