Arduino Leonardo + Grove Base Sheild レッスン
Arduino Leonardoを選択する
https://gyazo.com/f56179b740f6b1ad24c9da5f711e70ba
Lチカする
https://gyazo.com/5a023866c955db85801ccd3b5d5c0ef8
シールドを刺す
https://gyazo.com/6e03b129f9d0fb640c3b67f98211c4a1
垂直に差しこむ
斜めにいれるとピンが曲がる
スライドスイッチは5Vにする
キーボード化する
注意
Arduinoから文字が送られるため、意図せぬトラブルを招くことがある。プログラムと配線には十分注意し、あらかじめ関係のないアプリケーションは終了させておくこと。不足の事態が起こったら、PC側のUSBケーブルを抜くこと。
code:keyboard01.js
void setup() {
Keyboard.begin();
pinMode(2, INPUT);
}
void loop() {
if(digitalRead(2) == HIGH){
Keyboard.print("a");
delay(200);
}
else{}
delay(1);
}
code: keyboard02.js
//加速度センサをi2cにつなぐ
//誤入力を防ぐためD2のボタンを外さない
SoftwareWire myWire(3, 2);
LIS3DHTR<SoftwareWire> LIS; //Software I2C
LIS3DHTR<TwoWire> LIS; //Hardware I2C
void setup() {
Keyboard.begin();
LIS.begin(WIRE, 0x19); //IIC init
delay(100);
LIS.setOutputDataRate(LIS3DHTR_DATARATE_50HZ);
}
void loop() {
if (!LIS) {
Serial.println("LIS3DHTR didn't connect.");
while (1);
return;
}
if(LIS.getAccelerationX()*LIS.getAccelerationY()>2){
Keyboard.print("Ouch!");
Serial.println("Ouch");
delay(500);
}else{
}
delay(10);
}
code: mouse.js
// based on these code
// シリアルモニタを開くとマウス操作が可能になるらしい?!?!?!?
SoftwareWire myWire(3, 2);
LIS3DHTR<SoftwareWire> LIS; //Software I2C
LIS3DHTR<TwoWire> LIS; //Hardware I2C
void setup() {
Serial.begin(9600);
while (!Serial) {};
LIS.begin(WIRE, 0x19); //IIC init
delay(100);
LIS.setOutputDataRate(LIS3DHTR_DATARATE_50HZ);
Mouse.begin();
}
void loop() {
if (!LIS) {
Serial.println("LIS3DHTR didn't connect.");
while (1);
return;
}
//-1.00から1.00の値を100倍して整数化。-100から100の値を-50から50までにマッピング
int xReading = map(LIS.getAccelerationX()*100, -100, 100, -50, 50);
int yReading = map(LIS.getAccelerationY()*100, -100, 100, -50, 50);
//Serial.print(xReading); Serial.print(" "); Serial.println(yReading);
//加速度センサを故意に動かしていない時にも入力されてしまうデータを取り除く
if(xReading < 20 && xReading>-20){
xReading = 0;
}else{
}
if(yReading<20&&yReading>-20){
yReading = 0;
}else{
}
//Serial.print(xReading); Serial.print(" "); Serial.println(yReading);
Mouse.move(xReading, yReading, 0);
delay(100);
}
キーボード関数について
マウス関数について