“MCookie-LEGOShield/zh”的版本间的差异
(→应用) |
(→规格) |
||
第19行: | 第19行: | ||
==规格== | ==规格== | ||
− | * | + | *供电:使用2S航模锂电池供电,7.4V。 |
− | * | + | *通讯:IIC通讯,地址0x08(可自定义) |
{|class="wikitable" | {|class="wikitable" | ||
− | ! rowspan="1" |mCookie引脚|| | + | ! rowspan="1" |mCookie引脚||mCookie-LEGOShield芯片引脚||功能 |
|- | |- | ||
− | | | + | | A4||A4|| IIC接口SDA引脚 |
|- | |- | ||
− | | | + | | A5||A5|| IIC接口SCL引脚 |
|- | |- | ||
− | | | + | | D0|| D1||mCookie的Serial1 RX(可选悍,默认不连接) |
|- | |- | ||
− | | | + | | D1|| D0||mCookie的Serial1 TX (可选悍,默认不连接) |
|- | |- | ||
− | | | + | | 5V||5V||可以用shield给mCookie供电 |
|- | |- | ||
| GND||GND||共地 | | GND||GND||共地 | ||
第38行: | 第38行: | ||
*注意: | *注意: | ||
− | ** | + | **shield的IIC从机地址位可调节,需要重新烧写固件。 |
− | ** | + | **如果使用shield供电,由于shield固件初始化需要一定时间,所以在mCookie写控制程序的时候需要上点延迟一会再运行(delay一段时间) |
[[File:motor-Pinout-1Big.jpg|800px|thumb|center]] | [[File:motor-Pinout-1Big.jpg|800px|thumb|center]] |
2016年4月22日 (五) 14:53的版本
Language | English |
---|
特色
规格
文档开发直流电机接线
//D6,D8控制1A,1B的电机
#define OUT1A 6
#define OUT1B 8
//D5,D7控制2A,2B的电机
#define OUT2A 5
#define OUT2B 7
通断控制
#define OUT1A 6
#define OUT1B 8
#define OUT2A 5
#define OUT2B 7
void setup()
{
pinMode(OUT1A, OUTPUT);
pinMode(OUT1B, OUTPUT);
pinMode(OUT2A, OUTPUT);
pinMode(OUT2B, OUTPUT);
}
void loop()
{
head();
delay(2000);
back();
delay(1000);
stop();
delay(500);
}
void head()
{
digitalWrite(OUT1A, HIGH);
digitalWrite(OUT1B, LOW);
digitalWrite(OUT2A, HIGH);
digitalWrite(OUT2B, LOW);
}
void back()
{
digitalWrite(OUT1A, LOW);
digitalWrite(OUT1B, HIGH);
digitalWrite(OUT2A, LOW);
digitalWrite(OUT2B, HIGH);
}
void stop()
{
digitalWrite(OUT1A, LOW);
digitalWrite(OUT1B, LOW);
digitalWrite(OUT2A, LOW);
digitalWrite(OUT2B, LOW);
}
PWM调速控制//D6,D8控制1A,1B的电机
#define OUT1A 6
#define OUT1B 8
//D5,D7控制2A,2B的电机
#define OUT2A 5
#define OUT2B 7
void setup()
{
pinMode(OUT1A, OUTPUT);
pinMode(OUT1B, OUTPUT);
pinMode(OUT2A, OUTPUT);
pinMode(OUT2B, OUTPUT);
}
void loop()
{
for (int fadeValue = 0; fadeValue <= 255; fadeValue += 5)
//循环语句,控制PWM速度增加,控制fadeValue的变化大小可以控制亮度级别
{
analogWrite(OUT1A, fadeValue); //将速度级别写入电机
digitalWrite(OUT1B, LOW);
analogWrite(OUT2A, fadeValue);
digitalWrite(OUT2B, LOW);
delay(100); //速度度级别维持的时间,单位毫秒
}
for (int fadeValue = 255; fadeValue >= 0; fadeValue -= 5)
//循环语句,控制PWM速度减小,控制fadeValue的变化大小可以控制亮度级别
{
digitalWrite(OUT1A, LOW);
analogWrite(OUT1B, fadeValue); //将速度级别写入电机
digitalWrite(OUT2A, LOW);
analogWrite(OUT2B, fadeValue);
delay(100); //速度度级别级别维持的时间,单位毫秒
}
delay(1000);
}
应用购买暂不开放购买 历史图库视频 |