单片机课程设计数字式秒表_第1页
单片机课程设计数字式秒表_第2页
单片机课程设计数字式秒表_第3页
单片机课程设计数字式秒表_第4页
单片机课程设计数字式秒表_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 单片机技术课程设计说明书 数字式秒表 学 院: 电气与信息工程学院 学生姓名: 谢曜臣 指导教师: 肖冬瑞 职称/学位 助教 专 业: 电气工程及其自动化 班 级: 电气本1205班 学 号: 1230140531 完成时间: 2015年6月 湖南工学院单片机技术课程设计课题任务书学院:电气与信息工程学院 专业:电气工程及其自动化指导教师肖冬瑞学生姓名谢曜臣课题名称数字式秒表内容及任务一、设计任务设计一个具有特定功能的数字式秒表。二、设计内容1、秒表的硬件系统(1)、单片机最小系统模块(2)、供电模块(3)、显示模块(4)、键盘模块2、秒表的软件系统(1)、系统监控程序模块(2)、显示程序模

2、块(3)、键盘程序模块三、设计要求该数字式秒表上电或按键复位后能自动显示系统提示符“P.”,进入准备工作状态。该数字式秒表应具有开始、暂停、连续、清零和停止功能。主要参考资料1李广弟.单片机基础M.第3版.北京:北京航空航天大学出版社,2003.6.2李全利.单片机原理及应用(C51编程)M.北京:高等教育出版社,2012.12.3马忠梅.单片机的C语言应用程序设计M.第4版.北京:北京航空航天大学出版社,2003.6. 4李光飞.单片机C程序设计指导M.北京:北京航空航天大学出版社,2003.01.5李光飞.单片机课程设计实例指导M.北京:北京航空航天大学出版社,2004.9.教研室意见 教

3、研室主任:(签字)年 月 日摘 要近年来随着科技的飞速发展,单片机的应用正在不断的走向人类的日常生活。数字电子秒表就是其中的一个实例,它具有显示直观、读取方便、精度高等优点在计时中广泛使用。本设计主要特点是计时精度达到0.01s,解决了传统的由于计时精度不够造成的误差和不公平性,是各种体育竞赛的必备设备之一。数字式秒表系统采用AT89S52单片机为中心器件,利用其定时器/计数器的定时和记数功能,结合显示电路、LED数码管以及设计计时器实现预设的功能。将软、硬件有机地结合起来,使得系统能够实现LED显示,059分59.99秒,计时精度为0.01秒,能正确地进行计时。其中软件系统采用汇编语言编写程

4、序,包括显示程序,定时中断服务,键扫描程序,延时程序等,并在Keil中调试运行。仿真结果表明该数字式秒表精度高、稳定性强。其中软件系统采用汇编语言编写程序,包括显示程序,定时中断服务,外部中断服务程序,延时程序等,硬件系统利用PROTEUS强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。秒表的数字化常给人们的生活带来极大的方便,它广泛应用于社会的各个领域。最终,经过一系列的调试实现了数字式秒表的计时、暂停、复位功能,其中显示电路采用共阴极LED数码管显示计时时间,达到了本次课程设计的要求。关键词:数字式秒表;单片机;仿真I目 录1 绪论12 数字式秒表的设计介绍22.1

5、设计任务及功能要求22.2 数字式秒表的方案介绍及工作原理说明23 数字式秒表硬件系统的设计53.1 电源电路53.2 AT89S52芯片的介绍53.3 单片机最小系统模块6 3.3.1 时钟电路6 3.3.2 复位电路7 3.3.3 最小系统图83.4 键盘电路83.5 驱动及显示电路93.6 单片机下载口电路103.7 电路原理图、PCB图、元器件布局图11 3.7.1 电路原理图11 3.7.2 电路PCB图11 3.7.3 元器件布局图113.8 元器件清单114 数字式秒表软件系统的设计124.1 数字式秒表使用单片机资源情况124.2 主程序流程图124.3 秒表的工作流程图134

