




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
智能仪器及使用实验报告项目名称: 基于51单片机的简易电子表设计和仿真专业名称:测控技术和仪器班 级:测控0901班学生姓名:指导教师:一、任务要求使用Keil uVision编程软件以及ISIS 7 Professional仿真软件制作一个简易电子表,要求具备电子表基本功能(时间显示、时间调整等)。二、总体设计方案利用AT89C51作为控制以及1602LCD作为显示,通过6个按键实现出入时间设置状态、出入闹铃设置状态、小时位调整、分钟位调整、开关闹铃等功能。系统的流程图如下:图1-1 系统仿真流程图三、系统硬件1、AT89C51引脚功能说明:AT89C51芯片如图1-2所示图1-2 AT89C51VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏极开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口,如下所示: 口管脚 备选功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 (外部中断0) P3.3 (外部中断1) P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入) P3.6 (外部数据存储器写选通) P3.7 (外部数据存储器读选通) P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 :外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次有效。但在访问外部数据存储器时,这两次有效的信号将不出现。 :当保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,将内部锁定为RESET;当端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 振荡器特性: XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。2、1602LCD液晶显示引脚功能说明:1602LCD显示用来显示当前时钟和闹钟时间。当运行仿真软件时,可以清楚的看到时间。1602LCD芯片如图1-3所示图1-3 1602LCD编号符号引脚说明编号符号引脚说明1VSS电源地8D1数据2VDD电源正极9D2数据3VL液晶显示偏压10D3数据4RS数据/命令选择11D4数据5R/W读/写选择12D5数据6E使能信号13D6数据7D0数据14D7数据四、系统软件设计设计仿真图:图1-4 电子表仿真图设计程序:#include#define DataPort P0 sbit LATCH1=P26; /定义锁存使能端口 段锁存sbit LATCH2=P27; / 位锁存sbit KeyPort1=P34; /小时+1 按钮sbit KeyPort2=P35; /分钟+1 按钮sbit KeyPort3=P32; /定时开关sbit KeyPort4=P33; /定时设定sbit SPK=P12; /定义喇叭端口unsigned char code DuanMa10=0xc0,0xf9,0xa4,0xb0,0x99,0x92, 0x82,0xf8,0x80,0x90; /显示段码值09Unsigned char code WeiMa=0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01;/分别对应相应的数码管点亮,即位码unsigned char TempData8; /存储显示值的全局变量void DelayUs2x(unsigned char t);/us级延时函数声明 void DelayMs(unsigned char t); /ms级延时void Display(unsigned char FirstBit,unsigned char Num);/数码管显示函数unsigned char shi; /小时unsigned char fen ; /分钟unsigned char miao ; /秒unsigned char dingshi; /设定小时unsigned char dingfen; /设定分钟unsigned char quxiao; /取消定时void Init_Timer0(void); /定时器初始化void delay1s(); /消抖延时void DelayUs2x(unsigned char t);/函数声明 void DelayMs(unsigned char t);void main (void)unsigned char displaynum=0,i,j; Init_Timer0(); /初始化for(j=0;j=2) quxiao=0; P1=0xff; if(quxiao=1)P1=0xfe; /P1.1灯亮起为开启闹钟 否则为关闭闹钟 elseP1=0xff; if(displaynum=0) /时间显示界面 if(!KeyPort1) /按键扫描 设定小时 delay1s(); if(!KeyPort1) while(!KeyPort1); shi+; if(!KeyPort2) /按键扫描 设定分钟 delay1s(); if(!KeyPort2) while(!KeyPort2); fen+; TempData7=DuanMashi/10; /时 TempData6=DuanMashi%10; TempData5=0xbf; /加入- TempData4=DuanMafen/10; /分 TempData3=DuanMafen%10; TempData2=0xbf; TempData1=DuanMamiao/10; /秒 TempData0=DuanMamiao%10; Display(0,8); / 调用数码管扫描 else if(displaynum=1) /闹钟显示界面 if(!KeyPort1) /按键扫描 设置闹钟小时 delay1s(); if(!KeyPort1) while(!KeyPort1); dingshi+;if(dingshi=24)dingshi=0; if(!KeyPort2) /按键扫描 设定闹钟分钟 delay1s(); if(!KeyPort2) while(!KeyPort2); dingfen+;if(dingfen=60)dingfen=0; TempData7=0xff; TempData6=DuanMadingshi/10; TempData5=DuanMadingshi%10; TempData4=0xbf; TempData3=0xbf; TempData2=DuanMadingfen/10; TempData1=DuanMadingfen%10; TempData0=0xff; Display(0,8); / 调用数码管扫描 if(shi=dingshi)&(fen=dingfen)&quxiao) /闹钟滴答函数 if(!KeyPort4) quxiao=0; for(i=0;i200;i+) DelayUs2x(200); SPK=!SPK; Display(0,8); / 调用数码管扫描 SPK=0;/防止一直给喇叭通电造成损坏 for(i=0;i=60) miao=0; fen+; /ReadTimeFlag=1; /读标志位置1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 土建工程装配式构件连接方案
- 校园消防安全教育动画
- 校园安全教育活动流程
- 排水管道更新方案
- 固危废中转料场建设项目技术方案
- 政治闭卷考试题目及答案
- 政府采购考试题库及答案2025年
- 郑州铁路期末考试题及答案
- 心理项目宣传活动方案策划
- 专业硅PU篮球场建造与赛事转播权合作合同
- 泌尿系结石 课件
- 物业投标书样本
- 安全保密管理方案(2篇)
- 【组织沟通障碍及其对策探究-以A企业为例12000字(论文)】
- 殡葬礼仪服务投标方案(技术方案)
- 血液灌流治疗癌症的原理与前景
- 2024年四川能投宜宾市叙州电力限公司招聘高频考题难、易错点模拟试题(共500题)附带答案详解
- -广告制作报价单-明细
- 屁屁辅助脚本
- 【顺丰集团财务共享中心运作问题与优化建议探析15000字(论文)】
- 肺功能科普知识宣传
评论
0/150
提交评论