单片机实训报告心得
单片机实习心得体会范文五篇

单片机实习心得体会范文五篇无论做什么事情,只要你足够坚强,有足够的毅力与决心,有足够的挑战困难的勇气,就没有什么办不到的。
下面是小编精心为大家精心精选的单片机实习心得体会,欢迎阅读。
精选单片机实习心得体会 (一)时光飞逝,一转眼,一个学期又进尾声了,本学期的单片机综合课程设计也在一周内完成了。
俗话说“好的开始是成功的一半”。
说起课程设计,我认为最重要的就是做好设计的预习,认真的研究老师给的题目,选一个自己有兴趣的题目。
其次,老师对实验的讲解要一丝不苟的去听去想,因为只有都明白了,做起设计就会事半功倍,如果没弄明白,就迷迷糊糊的去选题目做设计,到头来一点收获也没有。
最后,要重视程序的模块化,修改的方便,也要注重程序的调试,掌握其方法。
虽然这次的课程设计算起来在实验室的时间只有三天,不过因为我们都有自己的实验板,所以在宿舍里做实验的时间一定不止三天。
硬件的设计跟焊接都要我们自己动手去焊,软件的编程也要我们不断的调试,最终一个能完成课程设计的劳动成果出来了,很高兴它能按着设计的思想与要求运动起来。
当然,这其中也有很多问题,第一、不够细心比如由于粗心大意焊错了线,由于对课本理论的不熟悉导致编程出现错误。
第二,是在学习态度上,这次课设是对我的学习态度的一次检验。
对于这次单片机综合课程实习,我的第一大心得体会就是作为一名工程技术人员,要求具备的首要素质绝对应该是严谨。
我们这次实习所遇到的多半问题多数都是由于我们不够严谨。
第三,在做人上,我认识到,无论做什么事情,只要你足够坚强,有足够的毅力与决心,有足够的挑战困难的勇气,就没有什么办不到的。
在这次难得的课程设计过程中我锻炼了自己的思考能力和动手能力。
通过题目选择和设计电路的过程中,加强了我思考问题的完整性和实际生活联系的可行性。
在方案设计选择和芯片的选择上,培养了我们综合应用单片机的能力,对单片机的各个管脚的功能也有了进一步的认识。
还锻炼我们个人的查阅技术资料的能力,动手能力,发现问题,解决问题的能力。
单片机实训报告范文精选5篇

单片机实训报告范文精选5篇实训报告是展示自身实训收获成长的重要报告,那么实训报告该如何写呢?小编精选了一些关于实训报告的优秀范例,一起来看看吧。
单片机课程设计心得体会在学校学习期间我有幸的参加了学校的单片机学习小组,在小组里我了解了什么是单片机,单片机有哪些用途,利用单片机可以实现哪些功能来方便人们的生活如交通灯,时钟,还有手机中,电子玩具等等,它们里面都有单片机的存在来实现某种功能。
通过在单片机小组里的学习我简单总结了几点心得和体会:第一:万事开头难,要勇敢的迈出第一步,不要总找借口说没有学习过就总推脱。
凡事都有第一步可以先可简单的来,然后可以逐步的向深层次学习。
可以从建项目开始,然后可以找一个简单的小程序先把它敲进单片机内然他运行起来,感觉一下单片机的运行,让自己了解单片机整个运行。
第二:对于知识点,学过的要掌握牢固,对于没有学的和暂时用不到的先不用学习。
比如:小灯得点亮就没有用到中断可以先不用看。
这样可以避免知识过多记不住的麻烦。
对于程序这里的知识点不能只停留在理论层次上,一定要结合着程序进行学习这样才能掌握的很牢靠,当用到哪里的知识点不记得了可以去看书,对于用不到的可以不去看。
第三:程序不要只是看别人得,一定要自己写过才是自己的。
开始不懂可以参考别人的,看看每一句代表着什么意思,能够实现什么现象。
明白之后自己再重新写一遍,你会发现看别人的能懂到自己写的时候很困难。
当你自己能写出来的时候说明你真懂了。
第四:一定要学会程序调试的方法。
有时候把程序写完了然后运行时不能实现理想的现象。
这时有人就晕了不知该怎么办,然后就去问别人。
当别人找出问题出在哪里时就会恍然大悟。
其实当遇到问题一定要自己尝试着解决,不能遇到问题就去问别人。
自己一定要掌握解决问的方法和思路。
第五:在学习初期看别人的代码,学习别人的思路这个很有用。
通过看别人的代码特别是有多年编程经验的人的程序,可以迅速提高自己的编程水平。
也可以结合着别人的手法,与自己的想法结合在一起写出更好的程序。
单片机实验心得体会(6篇)_1

