蚂蚁文库
换一换
首页 蚂蚁文库 > 资源分类 > PDF文档下载
 

电子时钟(LCD显示)

  • 资源ID:55674545       资源大小:388.36KB        全文页数:15页
  • 资源格式: PDF        下载权限:游客/注册会员    下载费用:10积分 【人民币10元】
快捷注册下载 游客一键下载
会员登录下载
三方登录下载: 微信快捷登录 QQ登录  
下载资源需要10积分 【人民币10元】
邮箱/手机:
温馨提示:
支付成功后,系统会自动生成账号(用户名和密码都是您填写的邮箱或者手机号),方便下次登录下载和查询订单;
支付方式: 微信支付    支付宝   
验证码:   换一换

 
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,既可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

电子时钟(LCD显示)

电气工程及自动化专业电气工程及自动化专业 单片机原理及应用课程设计报告单片机原理及应用课程设计报告 姓名姓名XXXXXXXXXXXX 学号学号XXXXXXXXXXXXXX 专业班级专业班级XXXXXXXXXXXX 题目电子时钟题目电子时钟LCDLCD 显示)显示) 电气与电子工程学院电气与电子工程学院 二〇一四年十二月三十日二〇一四年十二月三十日 目目录录 一、设计目的一、设计目的2 2 二、设计任务和要求二、设计任务和要求 三、设计原理分析三、设计原理分析 四、硬件资源及其分配四、硬件资源及其分配 五、硬件图五、硬件图 六、程序框图六、程序框图 七、程序七、程序 八、调试运行八、调试运行 九、仿真截图九、仿真截图 十、设计心得体会十、设计心得体会 2 2 2 2 3 3 4 4 5 5 7 7 1313 1313 1414 1 一、设计目的一、设计目的 1、设计要求以 AT89C51 单片机为核心的时钟,在 LCD 显示器上显 示当前的时间。 2、 使用字符型 LCD 显示器显示当前时间。显示格式为“时时分 分秒秒”。 3、用 4 个功能键操作来设置当前时间。 4、熟悉掌握 proteus 编成软件以及 keil 软件的使用 二、设计任务与要求二、设计任务与要求 本设计以 AT89C51 单片机为核心, 通过时钟程序的编写, 并在 LCD 显示器上显示出来。 该编程的核心在于定时器中断及循环往复判断是 否有按键操作,并对每个按键的操作在 LCD 显示器上作出相应的反 应。由于LCD 显示器每八位对应一个字符,故把秒、分、时的个位和 十位分开表示。 该课题中有四个控制开关 KM1、KM2、KM3、KM4 分别控制时、分、 秒、确定的调整,时间按递增的方式调整,每点一次按钮则相应的时 间个位加以,且时间调整不干扰其他为调整时间的显示。 三、设计原理分析三、设计原理分析 1、按照系统的设计功能要求,本时钟系统的设计必须采用单片 机软件系统实现,用单片机的自动控制能力配合按键控制, 来控制时 钟的调整及显示。 时钟电路 数据显示 微微 型型 控控 制制 器器 按键调时 图一 系统总原理图 2 2、软件主要完成功能 (1)显示时间程序 用软件调节时间,通过程序的调节,最后用 LED 现实时钟 (2)调节时间程序 按键调节时间,能实现时、分的调节 3、软件设计主要流程 时间控制程序 时间控制程序,用中断准确的控制时间,采用60 进制,60 秒为 一分钟,60 分钟为一个小时,全天设置为 24 小时。 四、硬件资源及原理图四、硬件资源及原理图 AT89C51芯片 AT89C51 是美国ATMEL 公司生产的8 位Flash ROM 单片机。其最 突出的优点是片内ROM 为Flash ROM,可擦写1000 次以上,应用并不 复杂的通用ROM 写入器就能方便的擦写,读取也很方便,价格低廉, 具有片程序ROM 二级保密系统。因此可灵活应用于各种控制领域。 AT89C51 包含以下一些功能部件 1. 一个 8 位 CPU ; 2. 一个片内振荡器和时钟电路; 3. 4KB Flash ROM ; 4. 128B 内 RAM; 5. 可寻址 64KB 的外 ROM 和外 RAM 控制电路; 6. 两个 16 位定时/计数器; 7. 21 个特殊功能寄存器; 8. 4 个 8 位并行 I/O 口; 9. 一个可编程全双工串行口; 10. 5 个中断源,可设置成 2 个优先级。 AT89C51 单片机一般采用双列直插 DIP 封装,共 40 个引脚,图 2-1 为其引脚排列图。40 个引脚大致可分为 4 类电源、时钟、控 制各 I/O 引脚 3 五、硬件图五、硬件图 4 六、程序框图六、程序框图 LCD 显示 设置 T0 为方式 1 设中断次数为 20 清计时单元 开中断 启动 T0 调用显示子程序 按键程序 调用按键显示子程序 时钟主程序流程 5 保护现场 (46H)146H N 设 置 计 数 初 值 (46H)4 N (47H)2 1S 到 (40H)1(40H) N (40H)10 0(46H) (0)(47H) 0(40H)(46H)1(46H) (41H)141H N (41H)5 0(41H)恢复现场 (43H)1(43H) N (43H)10 返回 (46H) 10 0(43H) 0(46H) (44H)144H N (44H)5 (47) 1(47) 0(44H) 中断服务流程图 6 七、程序七、程序 include include define uchar unsigned char define uint unsigned int define DelayNOP {_nop_;_nop_;_nop_;_nop_;} sbit K1 P00; sbit K2 P01; sbit K3 P02; sbit K4 P03; sbit SPKP30; sbit RS P20; sbit RW P21; sbit E P22; uchar code Str1[] “ Current Time “; // 一下两个字符串的串 长均为 16 uchar code Str2[] “Set New Time. “; uchar HMS_String[]“ 000000 “;//带显示的时间串 bit Settime0; //是否修改时间 bit Change_H_or_M 1;//1 表示修改时.0 表示修改分 uchar MilliSecond,Hour 0,Minute0, Second 0; //延时函数 void DelayMSuint x { uchar i; whilex-- fori0;i120;i; } //LCD 忙状态检测 bit LCD_Busy_Check { 7 bit result; RS 0;RW 1;E 1;DelayNOP;result bitP0 E 0; return result; } //写 LCD 命令 void LCD_Write_Commanduchar { whileLCD_Busy_Check;//判断 LCD 是否忙碌 RS 0;RW 0;E 0;_nop_;_nop_;P0 ; DelayNOP; E 1;

注意事项

本文(电子时钟(LCD显示))为本站会员(wangxing100)主动上传,蚂蚁文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知蚂蚁文库(发送邮件至2303240369@qq.com或直接QQ联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们


网站客服QQ:2303240369

copyright@ 2017-2027 mayiwenku.com 

网站版权所有  智慧蚂蚁网络

经营许可证号:ICP备2024020385号



收起
展开