摘要。近年来随着计算机在社会各领域的渗透,单片机的应用正在不断地走向深入。由于其功能强,体积小,功耗低,工作可靠,使用方便,因此特别适合于和控制有关的系统。它也越来越广泛地应用到自动控制,智能化仪器、仪表,数据采集以及家电等领域。
在这些领域,单片机往往是作为一个核心部件来使用,再根据具体硬件结构,并针对具体对象的特点进行软件结合,达到完善功能的目的。
单片机课程设计是指以单片机为核心,配上一定的外围电路和辅助软件,从而实现用户所要求的功能的系统。通过课程设计,检验学生学习单片机知识的前后联系能力,同时有助于学生巩固单片机以及数电、模电的相关知识。
电子钟是一种典型的数字电路,它包括了组合逻辑电路和时序电路。因此,我此次设计数字钟是为了了解数字钟的原理,进而学会设计数字钟。而且通过数字钟的设计进一步了解各种中小规模集成电路的作用。
一.设计要求。
1)能通过键盘预置时间、星期,采用增量键盘;
2)采用字符型lcd液晶显示器或七位共阴led显示星期、时、分、秒;
3)具有整点报时功能;
4)可采用12小时制或24小时制;
5)显示驱动器可采用mc14543、cd14543。
二、系统总体方案设计。
1.系统框图。
系统框图如下图所示,主要包括单片机、显示器、键盘输入、蜂鸣器。
数字钟系统框图。
2.系统框图说明:
1、单片机。
单片机是一种集成电路芯片,本设计采用at89c51。
2、显示器。
显示电路采用字符型lcd液晶显示器。
3、键盘输入。
本次课程设计采用独立键盘。
4、蜂鸣器。
为了实现数字钟整点报时功能,在电路中加入蜂鸣器。它由单片机控制,低电平有效,并采用pnp型三极管驱动。
三、系统硬件设计。
1、单片机。
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的cpu、ram、rom、i/o口和中断系统、定时器/计时器等功能集成到一块硅晶片上构成的一个小但完善的计算机系统。
单片机有40个引脚,可分为4类:电源、时钟、控制和i/o口。
电源:vcc—芯片电源,接+5v;
vss—接地端
时钟:xtal1—晶体振荡电路反相输入端;
xtal2—晶体振荡电路反相输出端。
控制线:控制线共有4根
1、ale/prog:地址锁存允许/片内eprom编程脉冲。
ale功能:用来锁存p0口送出的低8位地址;prog功能:片内有eprom的芯片,在eprom编程期间,此引脚输入编程脉冲。
2、psen:外rom读选通信号。
3、rst/vpd:复位/备用电源。
rst功能:复位信号输入端;vpd功能:在vcc掉电情况下,接备用电源。
4、ea/vpp:内外rom选择/片内eprom编程电源。
ea功能:内外rom选择端。
vpp功能:片内有eprom的芯片,在eprom编程期间,施加编程电压vpp。
四、i/o口。
atc89c51共有4个8位并行i/o端口:p0、p1、p2、p3口。
p0口:p0口是一个8位漏极开路的双向i/o口。作为输出口,每位能驱动8个ttl逻辑电平。
对p0口写“1”后,引脚用作高阻抗输入。当访问外部程序和数据存储器时,p0口也被作为低8位地址/数据复用。在这种模式下,p0具有内部上电阻。
但是p0口在程序校验作为输出指令字节时,需要外部加上拉电阻。
p1口:p1口是一个内部具有上拉电阻的8位双向i/o口。p1口缓冲器能接收输出4个ttl门电流。
p1口写“1”后,内部上拉电阻将其拉高,此时可以作为作输入口使用。作为输入口使用时,被外部拉低的引脚由于存在内部电阻,会输出电流。
p2口:p2 口是一个具有内部上拉电阻的8 位双向i/o 口。p2 输出缓冲器能驱动4 个ttl 逻辑电平。对p2 口写“1”后,内部上拉电阻将其拉高,此时可以作为输入口使用。
p3口:p3 口是一个具有内部上拉电阻的8 位双向i/o 口,p3 输出缓冲器能驱动4 个ttl 逻辑电平。对p3 端口写“1”后,内部上拉电阻将其拉高,此时可以作为输入口使用。
作输入口时,被外部拉低的p3 口将用上拉电阻输出电流。
2、lcd显示器。
字符型lcd液晶显示器是由字符液晶显示器件和专用的行、列驱动器、控制器及必要的连接件、结构件装配而成的。它可以显示数字和西文字符,是一类专用于显示字母、数字的液晶显示器。
lcd1602主要技术参数:
一、显示容量:16×2个字符;
二、芯片工作电压:4.5—5.5v;
三、工作电流:2.0ma
本次设计lcd1602采用标准的16脚接口,各引脚如下表所示:
字符型液晶显示模块的引脚主要分为3类:数据线(d0~d7);控制线(rs、r/w、e);电源线(vdd、vss、vl)。
引脚功能介绍:
d0~d7:数据总线。用于与单片机数据总线连接。
rs: 寄存器选择端。
r/w:读写端。
e:芯片使能端。
vdd:电源线。lcd显示器电源为+5v。
vss:接地线。
vl:液晶显示偏压。接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10k的电位器调整对比度。
bla:背光源正极。
blk:背光源负极。
3、键盘输入。
本次课程设计采用独立键盘,通过键盘开关触点的断开、闭合来实现高低电平的输入。单片机接受该指令,然后做出相应的动作。
4、整点报时。
整点报时采用蜂鸣器实现,由pnp型三极管驱动,低电平有效。当p3.0输出电平时,三极管导通,蜂鸣器接通并发出报时声音。
整点报时电路。
四、系统软件。
1.系统软件主框图初始化程序流程图。
3.按键流程图。
五、总结。通过本次课程设计,让我认识到仅学习书本上的知识是不够的。要想真正用于实践还要学习很多。
另外,还有必要采取理论与实践相结合的学习方式。在查阅资料并动手设计的过程中,虽然各种资料对于本课设多少有介绍,但是拿过来自己做,并完整地做出来还是有困难的。但是,最终我做出了课程设计,同时锻炼了自己的独立思考并解决问题的能力。
另外,本次课程设计要用到一些软件如protel 99se,我学了这些软件其中很多功能。虽然学习这些软件的过程比较累,但是当画出了理想的图形时的成就感是不言而喻的。
总之,通过这次课程设计,我收获非常大。独立设计成功了基于at89c51和lcd1602的的数字钟(包括硬件电路和软件部分)。这次课程设计我也付出了很多努力,同时也学习到了很多实际的知识,自己的能力也得到了锻炼。
我为自己的成长感到骄傲。
参考文献。1.张毅刚,彭喜元,彭宇。 单片机原理及应用(第二版). 高等教育出版社,2010.
2.林志琦.基于proteus的单片机可视化软硬件**[m].北京:北京航空航天大学出版社,2006.
3.黄正谨.综合电子设计与实践[m].东南大学出版社.2002.
4.杨欣等.电子设计从零开始[m].清华大学出版社.2005.
5.谢嘉奎.电子线路[m].高等教育出版社.2003.
6.汪道辉.单片机系统设计与实践[m].北京:电子工业出版社。2006
7.施隆照.数码管显示驱动和键盘扫描控制器及其应用[j].国外电子元器件,2004.
8.张毅刚。新编mcs-51单片机应用设计[m].哈尔滨:哈尔滨工业大学出版社,2003.
9.张毅刚.单片机原理与应用设计[m].北京:电子工业出版社,2008.
10.张毅刚.单片机原理及应用[m].北京:高等教育出版社,2004.
11、王幸之.at89系列单片机原理与接**术[m].北京:北京航空航天大学出版社,2004.
附录a附录b
数字钟程序如下所示:
#include<>
#define uchar unsigned char
#define uint unsigned int
uchar hour,min,sec,count,hour1,hour2,sec1,sec2,min1,min2,keystopc,temp;
sbit keystop=p1^4;
sbit keyh=p1^5;
sbit keym=p1^6;
sbit keys=p1^7;
sbit lcden=p3^4;
sbit lcdrs=p3^5;
uchar code table=
void init
count=0;
hour=23;
min=59;
sec=50;
tmod=0x01;
th0=(65536-50000)/256;
tl0=(65536-50000)%256;
tr0=1;
et0=1;
ea=1;void delay(uint z
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--)
void write_com(uchar com)
lcdrs=0;
p0=com;
delay(0);
lcden=1;
delay(0);
lcden=0;
void write_data(uchar date)
lcdrs=1;
p0=date;
delay(1);
lcden=1;
delay(1);
lcden=0;
void init_1602
lcden=0;
write_com(0x38);
write_com(0x0c);
write_com(0x06);
write_com(0x01);
write_com(0x80);
void display(uchar hour1,uchar hour2,uchar min1,uchar min2,uchar sec1,uchar sec2)
init_1602();
//write_com_nextl(0x80+0x40+0x03);
write_data(table[hour1]);
write_data(table[hour2]);
write_data(table[0x0a]);
write_data(table[min1]);
write_data(table[min2]);
write_data(table[0x0a]);
write_data(table[sec1]);
单片机课程设计报告
单片机系统课程设计报告。专业 电气技术。学生姓名 朱海李威张杰。学号。指导教师 陈高燕。完成日期 2014 年 7 月 5 日。目录。1 设计任务和性能指标 1 1.1设计任务 1 2 设计方案 1 2.1方案论证 2 2.2总体设计框图 2 3 系统硬件设计 4 3.1红外线解码电路设计 4 3....
单片机课程设计报告
韶关学院。课程设计说明书 设计题目 基于单片机控制的智能交通灯设计。课程名称 微机原理与应用实训。学生姓名 学号。院系 物理与机电工程学院汽车系。专业班级 12机械制造及其自动化 5班。指导教师姓名及职称 谢杰讲师。陈锦儒助理实验师。起止时间 2015 年 3 月 2015 年 5 月。课程设计评分...
单片机课程设计报告
南京工程学院。课程设计说明书 题目实时钟芯片pcf8563的应用 课程名称单片机原理及应用a 院 系 部 中心 通信工程学院。专业电子信息工程 传感网 班级。学生姓名。学号。设计地点信息楼 c 210 指导教师。设计起止时间 2013年12月23日至 2013年12月27日。一 摘要1 二 课程设计...