- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
可报温报时电子设计报告
电子系统设计报告
电气43 陈振斌 孙鹏程
西安交通大学
2017-5-20
闹钟提示
整体系统框图
S3、S4、S5键组合实现校正
整点
S2键切换显示
S1键切换模式
数码管闪烁
报时报温
温度显示
日历校正
定闹功能
日历显示
时钟显示
时钟校正
系统工作原理
基于单片机STC89C52与开发平台KEIL软件,利用C语言设计相关程序。期间配合使用DS1302时钟芯片实现走时功能,使用温度传感器件DS18B20实现室温测量功能,使用ISD1760语音芯片实现录放音功能以及配合动态显示数码将相关功能以可视形式呈现,并通过按键配合实现切换显示、校时、定闹等额外功能。
S1、S2键执行模式及显示切换功能及S5确认/关闭闹钟功能
时钟、日历校正及定闹模块(S3、S4、S5组合)
闹钟提示(数码管闪烁)
定时中断部分循环程序
主程序循环
时钟、日历显示模块
整点报时报温功能
温度显示循环(关闭定时器)
软件框图开始
各变量及时钟、语音芯片初始化
系统使用介绍:
电路板上电后,初始状态数码管显示时钟;
S1键切换模式,模式0为正常显示模式,模式1为校正模式,并且取决于按下按键之前显示部分依次进入:时钟校正、日历校正、闹钟定时模块;
S2键切换显示,依次为:时钟、日历、温度;
S3键在进入校正模式有效,用于选择校正位;
S4键在进入校正模式有效,用于对当前校正位进行数值改变,即“加1”功能;
S5键在校正模式时,用于确认校正,在闹钟闪烁时,按下可关闭闹钟;
S6为电路板重置键,终止程序;
RST键为语音芯片重置键,中断语音芯片工作。
已知部分缺陷及非完美解决方案:
问题描述:进入校正模式时,会出现数据读取错乱,使得数码显示0~9以外的数字,如A、B、C、D等;在确认校正时同样会有几率出现该问题。
推测原因:DS1302走时程序中数据会有过渡性变化,使得display_buffer[]数组的数据在读取和置入时产生问题。或置数时有数据错误。
解决方案:对显示错乱部分重新进行校时,该处将置零。此后可正常校正。
软件编写与调试时所遇到的问题及解决方案:
按键按下时程序多次执行:利用“miaomiao”系???变量作为判定条件保证只执行一次程序;
对显示变量display_buffer直接进行加一操作进位产生错乱:引入buffer_temp[]数组,替代校正;
语音芯片不能连续播放多段语音:每段播放后延时适当时间;
为使得”on”、” off” 的右下角显示小数点时对SEGMENT直接进行“位与”操作只能显示o8.”、” of8”. 等:引入变量s过渡;
整点报时会连续两次播放语音:只在分钟显示为“59”时使得miaomiao_play变量为一,播放后置为零,保证只播放一次;
报温时可能读取到设定工作温度上限(39摄氏度)的温度值且实际此时温度在上限之内:在tmread()函数里增加循环读取部分直至读到正常数值;
其他组组员(于晨曦同学)提出的建议与提示:温度读取时间较长不宜加入定时中断显示;每次显示前对位码或段码(取决于置数顺序)先置零,以解决数码管残影问题。
PCB板原理图及接线图
见验收文件夹PPT,由于打印问题在此不作展示。
源程序代码
#include at89x52.h
#include stdio.h
#include absacc.h
#include intrins.h
#define SEGMENT XBYTE[0xdfff]
#define BIT_LED XBYTE[0xbfff]
#define fosc 11.0592
#define time0 2500
#define uint unsigned int
#define SEGMENT XBYTE[0xdfff]
#define BIT_LED XBYTE[0xbfff]
//语音部分定义开始
unsigned char bdata SR0_L;
unsigned char bdata SR0_H;
unsigned char bdata SR1;
unsigned char APCL=0,APCH=0;
unsigned char PlayAddL=0,PlayAddH=0;
unsigned char RecAddL=0,RedAddH=0;
sbit CMD=SR0_L^0;
sbit FULL=SR0_L^1;
sbit PU=SR0_L^2;
sbit EOM=SR0_L^3;
sbit INTT=SR0_L^4;
sbit RDY=SR1^0;
sbit ERASE=SR1^1;
sbit PLAY=SR1^2;
sbit REC=SR1^3;
您可能关注的文档
最近下载
- BOM基础知识培训教材.ppt VIP
- 分布式控制系统(DCS)系列:Emerson DeltaV_4.软件安装与配置.docx VIP
- 齿轮箱与联轴节试验台.pdf VIP
- 新解读《FZ_T 07027 - 2023绿色设计产品评价技术规范 儿童服装》必威体育精装版解读.docx VIP
- PTC-中车长客PDM方案建议书20170609_Final.pptx VIP
- sfet7750700c动车组检修kwd联轴节扩压检查作业指导书.pdf VIP
- SFET-77-50500-C-动车组检修KWD联轴节退卸作业指导书-——【上海动车段三级修】.pdf VIP
- JJF(黑)13-2021加油机付油商品量检验规则.docx VIP
- 产品数据管理年终总结.pptx VIP
- 产品数据管理系统项目.pdf VIP
文档评论(0)