单片机实验心得体会(6篇)单片机实验心得体会1高校实验室是培养高层次人才和开展科学研究的重要基地。
在西方发达国家,学校对培养学生的动手能力是十分重视的,这一问题近年来也越来越受到我国教育界人士的广泛重视。
为了提高学生的动手能力,让学生做相关实训并完成单片机实验报告,在实验的形式上注重培养学生的实验技能和动手能力。
从单片机实验心得中学生就可以总结出大量的经验以适应当代社会的发展。
学习单片机这门课程(教学中选用inter公司的mcs-51),要掌握单片机指令系统中汇编语言各种基本语句的意义及汇编语言程序设计的基本知识和方法,以及单片机与其他设备相连接的输入输出中断等接口技术。
使学生从硬件软件的结合上理论联系实际,提高动手能力,从而全面掌握单片机的应用。
实验教学的全过程包括认识、基础、综合3个阶段。
以往的单片机实验是进行软件的编制和调试,与实际应用中的硬件电路相脱节。
使学生缺乏硬件设计及调试分析能力,对单片机如何构成一个单片机最小应用系统,缺乏认识。
发布的单片机实验板,通过计算机连接仿真器在实验板上把硬件和软件结合起来一起调试,软件的修改也非常方便,软件和硬件调试都通过后,把程序固化在eprom当中,插上8051单片机构成一个完整的单片机应用系统。
单片机实验板的构成及基本功能单片机实验板,它由8031、8155,eprom2764,max232键盘及显示器组成。
其中8155片内有256个ram单元,接6个7段码显示器和8个按键作输入。
串行口连接max232串行口转换芯片,p1口留出作为一些控制量的输入输出用以扩展使用。
在实验板上可编写键盘扫描程序、显示程序、时间的设定及计时程序、从键盘上输入两个加数或减数显示结果程序、位变量的逻辑运算程序及串行口和上位机通讯程序等,还可和其它课程相结合,进行实验。
同时可参考单片机上的比较生动的单片机学习教程,学习和试验一起进行.例如,《电子测量》课程中各种频率的测量,可通过8031单片机p1口输入被测量,由单片机来进行检测和显示,把几门课程结合在一起学习,使课程有延续性,也提高了学生学习的积极性。
单片机实训的心得体会7篇

单片机实训的心得体会7篇(经典版)编制人:__________________审核人:__________________审批人:__________________编制单位:__________________编制时间:____年____月____日序言下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。
文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!并且,本店铺为大家提供各种类型的经典范文,如年终总结、实习报告、述职报告、事迹材料、活动方案、合同协议、应急预案、教学资料、作文大全、其他范文等等,想了解不同范文格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!Moreover, our store provides various types of classic sample essays, such as year-end summaries, internship reports, job reports, performance materials, activity plans, contract agreements, emergency plans, teaching materials, essay summaries, and other sample essays. If you would like to learn about different sample formats and writing methods, please stay tuned!单片机实训的心得体会7篇优秀的心得体会是通过实际经验和思考的结晶,心得体会是我们对经历的深刻思考和领悟,它们是我们成长道路上的重要指南,本店铺今天就为您带来了单片机实训的心得体会7篇,相信一定会对你有所帮助。
单片机的心得体会最新6篇

