插手珍藏夹
 公司简介 || 产物列表 || 采办编制 || 汇款订单提交 || 论坛 || Universal Programmer || 淘宝网店 || 诚聘英才 || 单片机名目斥地


手把手教你用加强型51测验考试板完成无线遥控步进电机 《电子制造》2006年10月 站长原创,如需引用请说明出处

   上一期,咱们曾经把持加强型51测验考试板学会了红外线遥控的基来历根底理及节制方式,今朝来看,遥控次要分为红外线遥控和无线电遥控两种编制,红外线遥控的错误谬误在于发射部门相对于领受部门具有必然的标的目的性,而无线电遥控的编制没有标的目的性,能够又一次能够进行穿墙节制,在日常糊口生计及工业节制中,有着很是遍及的使用。这一期,咱们将把无线模块的道理及使用方式与以往所学的学问连系起来进行进修,经由无线遥控器来节制步进电机的动弹标的目的与动弹速度,当然,您也能够让无线遥控器来节制其它的设备,这就取决于您的法式代码。
先来看一下,咱们在本次测验考试中所用到的无线收发模块,200米四键遥控模块,常用于报警器设防、车库门遥控、摩托车、汽车的防盗报警等,遥控模块代价低廉,发射机手柄体积玲珑、外观出色,耗电尽可能省,工作不变靠得住,采用优良塑料外壳,带安全盖,防止误碰按键,天线拉出时长13厘米,遥控器只需20克。
    无线遥控领受板,领受模块有七根引脚,别离为VCC、D3、D2、D1、D0、VT、GND,此中VCC为5V供电端,GND为接地端,VT端为解码无效输出端,D3、D2、D1、D0为四位数据锁存输出端,有信号时能输出5V摆布的高电平,驱动电流约2mA,与发射器上的四为个按键逐个相对应,天线是一根长度为23厘米的软导线。无线发射器和领受模块如图1所示。
图1

    全新的无线领受板上是没有焊接任何连接线的,所以,咱们在使用前需要将引线用电铬铁焊上,如图2所示,以便咱们将其与加强型51测验考试板相连接,咱们在配送的引线是接插式的,所以焊完之后,间接插到测验考试板上即可,后面咱们曾经讲过,无线领受模块共有7个脚,那咱们该当如何与加强型51测验考试板相连接呢?您细心看一下测验考试板,会发觉测验考试板绿色锁紧座旁边已预留了两条40芯的插针,这便是加强型51测验考试板的扩展接口,您能够外接您所需要的测验考试电路,使得测验考试板的功能更强大,也充实暗示了它的矫捷性。两排40芯的插针,即51单片机的40个引脚,所以咱们只需将无线领受模块的各引线插在对应的引脚针上即可,如:领受板的VCC和GND端即与51单片机的“电源”和“地”端相连,领受板VT端为解码无效输出端,即按发射器上任何一个按键,它城市有脉动的信号输出,一般咱们把这个端口与LED发光管相连,用来作唆使灯使用,能够让用户晓得,遥控器按键能否被按下,至于D3、D2、D1、D0为遥控器四个通道的输出端,咱们将其与单片机的肆意P口相连都能够,考虑到加强型51测验考试板的特征,在P1口端接的是8个LED发光管,所以咱们将D3、D2、D1、D0及VT端别离与P1.0、P1.1、P1.2、P1.3、P1.4相连,多么连的方针是能够经由发光管直观地反映遥控器各按键的节制情况,同时也便于法式的调试,没有发光管的唆使,万一法式有误,就感受像盲人那样,摸不着思维了。
图2

    起首,咱们仿照依旧使用仿真器来调试法式,先将无线领受板与加强型51测验考试板相连,同时把步进电机缆线插到测验考试板上,连上咱们的51微型仿真器,接通外接电源,如图3所示。
图3

    留意:步进电机矣忠淮尾有4条线,但咱们与测验考试板相连的白色插口上共有6个孔,在插口的最右边空出了一个位置,用于标识表记标帜插口标的目的。硬件连接完成后,若是您的算计机上又一次没有安装仿真及编程软件Keil,那得进行软件的安装过程, KEIL软件位于配套光盘“Keil C51”目录下,它是咱们进行仿真及编程的测验考试斥地环境。安装完成后,在KEIL中新建一个“工程”,再新建一个C法式文件,在文件中输入以下法式代码,咱们的无线发射器上共有四个按键,此刻咱们将其功能定义为:第1、2个键别离遥控步进电机快速顺时针动弹和快速逆时针动弹,第3、4个键别离遥控步进电机慢速顺时针动弹和慢速逆时针动弹,该功能看似简单,但在良多场所都有多么的节制需求,很是合用。(KEIL具体的根底使用方式及措施能够拜见笔者于2005年4月写的“单片机快速入门”一文):
#include <reg51.h> //标号:1

sbit D3 = P1^0; //标号:2
sbit D2 = P1^1; //标号:3
sbit D1 = P1^2; //标号:4
sbit D0 = P1^3; //标号:5
sbit VT = P1^4; //标号:6

void deasil(int delay) //标号:7
{
int i; //标号:8
P0=0xfe; //标号:9
for(i=0;i<delay;i++); //标号:10
P0=0xfd; //标号:11
for(i=0;i<delay;i++); //标号:12
P0=0xfb; //标号:13
for(i=0;i<delay;i++); //标号:14
P0=0xf7; //标号:15
for(i=0;i<delay;i++); //标号:16
}

