基于无字库12864液晶模块的日历钟设计制作_第1页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于无字库12864液晶模块的日历钟设计制作这个小小日历钟有什么特点呢?1、容易,用法元件少,简单制作,核心就是atmega8l和日历钟忡1302。2、所有用法低压元件,3v就可以工作。3,用法自编的小字模和图形界面使得显示具有特色:在文字界面可以清楚地读出当前的日期和时光,而且加入一个小动画使显示越发生动,在图形界面用法模拟刻度和指针动态指示当前时光,两个界面柙按键切换。图2电路原理4、电源制作在自立的小电路板上,调试程序时插入用法供电的3.3v,完毕后可以取下,插上开关,用法电池供电。5、不用背光时耗电很小(全机约3ma),可以用法圆片锂电池cr2o32供电。日历钟安装在一块50mm x5

2、0mm小万用板上。形状见图1。电路原理电原理图见图2,液晶型号如前述,单片机就是的atmega8l-8pu(以下简称m8),可以在低电压下工作,m8 的pd口控制液晶,主要就是控制串行写入显示数据。ds13o2(以下简称1302)是常用的日历时钟芯片,32768hz晶体b是它的振荡源。在它内部有10个指令寄存器用来存储日期、时光的数值并控制芯片工作,m8通过pb0pb1、 pb2控制1302的rst、sclk、i/o:rst为高时才干读写1302,读写都是让数据在i/o串行传送,当sclk升高沿时写入1位地址或数据,写入1位地址或数据。写入地址后每当sclk下降沿时则读出数据。读写都是从最低位

3、开头,受sclk时钟同步。接通电源后它必需通过单片机程序启动计时,只要有电源或者各用电源存在,它就能向来工作下去,和单片机是否工作无关。衔接在m8的pc口的4个轻触按键,s1,s2,s3用于调校时问:分离为确认修改、移动光标,修改数值;s4用于界面切换。电源包插两部分 :圆片电池cr2o32通过vd1衔接到1302的vcc1作为后各电源、以便在关机时也能使1302继续工作,另一路可通过开关s5给液晶、mb、1302的vcc2供电,在调试时为了避开消耗电池,接入了另个5转3.3v的小稳压板,用微型sb接口从外部取得5v电源。调试好后,取下稳压板,在插孔上插上小拨动开关s5,就可以用法锂电池了。注

4、重二极管vd1不行省略,由于根据1302的解释书,vcc2高于vcc1时由vcc2电,vcc2低于vcc1时由vcc1供电,在用电池时,因为有二吸管,vcc2比vcc1高,电池正常供电,关断电池时,vcc2为0,电池通过二极管作为后各电源,符合要求 ,保证电路正常工作。硬件制作这个日历钟电路容易所需元器件很少。用法双列直插插座,液晶焊上90度插针排和焊在万用板上的90°排针插座插接。6线编程口,电源部分插座用法了圆孔2.54mm间距插座条。电池用法圆锂电池cr2o32。采纳一块5cm见方的万用板安装所有元件,首先截取段90°排针座,焊在电路板背面上方中心,作为液晶插座,m8

5、的ic插座也要装在电路板背面,为此把它的引脚往外弯折,根据液晶插座引脚对应的位置定位ic插座, 先焊上rc复位元件以及些相关连线,然后把mb插座定位,接焊在电路板焊盘上。1302插座依据m8插座定位,和32768hz晶体一起也是焊在电路板反面。这种十分规安装虽然不尽合理,但有效利用了万用板的安装面积(否则液晶占用的块不方便用),而且可使液晶和mb和1302之间的连线变得十分容易,挺直用焊锡连通即可。在电路板正面,还要安装轻触按键、电池窠、编程插孔排、电源块插孔。两面元器件布置见图3和图4。另用小块万用板焊上微型usb插座、滤波、低压稳压器lm1117-3.3以及和时钟板电源插孔对应的ic插针。

6、焊接液晶90°插针排时,可把它先插八已经焊在电路板上的排针座,再焊接液晶上的镀金焊盘,注重保持液晶和电路板的平行,所以插针不能在液晶上插到底。由于背光对于区区2oomah容量的小锂电池来说,50ma显得耗电太大,所以就没有安装背光电源接线,假如需要安装最好接到外部电源上而不要用法小电池。编程电路虽然容易,但是要让不带字库的lcd、1302在m8的统一领导下有条不紊地工作,所以详细编程必需解决以下问题。图7程序流程1、让时钟走动起来,而且可以通过按键设定或修改当前数据。2、让液晶显示时钟芯片当前提供的信息:年代日时分秒,两个显示界面的按时刷新。3、制作字模和图形界面编程。以上第1点,就

7、是用m8控制1302。我们可以根据它的时序要求编列一些函数,另外在程序中建立个数组datetme用来存放从1302读出的年代日时分秒,作为数据刷新依据;第2点,主要是在上显示这个数组当前的数据(要注重1302存放日期时光的格式是bcd码,所以存取之前必需先举行数制转换)。数据刷新事实上就是查询1302当前“秒”是否等于上次查询结果,如不等于则已经过去1秒,在数组登记新秒,刷新显示“秒”-固然是1秒刷新一次;而且当秒更新为o日寸要更新“分”·以此类推。第3点上次已有讲述用法,畔畔字模的办法,其中编制了8 x 8小数字、1 2×16数字、16×1 6汉字几种字模用于不

8、同的显示位置,另外有个小鸡啄米的动画,可以在16点阵字模工具中用鼠标点击,分离画出小鸡低头和小鸡抬头两个图案,在秒刷新时交替显示即可。用字模软件制作好所需的字模后,把全部常量字模数组定义放在头文件miniclock中,这些数组所有放在flash区。图形界面的模拟指示针、刻度的制作也不困难,只要事先规划出水平刻度长度,起点和尽头坐标画出水平线,垂直刻度则根据刻度位置画出短垂直线,指示地则是在刻度上方或下方垂直直线,它的位置要计算好,按照时光数据刷新而转变。标题“小小日历钟”是个汉字串,用一个汉字串显示函数vold show-string1616(ucharx,uchary,uchar * str

9、ing,uchar string_length);参数是显示起始列、页、字串指针、字串长度,同时要事先定义个以上指针所指的字串数组,此数组的元素是待显示的字模在字模数组的位置。囫囵程序流程见图7,左远是主流程,右边是年日月时分秒更新流程。调试硬件焊好后,反复检查无误 不插m8、1302和lcd锂电池,插上稳压小板,接通usb电源,测试m8插座,1302插座,编程口和lcd的vcc电源应为正常3.3v,拆下稳压断电,插上锂电池,1302插座8脚应为2.4v,插上s5并接通,vcc应为3,至此电池没有问题了。拔掉s5,插上m8、液晶和1302,插上稳压板和usb电源,假如你从末用法过这种lcd,不妨自己先编制一些小程序(例如启动、初始化m8和液晶后,用不同的参数运行清屏函数)观看液晶显示是否犹如预期,假如没有反应要再次检查程序中对m8引脚定义是否和你的实际硬件接线全都,这个小液晶和别的一些液晶不同,不需要硬件调节对照度夏,不会因此对照度调整不当而不显示(除非你修改了默认值)。这关先过了再往下走。往m8下载程序,假如一切正常,画面会立刻出来。不过现在的口期、时光不对、按动s2最下面一行日期时光的分隔符上会展现竖线光标,延续按s2光标会循环右移,在光标停下的位置按动s1,在上面就会浮现设定值,反复按动会循环递增,就这样逐调整日期和时光,5所

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论