单片机的心得体会最新6篇(经典版)编制人:__________________审核人:__________________审批人:__________________编制单位:__________________编制时间:____年____月____日序言下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。
文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!并且,本店铺为大家提供各种类型的经典范文,如汇报材料、工作计划、心得体会、条据文书、发言致辞、合同协议、规章制度、教学资料、作文大全、其他范文等等,想了解不同范文格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!Moreover, our store provides various types of classic sample essays for everyone, such as report materials, work plans, experiences, documents, speeches, contract agreements, rules and regulations, teaching materials, complete essays, and other sample essays. If you want to learn about different sample formats and writing methods, please pay attention!单片机的心得体会最新6篇通过心得体会我们能够更好地规划未来的道路,帮助我们明确未来的目标,通过不断的学习和实践,我们能够积累丰富的心得体会,下面是本店铺为您分享的单片机的心得体会最新6篇,感谢您的参阅。
单片机实验心得体会(优秀13篇)

单片机实验心得体会(优秀13篇)(经典版)编制人:__________________审核人:__________________审批人:__________________编制单位:__________________编制时间:____年____月____日序言下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。
文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!并且,本店铺为大家提供各种类型的经典范文,如合同协议、工作计划、活动方案、规章制度、心得体会、演讲致辞、观后感、读后感、作文大全、其他范文等等,想了解不同范文格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!Moreover, our store provides various types of classic sample essays, such as contract agreements, work plans, activity plans, rules and regulations, personal experiences, speeches, reflections, reading reviews, essay summaries, and other sample essays. If you want to learn about different formats and writing methods of sample essays, please stay tuned!单片机实验心得体会(优秀13篇)心得体会是对所经历的事物的理解和领悟的一种表达方式,是对自身成长和发展的一种反思和总结。
单片机实习心得体会三篇

单片机实习心得体会三篇单片机实习心得体会(1)最近自己对单片机特别的感兴趣,因为看到它能控制电机的转动,自己觉得很神奇。
就想弄清楚它到底是怎么做到的?我看到书上讲:单片机可以用两种语言编写,一种是c 语言,另外一种是汇编语言。
汇编语言是一种机器语言,且代码繁琐,不易记忆。
需要掌握单片机的内部结构和逻辑结构,通过看了几本书让我了解认识到汇编确实太繁琐,不过我学习过c语言,也参加了全国计算机二级考试,觉得自己在一方面具有优势,能很快学好它。
不过在学习中,我才发现学习单片机不仅仅需要软件的知识,还需要硬件的知识。
我买了一个单片机在实践中就是一个活生生的例子,没有相应的硬件知识,我连单片机怎么和电脑相连都不知道,我为我当初的想法感到羞愧。
单片机是一门很好的学问,需要我去钻研它。
时光飞逝,一转眼,一个学期又进尾声了,本学期的单片机综合课程设计也在一周内完成了。
俗话说“好的开始是成功的一半”。
说起课程设计,我认为最重要的就是做好设计的预习,认真的研究老师给的题目,选一个自己有兴趣的题目。
其次,老师对实验的讲解要一丝不苟的去听去想,因为只有都明白了,做起设计就会事半功倍,如果没弄明白,就迷迷糊糊的去选题目做设计,到头来一点收获也没有。
最后,要重视程序的模块化,修改的方便,也要注重程序的调试,掌握其方法。
虽然这次的课程设计算起来在实验室的时间只有三天,不过因为我们都有自己的实验板,所以在宿舍里做实验的时间一定不止三天。
硬件的设计跟焊接都要我们自己动手去焊,软件的编程也要我们不断的调试,最终一个能完成课程设计的劳动成果出来了,很高兴它能按着设计的思想与要求运动起来。
当然,这其中也有很多问题,第一、不够细心比如由于粗心大意焊错了线,由于对课本理论的不熟悉导致编程出现错误。
第二,是在学习态度上,这次课设是对我的学习态度的一次检验。
对于这次单片机综合课程实习,我的第一大心得体会就是作为一名工程技术人员,要求具备的首要素质绝对应该是严谨。
单片机实训总结(精选6篇)

