“MCookie-LEGOShield/zh”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
规格
规格
第20行: 第20行:
 
==规格==
 
==规格==
 
*供电:使用2S航模锂电池供电,7.4V。
 
*供电:使用2S航模锂电池供电,7.4V。
 +
*主控:MCookie-LEGOShield采用Atmega328p主控,独立运行驱动程序。
 
*通讯:IIC通讯,地址0x08(可自定义)
 
*通讯:IIC通讯,地址0x08(可自定义)
 
{|class="wikitable"
 
{|class="wikitable"
! rowspan="1" |mCookie引脚||mCookie-LEGOShield芯片引脚||功能
+
! rowspan="1" |mCookie引脚||shield芯片引脚||功能
 
|-
 
|-
 
| A4||A4|| IIC接口SDA引脚
 
| A4||A4|| IIC接口SDA引脚

2016年4月22日 (五) 14:56的版本

Language English
mCookie-LEGOShield


mCookie-LEGOShield是一款乐高兼容底板,在兼容乐高NXT接口传感器和电机的同时,能够继续堆叠mCookie模块,让乐高更加智能。



特色

  • 4路电机接口,兼容乐高NXT电机;
  • 4路普通传感器接口,兼容NXT接口的按键、声音传感器等;
  • 2路全功能传感器接口,除了能兼容普通传感器接口的所有传感器之外,兼容NXT接口的超声波传感器和颜色传感器;
  • IIC接口通讯,不占用其他多余IO口

规格

  • 供电:使用2S航模锂电池供电,7.4V。
  • 主控:MCookie-LEGOShield采用Atmega328p主控,独立运行驱动程序。
  • 通讯:IIC通讯,地址0x08(可自定义)
mCookie引脚 shield芯片引脚 功能
A4 A4 IIC接口SDA引脚
A5 A5 IIC接口SCL引脚
D0 D1 mCookie的Serial1 RX(可选悍,默认不连接)
D1 D0 mCookie的Serial1 TX (可选悍,默认不连接)
5V 5V 可以用shield给mCookie供电
GND GND 共地
  • 注意:
    • shield的IIC从机地址位可调节,需要重新烧写固件。
    • 如果使用shield供电,由于shield固件初始化需要一定时间,所以在mCookie写控制程序的时候需要上点延迟一会再运行(delay一段时间)
Motor-Pinout-1Big.jpg

文档

开发

直流电机接线

  • 将一个直流电机接(OUT1A,OUT1B),另外一个直流电机接(OUT2A,OUT2B);
  • 直流电机控制引脚:
//D6,D8控制1A,1B的电机
#define OUT1A 6
#define OUT1B 8
//D5,D7控制2A,2B的电机
#define OUT2A 5
#define OUT2B 7

通断控制

6 8 5 7 1A 1B 2A 2B 功能
Low Low Low Low Off Off Off Off 关闭(惯性停下)
High Low High Low High Low High Low 顺时针转
Low High Low High Low High Low High 逆时针转
High High High High Low Low Low Low 急停
#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);
}

应用

乐高遥控小车

购买

暂不开放购买

历史

图库

MCookie-Motor-t1.jpg
MCookie-Motor-b1.jpg

视频