收藏 分销(赏)

可调数显倒时计时器的设计-论文.doc

上传人:仙人****88 文档编号:9460412 上传时间:2025-03-27 格式:DOC 页数:39 大小:774.50KB 下载积分:10 金币
下载 相关 举报
可调数显倒时计时器的设计-论文.doc_第1页
第1页 / 共39页
可调数显倒时计时器的设计-论文.doc_第2页
第2页 / 共39页


点击查看更多>>
资源描述
摘 要 摘 要 时钟,从它发明的那天起,就成为人类的朋友。随着时间的推移,科学技术的不断发展,人们对时钟的精度要求越来越高,而传统时钟因有较大的计时误差,已经无法适应高科技领域的要求,因此数字时钟应运而生了。 本设计利用STC89C51单片机设计了一款具有时钟、温度、闹铃并可用红外遥控器进行时间调节、闹铃开关等功能的红外遥控温度数显钟。四位一体数码管显示,可实现时间、温度的画面切换。使用PT2262,PT2272无线发射接收模块控制,操作简单方便,操作距离空旷地可达100m。时钟采用单片机定时器,温度模块为DS18B20温度传感器,USB供电,简单方便。 关键词:STC89C51、无线遥控、温度显示,时钟显示 I Abstract Abstract Clock, from its invention of the day, become friends of mankind. With the passage of time, the continuous development of science and technology, people on the clock accuracy requirements of increasingly high, while the traditional clock for a larger timing error, has been unable to adapt to the requirements of the high-tech field, so the digital clock emerge as the times require. This design uses the STC89C52chip design with a clock, alarm clock, temperature and infrared remote regulation time, alarm switch function of infrared remote temperature display clock. One of four digital tube display, can realize the time, temperature switch. The use of PT2262, PT2272wireless transmitting and receiving module control, simple and convenient operation, the operating distance of clearing up to 100m. Clock with timer, temperature module for the temperature sensor DS18B20, USB power supply, simple and convenient. Keywords:STC89C51, wireless remote control, temperature display, clock display II 目 录 目 录 摘 要 I Abstract II 1 绪 论 1 1.1 课题研究背景 1 1.2数显钟系统发展概况 2 1.3 数显时钟系统的研究目的及意义 3 1.4 总体方案论证 3 2 硬件选型 4 2.1 单片机的选择 4 2.1.1 单片机引脚 4 2.1.2 单片机引脚功能 4 2.2 无线发射接收模块器件的选择 5 2.3 温度模块 7 2.3.1 DS18B20的特性 7 2.3.2 ROM 7 2.3.3 如何操作ROM 8 2.3.4 如何操作DS18B20 8 3 主要电路设计 12 3.1显示电路 12 3.2报警电路 13 4 框图及主要程序设计 14 4.1框图 14 4.2数码管显示电路 20 4.3秒表控制子程序设计 20 4.4数字处理及显示子程序设计 21 4.4整点报时子程序设计 21 4.4秒表显示子程序设计 21 4.5温度测量子程序 22 5 结论 23 6 致 谢 24 参考文献 25 附录1主程序 26 附录2 原器件清单 34 附录 3 系统原理图 35 河北工程大学科信学院毕业设计说明书 1 绪 论 1.1 课题研究背景 中国是世界上最早发明计时仪器的国家。有史料记载,汉武帝太初年间(纪元前104-101年)由落下闳创造了我国最早的表示天体运行的仪器——浑天仪。东汉时期(公元130年)张衡创造了水运浑天仪,为世界上最早的以水为动力的观测天象的机械计时器,是世界机械天文钟的先驱。盛唐时代,公元725年张遂(又称一行)和梁令瓒等人创制了水运浑天铜仪,它不但能演示天球和日、月的运动,而且立了两个木人,按时击鼓,按时打钟。第一个机械钟的灵魂——擒纵器用于计时器,这是中国科学家对人类计时科学的伟大贡献。它比十四世纪欧洲出现的机械钟先行了六个世纪。 第一只石英钟出现在二十世纪二十年代,从三十年代开始得到了推广,从六十年代开始,由于应用半导体技术,成功地解决了制造日用石英钟问题,石英电子技术在计时领域得到了广泛的应用。并取代机械钟做了更精确的时间标准。早在1880年,法国人皮埃尔·居里和保罗·雅克·居里就发现了石英晶体有压电的特性,这是制造钟表“心脏”的良好材料。科学家以石英晶体制成的振荡计时器和电子钟组合制成了石英钟。经过测试,一只高精度的石英钟表,每年的误差仅为3-5秒。1942年,著名的英国格林尼治天文台也开始采用了石英钟作为计时工具。在许多场合,它还经常被列为频率的基本标准,用于日常测量与检测。大约在 1970 年前后,石英钟表开始进入市场,风靡全球。随着科学的进步,精密的电子元件不断涌现,石英钟表也开始变得小巧精致,它既是实用品,也是装饰品。它为人们的生活提供方便,更为人们的生活增添了新的色彩。 在现行情况下根据简单实用强的、走时准确进行设计。而实验证明,钟表的振荡部分采用石英晶体作为时基信号源时,走时更精确、调整更方便。钟是一种计时的器具,它的出现开拓了时间计量的新里程。提起时钟大家都很熟悉,它是给我们指明时间的一种计时器,并且我们每天都要用到它。二十世纪八十年代中国的钟表业经历了一场翻天覆地的大转折。其表现在三个方面: ⑴从生产机械表转为石英电子表;  ⑵曾占据中国消费市场四十多年的大型国有企业突然被刚刚冒起的“组业”所取代,钟表生产中心转向中国南方沿海一带; ⑶中国钟表业发展从以机芯为龙头改为以手表外观件为龙头。 这场转折以迅雷不及掩耳的速度,冲击着传统的中国钟表工业。中国的钟表业从技术简单、零件少的石英钟机芯制造入手。最初石英钟机芯全靠从日本、德国进口,1989年开始完全自己生产,包括模具的制造加工。近十余年,逐渐提高机芯质量的稳定性,同时转向对手表机芯研制与开发。目前石英钟表机芯生产主要在福建省福州、广东东莞、番禺;机械钟表机芯在上海、山东等地。 现在我国的电子业发展非常快速,电子业的发展有利于钟表业的发展。在中国钟表发展史上,国产机芯研制的失败已经成为过去,“组装业”作为新兴钟表工业的起步阶段也已成为过去。一支新的充满智慧的钟表精英在成长。 我们相信在科技高速发展的今天,钟表业运用当今材料工业、电子工业和其他领域的最新技术,一定会生产出代表中国科学水平的产品。我们希望钟表业的精英们在提高制造技术水平中不断创新,培育出拥有自主知识产权的品牌。这正是中国钟表业发展的希望。 数字钟被广泛用于个人家庭,车站, 码头、办公室等公共场所,成为人们日常生活中的必需品。由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,运用超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。 1.2数显钟系统发展概况 21世纪,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。手表当然是一个好的选择,但是,什么时候到达所需要的时间却难以判断。所以,要制作一个定时系统。随时提醒这些容易忘记时间的人。 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、定时启闭电路、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。随着人类科技文明的发展,人们对于时钟的要求在不断地提高。时钟已不仅仅被看成一种用来显示时间的工具,在很多实际应用中它还需要能够实现更多其它的功能。高精度、多功能、小体积、低功耗,是现代时钟发展的趋势。在这种趋势下,时钟的数字化、多功能化已经成为现代时钟生产研究的主导设计方向。 1.3 数显时钟系统的研究目的及意义 数字钟是采用数字电路实现对时、分、秒数字显示的计时装置,以其显示的直观性、走时准确稳定而受到人们的欢迎,广泛用于个人家庭、车站、码头、办公室等公共场所,给人们的生活、学习、工作、娱乐带来了极大的方便,已成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体与 555 振荡器的广泛应用,使得数字钟的精度远远超过老式钟表,钟表的数字化给人们生产生活带来了极人的方便,而目大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、通断动力设备、以及各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。 1.4 总体方案论证 采用单片机自身的定时器实现时钟功能,用软件编写出闹钟程序,声音用蜂鸣器发出,显示使用四位一体的共阳数码管,用点的闪烁实现秒的显示,使用PT2262,PT2272无线发射接收模块实现遥控调试和闹钟的关闭等功能。使用无线模块不会受光线的干扰和影响,并且遥控的范围远,灵敏度高。相对于使用红外遥控更简单方便。 在使用无线遥控模块的时候,我们利用无线接收端的引脚产生高电平的输出,接到9013三极管的基极,而三极管的集电极接在单片机的引脚上,一旦开启遥控,那么单片机的引脚就回检测到低电平,从而像按键一样实现调时调分和关闭闹钟的功能,这样不但可以用遥控设定时间,还可以用来设定闹钟的时间,使设计方便简洁,使用简单方便。没有使用时间芯片也节约了成本,简约了硬件电路的设计。 对于单片机使用89C51系列,89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压、高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 2 硬件选型 2.1 单片机的选择 2.1.1 单片机引脚 图2-1 STC89C51引脚图 2.1.2 单片机引脚功能  ①电源引脚 * w# c- @" h  Y' B# Z新洁家园     VCC(40脚):典型值+5V。 1 u7 |- h  I! d/ O2 i2 r( Q     VSS(20脚):接低电平。 ②外部晶振      X1、X2分别与晶体两端相连接。当采用外部时钟信号时,X2接振荡信号,X1 接地   ③输入输出口引脚: " w2 B- d1 m9 P: _6 D$ w     P0口:I/O双向口。作输入口时,应先软件置“ 1”。     P1口:I/O双向口。作输入口时,应先软件置“ 1”。 3 F8 G! B$ @  x; b6 ?! i4 K机械,电子,电气,编程,技术,单片机,情感     P2口:I/O双向口。作输入口时,应先软件置“ 1”。 + @1 l+ N2 X% d4 S6 Q& U     P3口:I/O双向口。作输入口时,应先软件置“ 1”。   ④控制引脚: % B/ R1 X  d: I+ s  RST/Vpd、ALE/-PROG、-PSEN、-EA/Vpp组成了MSC-51的控制总线。2 S2 T; y: n6 M" I+ l# B+ z9 R! n ( v1 w7 k; l4 M) d2 w机械,电子,电气,编程,技术,单片机,情感  RST/Vpd(9脚):复位信号输入端(高电平有效)。第二功能:加+5V备用电源,可以实现掉电保护RAM信息不丢失。2 m# s6 W. X, P   ALE/-PROG(30脚):地址锁存信号输出端。7 J0 i2 r0 K1 第二功能:编程脉冲输入。 2 j* j$ Y! M; p( F& s3 M -PSEN(29脚):外部程序存储器读选通信号。 -$ _* p% O' {) }; o" bEA/Vpp(31脚):外部程序存储器使能端。第二功能:编程电压输入端(+21V)。 2.2 无线发射接收模块器件的选择 PT2262/PT2272 是台湾普城公司生产的一种CMOS 工艺制造的低功耗低价位通用编解码电路,PT2262/PT2272 最多可有12 位(A0-A11)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441 地址码,PT2262 最多 可有6 位(D0-D5)数据端管脚,设定的地址码和数据码从17 脚串行输出,可用于无线遥控发射电路。编码芯片PT2262 发出的编码信号由:地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272 接收到信号后,其地址码经过两次比较核对后,VT 脚才输出高电平,与此同时相应的数据脚也输出高电平,如果发送端一直按住按键,编码芯片也会连续发射。当发射机没有按键按下时,PT2262 不接通电源,其17 脚为低电平,所以315MHz 的高频发射电路不工作,当有按键按下时,PT2262 得电工作,其第17 脚输出经调制的串行数据信号,当17 脚为高电平期间315MHz 的高频发射电路起振并发射等幅高频信号,当17 脚为低平期间315MHz 的高频发射电路停止振荡,所以高频发射电路完全受控于PT2262 的17 脚输出的数字信号,从而对高频电路完成幅度键控(ASK 调制)相当于调制度为100%的调幅。 图 2-2 PT2262 图 2-2 PT2262中,特别适合多发一收等无线电遥控系统使用,而目前的一些无线电遥控模块一般仍采用LC振荡器,稳定度及一致性较差,即使采用高品质微调电容,当温度变化或者震动后也很难保证已调试好的频点不会发生偏移,造成发射距离缩短。 图 2-3 PT2272 图 2-3 PT2272接收模块从工作方式分,可以分成超外差接收板和超再生接收板。超再生式接收机具有电路简单、性能适中、成本低廉的优点所以在实际应用中广泛采用。 2.3 温度模块 图 2-4 温度模块采用DS18B20温度传感器作为温度的采集模块 图 2-4 DS18B20 2.3.1 DS18B20的特性 (1)独特的单线接口,仅需一个端口进行通讯 (2)9~12位的分辨率可调(RS) (3)测温范围为-55°C~+125°C (-67°F~+257°F) (4)测量范围在-10°C ~+85°C精度为±0.5°C (5)可设置报警温度存储于EEPROM,掉电保护数据不丢 (6)适用电压3~5.5V 2.3.2 ROM 在DS18B20内部光刻了一个长度为64-bit的ROM,这个是编码器件的身份识别标志,如图 2-5所示: 图 2-5 注释:MSB为最高有效位 LSB为最低有效位 64-bit光刻ROM的排列顺序是:开始(最低)8位是产品类型标号,对于DS18B20来说就是(28H);接着的48位是器件自身的序列号;最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1).光刻ROM的作用是使每个DS18B20都不相同,这样可以实现一根总线上挂接多个DS18B20的目的。 2.3.3 如何操作ROM ROM几种操作命令: Read ROM (读ROM) 命令 【33H】 Match ROM (符合ROM) 命令 【55H】 Skip ROM (跳过ROM) 命令 【CCH】 Search ROM (搜索ROM) 命令 【F0H】 Alarm Search (读ROM) 命令 【ECH】 RAM: 高速暂存存储器由9个字节组成,包含了8个连续字节,前面两个字节是测得的温度信息,第一个字节的内容是温度的低8位,第二个字节是温度的高8位。第三个和第四个字节是温度高限TH和温度底限TL的暂存区,第五个字节是配置寄存器暂存区,第6、7、8、9字节是系统保留用,相当于DS18B20的运算内存,第9个字节是冗余校验字节。RAM内部字节分布如下. Write Scratchpad (写暂存存储器) 【4EH】 Read Scratchpad(读暂存存储器) 【BEH】 Copy Scratchpad(复制暂存存储器) 【48H】 Convert T (温度变换) 【44H】 Recall E (从新调整E) 【B8H】 Read Power Supply(读电源) 【B4H】 2.3.4 如何操作DS18B20 复位操作: 主机(单片机)和DS18B20间的任何通讯都需要以初始化序列开始,初始化序列就是主机发出一个复位脉冲跟着检测一个DS18B20的存在脉冲,表明DS18B20已经准备好发送和接收数据。初始化序列见图 2-6: 图 2-6 初始化序图 主机首先发出一个480-960微秒的低电平脉冲,然后释放总线变为高电平,并在随后的480微秒时间内对总线进行检测,如果有低电平出现说明总线上有器件已做出应答。若无低电平出现一直都是高电平说明总线上无器件应答。   做为从器件的DS18B20在一上电后就一直在检测总线上是否有480-960微秒的低电平出现,如果有,在总线转为高电平后等待15-60微秒后将总线电平拉低60-240微秒做出响应存在脉冲,告诉主机本器件已做好准备。若没有检测到就一直在检测等待。 对DS18B20读和写操作: 接下来就是主机发出各种操作命令,但各种操作命令都是向DS18B20写0和写1组成的命令字节,接收数据时也是从DS18B20读取0或1的过程。因此首先要搞清主机是如何进行写0、写1、读0和读1的。   写周期最少为60微秒,最长不超过120微秒。写周期一开始作为主机先把总线拉低1微秒表示写周期开始。随后若主机想写0,则继续拉低电平最少60微秒直至写周期结束,然后释放总线为高电平。若主机想写1,在一开始拉低总线电平,1微秒后就释放总线为高电平,一直到写周期结束。而做为从机的DS18B20则在检测到总线被拉底后等待15微秒然后从15us到45us开始对总线采样,在采样期内总线为高电平则为1,若采样期内总线为低电平则为0。 读写时序图2-7、2-8: 图 2-7读时序图 图 2-8 写时序图 对于读数据操作时序也分为读0时序和读1时序两个过程。读时隙是从主机把单总线拉低之后,在1微秒之后就得释放单总线为高电平,以让DS18B20把数据传输到单总线上。DS18B20在检测到总线被拉低1微秒后,便开始送出数据,若是要送出0就把总线拉为低电平直到读周期结束。若要送出1则释放总线为高电平。主机在一开始拉低总线1微秒后释放总线,然后在包括前面的拉低总线电平1微秒在内的15微秒时间内完成对总线进行采样检测,采样期内总线为低电平则确认为0。采样期内总线为高电平则确认为1。完成一个读时序过程,至少需要60us才能完成 温度的转换: 首先主机先作个复位操作,接着主机再写跳过ROM的操作(CCH)命令,然后然后主机接着写个转换温度的操作命令,后面释放总线至少一秒,让DS18B20完成转换的操作。在这里要注意的是每个命令字节在写的时候都是低字节先写,例如CCH的二进制为11001100,在写到总线上时要从低位开始写,写的顺序是“00110011”。整个操作的总线状态如下图2-9: 图 2-9 总线状态图 RAM内部温度数据的读取: 同样,这个操作也要接照三个步骤。1、主机发出复位操作并接收DS18B20的应答(存在)脉冲。2、主机发出跳过对ROM操作的命令(CCH)。3、主机发出读取RAM的命令(BEH),随后主机依次读取DS18B20发出的从第0一第8,共九个字节的数据。如果只想读取温度数据,那在读完第0和第1个数据后就不再理会后面DS18B20发出的数据即可。同样读取数据也是低位在前的。整个操作的总线状态如下图2-10: 图 2-10 总线状态图 3 主要电路设计 3.1显示电路 图3-1 显示电路 3.2报警电路 图3-2 报警电路 4 框图及主要程序设计 4.1框图 图 4-1 硬件实现框图 STC89C51 是美国ATMEL 公司生产的低电压, 高性能CMOS8 位单片机, 其硬件资源足以提供给该控制器的实现, 并可以通过软件的更新对整个系统进行优化和升级。在该控制器中单片机通过P2.2口将温度传感器的数据采集进来, 通过软件的初始化和采集将实时温度显示在LED屏幕上, 同时在主程序中完成电子时钟的功能设计, 在屏幕的下方进行显示。如果有中断产生单片机可以讲此时的时间和温度记录下来写入到存储器当中去。 图 4-2 系统流程图 图 4-2 系统流程图所示系统上电复位后首先进入初始化状态, 在此初始化时钟的定时器数据, 和温度采集的控制位数据,然后系统启动定时,程序进入一个循环扫描并显示的过程,此时LED上面同时显示温度与时钟。 图4-3 温度采集流程图 读温度数据包括上面所说的3个过程。因为温度数据以补码的形式存放在DS18B20 中,其中4位到10位为整数部分,0 到3 位为小数部分,其余为符号位,因此在读出2 个字节的温度数据后,首先要转换为原码,再将数据根据位数分出整数温度值和小数温度值,把数据转化为BCD 数,后再加上30H 转换为ASCII 码。最终在液晶显示屏上显示温度数据。其流程图见图4-3 图 4-4 定时器T0程序流程图 在时间控制子程序中,使用定时器T0 产生中断,首先给T0 装入初值3CB0H,生一次中断要50ms。当T0 产生第1 次中断时,PC 指针转到T0 中断入口执行中断程序。先保护现场再重装初值,为了减小程序在两次中断间执行所产生的时间误差,因此的初值为3CC2H。然后开始循环计数,即num 加1,当num 加到20 的时候,T0 就产生了1s 的中断,然后开始执行num 清零和秒单元加1,再开始判断秒,分,时是否要进位或清零的程序。具体的程序流程图如图4-4所示: 图4-5 定时器T1程序流程图 在秒表控制子程序中,使用定时器T1 产生中断,保护现场后给T1装入初值D8F0H,即产生一次中断为10ms。当T1 产生中断的时候,就转到T1 中断入口执行中断程序。先保护现场再重装初值,后使秒单元内容加1,并判断秒单元内容是否为100,如果小于则恢复现场并从中断返回,如此循环直到秒单元内容等于100。当秒单元内容为100 时使秒单元清零,分单元加1 再判断分是否要进位。当分单元的值小于60时就恢复现场和中断返回,等下次中断后再重新执行。当分单元的内容等于60 的时候,给时单元加1 并给分单元清零,然后再判断时单元内容是否等于60,如果小于60 的话就恢复现场和中断返回,等下次中断后再重新执行。如果等于60 的时候,就给时单元清零并显示然后跳出中断。具体的程序流程图如图4-5所示: 图 4-6 主程序流程图 主程序的设计中,在初始化完成后,调用时间显示程序,取得时钟显示,并判断是否要校时,如果不需要校时则判断是否要启动秒表,并根据当前系统状态调用相应的子程序。这里有三个基本的子程序供调用,分别对应系统的各种功能状态。分别是整点报时子程序、数字处理及显示子程序和秒表显示子程序等。 4.2数码管显示电路 图 4-7 数码管输出显示电路 数码管显示电路采用动态显示方式。电路采用了三位共阴的数码管,即发光二极管的阴极全部连接在一起组成公共端,发光二极管的阳极则单独引出,当阳极接高电平,相应的数码段发亮。因此只要分别控制各数码段的发光二极管的亮灭,就可以显示不同的数字了。把2 个3位的共阴数码管的a- Dp 的各同名端相互连接起来,并把它接到输出口上,则在每个瞬间数码管只显示相同字符,为了显示不同数字,可让数码管的位选端受另一信号控制,接到另一个I/O 口上,在这两个信号的序在两次中断间执行所产生的时间误差,因此重装的初值为3CC2H。然后开始循环计数,即num 加1,当num 加到20 的时候,T0 就产生了1s的中断,然后开始执行num 清零和秒单元加1,再开始判断秒,分,时是否要进位或清零的程序。 4.3秒表控制子程序设计 在秒表计时的过程中, 时钟运行时的秒单元储存的是以1/100s 为一个单位变化的秒数,而分单元储存的则是秒表计时的秒数,而时单元储存的则是秒表计时的分钟数。在秒表控制子程序中,使用定时器T1 产生中断,保护现场后给T1装入初值D8F0H,即产生一次中断为10ms。当T1 产生中断的时候,就转到T1 中断入口执行中断程序。先保护现场再重装初值,后使秒单元内容加1,并判断秒单元内容是否为100,如果小于则恢复现场并从中断返回,如此循环直到秒单元内容等于100。当秒单元内容为100 时使秒单元清零,分单元加1 再判断分是否要进位。当分单元的值小于60 时就恢复现场和中断返回,等下次中断后再重新执行。当分单元的内容等于60 的时候,给时单加1并给分单元清零,然后再判断时单元内容是否等于60,如果小于60 的话就恢复现场和中断返回,等下次中断后再重新执行。如果等于60 的时候,就给时单元清零并显示然后跳出中断。 4.4数字处理及显示子程序设计 在数字处理子程序的设计中,首先将时单元的内容即小时数读出到A中,然后将小时数的十位和个位分开储存在50H 和51H 这两个地址中,然后再将分单元的内容即分钟数读出到A中,然后将分钟数的十位和个位分开储存在52H 和53H 这两个地址中,最后再将秒单元的内容即秒数读出到A 中,然后将秒数的十位和个位分开储存在54H 和55H 这两个地址中。将数字分开存放是为了好在显示子程序中一位一位数字进行显示。在时钟显示子程序的设计中,首先将存放在50H 的小时的十位数取出,查表所得到了相应的数码管的段码,直接送到P1 端口输出,然后在将对应的位码(选择左起第1 个数码管显示)送到P2 端口输出并调用延时子程序,在将存放在51H 的小时的个位数取出,查表所得到了相应的数码管的段码,直接送到P1 端口输出,然后在将对应的位码(选择第2 个数码管显示)送到P2 端口输出并调用延时子程序。依次类推,最后将存放在55H 的秒的个位数取出,查表所得到了相应的数码管的段码,直接送到P1 端口输出,然后再将对应的位码(选择第6 个数码管显示)送到P2 端口输出并调用延时子程序。 4.4整点报时子程序设计 在整点报时子程序中(定义P3.4 为整点报时的输出口),首先判断分和秒是否都为0,如果都为0 的话,给P3.4 输出低电平,使蜂鸣器发出嘀声,持续时间为1s。如果还没有到整点的话(即分和秒的值相加不为0),就返回到主程序执行下个操作 4.4秒表显示子程序设计 在秒表显示子程序的设计中,基本和时钟显示子程序过程类似,只是在秒表显示子程序中加入了一个延时程序,使得LED 数码管可以固定显示秒表计时的数字,持续时间为2s。而如果不添加这个秒表显示子程序而直接调用原先的时钟显示子程序的话,秒表计时的结果就不是固定不动的显示了,会由于时钟的运行显示而被覆盖。 4.5温度测量子程序 只有当按键切换为温度显示时, 温度测量子程序才进行温度测量和转换工作。测量温度分别率采用9 位, 转换时间最大为93.75ms, 转换结果为1 6 位带符号扩展的二进制补码形式温度数字量, 数据格式以0.0625 C/LSB 表示;当温度数字量的高5 位为0 时, 温度为零下温度, 当高5 位为1时温度为正; 在温度转换时, 转换结果只取整数部分用于温度显示, 小数部分不用显示。 5 结论 本次的设计完全按照预定实现实现各项功能,遥控距离可达到100米远,时间显示虽然没有使用时间模块精准,但也比较精准了,符合时钟的要求,而且温度的显示也正常,闹钟功能用软件成功实现,硬件简化,也许还是有很多的不足之处,但这也是以后要重点研究和继续掌握的东西。 通过本次毕业设计,我学到了许多东西,知道光靠书本上的东西是不够的,需额外去查资料。在设计上,我遇到了不少的问题,在克服困难的过程中,我学到了许多,特别是在课堂上学不到的东西。也锻炼了我的protel画图能力,以前学的时候元器件都是给定的只要到库里面找出名字就可以,只要连线就可以,而这次是根据自己的设计需要去画,感觉不同。通过本次设计,让我很好的锻炼了理论与具体项目、课题相结合开发、设计产品的能力。既让我们懂得了怎样把理论应用于实际,又让我们懂得了在实践中遇到的问题怎样用理论去解决。以前总把一个单片机系统想的很简单,由输入通道、单片机、输出通道、输入显示等各个单元凑一起就完了,但实际需考虑很多,如如何使投资最小而得到最好的效果,各个单元如何连接等。 最后,非常感谢老师的指导和同学们的帮助! 23 致 谢 6 致 谢 这次毕业设计,凝结了很多人的心血,在此我表示由衷的感谢。没有他们的帮助,我将无法顺利完成这次设计。 首先,我要特别感谢杨怡君老师对我的悉心指导,在毕业设计期间杨老师指导我、帮助我收集文献资料,理清设计思路,完善操作方法,并对我所做的设计提出有效的改进方案。老师渊博的知识、严谨的作风、诲人不倦的态度和学术上精益求精的精神让我受益终生。作为一个本科生的毕业设计,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有导师的督促指导,想要完成这个设计是难以想象的。因此,特别需要感谢杨怡君老师给予的耐心细致的指导,在此,再一次向杨怡君老师以及关心帮助我的老师同学表示最诚挚的谢意! 其次,学校在这方面也给我们提供了很大的支持和帮助,学校领导比较重视,每个设计小组配有专门的指导老师,帮助我们能顺利完成整个设计。对于学校和老师为我的毕业设计所提供的极大帮助和关心,在此我致以衷心的感谢! 最后,还要感谢同学四年来对我的关心与支持,感谢各位老师在学习期间对我的严格要求。同时也要感谢身边朋友的热心帮助,没有你们的关心与支持,我不可能这么快完成我的毕业设计!这几个月的岁月是我学生生涯中最有价值的一段时光,也将会成为我以后永远的美好的回忆,在这里有治学严谨而不失亲切的老师,也有互相帮助情同骨肉的同学,更有和谐、融洽的学习生活氛围,这里将是我永远向往的地方。借此论文之际,我想向所有人表达我的最诚挚的谢意,愿我们将来都越来越好 35 参考文献 参考文献 [1] 程鹏 .自动控制原理. 北京:高等教育出版社. 2003.08 [2] 陈伯时,电力拖动自动控制系统-运动控制系统.北京:机械工业出版社.2003.07 [3] L298N芯片手册 ,2006.05 [4] 谢世杰,陈生潭,楼顺天.数字PID算法在无刷直流电机控制器中的应用 2004.01 [5] 吴守箴,戚英杰.电气传的脉宽调制控制技术.北京:机械工业出版社. [6] 贾玉瑛,王臣.基于单片机控制的PWM直流调速系统.包头钢铁学院学报,2005年. [7] 康华光,邹寿彬.电子技术基础(数字部分第四版).北京:高等教育出版社,2004年. [8] 赖寿宏.微型计算机控制技术.北京:机械工业出版社,2000.5 [9] 浦龙梅,李私.单片机控制的直流PWM调速装置的研究.变频器世界,2006年3月 [10] 张波.SG3525A控制的直流电机脉宽调速装置.电气制造,2006年第七期. [11] 张毅刚.单片机原理及应用.北京:高等教育出版社.2003年 附录 附录1主程序 独立按键调节时间 s3调节时 s4调节分 s5选择显示温度还是显示时间、闹钟定时界面 默认显示时钟 #include<reg52.h> #include<shuju.h> #include<key.h> #include<wendu.h> #include<xianshi.h> void timer() { TMOD=0x11; TH0=0x4c; TL0=0x00;//定时50ms TH1=0x4c; TL1=0x00;//定时50ms EA=1; ET1=1; ET0=1; TR0=1; } void main() { timer(); while(1) { temper=duwendu(); temper=(temper*0.0625)*10+0.5; ke(); switch(mm) { case 1:xianshi1(); break;//默认显示时间 case 2:display();break;//按下s5后显示温度 case 3:xianshi0(); break;//闹钟显
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服