遥控多个步进电机转动惯量计算,不同的按钮各个电机转动不同圈数,怎么弄,求大神指导,

求大神指导怎么控制两个步进电机同时转同时停_百度知道
求大神指导怎么控制两个步进电机同时转同时停
新手小白用的IDE自带的步进电机库 所以程序很简单
求问大神加什么能让他们同时转,现在这样是一个转另一个停。
* 使用arduino IDE自带的Stepper.h库文件
#include &Stepper.h&
// 这里设置步进电机旋转一圈是多少步
#define STEPS 400
我有更好的答案
我能想到最简单的方法是相串联
同求,请问你把这个问题解决了吗?
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。下载费用:20 元 &
基于红外遥控的步进电机智能控制电路设计方案 1基于红外遥控的步进电机智能控制电路设计方案第 一 章 概 述步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。根据步进电机驱动方式,我们想到了用单片机输出频率,但是单片机输出电压不够,需要升压,于是在单片机的外围电路上加上高速光耦电路在去驱动步进电机,本设计最大的优点在于可以远程遥控,步进电机的转动的频率。本课题最大的意义,是突出机电一体化(电子技术)专业的精华,弱电控制强电,强弱相结合,智能控制。在确定设计方向后,我们这个设计小组就讨论在分步分模块设计电路,然后整体结合。还是一步就把整个电路做出来。在解教授的指导下,我们明白设计需要严谨,电路不能一步成功,而是一步一个脚印,步进式的设计电路,分模块做电路和写程序。于是我们设计和调试都是分部进行的,每个成员做一个擅长的模块,然后再整体结合,虽然在结合过程中,有许多困难,但是在解教授的指导下,一一攻破。最后设计完成液晶时间显示,红外线发射,红外线接收,输出频率。使步进电机智能控制正常运行。第二章 系统硬件设计2.1 红外线发射部分总电路红外线发射部分总电路如图 2.1 所示。2图 2.1电路采用了 AT89S52 低功耗单片机,红外线发射二极管,DS1302 时钟芯片,LCD1602 液晶显示屏,矩阵按键。2.2 微机系统电路:AT89C52 是一个低电压,高性能 CMOS 8 位单片机,片内含 8k bytes 的可反复擦写的 Flash 只读程序存储器和 256 bytes 的随机存取数据存储器(RAM) ,器件采用 ATMEL 公司的高密度、非易失性存储技术生产,兼容标准 MCS-51 指令系统,片内置通用 8 位中央处理器和 Flash 存储单元,AT89C52 单片机在电子行业中有着广泛的应用。AT89C52 采用工业标准的 C51 内核,在内部功能及管脚排布上与通用的8xc52 相同。主要管脚有:XTAL1(19 脚)和 XTAL2(18 脚)为振荡器输入输出端口,外接 12MHz 晶振。RST/Vpd(9 脚)为复位输入端口,外接电阻电容组成的复位电路。VCC(40 脚)和 VSS(20 脚)为供电端口,分别接+5V 电源的正负端。P0~P3 为可编程通用 I/O 脚,其功能用途由软件定义。AT89C52 引脚图如图 2.2 所示。3图 2.22.3 LCD1602 液晶显示屏电路:显示使用了 1602 液晶屏显示,液晶显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。 LCM1602A 采用标准的 16 脚接口,其中 VSS 为地电源,VDD 接 5V 正电源,V0 为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,为使显示达到最佳效果,实训电路在V0 与 VCC 之间串接一 10K 的电位器进行对比度调节。VSS 与 BLK 接三极管NPN,三极管 NPN 做开关,控制液晶屏的开关,用于省电模式。RS 为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当 RS 和 RW 共同为低电平时可以写入指令或者显示地址,当 RS 为低电平 RW 为高电平时可以读忙信号,当 RS 为高电平 RW 为低电平时可以写入数据。E 端为使能端,当 E 端由高电平跳变成低电平时,液晶模块执行命令。D0~D7 为 8 位双向数据线。LCD1602 引脚图如图 2.3.1 所示。图 2.3.14LCD1602 与单片机相接图如图 2.3.2 所示。图 2.3.22.4 DS1302 时钟芯片电路时间计算使用了DS1302时钟芯片,DS1302 包括时钟/日历寄存器和31字节(8位)的数据暂存寄存器,数据通信仅通过一条串行输入输出口。实时时钟/日历提供包括秒、分、时、日期、月份和年份信息。闰年可自行调整,可选择12 小时制和24 小时制,可以设置AM、PM。只通过三根线进行数据的控制和传递:RST,I/O,SCLK。通过备用电源可以让芯片在小于1MW 的功率下运作。主要工作原理 :移位寄存器,控制逻辑,晶振,时钟和 RAM。在进行任何数据传输时,RST 必须被制高电平(注意虽然将它置为高电平,内部时钟还是在晶振作用下走时的,此时,允许外部读写数据) ,在每个 SCLK 上升沿时数据被输入,下降沿时数据被输出,一次只能读写一位,适度还是写需要通过串行输入控制指令来实现(也是一个字节) ,通过 8 个脉冲便可读取一个字节从而实现串行输入与输出。最初通过 8 个时钟周期载入控制字节到移位寄存器。如果控制指令选择的是单字节模式,连续的 8 个时钟脉冲可以进行 8 位数据的写和 8 位数据的读操作,SCLK 时钟的上升沿时,数据被写入 DS1302,SCLK 脉冲的下降沿读出 DS1302 的数据。8 个脉冲便可读写一个字节。在突发模式,通过连续的脉冲一次性读写完 7 个字节的时钟/日历寄存器(注意时钟/日历寄存器要读写完) ,也可以一次性读写 8~328 位 RAM 数据(可按实际情况读写一定数量的位,不必全部读写,两者的区别)DS1302引脚图如图2.4.1所示:5图2.4.1DS1302与单片机电路图如图2.4.2所示:图 2.4.22.5 矩阵按键电路:键盘使用了4乘4矩阵按键.扫描原理:首先确定是哪一行按下键,在确定哪一个键那下。(1) 置P1口为高电平, 扫描第一行,拉底P1.0电位,如果第一行无键按6下,就拉高P1.0电位,拉底P1.1电位,开始扫描第二行。如果还是没键按下,按以上顺序,扫描第三行和第四行,直到检测到按键为止。(2) 如果检测第一行有按键按下,就开始检测列的按键,因为矩阵对应的编码,所以检测出P1口的值与编码对照,找出对应的按键。依此类推,就可以检测第二行,第三行,第四行,列位的键。键盘与单片机电路图如图2.5所示。图 2.52.6 红外线发射电路:红外线发射采用了红外线发射管。红 外 线 发 射 管 也 称 红 外 线 发 射 二 极管 , 属 于 二 极 管 类 。 它 是 可 以 将 电 能 直 接 转 换 成 近 红 外 光 ( 不 可 见 光 )并 能 辐 射 出 去 的 发 光 器 件 , 主 要 应 用 于 各 种 光 电 开 关 及 遥 控 发 射 电 路中 。 红 外 线 发 射 管 的 结 构 、 原 理 与 普 通 发 光 二 极 管 相 近 , 只 是 使 用 的 半导 体 材 料 不 同 。 红 外 发 光 二 极 管 通 常 使 用 砷 化 镓 ( GaAs) 、 砷 铝 化 镓( GaAlAs) 等 材 料 , 采 用 全 透 明 或 浅 蓝 色 、 黑 色 的 树 脂 封 装 。工 作 原 理 : 用 单 片 机 控 制 红 外 线 发 射 管 , 设 定 遥 控 码 的 脉 冲 个 数 ,在 调 制 成 40kHz 方 波 由 红 外 线 发 射 管 发 射 出 去 。红 外 线 发 射 管 图 如 图 2.6.1 所 示 :图 2.6.17红 外 线 发 射 管 与 单 片 机 图 如 图 2.6.2 所 示 :图 2.6.22.7 红外线接受部分红外线接受总电路图如图 2.7 所示:图 2.7电路采用 AT89S52 低功耗单片机,红外线接收头,光耦电路,步进电机驱动电路。82.8 红 外 线 接 收 电 路 :红 外 线 接 收 头 (又 称 红 外 线 接 收 模 组 ,IRM)是 集 成 红 外 线 接 收 PD 二 极 管 、放 大 、 滤 波 和 比 较 器 输 出 等 IC 模 块 。 红 外 线 接 收 头 分 类 通 常 可 以 按 频 率 分为 36,37.9,40,56.7Khz 可 按 不 同 需 求 选 择 使 用 不 同 频 点 .红 外 接 收 头 , 广泛 应 用 在 家 用 电 视 TV,DVD 们 不 再 制 作 接 收 放 大 电 路 , 这 样 红 外 接 收 头 简 化了 电 路 。常 用 的 一 种 红 外 接 收 头 的 外 形 , 均 有 三 只 引 脚 , 即 电 源 正 VDD、 电 源 负(GND)和 数 据 输 出 (Out)。 接 收 头 的 引 脚 排 列 因 型 号 不 同 而 不 尽 相 同 , 因 接 收头 的 外 形 不 同 而 引 脚 的 区 别 。红 外 线 引 脚 图 如 图 2.8.1 所 示 :图 2.8.1红 外 线 接 收 头 与 单 片 机 电 路 图 如 图 2.10.2 所 示 :图 2.8.292.9 光 耦 电 路(1) 光耦的工作原理耦合器以光为媒介传输电信号。它对输入、输出电信号有良好的隔离作用,所以,它在各种电路中得到广泛的应用。目前它已成为种类最多、用途最广的光电器件之一。光耦合器一般由三部分组成:光的发射、光的接收及信号放大。输入的电信号驱动发光二极管(LED),使之发出一定波长的光,被光探测器接收而产生光电流,再经过进一步放大后输出。这就完成了电—光—电的转换,从而起到输入、输出、隔离的作用。由于光耦合器输入输出间互相隔离,电信号传输具有单向性等特点,因而具有良好的电绝缘能力和抗干扰能力。又由于光耦合器的输入端属于电流型工作的低阻元件,因而具有很强的共模抑制能力。所以,它在长线传输信息中作为终端隔离元件可以大大提高信噪比。在计算机数字通信及实时控制中作为信号隔离的接口器件,可以大大增加计算机工作的可靠性。(2) 光耦的优点光耦合器的主要优点是:信号单向传输,输入端与输出端完全实现了电气隔离,输出信号对输入端无影响,抗干扰能力强,工作稳定,无触点,使用寿命长,传输效率高。光耦合器是 70 年代发展起来产新型器件,现已广泛用于电气绝缘、电平转换、级间耦合、驱动电路、开关电路、斩波器、多谐振荡器、信号隔离、级间隔离 、脉冲放大电路、数字仪表、远距离信号传输、脉冲放大、固态继电器(SSR)、仪器仪表、通信设备及微机接口中。在单片开关电源中,利用线性光耦合器可构成光耦反馈电路,通过调节控制端电流来改变占空比,达到精密稳压目的。(3) 光耦的种类光电耦合器分为两种:一种为非线性光耦,另一种为线性光耦。 非线性光耦的电流传输特性曲线是非线性的,这类光耦适合于开关信号的传输,不适合于传输模拟量。 常用的 4N 系列光耦属于非线性光耦 。 线性光耦的电流传输特性曲线接近直线,并且小信号时性能较好,能以线性特性进行隔离控制。 常用的线性光耦是 PC817A—C 系列。 开关电源中常用的光耦是线性光耦。如果使用非线性光耦,有可能使振荡波形变坏,严重时出现寄生振荡,使数千赫的振荡频率被数十到数百赫的低频振荡依次为号调制。由此产生的后果是对彩电,彩显,VCD,DCD 等等,将在图像画面上产生干扰。同时电源带负载能力下降。 在彩电,显示器等开关电源维修中如果光耦损坏,一定要用线性光耦代换。常用的 4 脚线性光耦有 PC817A----C。PC111 TLP521 等常用的六脚线性光耦有:LP632 TLP532 PC614 PC714 PS2031 等。 常用的 4N25 4N26 4N35 4N36 是不适合用于开关电源中的,因为这 4 种光耦均属于非线性光耦。电路选用光耦为 pc817,pc817 是常用的线性光藕,在各种要求比较精密的功能电路中常常被当作耦合器件,具有上下级电路完全隔离的作用,相互不产生影响。pc817 内部框图如图 2.9.1 所示:10图 2.9.1当输入端加电信号时,发光器发出光线,照射在受光器上,受光器接受光线后导通,产生光电流从输出端输出,从而实现了“电-光-电”的转换。 普通光电耦合器只能传输数字信号(开关信号),不适合传输模拟信号。线性光电耦合器是一种新型的光电隔离器件,能够传输连续变化的模拟电压或电流信号,这样随着输入信号的强弱变化会产生相应的光信号,从而使光敏晶体管的导通程度也不同,输出的电压或电流也随之不同。PC817 光电耦合器不但可以起到反馈作用还可以起到隔离作用。如图 2.9.2所示。图 2.9.2 PCB17 集射极电压 Vce 与二极管正向电流 IF 关系11单片机与光耦电路图如图 2.9.3 所示:图 2.9.3光耦驱动部分如图 2.9.4 所示:图 2.10.4电路使用单片机低电平触发,R8 为限流电阻,当单片机输出为低电平时候,光耦 LED 启动12光耦输出部分如图 2.9.5 所示:图 2.9.5因为步进电机驱动器为 24V 脉冲型号驱动,所以光耦输出电路,脉冲上限为40KHz.2.10 步 进 电 机 电 路 :步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。使得在速度、位置等控制领域用步进电机来控制变的非常的简单。虽然步进电机已被广泛运用,但它不能像普通的直流电机,交流电机那样在常规下使用。它由双环形脉冲信号、功率驱动电路等组成系统次可以使用。步进电动机多用于数字式计算机的外部设备,以及打印机、绘图机和磁盘等装置。步进电机驱动简介:步进电机不能直接接到工频交流或直流电源上工作,而必须使用专用的步进电机驱动器,如图 2.11.1 所示,它由脉冲发生控制单元、功率驱动单元、保护单元等组成。图中点划线所包围的二个单元可以用微机控制来实现。驱动单元与 步进电动机 直接耦合,也可理解成步进电机微机控制器的功率接口,这里予以简单介绍。图 2.10.1 步进电机驱动控制器13Q2HB68CM 驱动器如图 2.10.2 所示:图 2.10.2Q2HB68MC(D)为等角度恒力矩细分型驱动器,驱动电压 DC24-80V,适配 6或 8 出线、电流在 6A 以下、外径 57-86mm 的各种型号的二相混合式步进电机。该产品广泛应用于雕刻机、激光打标机,激光内雕机等分辨率较高的小型数控设备上。特点:● 高性能、低价格● 采用独特的控制电路● 设有 12/8 档等角度恒力矩细分,最高 200 细分● 最高反应频率可达 200Kpps● 步进脉冲停止超过 100ms 时,线圈电流自动减半● 双极恒流斩波方式● 光电隔离信号输入/输出● 驱动电流从 0.5A/相到 6A/相连续可调● 单电源输入,电压范围:DC24-80V工作电流示设置图如图 2.10.3 所示。图 2.10.314输入信号时序图如图图 2.10.4 所示。图 2.10.4驱动器接线图如图 2.10.5 所示。图 2.10.515注意:1、千万不要将电源接反,输入电压不要超过 DC80V;2、输入控制信号电平为 5V,当高于 5V 时需接限流电阻;3、驱动器温度超过 70 度时驱动器停止工作,故障指示灯 O.H 亮,直到驱动器温度降到 50 度,驱动器自动恢复工作。出现过热保护请加装散热器;4、此型号驱动器由于采用特殊的控制电路,故必须使用 6 出线或 8 出线电机;5、过流(负载短路)故障指示灯 O.H 亮,请检查电机接线及其他短路故障,排除后需要重新上电恢复;6、欠压(电压小于 DC24V),故障指示灯 O.H 亮。Q2HB68CM 细分表如表 2.10.6 所示表 2.10.6细分数 1 2 4 5 8 10 20 25 40 50 100 200 200 200 200 200D0 ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFFD1 ON ON OFF OFF ON ON OFF OFF ON ON OFF OFF ON ON OFF OFFD2 ON ON ON ON OFF OFF OFF OFF ON ON ON ON OFF OFF OFF OFFD3 ON ON ON ON ON ON ON ON OFF OFF OFF OFF OFF OFF OFF OFFON,双脉冲:PU 为正向步进脉冲信号,DR 为反向步进脉冲信号D4OFF,单脉冲:PU 为步进脉冲信号,DR 为方向控制信号D5 自检测开关(OFF 时接收外部脉冲,ON 时驱动器内部发 7.5kHz 脉冲)细分数 1 2 4 8 16 32 64 128D0 ON OFF ON OFF ON OFF ON OFFD1 ON ON OFF OFF ON ON OFF OFFD2 ON ON ON ON OFF OFF OFF OFFD3 无效ON,双脉冲:PU 为正向步进脉冲信号,DR 为反向步进脉冲信号D4OFF,单脉冲:PU 为步进脉冲信号,DR 为方向控制信号 16D5 自检测开关(OFF 时接收外部脉冲,ON 时驱动器内部发 7.5kHz脉冲)引脚功能说明如表 2.10.7 所示表 2.10.7标记符号 功 能 注 释TM 工作指示灯 TM 信号有效时,绿色指示灯点亮O.H 故障指示灯 过热保护时红色发光管点亮Im电机线圈电流设定电位器调整电机相电流,逆时针减小,顺时针增大+ 输入信号光电隔离正端 接+5V 供电电源.+5V-+24V 均可驱动,高于+5V 需接限流电阻D4=OFF,PU为步进脉冲信号PUD4=ON,PU为正向步进脉冲信号下降沿有效,每当脉冲由高变低时电机走一步。输入电阻220Ω,要求:低电平 0-0.5V,高电平 4-5V,脉冲宽度>2.5μs+ 输入信号光电隔离正端 接+5V 供电电源.+5V-+24V 均可驱动,高于+5V 需接限流电阻D4=OFF,DR为方向控制信号DRD4=ON,DR为反向步进脉冲信号用于改变电机转向。输入电阻 220Ω,要求:低电平 0-0.5V,高电平 4-5V,脉冲宽度>2.5μs+ 输入信号光电隔离正端 接+5V 供电电源.+5V-+24V 均可驱动,高于+5V 需接限流电阻MF 电机释放信 号 有效(低电平)时关断电机线圈电流,驱动器停止工作, 电机处于自由状态17+ 原点输出光电隔离正端 电机线圈通电位于原点置为有效(B,-A 通电);光电隔离输出(高电平)TM原点输出信号光电隔离负端+端接输出信号限流电阻,TM 接输出地。最大驱动电流50mA,最高电压 50V。+V 电源正极-V 电源负极DC24-80VAC、BC 电机接线18第三章 软件系统设计3.1 LCD1602 液晶显示屏程序设计:LCD1602时序图如图3.1.1, 图3.1.2, 图3.1.3所示:图3.1.1图 3.1.219图 3.1.3液晶显示的程序框图如图3.1.4所示:图 3.1.4显示子程序:INIT_1602:MOV A, #01HLCALL WR_CMD ;清屏MOV A, #38H20LCALL WR_CMD ;8位数据,16X2,5X7点阵MOV A, #0CHLCALL WR_CMD ;开显示,关光标,不闪烁MOV A, #06HLCALL WR_CMD ;读写字符时地址+1,整屏不移动RETWR_CMD: MOV P0, ACLR RS ;写入控制命令CLR RWCLR ELCALL BUSYSETB ERETWR_DATA:MOV P0, ASETB RS ;写入数据CLR RWCLR ELCALL BUSY ;判断液晶模块是否忙?SETB ERETBUSY: MOV P0,#0FFH;查看LCD是否忙CLR RSSETB RWCLR ENOPSETB EJB P0.7,BUSY ;如果P0.7为高电平表示忙就循环等待RET3.2 DS1302 时钟芯片程序设计DS1302 时序图如图 3.2.1 所示:21图 3.2.1DS1302 寄存器如表 3.2.2 所示:表 3.2.2DS1302 程序流程图如图图 3.2.3 所示:图 3.2.3DS1302 显示子程序:WR1302: MOV DS1302_ADDR,#8EH MOV DS1302_DATA,#00H ;允许写 1302LCALL WRITE ;写子程序MOV DS1302_ADDR,#80HMOV DS1302_DATA,#80H ;1302 停止振荡LCALL WRITEMOV DS1302_ADDR,#8CH ;年写入 1302MOV DS1302_DATA,YEAR22LCALL WRITEMOV DS1302_ADDR,#8AH ;周写入 1302MOV DS1302_DATA,WEEKLCALL WRITEMOV DS1302_ADDR,#88H ;月写入 1302MOV DS1302_DATA,MONTHLCALL WRITEMOV DS1302_ADDR,#86H ;日写入 1302MOV DS1302_DATA,DAYLCALL WRITEMOV DS1302_ADDR,#84H ;时写入 1302MOV DS1302_DATA,HOURLCALL WRITEMOV DS1302_ADDR,#82H ;分写入 1302MOV DS1302_DATA,MINLCALL WRITEMOV DS1302_ADDR,#80H ;秒写入 1302MOV DS1302_DATA,SECLCALL WRITERETWRITE: CLR T_CLKNOPSETB T_RSTNOPMOV A,DS1302_ADDRMOV R4,#8WRITE1:RRC A NOPNOPCLR T_CLKNOPNOPNOPMOV T_IO,CNOPNOPNOPSETB T_CLKNOPNOPDJNZ R4, WRITE1CLR T_CLKNOPMOV A, DS1302_DATA23MOV R4,#8WRITE2: RRC ANOP CLR T_CLKNOPNOPMOV T_IO,CNOP NOPNOPSETB T_CLKNOPNOPDJNZ R4,WRITE2CLR T_RSTRETK_STR:MOV DS1302_ADDR,#80H ;开始振荡MOV DS1302_DATA,SECLCALL WRITEMOV DS1302_ADDR,#8EH ;禁止写入 1302MOV DS1302_DATA,#80HLCALL WRITESETB F0AJMP RTRD1302:MOV DS1302_ADDR,#8DH ;年读出LCALL READ ;读子程序MOV YEAR,DS1302_DATAMOV DS1302_ADDR,#8BH ;周读出 LCALL READMOV WEEK,DS1302_DATAMOV DS1302_ADDR,#89H ;月读出 LCALL READMOV MONTH,DS1302_DATAMOV DS1302_ADDR,#87H ;日读出LCALL READMOV DAY,DS1302_DATAMOV DS1302_ADDR,#85H ;时读出LCALL READMOV HOUR,DS1302_DATAMOV DS1302_ADDR,#83H ;分读出LCALL READMOV MIN,DS1302_DATAMOV DS1302_ADDR,#81H ;秒读出24LCALL READMOV SEC,DS1302_DATARETREAD: CLR T_CLKNOPNOPSETB T_RSTNOPMOV A,DS1302_ADDRMOV R4,#8READ1: RRC AMOV T_IO,CNOPNOPNOPSETB T_CLKNOPNOPNOPCLR T_CLKNOPNOPDJNZ R4,READ1MOV R4,#8READ2: CLR T_CLKNOPNOPNOPMOV C,T_IONOPNOPNOPNOPNOPRRC ANOPNOPNOPNOPSETB T_CLKNOP25DJNZ R4,READ2MOV DS1302_DATA,ACLR T_RSTRET3.3 矩阵按键程序设计键盘是由若干独立的键组成。键盘的形式有以下两种:独立式键盘和编码式键盘。为了节省资源,所以使用了编码式键盘(4 乘 4 矩阵按键) 。键的按下与释放是通过机械触点的闭合与断开来实现的,因机械触点的弹性作用,在闭合与断开的瞬间均有一个抖动过程 。抖动时序图如图 3.3.1 所示:图 3.3.1 这个项目采用了,软件去抖动的方法,用了 10ms 延时,去抖动。4 乘 4 矩阵按键程序工作流程图如图图 3.3.2 所示:26图 3.3.2键盘子程序:KEY: MOV P1,#0FFHCLR P1.0 MOV A,P1 ANL A,#0F0H CJNE A,#0F0H,KEY1 SETB P1.0 CLR P1.1 MOV A,P1 27ANL A,#0F0H CJNE A,#0F0H,KEY1 SETB P1.1 CLR P1.2 MOV A,P1 ANL A,#0F0H CJNE A,#0F0H,KEY1 SETB P1.2 CLR P1.3 MOV A,P1 ANL A,#0F0H CJNE A,#0F0H,KEY1 SETB P1.3 RET KEY1: LCALL D10MS MOV A,P1 ANL A,#0F0H CJNE A,#0F0H,KEY2 KEYOUT: RET KEY2: MOV A,P1 MOV R7,A KEY3: LCALL D10MS MOV A,P1 ANL A,#0F0H CJNE A,#0F0H,KEY3 MOV R4,#00H MOV DPTR,#KEYTAB X1: MOV A,R4 MOVC A,@A+DPTR XRL A,R7 JZ X2 INC R4 CJNE R4,#10H,X1 RET ;X2: MOV A,R4 MOV B,A RL A ADD A,B MOV DPTR,#KEYFUNTABJMP @A+DPTR KEYFUNTAB: LJMP KEYFUN00 LJMP H_ADD LJMP M_ADD28LJMP S_ADDLJMP W_ADDLJMP K_STRLJMP TIM1LJMP RTLJMP RTLJMP RTLJMP RTLJMP RTLJMP RTLJMP RTLJMP RTLJMP RT RT: RETKEYTAB: DB 0EEH,0DEH,0BEH,7EH,0EDH,0DDH,0BDH,7DHDB 0EBH,0DBH,0BBH,7BH,0E7H,0D7H,0B7H,77H,0FFH,0FFH3.4 红外线发射程序设计遥控码的编码格式:遥控器采用脉冲个数编码,不同的脉冲个数代表不同的码,最小为 2 个脉冲,最大为 17 个脉冲。为了使接受可靠,第一位码宽为 3ms,其余为 1ms,遥控码数据帧间大于 10ms.如图 3.4.1 所示:图 3.4.129红外线发射程序流程图如图 3.4.2 所示:图 3.4.2红外线发射子程序:REMOTE: MOV R1,A ;装入发射脉冲个数LJMP OUT3 ;转第一个码发射处理OUT: MOV R0,#55H ;1MS 宽低电平发射控制数据OUT1: SETB ET1 ;开 T1 中断SETB TR1 ;开启定时器 T1NOP ;延时NOPNOPNOPNOPDJNZ R0,OUT1 ;时间不到转 OUT1 再循环MOV R0,#32H ;1MS 高电平间隙控制数据OUT2: CLR TR1 ;关定时器 T1CLR ET1 ;关 T1 中断CLR P3.5 ;关脉冲输出NOP ;空操作延时NOPNOP30NOPNOPNOPNOPNOPNOPNOPNOPDJNZ R0,OUT2 ;时间不到转 OUT2 再循环DJNZ R1,OUT ;脉冲未发完,转 OUT 再循环发射LCALL DL500MS ;RET ;OUT3: MOV R0,#0FFH ;装发谢 3MS 宽控制数据LJMP OUT1 ;转 OUT1;513 微秒延时程序DELAY: MOV R2,#0FFHDELAY1: DJNZ R2,DELAY1RET;10 毫秒延时程序DL10MS: MOV R3,#14HDL10MS1: LCALL DELAYDJNZ R3,DL10MS1RET;500 毫秒延时程序DL500MS: MOV R4,#32HDL500MS1: LCALL DL10MSDJNZ R4,DL500MS1RET313.5 红外线发射总程序流程图如图 3.5 所示:图 3.5红外线发射总程序附录一3.6 红 外 线 接 收 程 序红 外 接 收 头 的 主 要 参 数 如 下 : 工 作 电 压 : 2.7~ 4.5V 工 作 电 流 : 1.7~ 2.7mA 接 收 频 率 : 37.9kHz 峰 值 波 长 : 940nm 静 态 输 出 : 高 电 平 输 出 低 电 平 : ≤ 0.4V 输 出 高 电 平 : 接 近 工 作 电 压 。32光 电 参 数 : 光 电 参 数 (T=25℃ Vcc=5v f0=38KHZ)如 表 3.6.1, 表 3.6.2 所示 。表 3.6.1权 限 参 数 :表 3.6.2数 据 帧 的 接 收 处 理当 红 外 线 接 收 器 输 出 脉 冲 帧 数 据 时 , 第 一 位 码 的 低 电 平 将 启 动 中 断 程 序 ,实 时 接 收 数 据 帧 。 在 数 据 帧 接 收 时 , 将 对 第 一 位 ( 起 始 位 ) 码 的 码 宽 进 行 验证 。 若 第 一 位 低 电 平 码 的 脉 宽 小 于 2ms, 将 作 为 错 误 码 处 理 。 当 间 隔 位 的 高电 平 脉 宽 大 于 3ms 时 , 结 束 接 收 , 然 后 根 据 累 加 器 A 中 的 脉 冲 个 数 , 执 行相 应 输 出 口 的 操 作 。 图 为 红 外 线 接 收 器 输 出 的 一 帧 遥 控 数 码 波 形 图 如 图3.6.3 所 示 。33图 3.6.3红 外 线 接 收 器 输 出 的 一 帧 遥 控 数 码 波 形 图 。程 序 流 程 图 如 图 3.6.4 所 示 :图 3.6.4接 收 子 程 序 :BZ EQU 42HPV EQU 41HBZ1 EQU 40HORG 0000H ;程 序 开 始 地 址LJMP START ;跳 至 START 执 行ORG 0003H ;外 中 断 0 中 断 入 口LJMP INTEX0 ;跳 至 INTEX0 执 行 中 断 服 务 程 序ORG 000BH ;定 时 器 T0 中 断 入 口 地 址LJMP MP1 ;中 断 返 回 ( 不 开 中 断 )34ORG 0013H ;外 中 断 1 中 断 入 口 地 址RETI ;中 断 返 回 ( 不 开 中 断 )ORG 001BH ;定 时 器 T1 中 断 入 口 地 址RETI ;中 断 返 回 ( 不 开 中 断 )ORG 0023H ;串 行 口 中 断 入 口 地 址RETI ;中 断 返 回 ( 不 开 中 断 )ORG 002BH ;定 时 器 T2 中 断 入 口 地 址RETI ;中 断 返 回 ( 不 开 中 断 )CLEARMEMIO: CLRA ;DEC A ;A 为 #0FFHMOV P0,A ;P1-P3 口 置 1MOV P1,A ;MOV P2,A ;MOV P3,ACLR BZCLR BZ1 ;CLEARMEM: MOV IE,#00H ;关 所 有 中 断SETB EX0 ;开 外 中 断SETB EA ;总 中 断 允 许RET ;子 程 序 返 回START: LCALL CLEARMEMIO ;上 电 初 始 化MAIN: JB BZ,SHUCHUJB BZ1,STARTLJMP MAIN SHUCHU: CLR BZSETB P1.3MOV TMOD,#02HMOV TL0,PVMOV TH0,PVSETB ET0SETB TR0MP2: JB BZ,SHUCHUJB BZ1,XXX1LJMP MP2MP1: CPL P1.3RETI XXX1: CLR ET0CLR TR035LJMP START INTEX0: CLR EX0
文档加载中……请稍候!
下载文档到电脑,查找使用更方便
20 元 &&0人已下载
还剩页未读,继续阅读
<a href="UserManage/CopyrightAppeal.aspx?bid=1347732" title="版权申诉" class="fLeft works-manage-item works-manage-report" target="_blank"
关&键&词: 基于 红外 遥控 步进 电机 智能 控制电路 设计方案 设计方案 范文 模版 范本 免费 下载 毕业论文 毕业设计 论文
& 天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
本文标题:基于红外遥控的步进电机智能控制电路设计方案 链接地址:
当前资源信息
类型: 共享资源
格式: DOC
大小: 1.47MB
上传时间:
&& 广告或垃圾信息
&& 色情、淫秽、低俗信息
&& 反政府、反人类、反社会等反动信息
&& 散布赌博、暴力、凶杀、恐怖或者教唆犯罪等信息
&& 侮辱、诽谤等人身攻击信息
&& 散布谣言、扰乱社会秩序,破坏社会稳定等信息

我要回帖

更多关于 步进电机震动不转动 的文章

 

随机推荐