单片机原理及接口技术设计报告.docx
《单片机原理及接口技术设计报告.docx》由会员分享,可在线阅读,更多相关《单片机原理及接口技术设计报告.docx(13页珍藏版)》请在冰点文库上搜索。
单片机原理及接口技术设计报告
单片机原理及接口技术设计报告
设计题目:
自动打铃器
系别:
电子工程系专业:
电气工程及其自动化
班级:
电气四班姓名:
杨友
学号:
201050049指导教师:
王雪飞
时间:
2012年6月16
绥化学院电气工程学院
单片机原理及接口技术设计预习报告
【注:
主要写设计中的重点、难点】
一、铃响系统,通过对一个能实现时钟显示的系统
1.单片机应用中的数据转换显示,数码管显示原理,动态扫描显示原理
2.以AT89C52单片微机为核心,由LED数码管、按键、二极管等部分构成,进行时、分、秒的显示,日历的校准、定时时间的设定;简化面板按键和内部电路设计,用最少的硬件开销
二、打铃器定时打铃功能的时间的设计
1.单片机的定时中断原理、及单片机相关指令在各方面的应用
2.,由软件实现打铃时刻表的预置与修改,实现实时时间的显示、校正和铃响控制。
硬件采用proteus结构设计,使仿真功能强,调试效率高。
此种响铃器实际为一种可编程时间控制器,它提供定时控制输出接口,可方便地用于各种定时控制。
单片机原理及接口技术设计报告
设计目的:
1.本设计是一个具有报时功能的作息时间控制钟。
它利用89C51单片机的2Hz时基计时,进行年历计算,并用的蜂鸣器驱动模块将它报出来;在进行时间计算,分每加一时,都与规定的作息时间比较,如果相等则进行相应的控制或动作。
由七段显示驱动模块、蜂鸣器驱动模块和按钮控制模块三部分组成,四个按键用于报时及校正时间。
现代机关企业,特别是学校要求对时间加以控制,要按时打铃及播放广播,以保证学习与工作的正常运行。
本设计实现了这些功能,给学校及其他机关企业带来方便,整体性好,人性化强、可靠性高,实现了对时间控制的智能化
2.现代机关企业,特别是学校要求对时间加以控制,要按时打铃及播放广播,以保证学习与工作的正常运行。
本设计实现了这些功能,给学校及其他机关企业带来方便,整体性好,人性化强、可靠性高,实现了对时间控制的智能化
设计工作原理:
【注:
结合自己的题目详细介绍各部分的工作原理】
模块组成框图如图所示,该模块由蜂鸣器驱动模块、蜂鸣器驱动模块和按钮控制模块三部分组成。
且三部分都通过AT89C52来实现
一、七段式数码管驱动模块
采用动态扫描方式,通过一组单片机端口驱动并联在一起的LED发光管的一端(共阴或共阳端),LED发光管的另一脚接通用I/O口,控制其亮灭。
该方法能驱动较多的LED,控制方式较灵活,而且节省单片机的资源
二、蜂鸣器驱动模块
采用压电式蜂鸣器,压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。
多谐振荡器由晶体管或集成电路构成,当接通电源后(1.5-15V直流工作电压),多谐振荡器起振,输出1.5~2.5kHZ的音频信号,阻抗匹配器推动压电蜂鸣片发声。
三、按钮控制模块
四个按钮的一端分别接地,另一端接单片机一个端口的四个引脚,当某一个按钮按下的时候,其对应的引脚就由高电平变成低电平,然后通过单片机扫描读取引脚的电平来判断按钮是否按下。
设计电路原理图:
设计部分源程序:
【注:
重要部分要有标注】
#include
#defineuintunsignedint
#defineucharunsignedchar
sbitdula=P2^0;
sbitwela=P2^1;
sbitkey1=P2^6;
sbitkey2=P2^5;
sbitkey3=P2^4;
sbitD1=P2^3;
sbitD2=P2^2;
uinti,j;
ucharmiao,aa,fen,hour;
uchartab[]={/*0,1,2,3,4,5,6,7,8,9,*/
0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,
};
voiddelay(uintz)
{for(i=0;ifor(j=0;j<120;j++);}
voiddisplay()
{dula=1;
P0=tab[miao%10];
dula=0;
P0=0xff;
wela=1;
P0=0x7f;
wela=0;
delay(5);
dula=1;
P0=tab[miao/10];
dula=0;
P0=0xff;
wela=1;
P0=0xbf;
wela=0;
delay(5);
dula=1;
P0=tab[fen%10];
dula=0;
P0=0xff;
wela=1;
P0=0xdf;
wela=0;
delay(5);
dula=1;
P0=tab[fen/10];
dula=0;
P0=0xff;
wela=1;
P0=0xef;
wela=0;
delay(5);
dula=1;
P0=tab[hour%10];
dula=0;
P0=0xff;
wela=1;
P0=0xf7;
wela=0;
delay(5);
dula=1;
P0=tab[hour/10];
dula=0;
P0=0xff;
wela=1;
P0=0xfb;
wela=0;
delay(5);
}
voidkeyplay()
{if(key2==0)
{
delay(10);
if(key2==0)
{hour++;
if(hour==60)
{hour=0;}
while(!
key2);
}
}
if(key1==0)
{
delay(10);
if(key1==0)
{fen++;
if(fen==60)
{fen=0;}
while(!
key1);
}
}
}
voidinit()
{TMOD=0X01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
fen=0;
miao=0;
hour=0;
D1=0;
D2=0;
dula=1;
P0=tab[miao%10];
dula=0;
P0=0xff;
wela=1;
P0=0x7f;
wela=0;
delay(5);
dula=1;
P0=tab[miao/10];
dula=0;
P0=0xff;
wela=1;
P0=0xbf;
wela=0;
delay(5);
dula=1;
P0=tab[fen%10];
dula=0;
P0=0xff;
wela=1;
P0=0xdf;
wela=0;
delay(5);
dula=1;
P0=tab[fen/10];
dula=0;
P0=0xff;
wela=1;
P0=0xef;
wela=0;
delay(5);
dula=1;
P0=tab[hour%10];
dula=0;
P0=0xff;
wela=1;
P0=0xf7;
wela=0;
delay(5);
dula=1;
P0=tab[hour/10];
dula=0;
P0=0xff;
wela=1;
P0=0xfb;
wela=0;
delay(5);
}
voidmain()
{init();
while
(1)
{keyplay();
display();
}
}
voidtime()interrupt1
{TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
aa++;
if(aa==20)
{aa=0;
miao++;
if(miao==60)
{miao=0;
fen++;
if(fen==60)
{fen=0;
hour++;
if(hour==24)
{hour=0;
}
}
}
}
}
设计结论:
课程设计评分标准
学生姓名:
总分:
评价项目
分值
具体要求
得分
A
B
C
D
E
选题
15
题目具有实用性、新颖性、先进性;
15
13
11
9
≤7
设计题目深、广、难度适当,符合要求。
创新性
5
学生在课程设计过程中,体现出较好的创
新意识和创新能力。
5
4
3
2
≤1
工作态度
10
按期完成规定的任务;
10
9
8
7
≤6
工作努力,严谨务实。
论证能力
20
立论新颖、论点鲜明、论据确凿;
20
18
15
12
≤10
数据、材料翔实可靠,有说服力;
有较强的分析能力和概括能力。
逻辑结构
15
设计结构合理,条理清晰,逻辑性强。
10
9
8
7
≤6
撰写规范
20
语句通顺,无错别字;
15
13
11
9
≤7
数据、图表规范,技术或专业用语准确;
设计格式符合撰写规范。
工艺水平
15
整体布局、布线合理、工艺规范。
10
9
8
7
≤6