搜索
bottom↓
回复: 10

红外遥控智能小车(可用C#编程控制)

[复制链接]

出0入0汤圆

发表于 2010-10-10 14:25:12 | 显示全部楼层 |阅读模式

红外遥控小车 (原文件名:0_12856853453Y7L.jpg)
目前想用红外进行的遥控控制,过后考虑用Zigbee、蓝牙等无线通信两路试试
我们把小车分5种状态:前进、后退、左转、右转、停止

1、 前进代码

  static void MoveForward()

  {

  Lc.Write(true);

  pwm.Start(PWM.Channels.CH1, 1, PWM.Mode.PWM1); //PA6   

  Rc.Write(true);

  pwm.Start(PWM.Channels.CH2, 1, PWM.Mode.PWM1); //PA7   

  }

2、 后退代码

static void MoveBack()
{
  Lc.Write(false);
  pwm.Start(PWM.Channels.CH1, 99, PWM.Mode.PWM1); //PA6   
  Rc.Write(false);
  pwm.Start(PWM.Channels.CH2, 99, PWM.Mode.PWM1); //PA7   
}   




  3、 左转代码


  static void MoveLeft()

  {

  Lc.Write(false);

  pwm.Start(PWM.Channels.CH1, 99, PWM.Mode.PWM1); //PA6   

  Rc.Write(true);

  pwm.Start(PWM.Channels.CH2, 1, PWM.Mode.PWM1); //PA7   

  }


  左转代码有两种实现方法,一种是左轮静止,右轮正转,另一种是左轮倒转,右轮正传,这种转圈的速度更快,当然也可以让两轮都正传,左轮转的慢,右轮转的快,也可以进行左转弯。

4、 右转代码

  static void MoveRight()

  {

  Lc.Write(true);

  pwm.Start(PWM.Channels.CH1, 1, PWM.Mode.PWM1); //PA6   

  Rc.Write(false);

  pwm.Start(PWM.Channels.CH2, 99, PWM.Mode.PWM1); //PA7   

  }

  右转处理代码和左转恰好相反。

5、 停止代码

  static void MoveStop()

  {

  Lc.Write(false);

  pwm.Start(PWM.Channels.CH1, 0, PWM.Mode.PWM1); //PA6   

  Rc.Write(false);

  pwm.Start(PWM.Channels.CH2, 0, PWM.Mode.PWM1); //PA7   

  pwm.Stop(PWM.Channels.CH1);

  pwm.Stop(PWM.Channels.CH2);

  }   

红外遥控器我们也没有必须识别全部的按钮编码,我们仅识别5个按键即可,前后左右和确认键。

  1、声明红外控制类,并绑定相关处理事件

IRController IR = new IRController(3, (int)GPIO_NAMES.PB12);

  IR.IREvent += new IRController.IREventHandler(IR_Click);

  2、红外事件处理函数

  static void IR_Click(byte[] buff, DateTime time)

  {

  IRData.Key key = IRData.GetKey(buff);//编码识别

  if (key != IRData.Key.None)

  {

  switch (key)

  {

  case IRData.Key.Forward:

  MoveForward();

  break;

  case IRData.Key.Left:

  MoveLeft();

  break;

  case IRData.Key.Right:

  MoveRight();

  break;

  case IRData.Key.Back:

  MoveBack();

  break;

  case IRData.Key.Stop:

  MoveStop();

  break;

  }   

  }

  }

相关博文:
(1)红外遥控器编码识别 http://blog.csdn.net/yefanqiu/archive/2010/09/25/5906170.aspx
(2)用PWM驱动智能小车 http://blog.csdn.net/yefanqiu/archive/2010/09/05/5865279.aspx
(3)红外遥控智能小车 http://blog.csdn.net/yefanqiu/archive/2010/09/28/5912938.aspx

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

 楼主| 发表于 2010-10-10 14:45:26 | 显示全部楼层
遥控视频:http://video.sina.com.cn/v/b/38689146-1804832611.html

出0入0汤圆

发表于 2011-8-15 10:21:00 | 显示全部楼层
标记看看,有兴趣

出0入0汤圆

发表于 2011-9-27 23:07:13 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-11-1 11:43:54 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-11-1 12:00:11 | 显示全部楼层
MARK

出0入0汤圆

发表于 2011-11-29 12:06:18 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-12-5 00:27:02 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-12-5 13:32:05 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-12-5 13:33:41 | 显示全部楼层
mark

出0入0汤圆

发表于 2012-5-7 23:44:21 | 显示全部楼层
mark                                 
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-27 00:08

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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