单片机实训总结单片机实训总结(精选6篇)单片机实训总结篇1通过这一个学期的单片机学习,我收获了很多关于单片机的知识,并且这些知识和日常的生活息息相关。
了解了一些简单程序的录入,LED显示器、键盘、和显示器的应用和原理。
LED显示器:LED显示器是由发光二管组成显示字段的器件。
通常的8段LED显示器是由8个发光二极管组成,LED显示器分共阳极和共阴极两种。
有段选码和和位选码。
当LED显示器每段的平均电流位5MA时,就有较满意的亮度,一般选择断码5-10MA电流;位线的电流应选择40-80MA。
LED显示器的显示方式有动态和静态两种。
7289A芯片是具有SPI串行接口功能的显示键盘控制芯片,它可同时取得8位共阴极数码管和64个键的键盘矩阵。
7289A的控制指令分为两类:8位宽度的单字节指令和16位宽度双字节指令;还有闪烁指令和消隐指令。
7289A采用串行方式SPI总线与微处理器通信;7289A与AT89C52接口电路,在实际电路中无论接不接键盘,电路中连接到其各段上的8个100千欧的下拉电阻均不可以省去,如果不接键盘而只接显示器可以省去8个10千欧电阻,若仅接键盘而不接显示器,可省去串入DP及SA-SG连线的8个220欧电阻,7289A还需要外接晶体振荡电路。
液晶显示器简称LCD,其显示原理是用经过处后的液晶具有能改变光线传输方向的特性,达到显示字符和图形的目的。
最简单的笔段式液晶显示器类似于LCD显示器,可以显示简单的字符和数字,而目前大量使用的是点阵式LCD显示器,既可以显示字符和数字也可以显示汉字和图形。
如果把LCD显示屏、背光可变电源、接口控制逻辑、驱动集成芯片等部件构成一个整体,是的与CPU接口十分方便。
键盘:键盘是最常见的计算机输入设备,它广泛应用于微型计算机和各种终端设备上。
计算机操作者通过键盘向计算机输入各种指令、数据,指挥计算机的工作。
按照键盘的工作原理和按键方式的不同,可以划分为四种:机械式键盘采用类似金属接触式开关,工作原理是使触点导通或断开,具有工艺简单、噪音大、易维护的特点。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
广东轻工职业技术学院实训报告实训项目单片机实训系别:电子通信工程系专业:应用电子技术班级:嵌入式091班姓名:11222学号:2009080202316指导老师:丁向荣、赵慧实训地点:第三实训楼C309实训时间:2011年1月10日至1月14日前言单片机应用技术是现代电子设计的核心技术,学习单片机只是就是要将单片机应用到电子产品中,以单片机为控制核心实现电子系统所需实现的功能。
单片机的应用能力很多程度上决定了电子类专业学生电子设计与电子应用的水平与能力,尤其是高职学生更是如此。
本项目要求设计一个简单的电子时钟,用六位LED数码管实现电子时钟的功能,显示方式为时、分、秒,采用24h(小时)计时方式,使用按键开关可实现时分调整。
通过电子闹钟项目的课题设计,让同学们体验项目设计的要点,了解项目设计的流程,加深对单片机应用知识的学习,体会团队协作的力量所在。
为日后的嵌入式专业学习巩固基础。
目录1.概述…………………………………………………………1.1 系统的作用………………………………………………………………1.2 系统的功能要求……………………………………………………………2.系统硬件设计………………………………………………..2.1系统的电路原理……………………………………………………………2.2 电路原理图………………………………………………………………2.3 各控制按钮控制功能说明………………………………………………. 3.系统软件设计………………………………………………. 4.系统调试…………………………………………………….5. 总结…………………………………………………………1.概述1.1 系统的作用本系统是利用AT89C51单片机结合6个七段显示器以24时制“时时分分秒秒”格式显示时间的电子定时闹铃,系统可以设置8组定时闹铃和1组倒计时功能;当定时闹铃和倒计结束时,该电子时钟通过蜂鸣器发出嘀嘀嘀响声;本系统还具有半点和整点报时功能,当现在时间为半点时会发出嘀的一声响,当现在时间为整点时报整点数响声。
由于该电子定时闹铃有强大功能可以在多种场合下使用,利用七段显示器发光也可以在夜晚和黑暗场合下使用。
1.2 系统的功能要求(1)使用6位七段显示器显示24时制时间。
(2)时间显示格式为“时时分分秒秒”。
(3)定时闹铃功能。
(4)倒计时功能。
(5)半点报时功能:当现在时间为半点时,蜂鸣器发出“嘀”一声响。
(6)整点报时功能:当现在时间为整点时,蜂鸣器发出现在时间整点数响声。
(7)当任一闹铃时间到时发出连续“嘀嘀嘀”响声,七段显示器显示“X HHMM”。
(8)当倒计时时间到时发出嘀嘀嘀响声,七段显示器显示“000000”。
(9)定时闹铃、倒计时和现在时间模式可以互相切换而不影响各自功能。
(10)具有4个按键来进行功能设置,可以设置当前时间、8组闹铃的时间设置和开关及倒计时的时间设置。
(11)通过复位按键可以重启系统。
2.系统的硬件设计2.1系统的电路原理(1)系统以AT89C51单片机为本电路的核心元件,通过单片机的P0.0~P0.7引脚和A102J排阻加上拉电压来驱动七段显示器段显示数字。
(2)通过单片机的P2.2~P2.7引脚连接A103J排阻拉升电压信号,控制6个8050NPN三极管使共阴极七段显示器连通接地来循环点亮6位七段显示器。
(3)在七段显示器供电的同时由P0脚驱动显示不同数字。
根据人眼的视觉暂留特点,调整延迟时间使所观察到时间数字是稳定的数字。
(4)系统使用了HYDZ蜂鸣器,通过单片机P3.7引脚连接8550PNP三极管推动发声。
(5)电路通过4个按键连接单片机P1.0~P1.3引脚低电平控制系统功能设置。
(6)单片机的复位电路,采用传统上电复位,通过Reset按键控制。
(7)电路可以通过+5V和+12V直流电供电,当使用+12V直流供电时,电路通过1个7805三端稳电器、2个35v100μF电解电容和1个50v10μF电解电容转换成+5V直流电供电。
(8)系统通过一个发光二极管指示电路供电是或正常。
2.2 电路原理图图示为数码管显示电路图示为主程序电路图2.3 各控制按钮控制功能说明KEY0(按键INT0):调时向左移一位数——接P3.0KEY1(按键INT1):当前位加1——接P3.1KEY2(按键T0):当前位减1——接P3.2KEY3(按键T1):确定调时时间——接P3.3S1:切换闹钟调时模式(高电平)——接P3.4S2:中断程序(高电平),中断当前的闹钟或整点报时的响应——接P3.5 S3:暂停和开始计时(高电平)——接P3.6BELL:蜂鸣器——接P3.7——当整点报时和闹钟响应的时候会响。
LED灯——当整点报时和闹钟响应的时候会亮。
P1.0 ~ P1.3分别接LED灯的高四位,P1.4 ~ P1.7分别接灯的低四位。
P0.0 ~ P0.7分别口接数码管的段选的a~h位P2.0 ~ P2.5口分别接数码管的位选的6~1位3.软件设计表一程序内存资源分配表表一程序内存资源分配表表二芯片端口资源分配表表二芯片端口资源分配表流程图显示如下:表三寄存器资源分配表主程序流程图功能选择中断调时程序流程图调时0.3s闪烁显示中断源程序清单:#include<reg51.h>#define uchar unsigned char#define led_data P0 //P0显示数码管当前位的数字#define led_bit P2 //P2控制当前数码管显示的位数int b;uchar conls=0x00; //记录秒分时的个位数uchar cons=0x00; //记录秒分时的十位数uchar con=0x00; //记录调时程序当前位数uchar x=0x00; //记录闹钟sbit key0=P3^0; //key0控制调时位左移以一位sbit key1=P3^1; //key1控制挑时当前位数字+1sbit key2=P3^2; //key1控制挑时当前位数字-1sbit key3=P3^3; //确定当前挑时中断程序sbit stop=P3^4; //用来暂时计时和启动计时sbit baojing=P3^5; //用以响应整点报时和闹钟sbit naozhong=P3^6; //用来开启闹钟调时程序sbit beep=P3^7; //用来终止当前整点报时或闹钟响应uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00}; //数码管当前位0~9的显示码uchar data scan_con[6]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF};//数码管左到右6个位的显示uchar data dis[8]={0x00,0x00,0x00,0x00,0x00,0x00,0x0a,0x00}; //数码管的显示码uchar data timedata[6]={0x00,0x00,0x00,0x00,0x00,0x00};//电子钟的初始时间:00:00:00uchar data secclock[6]={0x00,0x00,0x00,0x00,0x00,0x00};//闹钟调时的初始时间:00:00:00uchar i;display();//显示数码管函数申明keyscan();//调时按钮函数声明//alarmcolk();/******************************************************************** ****//* 1ms延时显示程序/******************************************************************** ****/void delay(int z){int x,y;for(x=0;x<z;x++)for(y=0;y<120;y++);}initializa();/******************************************************************** ****//* 主函数*//******************************************************************** ****/void main(){initializa();while(1){display();keyscan();//alarmcolk();}}/******************************************************************** ****//* 显示子程序*//******************************************************************** ****/display(){uchar k;for(k=0;k<6;k++){led_data=table[dis[k]];led_bit=scan_con[k];delay(1);P2=0x00;}}/******************************************************************** ****//* 初始化子程序*//******************************************************************** ****/initializa(){for(i=0;i<6;i++){dis[i]=timedata[i];}TH0=0X3C;TL0=0XB0;TH1=0x3c;TL1=0XB0;TMOD=0X11;ET0=1;ET1=1;TR0=1;TR1=0;EA=1;}/******************************************************************** ****//* 调时按钮处理子程序*//******************************************************************** ****/keyscan(){int a=0,j;for(i=0,j=0;i<6;i++) //分别比较电子钟与闹钟时分秒{if(timedata[i]==secclock[5-i]&&timedata[0]!=0)j++;}if(j==6){if(beep==0) //若都相等,且没关闭响应{for(i=1;i<10;i++){baojing=0;P1=0x00;delay(500);baojing=1;P1=0xff;delay(500);}}}if(key3==0){con=0;x=0;TR1=0;ET1=0;TR0=1;ET0=1;} //关闭调时按钮中断,继续显示电子钟的时间else if(naozhong==0) //开启调时按钮中断{EA=0;if(key0==0){delay(10);while(key0==0);if(dis[con]==10){dis[7]=dis[con];dis[con]=dis[6];dis[6]=dis[7];}con++;TR0=0;ET0=0;TR1=1;ET1=1;if(con>=6) //若左移位数超过6,则关闭调时按钮中断,继续显示电子钟的时间{con=0;TR1=0;ET1=0;TR0=1;ET0=1;}}if(con!=0){if(key1==0){delay(10);while(key1==0);timedata[con]++; //当前位数据+1switch(con){case 1:case 3:if(timedata[con]>=6) //1、3位满6进一{timedata[con]=0;}break;case 2:case 4:if(timedata[con]>=10) //2、4位满10进一{timedata[con]=0;}break;case 5: //5位满2清零if(timedata[con]>=3){timedata[con]=0;}break;default: ;}dis[con]=timedata[con];dis[6]=0x0a;}}if(con!=0){if(key2==0){delay(10);while(key2==0);switch(con){case 1:case 3:if(timedata[con]==0){timedata[con]=0x05; //1、3位为0时的减1处理}else{timedata[con]--; //当前位数据-1}break;case 2:case 4:if(timedata[con]==0){timedata[con]=0x09; //2、4位为0时的减1处理}else{timedata[con]--; //当前位数据-1}break;case 5:if(timedata[con]==0){timedata[con]=0x02; //5位为0时的减1处理}else{timedata[con]--; //减1处理}break;default: ;}dis[con]=timedata[con];dis[6]=0x0a; //送显示数据}}EA=1;}else if(naozhong!=0) //开启调时按钮中断,功能类似上面{EA=0;if(key0==0){delay(10);while(key0==0);if(dis[x]>=10){dis[7]=dis[x];dis[x]=dis[6];dis[6]=dis[7];}x++;TR0=0;ET0=0;TR1=1;ET1=1;if(x>=6){x=0;TR1=0;ET1=0;TR0=1;ET0=1;}}if(x<=9){if(key1==0){delay(10);while(key1==0);secclock[x]++;switch(x){case 1:case 3:if(secclock[x]>=6){secclock[x]=0;}break;case 2:case 4:if(secclock[x]>=10){secclock[x]=0;}break;case 5:if(secclock[x]>=3){secclock[x]=0;}break;default: ;}dis[x]=secclock[x];dis[6]=0x0a;}}if(x>=0){if(key2==0){delay(10);while(key2==0);switch(x){case 1:case 3:if(secclock[x]==0){secclock[x]=0x05;}else{secclock[x]--;}break;case 2:case 4:if(secclock[x]==0){secclock[x]=0x09;}else{secclock[x]--;}break;case 5:if(secclock[x]==0){secclock[x]=0x02;}else{secclock[x]--;}break;default: ;}dis[x]=secclock[x];dis[6]=0x0a;}}EA=1;}}/************************************************************************//* 0.3s闪烁中断小程序*//******************************************************************** ****/void time_intt1(void)interrupt 3{EA=0;TR1=0;TH1=0X3C;TL0=0XB0;TR1=1;cons++;if(cons==6) //50ms x 6 =300ms =0.3s{cons=0x00;dis[7]=dis[con];dis[con]=dis[6];dis[6]=dis[7];}EA=1;}/******************************************************************** ****//* 电子钟显示进位处理程序*//******************************************************************** ****/void time_intt0(void)interrupt 1{ {int i,j,x=0;j=0;if(naozhong==0&&stop==1){ET0=0;TR0=0;TH0=0X3C;TL0=0XB0;TR0=1;conls++;if(conls==20) //20次延时,秒+1{conls=0x00;timedata[0]++;if(timedata[0]>=10) //10s时,秒十位数+1{timedata[0]=0;timedata[1]++;if(timedata[1]>=6) //60s时,分+1{ //5timedata[1]=0;timedata[2]++;if(timedata[2]>=10) //10min时,分十位数+1{timedata[2]=0;timedata[3]++;if(timedata[3]>=6) //60min时,时+1{timedata[3]=0;timedata[4]++;if(beep==0){for(i=1;i<=(timedata[5]*10+timedata[4])&&beep==0;i++) //整点报时功能,几点钟就响几下{baojing=0;P1=0x00;delay(500);baojing=1;P1=0xff;delay(500);timedata[0]++;}}if(timedata[4]>=10) //10h 时,时十位数+1{timedata[4]=0;timedata[5]++;if(timedata[5]==2)//当h等于24时,清零{if(timedata[4]==4){timedata[4]=0;timedata[5]=0;}}}}}}}for(b=0;b<6;b++) //分别向各个位送显示码{dis[b]=timedata[b];}}ET0=1;}/*显示清零并转换成秒计时(原时间仍然保存)*//*else if(jishi==1){for(j=0;j<6;j++)secclock[j]=0;ET0=0;TR0=0;TH0=0X3C;TL0=0XB0;TR0=1;conls++;if(jishi==0) ;else{ //3if(conls==20){ //4conls=0x00;timedata[0]++;secclock[0]++;if(timedata[0]>=10){timedata[0]=0;timedata[1]++;if(secclock[0]>=10){secclock[0]=0;secclock[1]++;}}if(timedata[1]>=6){timedata[1]=0;timedata[2]++;if(secclock[1]>=6){secclock[1]=0;secclock[2]++;}}if(timedata[2]>=10){timedata[2]=0;if(secclock[2]>=10){secclock[2]=0;secclock[3]++;}}}}for(b=0;b<6;b++){dis[b]=timedata[b];}ET0=1;}*/}}4.系统调试4.1 调试设备4.1.1 硬件设备:GQDJL-1型单片机开发板4.1.2 软件程序:Keil μVision2集成开发环境、STC系列单片机ISP下载软件。