6、.4 显示程序流程图144.5 软件系统程序清单155 设计结果及误差分析165.1 数字式秒表的设计结论及使用说明165.2 编程软件介绍175.3 程序结果175.4 误差分析及解决方法18结束语18参考文献21致 谢22附录A 电路原理图23附录B 电路PCB图24附录C 元器件分布图25附录D 元器件清单26附录E 程序清单271 绪论秒表计时器是电器制造,工业自动化控制、国防、实验室及科研单位理想的计时仪器,它广泛应用于各种继电器、电磁开关,控制器、延时器、定时器等的时间测试。2004年8月28日15点15分,中国选手孟关良/杨文军在雅典奥运会男子500米划艇决赛中,以1分40秒27

7、8的成绩获得中国在雅典奥运会的第28金。这是中国皮划艇项目的第一枚奥运金牌,也是中国水上项目在历届奥运会上所获得的第一枚金牌。孟关良/杨文军的成绩比获得银牌的古巴选手只快了 0.072秒,以至于两人在夺冠之后还不敢相信。在现在的体育竞技比赛中,随着运动员的水平不断提高,差距也在不断缩小。有些运动对时间精度的要求也越来越高,有时比赛冠亚军之间的差距只有几毫秒,因此就需要高精度的秒表来记录成绩。21世纪,单片机的发展非常的迅速。单片机是把主要计算机功能部件都集成在一块芯片上的微型计算机。它是一种集计数和多种接口于一体的微控制器,被广泛应用在智能产品和工业自动化上,而51单片机是个单片机中最为典型和

8、最有代表性的一种。51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8031单片机,后来随着Flash rom技术的发展,8031单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是Atmel的AT89系列,它广泛应用于工业测控系统之中。很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。本次的设计任务是一个数字秒表,而秒表与普通的钟表不同,它的目的是对从某一时刻到另一时刻的时间间隔进行计时。秒表的数字化常给人们的生活带来极大的方便,它广泛应用于社会的各个领域。通过对数字式秒表的设计,我们可以清楚的了解到它的工

9、作原理,进而也了解了数字钟表的工作原理。在翻阅相关资料后,我们把秒表的设计分成了三大部分:基准脉冲产生部分;控制部分和计数、译码、显示部分。本设计的数字电子秒表系统采用STC89C52单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及独立键盘来设计秒表,将软、硬件有机地结合起来。 2 数字式秒表的设计介绍2.1 设计任务及功能要求 由单片机接收小键盘控制递增计时,由LED 显示模块计时时间,显示格式为 00-59(分)00-59(秒).00-99(毫秒),精确到0.01s的整数倍。绘制系统硬件接线图,并进行系统仿真和实验。画出程序流程图并编写程序实现系统功能

10、。使用单片机AT89S52作为主要控制芯片,以四位一体共阳极数码显示管通过三极管驱动作为显示部分,设计一个具有特定功能的数字式秒表。该数字式秒表上电或按键复位后能自动显示系统提示符“P.”,进入准备工作状态。该数字式秒表通过按键控制可实现开始计时、暂停计时、连续计时、清零和停止功能。2.2 数字式秒表的方案介绍及工作原理说明 使用AT89S52单片机作为核心控制部件,采用12M晶体振荡器及微小电容构成振荡电路;采用S8550作为数码管的驱动部分;用两个四位一体共阳极或共阴极数码显示管作为显示部分,构成数字式秒表的主体结构,配合独立式键盘和复位电路完成此秒表的复位、计时、连续、清零、停止各项功能

11、。 键盘部分方案:键盘控制采用独立式按键,每个按键的一端均接地,另一端直接和P1口相连,在按键和P1口之间通过10K电阻与+5V电源相连。键盘通过检测输入线的电平状态就可以很容易地判断哪个键被按下了,这种方法操作速度高而且软件结构很简单,比较适合按键较少或操作速度较高的场合,这种独立式接口的应用很普遍。 显示部分方案:显示部分采用动态显示。数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示的笔画"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单

12、片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。事实上,显示器上任何时刻只有一个数码管有显示。由于各数码管轮流显示的时间间隔短、节奏快,人的眼睛反应不过来,因此看到的是连续显示的现象。为防止闪烁延时的时间在1ms左右,不能太长,也不能太短。本设计可采用P0口直接驱动八段数码管显示。此电路采用单片机的P0口作为数码显示管的段控,采用P2口作为数码管的位

