物理与电子科学系
《单片机原理与应用》课程设计
题目: 公共照明智能控制系统 专业: 电子信息工程 班级: 1 姓名: 学号: 任课教师: 成绩:
2013年 12 月 13 日
目录
1、 系统设计 .................................................................................................................................. 3
1.1 设计........................................................................................................ 3 1.2 方案........................................................................................................ 4
2、 系统硬件设计 ......................................................................................................................... 4
2.1 AT89C51介绍 .......................................................................................... 4 2.2 LCD1602介绍 .......................................................................................... 6 2.3 照明系统硬件连接 ..................................................................................... 8
3、 系统软件设计 ...................................................................................... 9
3.1
流
程
图.............................................................................................................................9 3.2 万年历设计: ........................................................................................................... 9 3.2 液晶显示设计: ........................................................................................................ 9 3.4 接键可调部分 ........................................................................................................... 9 3.1 照明控制的设计 ........................................................................................................ 9 参考文献:......................................................................................................................... 9
公共照明智能控制系统
课题研究的背景:
随着现代科技的飞速发展,单片机已经在各个领域得到越来越广泛的应用。单片机由于体积小,功耗低两个基本特征,在通讯,家电,工业控制,仪器仪表,汽车等产品中都可以看到单片机的身影。单片机技术也随着集成电路技术的进步在近几年飞速的发展,这种发展可以分为两方面[1]:一方面在硬件上单片机内部集成了越来越多的功能部件,如A/D,D/A,PWM,WATCHDOG,LCD驱动,串行口,大容量FLASH存储器等;另一方面在开发手段上从汇编语言向高级C语言过度,计算机仿真调试,IAP,ISP技术的应用使单片机开发周期大大的缩短,为各类产品更新,软件的升级提供了可靠的技术保障。在设计单片机应用系统时,由于历史的原因,目前在国内仍然以8051系列单片机为主。
作为电子专业的学生,非常有必要通过实际产品的设计和制作,了解现代IT产品的开发全流程。全面提高机,电,光,算知识的综合应用能力,掌握从系统级,电路级,到芯片级各个层次的设计和实现手段。基于上述原因,选择此设计课题,在此设计过程中,我们将会用到多门学科的理论知识,将对以前所学的知识做一个全面的复习和巩固,更重要的是培养了发现问题,分析问题,解决问题的能力,还有动手能力,也是一次很好的实践,对以后的学习和工作也会有所帮助。
1、系统设计
1.1设计
1.11系统功能要求:
本系统要求以单片机为核心,设计一个校园公共照明智能控制系统。该控制系统应具备以下功能:
a万年历及显示;
b定时开、关校园公共照明; c深夜节能;
d键盘输入,通过键盘可以修改时间; 1.12系统设计内容: a系统方案设计;
b利用Protues完成系统硬件电路设计; c利用Keil完成系统软件设计; d完成系统调试; 1.2方案
a、 采用NE555时基电路来进行定时,以便控制开关的时间,其他各系统单元分别用相应独立的电路来完成,但精度较低,而且各部分全部采用模拟器件来组成部分,制作复杂。 b、采用AT89C52微处理芯片,来控制智能照明系统,制作调试方便、控制时间准却,电路工作稳定,而且非常简单(硬件部分)、使用范围广。
本实验采用第二种方式。
2、系统硬件设计 2.1 AT89C51 2.11芯片介绍及功能
AT89C51是一种低电压、高性能CMOS 8位微处理器,俗称单片机。带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪速存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C51 提供以下标准功能:4k 字节Flash 闪速存储器,128字节内部RAM,32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。 2.12管脚说明
VCC:供电电压。GND:接地
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻。
P1口:是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示: 口管脚 备选功能
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(外部数据存储器读选通
2.2 LCD1602
2.21主要功能 :A、 40通道点阵LCD 驱动; B、 可选择当作行驱动或列驱动; C、 输
入/输出信号:输出,能产生20×2个LCD驱动波形;输入,接受控制器送出的串行数据和控制信号,偏压(V1∽V6); D、 通过单片机控制将所测的频率信号读数显示出来 ◆主要技术参数: 显示容量: 芯片工作电压: 工作电流: 模块最佳工作电压: 字符尺寸: 16×2个字符 4.5~5.5V 20mA(5.0V) 5.0V 2.×4.35(WXH)mm ◆时序特性表: 项 目 允许时间周期 符 号 TCYCE 测试条件 标 准 值 MIN TYPE MAX 1000 450 -- -- -- 140 -- 5.1a 5.1b -- -- 195 -- 10 -- 20 -- 10 -- ns -- ns 25 ns -- ns 320 ns -- ns -- ns -- ns -- ns 单位 允许脉冲宽度,高电平 PWEH 允许上升和下降时间 tEr tEf 地址建立时间 数据延迟时间 数据建立时间 数据保持时间 DATA HOLD TIME 地址保持时间 ◆模块引脚功能表: ] 1 2 3 4 5 6 7-14 符 号 Vss VDD VEE RS R/W E DB0-DB7 名 称 接地 电路电源 液晶驱动电压 寄存器选择信号 读/写信号 片选信号 数据线 tAS tDDR tDSW tH tDHR tAH 功 能 0V 5V±10% 保证VDD-VEE=4.5∽5V电压差 H:数据寄存器 L:指令寄存器 H:读 L:写 下降沿触发,锁存数据 数据传输 ◆寄存器选择功能表: RS 0 0 R/W 0 1 操 作 指令寄存器(IR)写入 忙标志和地址计数器读出 1 1 0 1 数据寄存器(DR)写入 数据寄存器读出 (注:忙标志为\"1\"时,表明正在进行内部操作,此时不能输入指令或数据,要等内部操作结束,即忙标志为\"0\"时。)
2.22指令功能
格式:RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
共11种指令:清除,返回,输入方式设置,显示开关,控制,移位,功能设置,CGRAM地址设 置,DDRAM地址设置,读忙标志,写数据到CG/DDRAM,读数据由CG/DDRAM。 2.23初始化方法 延时15ms
写指令38H(不检测忙信号) 延时5ms
写指令38H(不检测忙信号) 延时5ms
写指令38H(不检测忙信号)
(以后每次写指令、读/写数据操作之前均需检测忙信号) 写指令38H:显示模式设置 写指令08H:显示关闭 写指令01H:显示清屏
写指令06H:显示光标移动设置 写指令06H:显示开及光标设置
2.3 照明系统硬件连接
如图所示:
按键设置部分 (LCD1602) 显示部分 AT89C51微处理器 基本外围 (晶振和复位) 电路 (LED)发光二极管 本系统定时亮/灭,利用Protues仿真,在P3^6和P3^7端口接LED灯,通过软件定时控制灯
的灭亮;在P2口前四个口接按键,分别为移位,加键,减键,功能键;液晶显示模块(LCD1602)连接方式,微处理器AT89C51的P0口通过数据RP分别与液晶显示模(LCD1602)的数据端(DB)相连接,数据命令选择端(RS)、使能信号端(E)分别与微处理器的P3^4、P3^5口相连接。 如图
LCD1LM016LD6D4VSSVDDVEERSRWEll1LED-BIRGl1D12D11LED-BIGYD10LED-BIRGD9LED-BIGYD8LED-BIRGD7LED-BIGYGNDLED-BIRGD0D1D2D3D4D5D6D7D2LED-BIGYD3LED-BIGYRP1123456789lll11GNDVC2C3R4SGN5DE67891011121314l1U11918XTAL1XTAL2P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD393837363534333221222324252627281011121314E15RSl116l17D1LED-BIGYD5lll1lLED-BIRGGNDl1LED-BIGY9RST移位加减功能RESPACK-8293031PSENALEEA12345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51 3、 系统软件设计
3.1流程图
开始
时间 判断按键 If P3^6 亮 3.2 软件设计: P3^7 灭 软件主要包含时钟判断和显示程序,调用不同指令来完成相应的功能。本单片机夜用照明系统采用单片机C语言来编写,在其编写过程当中比较方便的调用单片机内部的资源,从而比较容易控制与单片机相联系的外围电路液晶显示,用write_com()写指令,用write_date()写数据,write_nyr()写年月日,write_sfm()写时分秒;按键用if语句来判断,实现加减移位功能;最后用if语句判断时间,控制灯的亮灭。 4展望
尽管本系统能够完成我们所要求的任务来控制照明系统,并且体现出了物优价廉的优越性,但由于本人水平和开发时间有限,离一个完全实用的,能够完全符合市场需求的单片机夜用照明显示系统还有一定的差距。因此,在以后的研制过程中,还需要在系统抗干扰方面、增强显示效果、提高其灵敏度及功能上做大量工作,以满足更高使用要求。
参考文献:
[1] 刘文涛 单片机语言C51典型应用设计[M] 人民邮电出版社2005,1(1):5-8 [2] 求是科技 单片机典型模块设计实例导航[M] 人民邮电出版社 1995,1(4):32-34 [3] 赵亮 侯国锐 单片机C语言编程与实例[M] 人民邮电出版社 1995,1(6):37-38 [4] 稻叶 保[日] 振荡电路的设计与应用[M] 科学出版社 1997,19(3):71-72 [5] 猪饲国夫 本多中二[日] 数字系统设计[M] 科学出版社 1998,1(2):122-124
因篇幅问题不能全部显示,请点此查看更多更全内容