高级会员
 
主题
帖子
积分3296
阅读权限30
注册时间2010-10-19
最后登录1970-1-1
在线时间 小时
|
该帖同时发表时数码之家
自从3年前做了3264点阵屏万年历后,原贴子:https://www.yleee.com.cn/thread-4995-1-1.html
另一个:https://www.yleee.com.cn/thread-20319-1-1.html
之后有很长时间没有折腾单片机和万年历了,后来有朋友到家里来,见到这个万年历很好,就要求我做给他们,一口气做了十多个送给亲戚朋友。
于是就在原程序的基础上,参考了别人的红外遥控函数,加上了红外学习遥控,亮度调节,快慢校准功能,当然也有温度功能,但是做给别人的没有,因为18b20一个要6元太贵了。算是比较完美的功能了。
我这个布局一直都是两行,第一行是时分秒,第二行分别显公历,农历,星期,1.5秒换一次。为什么用这种布局,因为这种布局实现简单,3264屏结构万年历中字体最大,很远就能看到。用过其它一屏全显完所有内容的,部分内部很小,显得太花俏不实用。就一直用这个布局了。这个是程序是单色屏,不过上下接不同颜色输入上红下绿。用在单色屏也可以。
硬 件 STC12C5A60S2单片机一个,24M晶振(12M也可以,要在源程序中改下参数。),DS1302时钟片,红外接收头一个,必须接P3.4脚 。标准08接口单色或双色3264点阵屏,OE为低电平驱动,数据为高电平有效。具体接法如下:
--------------------------------------------------------------------------------------------------------------------
sbit SCLK = P2^6; //DS1302时钟口P2.6,可自行改
sbit IO = P2^7; //DS1302数据口P2.7,可自行改动
sbit RST = P3^7; //DS1302片选口P3.7,可自行改动,以上三个端口一定要加上3-5K上拉电阻。
//按键与单片机接法
sbit KEYIR=P3^3; //红外学习键,按一下进入学习设置键,加1键,减1键,按四下退出学习状态。
sbit KEYS=P3^5; //调整键,按一次设置状态位加1,轮流切换到设置年,月,日,时,分,秒,星期,正常状态.
sbit KEYA=P2^5; //加一键,在设置状态时按一次相应设置位加1
sbit KEYD=P2^4; //减一键,在设置状态时按一次相应设置位减1
//LED屏接口与单片机硬件接法。
//行扫描ABCD分别接P1^0,P1^1,P1^2,P1^3,这个不能改。
//红外接收口为P3.4,这个不能改。
//sbit G2=P3^2;
//sbit G1=P3^3;
sbit R2=P1^6;
sbit R1=P2^0;
sbit OE=P1^4;
sbit CLK=P1^7;
sbit STB=P1^5;
具实行现功能:1 显时分秒
2 显公历、农历、星期 ,1.5秒换一次。
3.红外学习遥控,限于NEC格式的遥控器都可以用,学习状态,可以显示遥控器的用户码和键位码,可以当NEC格式红外遥控器测码机用。
4 亮度调节功能,0-7点最暗,7-19点最高亮度,19-24点中等亮度。
下楼可以上视频和源程序和HEX文件,用KEIL uVision4 编译,希望大家修改完善仿制,共同提高。视频中为本人讲解,请大家忽视难听的广式普通话。
|
评分
-
查看全部评分
|