带提醒功能的可调时钟文档格式.docx
《带提醒功能的可调时钟文档格式.docx》由会员分享,可在线阅读,更多相关《带提醒功能的可调时钟文档格式.docx(22页珍藏版)》请在冰豆网上搜索。
2.1方案设计………………………………………………………………………………3
2.1.1STC90C52AD的功能参数介绍…………………………………………………3
2.1.2综合电路设计…………………………………………………………………5
2.2单元电路设计……………………………………………………………………………6
2.2.1动态显示驱动设计………………………………………………………………6
2.2.2时钟产生单元……………………………………………………………………62.2.3串口驱动电路单元………………………………………………………………7
2.2.4蜂鸣器电路单元…………………………………………………………………7
2.2.5动态显示控制电路单元…………………………………………………………8
2.2.6按键电路单元……………………………………………………………………8
2.2.7译码单元…………………………………………………………………………9
2.3系统调试…………………………………………………………………………………9
2.4系统分析…………………………………………………………………………………9
2.5系统设计…………………………………………………………………………………10
2.5.1程序流程图………………………………………………………………………10
2.6系统实施…………………………………………………………………………………11
2.7C语言程序………………………………………………………………………………11
三、个人心得体会及总结………………………………………………………………………21
四、参考文献……………………………………………………………………………………22
附录一、系统原理图
附录二、课程设计评语及成绩
带提醒的可调时钟单片机设计
1、课程设计目的
1.1用单片机课程及已学电子电路知识设计一简易时钟显示装置,包括电路图的设计和制版等。
1.2通过课程设计加深对单片机课程的相关知识的学习和理解。
1.3初步学会一些设计思想和实践技能。
提高学生综合素质。
1.4让学生从设计过程中领悟到相互合作的重要性。
2、课程设计内容
2.1方案设计
2.1.1STC90C52AD的功能参数介绍
STC90C52AD是由宏晶公司生产的高性能八位单片机。
如图一所示。
该芯片采用FLASH存储技术,内部具有8KB字节快闪存存储器,采用DIP封装,是目前在中小系统中应用最为普及的单片机。
STC90C52AD可构成真正的单片机最小应用系统,缩小系统体积,增加系统的可靠性,降低系统的成本。
只要程序长度小于8K,四个I/O口全部提供给用户。
可用5V电压编程,而且擦写时间仅需10毫秒,仅为8751/87C51的擦除时间的百分之一,与8751/87C51的12V电压擦写相比,不易损坏器件,没有两种电源的要求,改写时不拔下芯片,图一
适合许多嵌入式控制领域。
工作电压范围(2.7V~6V),全静态工作,工作频率宽在0Hz~24MHz之间,比8751/87C51等51系列的6MHz~12MHz更具有灵活性,系统能快能慢。
STC90C52AD芯片提供三级程序存储器加密,提供了方便灵活而可靠的硬加密手段,能完全保证程序或系统不被仿制。
P0口是三态双向口,通称数据总线口,因为只有该口能直接用于对外部存储器的读/写操作。
STC90C52AD单片机为40引脚芯片如图一所示,在本设计中,主要用到P0口、P2口、P1.0口及P3.0、P3.1、P3.2口。
P0口可作为通用I/O口,但须外接上拉电阻,所以在设计显示数码管我们避免了使用P0口这样大大简化了动态显示电路。
P1口:
8位、双向I/0口,内部含有上拉电阻。
P1口可作普通I/O口。
输出缓冲器可驱动四个TTL负载;
用作输入时,先将引脚置1,由片内上拉电阻将其抬到高电平。
P1口的引脚可由外部负载拉到低电平,通过上拉电阻提供电流。
在FLASH并行编程和校验时,P1口可输入低字节地址。
在串行编程和效验时,P1.5/MO-SI,P1.6/MISO和P1.7/SCK分别是串行数据输入、输出和移位脉冲引脚。
P2口:
具有内部上拉电阻的8位双向I/O口。
P2口用做输出口时,可驱动4各TTL负载;
用做输入口时,先将引脚置1,由内部上拉电阻将其提高到高电平。
若负载为低电平,则通过内部上拉电阻向外部输出电流。
在FLASH并行编程和校验时,P2口可输入高字节地址和某些控制信号。
P3口:
具有内部上拉电阻的8位双向口。
P3口用做输出口时,输出缓冲器可吸收4各TTL的灌电流;
用做输入口时,首先将引脚置1,由内部上拉电阻抬位高电平。
若外部的负载是低电平,则通过内部上拉电阻向输出电流。
在本设计中,P3口作为时间设置的4按键输入,因为有上拉电阻,所以可以通过按键直接接地,简化了电路。
在与FLASH并行编程和校验时,P3口可输入某些控制信号。
P3口除了通用I/O口功能外,还有替代功能如表1所示。
表1P3口的第二功能
端口引脚
各个功能
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(外部数据存储器读选通信号输出端,低电平有效)
单片机使用宏晶公司支持串口下载程序(ISP)的单片机,为STC90C52AD课程设计配发的小电路板(ISP-MCUBasiccircuit)电路原理图见下图。
该板作为课程设计的核心电路板使用,板上有单片机及附属电路,RS-232通信驱动电路,高低电平测试电路等。
课程设计电路中需要的其他电路在此基础上扩展,通过插孔连接。
课程设计配发的小电路板(ISP-MCUBasiccircuit)电路原理图见下图。
扩展电路在万用板上制作用四位数码管显示小时与分钟,中间那个点用来区分小时与分钟;
每秒用一个LED闪烁一下;
用了4个按键,一个是选择键,一个是加键,一个是减键,
一个是确认键。
时间要精确,整点报时,声音间隔1秒,并且可以调整时间调整位闪烁提示。
扩展电路用到得器件:
4个按键,一个是调节键,一个是设置键,一个是加1键,一个是确定键;
四个DPY7-SEGDP共阴极动态LED;
四个NPN三极管;
8个300欧姆和四个1千欧的电阻;
导线;
一个74LS245进行驱动。
每各引脚可吸收8各TTL的灌电流。
作为输入时,首先应将引脚置1。
P0也可用做访问外部程序存储器和数据存储器时的低8位地址/数据总线的复用线。
在该模式下,P0口含有内部上拉电阻。
在FLASH编程时,P0口接收代码字节数据;
在编程效验时,P0口输出代码字节数据(需要外接上拉电阻)。
2.1.2综合电路设计
采用单片机的TO定时器,使其工作在方式1,产生一个100ms定时中断,循环10次,到1s时,秒加1;
秒到60时,分加1,秒清零;
分到60时,秒清零,分清零。
数码管采用动态显示,一个扫描周期共循环四次,依次显示秒的低位、秒的高位、分的低位、分的高位,每次显示延时4ms。
这期间要将不同的数送到P1口,以及将P2口的不同位置1。
调节时,调用相应的子程序,来完成功能。
2.2单元电路设计
2.2.1动态显示驱动设计
数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,如图二所示。
图二
2.2.2时钟产生单元
图三
52单片机的时钟信号通常用两种电路形式得到:
内部振荡方式和外部振荡方式。
在引脚XTAL1和XTAL2外接晶体振荡器(简称晶振)或陶瓷谐振器,就构成了内部振荡方式。
由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。
内部振荡方式的外部电路如下图所示。
图中,电容器Col,C02起稳定振荡频率、快速起振的作用,其电容值一般在5-30pF。
晶振频率的典型值为12MHz,采用6MHz的情况也比较多。
内部振荡方式所得的时钟情号比较稳定,实用电路中使用较多。
外部振荡方式是把外部已有的时钟信号引入单片机内。
这种方式适宜用来使单片机的时钟与外部信号保持同步。
2.2.3串口驱动电路单元
DB-9引脚定义
针脚
功能
5
信号地线
1
载波检测
6
数据准备完成
2
接受数据
7
发送请求
3
发送数据
8
发送删除
4
数据终端准备完成
9
振铃指示
图四
如图四所示,MAX232是RS-232收发器,用于实现TTL电平与微机串口的RS-232电平信号之间的转换。
采用单+5V电源供电,数据传输速率为120kbit/s。
2.2.4蜂鸣器电路单元
图五
2.2.5动态显示控制电路单元
如图六所示另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。
通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。
在轮流显示过程中,每位数码管的点亮时间为1~2ms。
图六
2.2.6按键电路单元
图七
2.2.7译码单元如图八所示
如图八其功能介绍如下:
BI:
4脚是消隐输入控制端,当BI=0时,不管其它输入端状态如何,七段数码管均处于熄灭(消隐)状态,不显示数字。
LT:
3脚是测试输入端,当BI=1,LT=0时,译码输出全为1,不管输入DCBA状态如何,七段均发亮,显示“8”。
它主要用来检测数码管是否损坏。
LE:
锁定控制端,当LE=0时,允许译码输出。
LE=1时译码器是锁定保持状态,译码器输出被保持在LE=0时的数值。
A1、A2、A3、A4、为8421BCD码输入端。
a、b、c、d、e、f、g:
为译码输出端,输出为高电平1有效。
2.3系统调试
硬件调试时可先检查印制板及焊接的质量情况,在检查无误后可通电检查LED显示器的点亮状况。
若亮度不理想,可以调整P1口的电阻大小,一般情况下取200Ω电阻即可获得满意的亮度效果。
实验室制作时,可结合示波器测试晶振及P1,P2端口的波形情况进行综合硬件测试分析。
硬件调试:
硬件调试是利用DVCC实验与开发系统、基本测试仪器(万用表、示波器等),检查用户系统硬件中存在的故障。
硬件调试可分为静态调试与动态调试两步进行。
静态调试:
是在用户系统未工作时的一种硬件检测。
第一步:
目测。
检查外部的各种元件或者是电路是否有断点。
第二步:
用万用表测试。
先用万用表复核目测中有疑