找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4592|回复: 6
打印 上一主题 下一主题
收起左侧

51单片机无线小车

[复制链接]
跳转到指定楼层
楼主
ID:73477 发表于 2015-2-10 20:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
       红外的数据是不连续的,所以试着用315M无线模块做遥控。在有了红外小车的基础上,无线就很简单了,循环判断按键是否按下就行了。我买的这个遥控套件好像有点问题,有一个按键没反应。。。而且我这个套件还有另外一个问题,有时候突然没信号,要把天线对准它用力按,然后又有信号了。。。 囧


/*
电机控制板接P1
IN1 > P10
IN2 > P11
IN3 > P12
IN4 > P13
*/

/*预处理命令*/
#include<reg52.h>    //包含单片机寄存器的头文件
#include<intrins.h> //包含_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++);
}
}



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:73964 发表于 2015-2-28 14:28 | 只看该作者
不错  值得学习
回复

使用道具 举报

板凳
ID:28571 发表于 2015-4-16 20:19 | 只看该作者
好东西,学习一下,谢谢!
回复

使用道具 举报

地板
ID:78387 发表于 2015-5-5 22:23 | 只看该作者
谢谢分享
回复

使用道具 举报

5#
ID:276445 发表于 2018-1-20 21:38 | 只看该作者
不错,学习下
回复

使用道具 举报

6#
ID:272625 发表于 2018-1-25 00:11 | 只看该作者
楼主说的问题是模块频率偏差造成的,我碰到过
回复

使用道具 举报

7#
ID:298454 发表于 2018-4-1 13:05 | 只看该作者
有没有仿真图啊,展示出来看一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表