




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学 号 1422041116天津城建大学单片机原理及应用A设计说明书(利用LCD1602显示的简易计算器设计)起止日期: 2015年6月 29日 至 2015年7月10日学生姓名刘振班级14电气11班成绩指导教师(签字) 控制与机械工程学院2015年7月10日目录一、硬件设计说明11.1 LCD1602电路设计:11.2矩阵键盘电路设计:2二、程序设计说明32.1键扫程序设计32.2算术运算程序设计42.3显示程序设计5三、工作原理图及程序流程图6四、程序清单:8参考文献17一、硬件设计说明1.1 LCD1602电路设计:LCD1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用。1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。图1-1 1602引脚表1 1602各引脚功能图1-2 液晶管硬件电路原理图1.2矩阵键盘电路设计: 4*4 矩阵键盘行输入接单片机P1.0-P1.3,列输入接单片机P1.4-P1.7,通过扫描方式检测是否有键按下,并确定键值,使用矩阵键盘时注意给P10 矩阵键盘选择端使能。对键盘进行编号,S3-S18,按下相应按键,在数码管上显示相应键值(0-F) 。例如按下S10 键,显示A,按下S0 键,显示0。电路原理图如1-2图1-3 矩阵键盘电路原理图17二、程序设计说明 2.1键扫程序设计键扫程序的过程为:开始时,先判断是否有键闭合,无键闭合时,返回继续判断,有键闭合时,先去抖动,然后确定是否有键按下,若无键按下,则返回继续判断是否有键闭合,若有键按下,则判断键号,然后释放,若释放按键完毕,则返回,若没有释放按键,则返回继续释放。其流程图如图2-1所示。 图2-1 键扫程序流程图2.2算术运算程序设计算术运算程序的过程为:先判断输入的运算符是+、-、*、/ 中的哪一个,若是+或-,则要判断运算结果是否溢出,溢出则显示错误信息,没溢出就显示运算结果,若是/,则要先判断除数是否为零,为零就显示错误信息,不为零则显示运算结果,若是-,则直接显示运算结果。其流程图如图2.2所示。图2-2 算术运算程序设计流程图2.3显示程序设计显示程序的过程为:显示开始时,先进行LCD的初始化,判断是否显示,若不显示,则返回,若显示,则进行相应功能的设置,然后送地址和数据,再判断是否显示完,显示完则返回,没有显示完则继续送地址。 图2-3 显示程序流程图三、工作原理图及程序流程图图3-1仿真工作原理电路图图3-2 PCB原理图图3-3 PCB封装图 图3-4 程序流程图四、程序清单:mian.c:#include /头文件#define uint unsigned int / #define uchar unsigned charsbit lcden=P22; /定义引脚sbit rs=P20;sbit rw=P21;sbit busy=P07;char i,j,temp,num,num_1;long a,b,c; /a,第一个数 b,第二个数 c,得数float a_c,b_c;uchar flag,fuhao;/flag表示是否有符号键按下,fuhao表征按下的是哪个符号uchar code table=7,8,9,0,4,5,6,0,1,2,3,0,0,0,0,0;uchar code table1=7,8,9,0x2f-0x30,4,5,6,0x2a-0x30,1,2,3,0x2d-0x30,0x01-0x30,0,0x3d-0x30,0x2b-0x30;void delay(uchar z) / 延迟函数uchar y;for(z;z0;z-) for(y=0;y0) c=a-b; else c=b-a; while(c!=0) write_date(0x30+c%10); c=c/10; if(a-b0) write_date(0x2d); write_date(0x3d); /再写= a=0;b=0;flag=0;fuhao=0; else if(fuhao=3)write_com(0x80+0x4f); write_com(0x04); c=a*b; while(c!=0) write_date(0x30+c%10); c=c/10; write_date(0x3d); a=0;b=0;flag=0;fuhao=0; else if(fuhao=4)write_com(0x80+0x4f); write_com(0x04); i=0; c=(long)(float)a/b)*1000); while(c!=0) write_date(0x30+c%10); c=c/10; i+; if(i=3) write_date(0x2e); if(a/b=0) write_date(0x30); write_date(0x3d); a=0;b=0;flag=0;fuhao=0; break; case 15:write_date(0x30+table1num);flag=1;fuhao=1; break; main()init();while(1) keyscan();参考文献1 徐爱钧,徐阳等,单片机原理与应用 机械工业出版社 第2版 2013 2 罗亚非,凌阳十六位单片机应用基础 北京航空航天大学出版社 2003年3 郭天祥 51单片机C语言教程 电子工业出版社 2009.1 ISBN 978-7-121-07893-44 彭伟 单片机C语言程序设计实训100例. M北京.高等教育出版社
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年火电电力职业鉴定试题预测试卷及参考答案详解(综合题)
- 重难点自考专业(行政管理)试题附完整答案【全优】
- 静脉采血知识培训
- 2026届浙江省湖州市南浔区实验学校九上化学期中检测模拟试题含解析
- 库卡机器人进阶培训
- 福建省泉州市第八中学2026届英语九上期末学业水平测试试题含解析
- 2026届江苏省常州市金坛区水北中学英语九上期末教学质量检测试题含解析
- 企业培训师上课
- 2026届山东省滨州市滨城区东城中学化学九年级第一学期期中统考试题含解析
- 2026届四川省成都市石室天府中学九年级化学第一学期期末复习检测试题含解析
- 淘宝客服管理制度+奖金
- TCCPEF 086-2024 生态环境数智化监测与预警技术规范
- 2025年志愿者服务日知识竞赛考试指导题库150题(含答案)
- K3ERPwise老单开发手册
- 诊断学黄疸课件
- 体积单位间的进率(说课稿)-2024-2025学年六年级上册数学苏教版
- 孕期营养管理如何兼顾宝宝和妈妈营养天津市职业病防治院营养科讲解
- 篮球场围网施工方案
- 办公设备供货服务方案
- 快递柜租赁合同
- 智能计算系统:从深度学习到大模型 第2版课件 6、第六章-面向深度学习的处理器原理
评论
0/150
提交评论