×点阵数字钟及汉字显示.doc
文本预览下载声明
16×32点阵数字钟及汉字显示 作者: HEY | 浏览数(6070) | 评论数(0) | 2007-08-09
一.电路原理框架设计
制作作品:16×32点阵显示数字钟及汉字显示
实现功能:点阵显示的实时时钟以及汉字等字符的左移显示
实用特征:采用双电源供电,断电后时钟由电池供电还能继续运行,而且精确性较高
实现原理:
1. 时钟显示是由DS1302精确的时钟芯片产生时钟信号并将其送至单片机,经过单片机处理后再输送到点阵显示模块。
2. 汉字显示并左移原理是先写入与本点阵驱动相应的代码进单片机,通过单片机控制程序取表进行处理后送点阵模块显示
电路主要模块及原理图:
1. 单片机最小系统及控制按键电路
2. DS1302与单片机接口电路
DS1302除了系统上电时由系统供电外,如果主电源断电还有一电池给DS1302供电,防止断电后DS1302数据消失。
4.点阵行驱动模块电路
行驱动采用74LS154(4-16线译码器)及PNP三极管,由于是16×32点阵显示功率较大故采用8550NP三极管。
5.点阵列驱动电路
列驱动采用74HC595移位寄存器将控制位级连接入单片机,每个74HC595数据输入端单独接单片机。16×32点阵模块由8块小的8×8点阵模块通过级连而拼成,共16行,32列。
二:主要元器件选择:
单片机:AT89S51采用市场上比较常用的AT89S51
三极管:点阵的行驱动电路用,这里采用PNP管,具体型号用8550
点阵块:为了电路简单,采用双色8×8点阵
晶振:采用的是12MHZ的晶振
电源部分:采用5V电压供电,采用的是L7805稳压芯片供电
电阻:大部分是限流电阻,阻值为4.7K或10K,1K
译码器:4-16线采用市场上较为常用的74LS154,用来作行驱动
移位寄存器:采用74HC595移位寄存器作列驱动,驱动列
端口分配及连接:
P1.0-P1.2:DS1302与单片机接口
P1.3-P1.4:K0,K1按键,用来调整时间,按下为0
P0:P0口接点阵行驱动电路接译码器
P2:P2口点阵列驱动电路接74HC595
最后是做好之后的图
附:点阵时间显示源程序
//===================================================================================////*标题:16*32点阵数字钟显示程序//*说明:时钟信号产生采用DS1302,列采用74HC595驱动(共4个),行驱动采用4-16线译码器74LS154//*功能:通过动态扫描显示时钟,可显示时,分,秒,日期中的月和日//*作者:HEY//*日期:2006-05-29//*邮箱:billy3416@163.com//*备注:此是我刚接触单片机时的一个小制作 程序和电路设计上难免有不足之处 请谅解//===================================================================================//
#include reg51.h#include stdlib.h#define uchar unsigned char
//===================================================================================////用到的引脚及端口定义//===================================================================================//
sbit SERIALIN_0=P2^0; //定义P2.0为列向第1个74HC595的DATA输入 sbit SERIALIN_1=P2^1; //定义P2.1为列向第2个74HC595的DATA输入sbit SERIALIN_2=P2^2; //定义P2.2为列向第2个74HC595的DATA输入sbit SERIALIN_3=P2^3; //定义P2.3为列向第2个74HC595的DATA输入
sbit CLOCK_DATA=P1^0; //定义P1.0为DS1302的DATA端口 sbit CLOCK_RST=P1^1;
显示全部