单片机电压检测
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
河南机电高等专科学校电气工程系
电子课程设计报告设计题目:电压、电流检测
专业:电力系统自动化技术
班级:电力092
学号:090313209
姓名:冯冲
指导教师:毛景魁
设计时间:2011.6.7——2011.6.19
微控制器技术课程设计任务书
设计题目:流水灯数码显示
设计时间:2011.6.7——2011.6.19
设计任务:
在Proteus中画出原理图或使用实物,编制程序,实现以下功能:
1、使用液晶或者八段发光字符管显示测量的电压或电流值;
2、使用电位器模拟被测电压、电流输入;
3、电压或电流输入为零时,有声音提示。
背景资料:1、单片机原理与应用
2、检测技术
3、计算机原理与接口技术
进度安排:
1、第一天,领取题目,熟悉设计内容,分解设计步骤和任务;
2、第2-3天,规划设计软硬件,编制程序流程、绘制硬件电路。
3、第4-6天,动手制作硬件电路,或编写软件,并调试。
4、第7天,中期检查。
5、第9-10天,完善为完成内容,书写设计报告。
6、第11天,提交设计报告,整理设计实物,等待答辩。
7、第12天,设计答辩。
一、设计目的
(1)通过课程设计,应能加强学生如下能力的培训:
(2)独立工作能力和创造力;
(3)查阅图书资料,产品手册和各种工具书的能力;
(4)工程绘图的能力;
(5)编写技术报告和编制技术资料的能力
(6)综合运用专业及基础知识,解决实际工程技术问题的能力;
二、设计要求
(1) 独立完成设计任务
(2) 绘制系统硬件总框图
(3) 绘制系统原理电路图
(4) 制定编写设计方案,编制软件框图,完成详细完整的程序清单和注释
三、设计内容及方法
1、主控电路
该设计中我们主控电路部分采用了单片机AT89C52芯片来实现这些功能,AT89C52是一个低电压,高性能CMOS的8位单片机,片内含8KB的可反复擦写的Flash只读程序存储器和256B的随机存取数据存储器(RAM)。
其引
脚如下图所示:
图1.AT89C52引脚图
VCC:供电电压。
GND:接地。
P0口(P0.0-P0.7):P0口来控制数码管的段选,以显示相应的数值。
P1口(P1.0-P1.7):P1口用来控制数码管的位选,以达到动态显示的效果。
P2口(P2.0-P2.7):P2口来控制LED的亮灭。
P3口(P3.0-P3.7):P3.0为RXD(串行输入口),P3.1为TXD(串行输出口),P3.2为/INT0(外部中断0),P3.3为/INT1(外部中断1),P3.4为T0(记时器0外部输入),
P3.5为T1(记时器1外部输入),P3.6为/WR(外部数据存储器写选通),P3.7为/RD(外部数据存储器读选通)。
XTAL1(19 脚)和XTAL2(18 脚)为振荡器输入输出端口,外接12MHz 晶振。RST/Vpd(9 脚)为复位输入端口,外接电阻电容组成的复位电路。VCC(40 脚)和VSS(20 脚)为供电端口,分别接+5V电源正负端。P0~P3 为可编程通用I/O 脚,其功能用途由软件定义
2 、按键控制扫描模块
按键用于控制数码显示、LED显示、扬声器等模块的工作。通过扫描按键是否按下,来设定各模块的工作情况,使各模块可以在按键的控制下,有序地进行工作。设计中使用单个按键实现单个功能,属于较为简单的控制方式.
图2.按键输入电路
在多功能系统设计的实验中中我们使用四个按键分别与单片机的P1.4、P1.5、P1.6、P1.7相连,按键1控制数码管显示、按键2控制LED流水灯、按键3控制蜂鸣器发声,按键4控制作息时间。通过按下相应的按键来处理相应的程序。
3、DS1302实时时钟模块
图3.DS1302模块电路图
DS1302与CPU的连接:实际上,在调试程序时可以不加电容器,只加一个32.768kHz 的晶振即可。只是选择晶振时,不同的晶振,误差也较大。
4、数码管显示模块
设计中采用四位共阳极数码管,共阳极是指其公共端接正极,通过单片机AT89C52的P1口控制其位选,以达到动态显示的效果,再通过P0口,控制其段选以显示相应的数值。在其位选控制部分,采用了一个9012型三极管,要求当P1口输出低电平时,位选成功。
图5.数码管显示电路
硬件电路中,数码管显示的小时和分.小时通过按键2控制,分通过按键3控制。
5、LED显示模块
图6. LED显示电路
本次设计中通过按键2来控制其流水显示,打开电源后按下按键2流水灯模块有效。由于电路中LED为共阳极,故控制流水灯显示的P2口应为低电平时才有效。
6、扬声器模块
扬声器模块通过按键3来实现。要求扬声器能够发出连续,断续的声音及音
乐,我们可以选择一个蜂鸣器来实现这些功能。
图7. 扬声器电路
在这个设计中是通P3.4口控制其发声的。由于P3.4与ds1302是连在一起的,当P3.4口输出低电平时蜂鸣器发出声响。故只要ds1302工作,就可以设定使扬声器发出声音。
四、硬件原理图
设计硬件原理连接图如图所示:
五、主程序:
#include //51系列单片机定义文件
#define uchar unsigned char //定义无符号字符#define uint unsigned int //定义无符号整数void delay(uint); //声明延时函数
void main(void)
{
uint i;
uchar temp;
while(1)
{
temp=0x01;
for(i=0;i<8;i++) //8个流水灯逐个闪动
{
P1=~temp;
delay(100); //调用延时函数
temp<<=1;
}
temp=0x80;
for(i=0;i<8;i++) //8个流水灯反向逐个闪动{
P1=~temp;
delay(100); //调用延时函数
temp>>=1;
}
temp=0xFE;
for(i=0;i<8;i++) //8个流水灯依次全部点亮{
P1=temp;
delay(100); //调用延时函数
temp<<=1;
}
temp=0x7F;
for(i=0;i<8;i++) //8个流水灯依次反向全部点亮{
P1=temp;
delay(100); //调用延时函数
temp>>=1;
}
}
}
void delay(uint t) //定义延时函数
{