Ardunio使用教程——初始安装与小车运行

Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。由一个欧洲开发团队于2005年冬季开发。其成员包括Massimo Banzi、David Cuartielles、Tom Igoe、Gianluca Martino、David Mellis和Nicholas Zambetti。

工程实训完成小车使用的是Arduino UNO

首先是需要安装Arduino IDE,可以到官网下载:

英文版:https://www.arduino.cc/en/Main/Software

中文版:http://www.arduino.org.cn/software

安装好后,就是实现小车的运动。工程实训的小车是有4个轮子也就是有4个电机。

设计方案:

1.左边的电机共用一个PWM波,右边的电机共用一个PWM波。

2.4个电机各自都有一个独有的PWM波。

我采用的是第一种方案,一边一个PWM波。

PWM波介绍:

官方文档:https://www.arduino.cc/en/Tutorial/SecretsOfArduinoPWM

PWM波有三种写法。

1.利用函数analogWrite

int pin = 8; //0~13

void setup()
{
    pinMode(pin, OUTPUT);
}   

void loop()
{
    analogWrite(pin, 128);
    delay(500);
}

这种方式产生的方波周期大概是20ms左右(50Hz),不需要占用额外的cpu命令时间。(这里的周期是官方文档给出的,并不知道如何计算出来)

2.自己手动实现PWM波

int pin = 38;  //这个可以随意点

void setup()
{
    pinMode(pin, OUTPUT);
} 

void loop()
{
  digitalWrite(pin, HIGH);
  delayMicroseconds(100);
  digitalWrite(pin, LOW);
  delayMicroseconds(1000 - 100);
}

这份代码产生的PWM波什占空比为10%,周期为1ms(1kHz)的方波,但这种办法的优缺点明显:

1.PWM的比例可以更精确;
2.周期和频率可控制;
3.所有的pin脚都可以输出,不局限于那几个脚;
4.缺点:CPU干不了其他事情了。

3.利用PWM寄存器

这种方法一般用不上,而且也没理解清楚,所以可以直接参考官方文档或者另一篇博客:Arduino系列教程之PWM的秘密(下)

 

需要注意其中的_BV(COM2A1)表示的是COM2A的第1位为1也就是COM2A[1] = 1,也就是COM2A = 10.

其他只要仔细理解即可。

 

posted @ 2016-06-22 19:20  Attenton  阅读(739)  评论(0编辑  收藏  举报