13、控。8个独立式键盘分别接在单片机的P1口上,以及其他部分构成数字式秒表的硬件电路。通过编写程序使用单片机的定时计数器,以及软件延时,中断资源来实现秒计时和相关控制。此数字式秒表的硬件整体结构如图1所示。图1 数字式秒表的方案图3 数字式秒表硬件系统的设计3.1 电源电路电源电路是系统的最基本部分,任何部分都离不开电源部分,单片机系统也不例外,而且我们应该高度重视电源部分,不能因为电源部分电路比较简单而有所疏忽,其实有一半的故障或制作失败都和电源有关,电源部分做好才能保证电路的正常工作。方案一:采用直流稳压电源+5V为其提供工作所需的电压,其中采用的LM7805芯片为三端集成稳压芯片,只有输入端

14、,输出端和接地端,输出电压为+5V。电源电模块如图2所示。方案二:通过下载口对系统供电,只需要一个+5V的移动电源,一根USB下载线即可。移动电源直接提供+5V的电压,通过USB线接入下载口对系统各模块供电。对比两方案,方案二具有供电电压稳定,电源质量好,获取途径广等优点。综合考虑,选用方案二,即移动电源供电方式。图2 电源电路模块3.2 AT89S52芯片的介绍(1) 与MCS-51产品相兼容;(2) 具有8KB可改写的Flash 内部程序存储器,可写/擦1000次;(3) 256字节内部RAM;(4) 32根可编程I/O口;(5) 3个16位定时器/计数器; (6) 8个中断源;(7) 可

15、编程中串行口;(8) 低功耗空闲和掉电方式;它的价格便宜,功能强大,能耗低。很大程度上减少总电路的复杂性,提高了所设计系统的稳定性。其芯片引脚图如图3所示。图3 单片机引脚图3.3 单片机最小系统模块3.3.1 时钟电路 时钟电路用于产生单片机工作所需要的时钟信号,单片机本身就是一个复杂的同步时序电路。输入端为芯片引脚XTAL1,输出端为引脚TXAL2,在芯片的外部通过这两个引角跨接晶体振荡器和微调电容,形成反馈电路,就构成了一个稳定的自激振荡器。 此电路采用12MHz的石英晶体。时钟电路如图4所示。图4 时钟电路3.3.2 复位电路 复位是单片机的初始化操作,其主要功能是把PC初始化为000

16、0H,使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误是系统处于死锁状态时,为摆脱困境,也需要按复位键以重新启动。RST引脚是单片机复位信号的输入端,复位信号是高电平有效,其有效时间应持续24个振荡周期(即2个机器周期)以上,若使用频率为6MHz的晶振,则复位信号持续时间应超过4us才能完成复位操作。复位操作有上电自动复位和按键手动复位两种方式。上电自动复位是通过外部复位电路的电容充电来实现的。按键电平复位是通过使复位端经电阻与Vcc电源接通而实现的。在本设计中采用了按键电平复位方式,如图5所示上电后,由于电容充电,使RST持续一段高电平时间。当

17、单片机已在运行之中时,按下复位键也能使RST持续一段时间的高电平,从而实现上电且开关复位的操作。通常选择C=1030F,R=1K,本设计采用的电容值为22F的电容和电阻为1K的电阻。其复位电路如图5所示:图5 复位电路3.3.3 最小系统图图6 AT89C52最小系统3.4 键盘电路 本设计使用独立式键盘接在单片机的P1口上但通过软件赋予其中三个按键功能,其中S11是计时开始按键,S10为停止按键,S9为计时暂停按键,S8为继续计时按键,S7是清零按键。注意使用时只有在暂停状态下才能继续计时,只有在停止状态下才能清零,在停止时不能继续计时,在暂停时不能清零。键盘电路如图7所示:图7 键盘电路3

