|
上一期,我们已经利用增强型51实验板学会了红外线遥控的基本原理及控制方法,目前来看,遥控主要分为红外线遥控和无线电遥控两种方式,红外线遥控的缺点在于发射部分相对于接收部分具有一定的方向性,而无线电遥控的方式没有方向性,可以还可以进行穿墙控制,在日常生活及工业控制中,有着非常广泛的应用。这一期,我们将把无线模块的原理及使用方法与以往所学的知识结合起来进行学习,通过无线遥控器来控制步进电机的转动方向与转动速度,当然,您也可以让无线遥控器来控制其它的设备,这就取决于您的程序代码。 注意:步进电机一共有4条线,但我们与实验板相连的白色插口上共有6个孔,在插口的最左边空出了一个位置,用于标记插口方向。硬件连接完成后,如果您的计算机上还没有安装仿真及编程软件Keil,那得进行软件的安装过程, KEIL软件位于配套光盘“Keil C51”目录下,它是我们进行仿真及编程的实验开发环境。安装完成后,在KEIL中新建一个“工程”,再新建一个C程序文件,在文件中输入以下程序代码,我们的无线发射器上共有四个按键,现在我们将其功能定义为:第1、2个键分别遥控步进电机快速顺时针转动和快速逆时针转动,第3、4个键分别遥控步进电机慢速顺时针转动和慢速逆时针转动,该功能看似简单,但在很多场合都有这样的控制需求,非常实用。(KEIL具体的基本使用方法及步骤可以参见笔者于2005年4月写的“单片机快速入门”一文): sbit D3 = P1^0; //标号:2 void deasil(int delay) //标号:7 void widdershins(int delay) //标号:17 main() //标号:27 编好程序,执行编译操作生成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端为高电平,步进电机执行逆时针快速转动。
|
![]() |
|
以上部分内容转载于网上,如有涉及到版权问题,请即通知本人删除 ICP备05019516号
MSN:hificat@hotmail.com
联系地址:浙江省杭州市拱墅区普金家园11-3-702 邮政编码:310015 Email:hificat@163.com support@kincony.com 电话:0571-85956028 传真:0571-88230070 手机:13185018567 在线咨询 杭州晶控电子有限公司 版权所有 COPYRIGHT2003——2008 HANGZHOU KinCony ELECTRONICS CO.,LTD All rights reserved |