Arduino开发版学习计划--小车的行走
小车的前进后退,左右转弯
代码如下
void motor(char pin,char pwmpin,char state,int val)
{
pinMode(pin, OUTPUT); if(state==)
{
analogWrite(pwmpin,val);
digitalWrite(pin,);
}
else if(state==)
{
analogWrite(pwmpin,val);
digitalWrite(pin,);
}
else if(state==)
{
analogWrite(pwmpin,);
digitalWrite(pin,);
}
} void runfoward(int i) //前进
{
motor(,,,i);
motor(,,,i);
}
void runback(int j) //后退
{
motor(,,,j);
motor(,,,j);
}
void turnL(int m) //左转
{
motor(,,,m);
motor(,,,m);
}
void turnR(int n) //右转
{
motor(,,,n);
motor(,,,n);
}
void stop() //停止
{
motor(,,,);
motor(,,,);
}
void setup()
{
Serial.begin();
}
void loop()
{
char num1,num2,num3,num4,num5,num6,num7;
num1=digitalRead();
num2=digitalRead();
num3=digitalRead();
num4=digitalRead();
num5=digitalRead();
num6=digitalRead();
num7=digitalRead();
// 用num1-7保存从左到右7个传感器的状态
if(num1==) //第一个传感器检测到黑线用200的速度左转
{
turnL();
delayMicroseconds();
}
else if(num2==) //第二个传感器检测到黑线用150的速度左转
{
turnL();
delayMicroseconds();
}
else if(num3==) //第三个传感器检测到黑线用150的速度左转
{
turnL();
delayMicroseconds();
} else if(num5==) //第五个传感器检测到黑线用150的速度右转
{
turnR();
delayMicroseconds();
}
else if(num6==) //第六个传感器检测到黑线用200的速度右转
{
turnR();
delayMicroseconds();
}
else if(num7==) //第七个传感器检测到黑线用250的速度右转
{
turnR();
delayMicroseconds();
}
else //其他状态小车直走
{
runfoward();
delay();
}
}
3398.27-2754.14=644.13
Arduino开发版学习计划--小车的行走的更多相关文章
- Arduino开发版学习计划
制定学习开发版的计划,今天先大体过一下整个教程. http://www.bilibili.com/video/av6105302/ 视频中说可以自己制造亦可卫星放上天. Arduino使用C/C++编 ...
- Arduino开发版学习计划--蓝牙控制小车行走
蓝牙模块一共6个引脚,我们一般只需要接4个线就可以了,分别是VCC.GND.TXD.RXD这四个引脚,我们分别接到arduino板子上,VCC接3.3V,GND接板子的GND,蓝牙TXD接板子的RXD ...
- Arduino开发版学习计划--直流电机
代码来源:http://www.cnblogs.com/starsnow/p/4579547.html // --------------------------------------------- ...
- Arduino开发版学习计划--蜂鸣器
文章内容参考:http://www.cnblogs.com/xiaowuyi/p/3343757.html 遇到不懂的方法,可以查看Arduino自带的API 就直接点击arduino的IDE里面菜单 ...
- 基于Arduino开发的智能蓝牙小车
基于Arduino的智能蓝牙小车 材料准备: Arduino开发板一块.四驱小车底板及相关配件一套.L298N驱动模块一个.HC-05/06蓝牙模块一块,九伏电源一块(用于主板供电).12V锂电池一块 ...
- 酒旗少年狂暖风,至0基本的前端开发project教师们学习计划
酒旗风暖少年狂,为0基础前端开发project师做学习计划 夜幕降暂时.走到一张废弃已久的书桌前,打开台灯,看到书桌上已经布满灰尘,而桌上的那盆羸弱的文竹已经枝繁叶茂.我擦干净了桌面,坐了下来,把买回 ...
- Sql Server 2008开发版(Developer Edition)过期升级企业版(Enterprise Edition)失败后安装学习版(Express Edition)
最近一个多月,甚是悠哉,无事可做.上线的网站系统也没接到客户的反馈,反而觉得无聊之极了.上周五早上,一上QQ,就收到客户发来消息,管理平台无法登陆了.心里一惊,立马开始查找故障原因.翻看了系统日志,提 ...
- ESP8266开发之旅 基础篇② 如何安装ESP8266的Arduino开发环境
授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...
- Android开发该学习哪些东西?
开篇: 本人也是众多Android开发道路上行走的一员,听了不少大神的知乎live,自己也看了不少书,也和不少前辈交流过,所以在这里分享一下Android开发应该学习的书籍以及知识,当然,也包括一些方 ...
随机推荐
- 如何利用webmin在Linux主机中添加网站
Linux系统因其高效稳定而受到广大用户的推崇与青睐,然后其管理的复杂性也使很多用户望而却步,动弹不得.为了降低 Linux系统的管理难度,更有效方便的使用该系统,我司所有Linux主机或VPS系统均 ...
- IOS基于XMPP协议开发--XMPPFramewok框架(二):服务器连接
连接服务器前需准备事项: 1.搭建好XMPP服务器 2.设置服务器地址和端口 [_xmppStream setHostName:@"127.0.0.1"]; [_xmppStrea ...
- Atitit.软件控件and仪表盘(23)--多媒体子系统--视频输出切换控制cvbs av s-video Ypbpr pal ntsc
Atitit.软件控件and仪表盘(23)--多媒体子系统--视频输出切换控制cvbs av s-video Ypbpr pal ntsc 1. CVBS是AV接口 1 2. S-Video S端子 ...
- quick cocos2d-x 2.2.4 window环境调试
BabeLua简介 BabeLua是一款基于VS2012/2013(简称VS)的免费开源的Lua集成开发环境,在Lua编辑和调试方面,具有如下功能和特性: ●Lua语法高亮 ●语法检查 ●自动补全 ● ...
- 每日英语:Stalled Project Shows Why China's Economy Is Wobbling
CAOFEIDIAN, China $91 billion industrial project here, mired in debt and unfulfilled promise, sugge ...
- ssm开发系的统架构图
- HDOJ 4010 Query on The Trees LCT
LCT: 分割.合并子树,路径上全部点的点权添加一个值,查询路径上点权的最大值 Query on The Trees Time Limit: 10000/5000 MS (Java/Others) ...
- 删除Cookies
网上一堆删除Cookies的JS代码 但是都删不了,找了好久终于在MSDN的论坛找到一个方法 function ClearCookie(name) { ****; var expDate = new ...
- 面试常问小知识点之Integer
背景 今天在查看Sonar的时候发现小伙伴在某些场景下如下使用 很明显sonar已经报错了,但是线上应用目前是正常的 问题 事实上经常会有面试的小伙伴或者笔试的小伙伴问这个问题 Integer的一些小 ...
- mui区域滚动条
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...