Arduino + Laptop Touchpad (3 / 3 steg)
Steg 3: Coding - del II
Andra test - iPod stil gestJag anpassade koden lite så det skulle kunna reagera på en iPod stil cirkulär gest. Detta skulle kunna användas för att påskynda en motor, öka volymen, vrid ett servo etc... Hmm... en omgång safe cracker kanske... ;)
Koden får inte vara högsta kvalitet men det bör ge dig tanken vad som händer.
----------------------------
Koden:
Arduino + Laptop TouchPad. iPod stil gest
//
http://metku.net
Jani Pönkkö
23.07.2009
#include "PS2Mouse.h"
#include "LedControl.h"
#define MDATA 5 / / touchpad ps/2 data stift
#define MCLK 6 / / touchpad ps/2 klocka pin
#define känslighet 5 / / rörelsen behövs för att få en reaktion
LedControl lc=LedControl(12,11,10,1); forumet pin outs
PS2Mouse mouse_one (MCLK, MDATA, fjärrkontroll);
int värde;
int i;
int l;
int dir; Anger om användaren är "vrida" på ratten
void setup()
{
lc.setIntensity(0,8);
LC.Shutdown(0,false); behöva ta MAX ur avstängning
lc.clearDisplay(0);
Delay(10);
Serial.BEGIN(115200);
mouse_one.Initialize();
mouse_one.set_scaling_1_1();
värde = 7.
}
void loop()
{
int data [2].
mouse_one.Report(data);
hantera lysdioderna. Gjorde detta sätt att bekämpa flimmer...
för (jag = 7; jag > = 0; i--)
{
om (värdet < = jag)
{
för (l = 0; l < = 7; l ++)
lc.setLed(0,l,i,true);
}
annat
{
för (l = 0; l < = 7; l ++)
lc.setLed(0,l,i,false);
}
}
Flytta till höger
om (data [1] > känslighet)
{
IF(dir==0) / / riktning är counter medurs
dir =-1; dec
}
Flytta till vänster
om (data [1] <-känslighet)
{
IF(dir==0) / / riktning är medurs
dir = 1; incrementation
}
toppen av "turn"
om (data [2] > känslighet)
{
dir = 0; Vi fick börja indikeringen (övre delen av cirkeln)
}
botten av "turn"
om (data [2] <-känslighet)
{
IF(dir==-1) / / vi fick counter medurs tur
{
IF(Value>0)
{
värde = värde-1;
dir =-2. nollställa värdet till något icke-giltig
}
}
IF(dir==1)
{
IF(Value<7)
{
värde = värde + 1.
dir =-2. nollställa värdet till något icke-giltig
}
}
}
några förseningar så man kan se lysdioder properl
Delay(100);
}
--------------
Jag hoppas att du hittade denna kort tutorial användbart. Om du någonsin hittar detta material användbart, snälla, dela dina rön och projekt med oss. Antingen genom att registrera dig här för att Allthemods.com eller genom att besöka Metku.net . Tack.