Wifi小车之 – 51单片机无线小车篇

红外的数据是不连续的,所以试着用315M无线模块做遥控。在有了红外小车的基础上,无线就很简单了,循环判断按键是否按下就行了。我买的这个遥控套件好像有点问题,有一个按键没反应。。。

而且我这个套件还有另外一个问题,有时候突然没信号,要把天线对准它用力按,然后又有信号了。。。 囧

 

 

51单片机程序

控制的方法是,按住1键左转,按住3键右转,同时按住1,3键前进,按住2就后退

 

 

/*

电机控制板接P1

IN1 > P10

IN2 > P11

IN3 > P12

IN4 > P13

*/

 

/*预处理命令*/

#include    //包含单片机寄存器的头文件

#include //包含_nop_()函数定义的头文件

#define uchar unsigned char

#define uint unsigned int

#define motor P1

 

/* 函数申明 ———————————————–*/

void delay(uchar x);

 

/* 变量定义 ———————————————–*/

/*无线数据线接P2*/

sbit key1=P2^4;

sbit key2=P2^5;

sbit key3=P2^6;

sbit key4=P2^7;

 

/*

********************************************************************************

** 函数名称 : main(void)

** 函数功能 : 主函数

********************************************************************************

*/

main()

{

motor=0;

 

while(1){

if(key1==1 && key3==1){

motor=0xf5;

}else if(key1==1){

motor=0xfd;

}else if(key3==1){

motor=0xf7;

}else if(key2==1){

motor=0xfa;

}else{

motor=0;

}

//delay(200);

}

}

 

/*

********************************************************************************

** 函数名称 : delay(uchar x)

** 函数功能 : 延时函数

********************************************************************************

*/

void delay(uchar x)    //x*0.14MS

{

uchar i;

while(x–)

{

for(i=0;i<13;i++);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值