




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机的步进电机控制系统前 言步进电机是一种进行精确步进运动的机电执行元件,它广泛应用于工业机械的数字控制,为使系统的可靠性、通用性、可维护性以及性价比最优,根据控制系统功能要求及步进电机应用环境,确定了设计系统硬件和软件的功能划分,从而实现了基于 8051 单片机的四相步进电机的开环控制系统。控制系统通过单片机存储器、I/O 接口、中断、键盘、LED 显示器的扩展、步进电机的环形分频器、驱动及保护电路、人机接口电路、中断系统及复位电路、单电压驱动电路等的设计,实现了四相步进电机的正反转,急停等功能。为实现单片机控制步进电机系统在数控机床上的应用,系统设计了两个外部中断,以实现步进电机在某段时间内的反复正反转功能,也即数控机床的刀架自动进给运动,随着单片机技术的不断发展,单片机在日用电子产品中的应用越来越广泛,自六十年代初期以来,步进电机的应用得到很大的提高。人们用它来驱动时钟和其他采用指针的仪器,打印机、绘图仪,磁盘光盘驱动器、各种自动控制阀、各种工具,还有机器人等机械装置。此外作为执行元件,步进电机是机电一体化的关键产品之一,被广泛应用在各种自动化控制系统中,随着微电子和计算机技术的发展,它的需要量与日俱增,在各个国民经济领域都有应用。步进电机是机电数字控制系统中常用的执行元件,由于其精度高、体积小、控制方便灵活,因此在智能仪表和位置控制中得到了广泛的应用,大规模集成电路的发展以及单片机技术的迅速普及,为设计功能强,价格低的步进电机控制驱动器提供了先进的技术和充足的资源。1.步进电机原理及硬件和软件设计1.1 步进电机原理及控制技术由于步进电机是一种将电脉冲信号转换成直线或角位移的执行元件,它不能直接接到交直流电源上,而必须使用专业设备-步进电机控制驱动器,典型步进电机控制系统如图 1 所示:控制器可以发出脉冲频率从几赫兹到几千赫兹可以连续变化的脉冲信号,它为环形分配器提供脉冲序列,环形分配器的主要功能是把来自控制环节的脉冲序列按一定的规律分配后,经过功率放大器的放大加到步进电机驱动电源的各项输入端,以驱动步进电机的转动,环形分配器主要有两大类:一类是用计算机软件设计的方法实现环形分配器要求的功能,通常称软环形分配器。另一类是用硬件构成的环形分配器,通常称硬环形分配器。功率放大器主要对环形分配器的较小输出信号进行放大,以达到驱动步进电机的目的,步进电机的基本控制包括转向控制和速度控制两个方面。从结构上看,步进电机分为三相单三拍、三相双三拍和三相六拍 3 种,其基本原理如下:(1) 换相顺序的控制通电换相这一过程称为脉冲分配。例如,三相步进电机在单三拍的工作方式下,其各相通电顺序为 ABCA,通电控制脉冲必须严格按照这一顺序分别控制 A、B 、C 相的通断。三相双三拍的通电顺序为 ABBCCAAB ,三相六拍的通电顺序为 AABBBCCCAA。(2) 步进电机的换向控制如果给定工作方式正序换相通电,步进电机正转。若步进电机的励磁方式为三相六拍,即 AABBBCCCAA。如果按反序通电换相,即AACCCBBBAA,则电机就反转。其他方式情况类似。(3) 步进电机的速度控制如果给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。两个脉冲的间隔越短,步进电机就转得越快。调整送给步进电机的脉冲频率,就可以对步进电机进行调试。(4) 步进电机的起停控制步进电机由于其电气特性,运转时会有步进感。为了使电机转动平滑,减小振动,可在步进电机控制脉冲的上升沿和下降沿采用细分的梯形波,可以减小步进电机的步进角,跳过电机运行的平稳性。在步进电机停转时,为了防止因惯性而使电机轴产生顺滑,则需采用合适的锁定波形,产生锁定磁力矩,锁定步进电机的转轴,使步进电机转轴不能自由转动。(5) 步进电机的加减速控制在步进电机控制系统中,通过实验发现,如果信号变化太快,步进电机由于惯性跟不上电信号的变化,这时就会产生堵转和失步现象。所有步进电机在启动时,必须有加速过程,在停止时波形有减速过程。理想的加速曲线一般为指数曲线,步进电机整个降速过程频率变化规律是整个加速过程频率变化规律的逆过程。选定的曲线比较符合步进电机升降过程的运行规律,能充分利用步进电机的有效转矩,快速响应性好,缩短了升降速的时间,并可防止失步和过冲现象。在一个实际的控制系统中,要根据负载的情况来选择步进电机。步进电机能响应而不失步的最高步进频率称为“启动频率” ,于此类似“停止频率”是指系统控制信号突然关断,步进电机不冲过目标位置的最高步进频率。电机的启动频率、停止频率和输出转矩都要和负载的转动惯量相适应,有了这些数据,才能有效地对电机进行加减速控制。加速过程有突然施加的脉冲启动频率 f0。步进电机的最高启动频率(突跳频率)一般为 0.1KHz 到 34KHz,而最高运行频率则可以达到N*102KHz,以超过最高启动频率的频率直接启动,会产生堵转和失步的现象。f/Hzfafb0 t/s图 1 步进电机运行过程中频率变化曲线在一般的应用中,经过大量实践和反复验证,频率如按直线上升或下降,控制效果就可以满足常规的应用要求。用 PLC 实现步进电机的加 P 减速控制,实践上就是控制发脉冲的频率。加速时,使脉冲频率增高,减速则相反。如果使用定时器来控制电机的速度,加减速控制就是不断改变定时中断的设定值。速度从v1v2 变化,如果是线性增加,则按给定的斜率加 P 减速;如果是突变,则按阶梯加速处理。在此过程中要处理好两个问题:速度转换时间应尽量短。为了缩短速度转换的时间,可以采用建立数据表的方法。结合各曲线段的频率和各段间的阶梯频率,就可以建立一个连续的数据表,并通过转换程序将其转换为定时初始表。通过在不同的阶段调用相应的定时初值,就可控制电机的运行。定时初值的计算是在定时中断外实现的,并不占用中断时间,保证电机的高速运行。保证控制速度的精确性。要从一个速度准确达到另一个速度,就要建立一个校验机制,以防超过或未达到所需速度。(6) 步进电机的换向控制步进电机换向时,一定要在电机降速停止或降到突跳频率范围之内在换向,以免产生较大的冲击而损坏电机。换向信号一定要在前一个方向的最后一个脉冲结束后以及下一个方向的第一个脉冲前发出。对于脉冲的设计主要要求其有一定的脉冲宽度、脉冲序列的均匀度及高低电平方式。在某一高速下的正、反向切换实质包含了降速换向加速 3 个过程。步进电机有如下特点: 步进电机的角位移与输入脉冲数严格成正比,因此当它转一转后,没有累计误差,具有良好的跟随性。 由步进电机与驱动电路组成的开环数控系统,既非常方便、廉价,也非常可靠。同时,它也可以有角度反馈环节组成高性能的闭环数控系统。 步进电机的动态响应快,易于启停、正反转及变速。 速度可在相当宽的范围内平滑调节,低速下仍能保证获得很大的转矩,因此一般可以不用减速器而直接驱动负载。 步进电机只能通过脉冲电源供电才能运行,它不能直接用交流电源或直流电源。 步进电机自身的噪声和振动比较大,带惯性负载的能力强。1.2 总体设计方框图总体设计方框图如图 2 所示。1.3 设计原理分析1.3.1 元器件介绍(1)步进电机步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。步进电机区别于其他控制电机的最大特点是:它是通过输入脉冲信号来进行控制的,即电机的总转动角度由输入脉冲数决定,而电机的转速由脉冲信号频率决定。步进电机分三种:永磁式(PM) ,反应式(VR )和混合式(HB),步进电机又称为脉冲电机,是工业过程控制和仪表中一种能够快速启动,反转和制动的执行89C51单片机复位电路键盘控制电路ULN2803启动电路步进电机状态显示电路电源及时钟电路图 2 总体设计方框图元件,其功用是将电脉冲转换为相应的角位移或直线位移,由于开环下就能实现精确定位的特点,使其在工业控制领域获得了广泛应用。步进电机的运转是由电脉冲信号控制的,其角位移量或线位移量与脉冲数成正比,每个一个脉冲,步进电机就转动一个角度(不距角)或前进、倒退一步。步进电机旋转的角度由输入的电脉冲数确定,所以,也有人称步进电机为数字/角度转换器。 四相步进电机的工作原理该设计采用了 20BY-0 型步进电机,该电机为四相步进电机,采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机转动。当某一相绕组通电时,对应的磁极产生磁场,并与转子形成磁路,这时,如果定子和转子的小齿没有对齐,在磁场的作用下,由于磁通具有力图走磁阻最小路径的特点,则转子将转动一定的角度,使转子与定子的齿相互对齐,由此可见,错齿是促使电机旋转的原因。 步进电机的静态指标及术语相数:产生不同队 N、S 磁场的激磁线圈对数,常用 m 表示。拍数:完成一个磁场周期性变化所需脉冲用 n 表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即ABBCCDDAAB,四相八拍运行方式即AABBBCCCDDDAA。步距角:对应一个脉冲信号,电机转子转过的角位移用 表 示 。 =360 度( 转 子 齿 角 运 行 拍 数 ) , 以 常 规 二 、 四 相 , 转 子 齿 角 为 50 齿 角 电 机 为 例 。 四相 运 行 时 步 距 角 为 =360 度 /( 50*4) =1.8 度 , 八 拍 运 行 时 步 距 角 为 =360度 /( 50*8) =0.9 度 。定 位 转 矩 : 电 机 在 不 通 电 的 状 态 下 , 电 机 转 子 自 身 的 锁 定 力 矩 ( 由 磁 场 齿形 的 谐 波 以 及 机 械 误 差 造 成 的 ) 。静 转 矩 : 电 机 在 额 定 静 态 作 业 下 , 电 机 不 做 旋 转 运 动 时 , 电 机 转 轴 的 锁 定力 矩 。 此 力 矩 是 衡 量 电 机 体 积 的 标 准 , 与 驱 动 电 压 及 驱 动 电 源 等 无 关 。 虽 然 静态 转 矩 与 电 磁 激 磁 匝 数 成 正 比 , 与 定 子 和 转 子 间 的 气 隙 有 关 。 但 过 分 采 用 减 小气 隙 , 增 加 励 磁 匝 数 来 提 高 静 转 矩 是 不 可 取 的 , 这 样 会 造 成 电 机 的 发 热 及 机 械噪 音 。 四相步进电机的脉冲分配规律目前,对步进电机的控制主要有分散器件组成的环形脉冲分配器、软件环形脉冲分配器、专用集成芯片环形脉冲分配器等。本设计利用单片机进行控制,主要是利用软件进行环形脉冲分配。四相步进电机的工作方式为四相单四拍,双四拍和四相八拍工作的方式。各种工作方式在电源通电时的时序 与波形分别如图 1 a、b、 c 所示。本设计的电机工作方式为四相单四拍,根据步进电机的工作的时序和波形图,总结出其工作方式为四相单四拍时的脉冲分配规律,四相双四拍的脉冲分配规律,在每一种工作方式中,脉冲的频率越高,其转速就越快,但脉冲频率高到一定程度,步进电机跟不上频率的变化后电机会出现失步现象,所以脉冲频率一定要控制在步进电机允许的范围内。(2)89C51 单片机Atmel 公司生产的 89C51 单片机是一种低功耗/低电压高性能的 8 位单片机,它采用 CMOS 和高密度非易失性存储技术,而且其输出引脚和指令系统都与MCS-51 兼容;片内的 Flash ROM 允许在系统内改编程序或用常规的非易失性编程器来编程,内部除 CPU 外,还包括 256 字节 RAM,4 个 8 位并行 I/O 口,5 个中断源,2 个中断优先级,2 个 16 位可编程定时计数器,89C51 单片机是一种功能强、灵活性高且价格合理的单片机,完全满足本系统设计需要。1.3.2 方案论证从该系统的设计 要求可知,该系统的输入量为速度和方向,速度应该有增减变化,通常用加减按钮控制速度,这样只要 2 根口线,再加上一根方向线盒一根启动信号线共需要 4 根输入线。系统的输出线与步进电机的绕组数有关。这里选进电机,该电机共有四相绕组,工作电压为+5V,可以个单片机共用一个电源。步进电机的四相绕组用 P1 口的 P1.0P1.3 控制,由于 P1 口驱动能力不够,因而用一片 2803 增加驱动能力。用 P0 口控制第一数码管用于显示正反转,用 P2 口控制第二个数码管用于显示转速等级。数码管采用共阳的。1.3.3 硬件设计本设计的硬件电路只要包括控制电路、最小系统、驱动电路、显示电路四大部分。最小系统只要是为了使单片机正常工作。控制电路只要由开关和按键组成,由操作者根据相应的工作需要进行操作。显示电路主要是为了显示电机的工作状态和转速。驱动电路主要是对单片机输出的脉冲进行功率放大,从而驱动电机转动。(1)控制电路根据系统的控制要求,控制输入部分设置了启动控制,换向控制,加速控制和减速控制按钮,分别是 K1、K2、S2、S3,控制电路如图 4 所示。通过K1、K2 状态变化来实现电机的启动和换向功能。当 K1、K2 的状态变化时,内部程序检测 P1.0 和 P1.1 的状态来调用相应的启动和换向程序,发现系统的电机的启动和正反转控制。根据步进电机的工作原理可以知道,步进电机转速的控制主要是通过控制通入电机的脉冲频率,从而控制电机的转速。对于单片机而言,主要的方法有:软件延时和定时中断在此电路中电机的转速控制主要是通过定时器的中断来实现的,该电路控制电机加速度主要是通过 S2、S3 的断开和闭合,从而控制外部中断根据按键次数,改变速度值存储区中的数据(该数据为定时器的中断次数) ,这样就改变了步进电机的输出脉冲频率,从而改变了电机的转速。图 4 控制电路原理图(2)最小系统单片机最小系统或者称为最小应用系统,素质用最少的元件组成的单片机可以工作的系统,对 51 系列单片机来说,最小系统一般应该包括:单片机、复位电路、晶振电路。复位电路:使用了独立式键盘,单片机的 P1 口键盘的接口。该设计要求只需4 个键对步进电机的状态进行控制,但考虑到对控制功能的扩展,使用了 6 路独立式键盘。复位电路采用手动复位,所谓手动复位,是指通过接通一按钮开关,使单片机进入复位状态,晶振电路用 30PF 的电容和一 12M 晶体振荡器组成为整个电路提供时钟频率。如图 5 示。晶振电路:8051 单片机的时钟信号通常用两种电路形式电路得到:内部震荡方式和外部中断方式。在引脚 XTAL1 和 XTAL2 外部接晶振电路器(简称晶振)或陶瓷晶振器,就构成了内部晶振方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。内部振荡方式的外部电路如图 5 示。其电容值一般在 530pf,晶振频率的典型值为 12MHz,采用6MHz 的情况也比较多。内部振荡方式所得的时钟信号比较稳定,实用电路实用较多。图 5 复位及时钟振荡电路(3)驱动电路通过 ULN2803 构成比较多的驱动电路,电路图如图 6 所示。通过单片机的P1.0P1.3 输出脉冲到 ULN2803 的 1B4B 口,经信号放大后从 1C4C 口分别输出到电机的 A、B、C 、D 相。图 6 步进电机驱动电路(4)显示电路在该步进电机的控制器中,电机可以正反转,可以加速、减速,其中电机转速的等级分为七级,为了方便知道电机的运行状态和电机的转速的等级,这里设计了电机转速和电机的工作状态的显示电路。在显示电路中,主要是利用了单片机的 P0 口和 P2 口。采用两个共阳数码管作显示。第一个数码管接的a、b、c、d、e 、f、g、h 分别接 P0.0P0.7 口,用于显示电机正反转状态,正转时显示“1” ,反转时显示“一” ,不转时显示“0” 。第二个数码管的a、b、c、d、e 、f、g、h 分别接 P2.0P2.7 口,用于显示电机的转速级别,共七级,即从 17 转速依次递增, “0”表示转速为零。电路如图 7 所示。图 7 显示电路(5)总体电路图把各个部分的电路图组合成总电路图,如图 8 所示。图 8 总体电路图1.3.4 软件设计通过分析可以看出,实现系统功能可以采用多种方法,由于随时有可能输入加速、加速信号和方向信号,因而采用中断方式效率最高,这样总共要完成 4 个部分的工作才能满足课题要求,即主程序部分、定时器中断部分、外部中断 0 和外部中断 1 部分,其中主程序的主要功能是系统初始参数的设置及启动开关的检测,若启动开关合上则系统开始工作,反之系统停止工作;定时器部分控制脉冲频率,它决定了步进电机转速的快慢;两个外部中断程序要做的工作都是为了完成改变速度这一功能。下面分析主程序与定时器中断程序及外部中断程序。(1)主程序设计主程序中要完成的工作主要有系统初始值的设置、系统状态的显示以及各种开关状态的检测判断等。其中系统初始状态的设置内容较多,该系统中,需要初始化定时器、外部中断;对 P1 口送初值以决定脉冲分配方式,速度值存储区送初值决定步进电机的启动速度,对方向值存储区送初值决定步进电机旋转方向等内容。若初始化 P1=11H、速度和方向初始值均设为 0,就意味着步进电机按四相单四拍运行,系统上电后在没有操作的情况下,步进电机不旋转,方向值显示“0”,速度值显示“0” ,主程序流程图如图 9 所示。开 始初 始 化速度值为0?启动开关为 0?停止计时器显 示启动计时器延 时停止计时器图 9 主程序流程图YNYN(2)定时中断设计步进电机的转动主要是给电机各绕组按一定的时间间隔连续不断地按规律通入电流,步进电机才会旋转,时间间隔越短,速度就越快。在这个系统中,这个时间间隔是用定时器重复中断一定次数产生的,即调节时间间隔就是调节定时器的中断次数,因而在定时器中断程序中,要做的工作主要是判断电机的运行方向、发下一个脉冲,以及保存当前的各种状态。程序流程图如图 10 所示。中断返回T0 中断入口发速度脉冲读方向指示重送相关状态恢复现场保护现场中断次数-1=0?NY图 10 定时中断程序流程图(3)外部中断设计外部中断所要完成的工作是根据按键次数,改变速度值存储区中的数据(该数据为定时器的中断次数) ,这样就改变了步进电机的输出脉冲频率,也就是改变了电机的转速。速度增加按钮 S2 为 INT0 中断,其程序流程为原数据,当值等于 7 时,不改变原数值返回,小于 7 时,数据加 1 后返回;速度减少按钮 S3,当原数据不为 0,减 1 保存数据,原数据为 0 则保持不变。程序流程图如图 11 所示。外部中断入口保护现场延时去抖中断返回速度值1恢复现场速度=上或限值?按钮是否弹起?NNNYY图 11 外部中断程序流程图1.3.5 源程序(汇编、C 语言程序各一个)汇编程序如下:SPEED EQU 10H ;SPEED 为转速等级标志,共 7 级,即 17FX EQU 11H ;FX 为方向标志COUNT EQU 12H ;COUNT 中断次数标志ORG 0000HAJMP MAINORG 0003H ;外部中断 0 入口地址,加速子程序AJMP UPORG 0013H ;外部中断 1 入口地址,减速子程序AJMP DOWNORG 000BH ;定时器 0 中断入口地址,控制中断次数来达到控制转速AJMP ZDT0ORG 0030HMAIN: MOV SP,#60HMOV TMOD,#01H ;工作于定时、软件置位启动!模式 1(16 位计时器)MOV TH0,#0CFH MOV TL0,#2CHMOV COUNT,#01HSETB ET0 ;定时/计数器允许中断CLR IT0 ;外部中断为电平触发方式,低电平有效CLR IT1SETB EX0 ;外部允许中断SETB EX1SETB EA ;开总中断MOV R1,#11H ; 四相单四拍运行,共阳数码管方向显示 8,速度值显示 0MOV SPEED,#00HMOV FX,#00HXIANS: MOV A,SPEEDMOV DPTR,#LEDMOVC A,A+DPTR ;查表获取等级对应数码管代码MOV P2,A ;第二个数码管显示转速等级MOV A,FX ;准备判断转向CJNE A,#11H,ELS MOV P0, #0F9H ;第一个数码管显示 1,表示正转AJMP QDELS: CJNE A,#00H,ZHENGMOV P0,#0C0H ;第一个数码管显示 0,表示不转AJMP QDZHENG: MOV P0,#0BFH ;第一个数码管显示-,表示反转QD: JB P3.4,DD ;P3.4 接启动开关 K1,P3.4=1 时启动CLR TR0 ;停止定时/ 计数器MOV P0,#0C0H ;第一个数码管显示 0,表示不转MOV P2,#0C0H ;第二个数码管显示 0,表示转速为 0MOV SPEED,#00H ;重新赋初值MOV FX,#00HAJMP QDDD: MOV A,SPEEDJNZ GO ;A 不等于 0,即初始速度不为零,则转移到 GOCLR TR0 ;停止定时/计数器AJMP QDGO: SETB TR0 ;开启定时/ 计数器ACALL DELAYAJMP XIANSDELAY: MOV R6,#10 ;延时子程序DEL1: MOV R7,#250HERE1: DJNZ R7, HERE1 DJNZ R6,DEL1RET;以下 ZDT0 为定时器中断程序ZDT0: PUSH ACCPUSH DPHPUSH DPLMOV TH0,#0D8HMOV TL0,#0F0HDJNZ COUNT,EXITJB P3.5,NIZHUAN ;查询方向标志 ,P3.5 接换向开关 K2MOV FX,#11HNIZHUAN:MOV A,FXCJNE A,#11H,FZ ;若 A 不等于 11,即正转,则转移到 FZMOV A,R1 ;R1 记录上一次电机脉冲状态MOV P1,ARR A ;循环右一位MOV R1,AMOV P1,AAJMP RE FZ: MOV A,R1MOV P1,ARL A ;循环左移一位MOV P1,AMOV R1,ARE: MOV A,SPEEDMOV DPTR,#TABMOVC A,A+DPTRMOV COUNT,A ;把转速级别赋给 COUNTJB P3.5 ,FFX ; P3.5 接换向开关 K2, 即换向位,若 P3.5=1,则跳到 FFXMOV FX,#11HAJMP EXITFFX: MOV FX,#0FEH ;只要 FX 不等于 11H,就可以通过循环左移或右移进行换向EXIT: POP DPLPOP DPHPOP ACCRETI;以下 UP 为加速中断程序UP: PUSH ACCACALL DELAY ;延时防抖动JB P3.2,UPEX ;P3.2 为外部中断 0 位,接增速开关 S2,低电平有效,若 P3.2=1,则退出MOV A,SPEEDCJNE A,#7,SZ ;最大等级为 7,若 A 不等于 7,则转移到 SZAJMP UPEX ;若 A=7,则退出SZ: INC SPEED ;SPEED= SPEED+1UPEX: POP ACCHERE2: JNB P3.2,HERE2 ;本条指令为防止开关 S2 按下去后弹不起,导致一直产生中断 RETI;以下 DOWN 为减速中断程序DOWN: PUSH ACCACALL DELAYJB P3.3,DEX ; P3.3 为外部中断 1 位,接减速开关 S3,低电平有效,若 P3.3=1,则退出MOV A,SPEEDCJNE A,#0,SJAJMP DEXSJ: DEC SPEED ;SPEED= SPEED-1DEX: POP ACCHERE3: JNB P3.3,HERE3 RETITAB: DB 0,60,40,35,30,28,25,21 ;经仿真,小于 21 时,由于脉冲太快,会出现失步; 0 1 2 3 4 5 6 7 8 9LED: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98HENDC 语言程序如下:#include #define uint unsigned int sbit k1=P34; /启动开关sbit k2=P35; /换向开关sbit s2=P32; /加速按钮sbit s3=P33; /减速按钮void isr_int0(void);/外部中断 0 中断服务函数声明void isr_int1(void);void zd_t0ist(void);uint speed,count,r1,i,t,k;main()k=0;t=0;r1=0x11 ;speed=0;count=1;TMOD=0x01;ET0=1;EA=1;EX0=1;EX1=1;TH0=0xcf;TL0=0x2c;for(;)if(k1=0)P0=0xff;P2=0xff;speed=0;TR0=0;else if(k2=0)P0=0xbf;else P0=0xf9
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度电商平台运营团队入职培训合同范本
- 二零二五年度光纤宽带接入与宽带提速服务合同
- 二零二五年度国际广告宣传代理合同
- 2025版建筑渣土运输与污水处理服务合同范本
- 二零二五版美容院员工培训与技术交流合同
- 二零二五版海外房地产项目劳务派遣劳动合同
- 2025版咖啡厅租赁合同书(含人力资源管理与培训)
- 2025电商产品研发与运营合作协议书0814
- 2025版房地产广告代理服务与技术支持合作协议
- 二零二五年度返聘研发人员知识产权保护合同
- 王阳明传人物传记人物介绍
- 【培训课件】商务礼仪培训
- 政府机关员工宿舍管理条例
- 难治性尿路感染中医治疗
- 消除三病母婴传播
- 银行零售业务培训
- 交叉持股合同范本
- 新课标语文整本书阅读教学课件:童年(六下)
- 幼升小语文拼音测试卷
- 承建工程合作意向书2024年标准版
- 临床护理应急演练脚本
评论
0/150
提交评论