void widdershins(int delay) //标号:17
{
int i; //标号:18
P0=0xf7; //标号:19
for(i=0;i<delay;i++); //标号:20
P0=0xfb; //标号:21
for(i=0;i<delay;i++); //标号:22
P0=0xfd; //标号:23
for(i=0;i<delay;i++); //标号:24
P0=0xfe; //标号:25
for(i=0;i<delay;i++); //标号:26
}

main() //标号:27
{
while(1) //标号:28
{
if (D3==1) deasil(2000); //标号:29
if (D2==1) widdershins(2000); //标号:30
if (D1==1) deasil(5000); //标号:31
if (D0==1) widdershins(5000); //标号:32
}
}

    编好法式,施行编译操作生成HEX文件后,使用仿真器进行调试,这时您按无线发射器上四个键,步进电机就会按咱们事先所设定的功能按照按键来施行了。那它现实是若何工作的,无线模块又是若何与步进电机相连系来进行节制的呢?下面咱们就一路来阐发一下法式代码。1号语句:法式中包含REG51.h文件的方针是为了要使用P0这个符号,即通知C编译器,法式中所写的P0是指51单片机的P0端口而不是其它变量。2—6号语句:在C言语里,若是间接写P1.0,C编译器并不能识别,并且P1.0也不是一个合法的C言语变量名,所以得给它另起一个名字,这里起的名为D3,可是D3是不是便是P1.0呢?你这么认为,C编译器可不这么认为,所以必需给它们建立联系,这里使用了Keil C的环节字sbit来定义,同理,咱们将P1.0、P1.1、P1.2、P1.3、P1.4别离定义为D3、D2、D1、D0、VT,但VT咱们在法式中没有使用到,也能够不定义,在此为了便当当前法式的扩充才定义的,咱们后面也曾讲过D3——D0、VT也能够插在单片机的其它P口上,只需咱们在法式中的定义语句中设对应就能够了。7号语句:定义步进电机顺时针动弹的函数,参数delay用来设定其传动速度。8号语句:定义整型变量i,9——16号语句:步进电机顺时针动弹的节制时序驱动。17号语句:定义步进电机逆时针动弹的函数,参数delay用来设定其传动速度。8号语句:定义整型变量i,18——26号语句:步进电机逆时针动弹的节制时序驱动。语句27:main称为“主函数”。每一个C言语法式有且只需一个主函数,函数后面必然有一对大括号“{}”,在大括号里面书写其它法式。28号语句:该语句是死轮回语句,即单片机上电后,就不断地去施行while轮回体内的语句,即不断地去判断遥控发射器按下的是哪个键,然后再做响应的节制。29——32号语句:咱们的核心节制语句就在这四句中,29号语句:判断D3位若是等于1,后面咱们曾经用sbit语句定义过D3为P1.0口,那么29号语句现实意义能够多么理解:即判断P1.0口上若是为高电平,那么施行deasil(2000)这个函数。deasil函数的参数为涉及步进电机的转速,咱们取为2000,这是相对后面的5000来设的,假定它为慢速度,当然您也能够按照本人的环境来设定其它的值,那它就会暗示出不一样的动弹速度。理解了29号语句,相信你看后面的30——32号语句,就登时能够想到它们的功能了吧。30号语句:若是D2端为高电平,步进电机施行逆时针慢速动弹。31号语句:若是D1端为高电平,步进电机施行顺时针快速动弹。31号语句:若是D0端为高电平,步进电机施行逆时针快速动弹。
经由仿真施行,法式精确无误后,这时咱们使用编程器将HEX文件烧入AT89S51单片机内,再把烧好的芯片插到测验考试板上,如图4所示,此刻分开了仿真器,这是一个真正的作品了,仿真器是咱们在调试法式时提高效率所使用的,比如咱们的法式有50行,假设代表了5个驱动硬件的动作,这时候若是有仿真器的话,咱们能够让这5个动作一个个地施行,同时能够大概察看到在施行这5个动作的过程中,单片机内部的各单元情况是怎样样的,也便是能够详尽的阐发一下整个法式在硬件中的具体工作过程。多么咱们就能够领会法式中是不是有问题具有,所以叫做仿真。

图4

    较后,要提示大师一下,在做无线遥控测验考试需要留意的是:有伴侣可能会问,若是我有两个遥控器和两个领受板,会不会发生互相之间的误触发影响,比如,我按了一个无线发射器的键导致两个领受板同时触发了,若何去处理这个问题呢?其实,在每个发射和领受装上,厂家一般都预留地址编码区,采用焊锡搭焊的编制来选择:悬空、接正电源、接地三种情况,出厂是一般都悬空,便于客户本人编削地址码,如图所示,所谓的设置地址码便是用焊锡将上下相邻的焊盘用焊锡桥搭短路起来。只需发射和领受板的地址码分歧时,系统才能一般工作。


上一页(手把手教你用加强型51测验考试板的液晶显示功能) 下一页(未完待续)

--->>>前去首页



专业生产 单片机 斥地板 进修板 电子制造散件 电子制造套件 GSM模块 GPS模块 GPRS模块 GPRS MODEM DTU 短信猫 产物
以上部门内容转载于网上,如有涉及到版权问题,请即通知本人删除 浙ICP备11001927号 MSN:hificat@hotmail.com
联系地址:浙江省杭州市西湖科技园西园七路3号4层 邮政编码:310011 Email:hificat@163.com
德律总机:0571-87615070   产物征询:转分机1   技术支撑:转分机2   传真:转分机3   手机:13185018567
发卖QQ:1198450005 发卖征询 技术QQ熊工:1275636157 技术征询 技术QQ徐工:420951892 技术征询
杭州澳门新濠天地电子有限公司 版权所有 COPYRIGHT2003——2011 HANGZHOU KinCony ELECTRONICS CO.,LTD All rights reserved