18、.5 驱动及显示电路 对于数字显示电路,通常采用液晶显示或数码管显示。本设计的显示电路采用8段4位数码管作为显示介质。数码管显示可以分为静态显示和动态显示两种,为了节省端口及降低功耗,本系统采用动态显示方式。数码管实际上是由二极管构成发光二级管正常工作时,其两端正向压降约为1.6v,正向电流约为10mA,为了使数码管达到一定的亮度而又不至于由于电流过大而损坏,我们使用三极管S8550作为数码管的驱动,同时在P00-P07口上串上470欧姆的电阻,R=5V/10MA=500(由于元器件只有470,所以用470代替500)。此处使用四位一体共阴极数码管,由于驱动电路决定了此处共阴极数码管和共阳极数

19、码管均可以采用,本设计采用共阴极数码显示管做显示电路, 74HC573是3态非反转透明锁存器芯片,当锁存器使能端为高时,这些器件的锁存对于数据是透明的(也就是说输出同步)。当锁存器使能变低时,符合建立时间和保持时间的数据会被锁存。具体电路如图8所示。图8 数码管驱动及显示电路图3.6 单片机下载口电路 下载口如图9所示。可以通过使用USB下载线对单片机进行程序下载。方便整个软件的设计,也能让我们使用起来更加方便。 图9 单片机下载口电路图3.7 电路原理图、PCB图、元器件布局图3.7.1 电路原理图此处电路原理图以及PCB原理图的绘制均使用Altium Designer 09软件完成, 根据

20、硬件接线要求设计绘制电路原理图。具体电路图见附录A。3.7.2 电路PCB图PCB图是由AD的封装管理器画好封装之后,直接转换成PCB图然后连线而成。具体PCB图见附录B。3.7.3 元器件布局图 元器件布局图见附录C。 3.8 元器件清单 元器件清单见附录D。4 数字式秒表软件系统的设计4.1 数字式秒表使用单片机资源情况 本次数字式秒表设计除了使用单片机工作所必须的硬件资源(如连接晶振的引脚XTAL1和XTAL2,复位引脚RESET)外,对单片机的硬件资源还做了具体的安排。P0口:P0.0-P0.7作为数码管显示器的段控。P1口:P1.0、P1.2、P1.3、P1.4(由于自己的P1.1口

21、所接的按键不怎么灵敏所以不用P1.1口)作为独立式键盘的输入端。P2口:P2.0-P2.7分别控制数码管LED0-LED7的位控码驱动。4.2 主程序流程图 图10 主程序的流程图 本系统程序主要模块由主程序、定时中断服务程序、外部中断0服务程序和外部中断1服务程序组成。其中主程序是整个程序的主体。可以对各个中断程序进行调用。协调各个子程序之间的联系。在主程序中还进行了赋寄存区的初始值、设置定时器初值以及开启外部中断等操作,当定时时间到后就转去执行定时中断程序。当外部中断有请求则去执行外部中断服务程序,并在执行完后返回主程序。4.3 秒表的工作流程图 图11 秒表工作的流程图4.4 显示程序流

22、程图 图12 显示程序流程图4.5 软件系统程序清单 按照流程图应用软件keil,使用C语言编程实现秒表功能。程序见附录E。5 设计结果及误差分析5.1 数字式秒表的设计结论及使用说明 在上电复位之后,此时会在数码管的最高位显示P.,此时模式转换键有效,按下之后会进入计时状态。S11是计时开始按键,S10为停止按键,S9为计时暂停按键,S8为继续计时按键,S7是清零按键。注意使用时只有在暂停状态下才能继续计时,只有在停止状态下才能清零,在停止时不能继续计时,在暂停时不能清零。 5.2 编程软件介绍 KEIL C51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保留了汇编代码高效

23、,快速的特点。C51编译器的功能不断增强,使你可以更加贴近CPU本身,及其它的衍生产品。C51已被完全集成到uVision3的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,项目管理器,调试器。uVision3 IDE可为它们提供单一而灵活的开发环境。5.3 程序结果(1) 显示系统提示符“P.”如图13所示。 图13 系统提示符“P.”的显示图(2)秒表的运行状态如图14所示。 图14 秒表运行状态图 (3)秒表的清零如图15所示。 图15 秒表的清零图 5.4 误差分析及解决方法我们可以发现数字式秒表计数一段时间的我们的标准时间相比较出现了误差,所设计的数字式秒表比我们

24、的标准时间要慢,而且相比较的时间越长他的时差越大。经过分其主要原因与硬件和软件都有关。我们知道了单片机在进行定时中断时需要执行语句,而执行这些语句是需要占用CPU时间的,从而影响单片机定时的精确性,最终会导致数字电子秒表的计时误差,为了减小这种计时误差,我们之前在编程时已经将单片机一秒钟内执行程序的时间计算在内,并将定时器的初值做出了适当调整,争取最大限度的减小数字电子秒表的计时误差,经过下载到板子和仿真测试,在第一次测试时,定时器的初值为0xd8f0,在13分钟后误差达到了一秒,分析应该是程序本身跳到定时器0中断去需要时间,从而所引起的误差。经过计算并权衡,第二次测试把初值设置成0xd8f6

25、,结果在四十分钟的时候出现了一秒的误差。在经过计算之后第三次测试将初值设置为0xd8f8,第三次测试效果很好,在90分钟的时候误差还控制在一秒之内。硬件原因则是因为按键时会有抖动期,同时板子反应液需要一定时间,但开始和暂停都会产生按键抖动,所以这部分的误差应该较小。同时制板做的质量不是很好,所以不能够排除整体设计对单片机有影响,所以在用板子计时时会有一些误差。针对这样的问题我们就能只能从上述两个方面入手去解决。软件方面我们可以通过计算设计子程序去减少响应的时差。硬件部分我们可以采用一些稳定,精确度比较高的电子元件去完善,但是在最后调试出的还是有误差但我尽可能的减少差误差接近理想。结束语本文利用

26、AT89C52单片机设计了具有计时开始,暂停及清零功能的数字式秒表,计时最大值为59分59.99秒,计时精确度为0.01秒。利用Proteus和Keil软件进行了仿真,从而达到预期效果。通过这次单片机课程设计,让我对整个单片机程序的设计,C51语言有了一个比较深的理解。还有就是增强了自身的动手能力,由原来的单纯地书本学习转向创新思考,把以前书本上讲的或是没有讲的,通过一次课程设计具体的实施,很自己的团队合作精神真正得到锻炼。本次课程设计,也培养了我们小组的合作精神,所谓团结就是力量,就是一个再好不过的解释。它不仅为我以后的课程设计打下基础,而且还培养了我们的合作精神和分析问题的能力。这次设计整

27、体电路的计时精确度高,电路结构简单,抗干扰能力强,具有广阔的应用前景。然而不足的是本设计的数字式秒表缺少对多次计时时间进行记录的功能,应给在单片机的内部存储区多设置一些存储空间,用来存储多次计时时间,并在程序中编入对多次计时时间的调用显示,虽然存在不足,但本设计的数字式秒表任具有它的实用性。参考文献1李朝青.单片原理及接口技术M.北京:电子工业出版社.20102李勋.单片机实用教程M. 北京:北京航空航天大学出版社.2006.53何立民.单片机应用技术选编M.北京:北京航空航天大学出版社.20074马忠梅.单片机的C语言Windows环境编程宝典M. 北京:北京航空航天大学出版社.20035李

28、光飞.单片机C程序设计指导M.北京:北京航空航天大学出版社.2003.16李光飞.单片机课程设计实例指导M.北京:北京航空航天大学出版.2004.97李广弟.单片机基础(第3版)M.北京:北京航空航天大学出版社.2007.68马忠梅,籍顺心,张凯,马岩.单片机的C语言应用程序设计(第四版)M.北京:北京航空航天大学出版社,2007.1 9王幸.单片机应用系统抗干扰技术M. 北京:北京航空航天大学出版社,2009致 谢刚开始接到课程设计任务,认为挺简单的,然而真正开始动手制作时才知道并不是那么简单,从初期的资料收集以及原理图的绘制都受到了老师以及同学的帮助,在遇到困难时请教老师和同学都能得到耐心

29、的解答,帮助我少走弯路。 通过这次课程设计,让我学到了很多,使我对书本上的知识掌握得更加牢固,同时也使我了解到同学之间的合作和老师对我的帮助对完成任务的重要性。在此,我十分感谢老师和同学在整个课设过程中给予我的帮助和鼓励,谢谢你们!附录A 电路原理图附录B 电路PCB图 图B1 顶层PCB图图B2 底层PCB图附录C 元器件分布图附录D 元器件清单名称数量参数单片机1个AT89S52共阳数码管2个4位一体晶振1个12MHz发光二极管9个芯片插座1个20DIP芯片插座1个40DIP蜂鸣器1个有源按键10个4脚排阻4个10K下载口座子1个十芯六脚按键开关1个6脚USB电源线加接口1个电阻1个200

30、电阻3个1K电阻8个470电解电容2个22f瓷片电容2个33p短路帽3个PCB板子1块电源白色插座1个杜邦线2个铜柱 (带螺母)4个集成芯片1个74HC573排阻1个470三极管1个9012附录E 程序清单程序清单:/*/*项目名称:数字式秒表 */*项目功能:设计一个具有特定功能的数字式秒表。该数字式秒表上电或按键复位后能自动显示系统提示符“P.”,进入准备工作状态。该数字式秒表应具有开始、暂停、连续、清零和停止功能。 */*编程作者:谢曜臣 */*指导老师:肖冬瑞 */*完成时间:2015年6月 */*/*全局变量说明模块*/#include<reg52.h>#include&

31、lt;intrins.h>#define uchar unsigned char#define uint unsigned int/*各个功能模块的标志位*/uchar jdz,ks,zt,lx,tz,ql,jz;/*分、秒、毫秒的存储变量*/uint xsf,xsms;int xsm;uint i=0;/*多次记忆模块的存储数组*/unsigned char fzcc20,mcc20,mscc20;/*单个P2口的定义*/sbit smg0=P20; sbit smg1=P21; sbit smg2=P22; sbit smg3=P23;sbit smg4=P24;sbit smg5=

32、P25; sbit smg6=P26;sbit smg7=P27;unsigned char code smg_we=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90;/*函数说明部分*/void djs(void);void js(void);uchar xp();uchar xb();void delay(void);uchar key();void display(void);void delay_1ms(void);/*数字式秒表主体函数*/ void main() IE=0x83;TMOD=0x01;TL0=0xf8;TH0=0xd8

33、;IT0=1; while(1) if(MS=0) js(); if(MS=1) djs(); /*外部0中断*/*功能:用于改变计时模式的标志位*/voidWBZD (void)interrupt 0if(MSW=1) MS=!MS;/*定时器0中断函数*/*功能:用于两种模式的计时*/voidDSZD0(void) interrupt 1TL0=0xf8;TH0=0xd8; xsms+; if(xsms=100) xsms=0;xsm+; if(xsm=60) xsm=0;xsf+; if(xsf=100) xsf=0; /*延时2ms函数*/*功能:延时2ms*/void delay_1

34、ms(void) unsigned char a,b; for(b=4;b>0;b-) for(a=248;a>0;a-);/*显示子函数*/*功能:用于处理分、秒、毫秒变量,同时显示在数码管上*/void display(void)P0=smg_wexsms%10; P2=0x01; delay_1ms(); smg0=0; P0=smg_wexsms/10; P2=0x02; delay_1ms(); smg1=0; P0=smg_wexsm%10&0x7f; P2=0x04; delay_1ms(); smg2=0; P0=smg_wexsm/10; P2=0x08; delay_1ms(); smg3=0; P0=0xbf; P2=0x10; delay_1ms(); smg4=0; P0=smg_wexsf%10; P2=0x20; delay_1ms(); smg5=0; P0=smg_wexsf/10; P2=0x40; delay_1ms(); smg6=0; P0=0xff; P2=0x80; delay_1ms(); smg7=0;/*取键值子函数*/*功能:取按键的值,用于判键*/uchar key()uchar d,j; d=P1;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论