Table of Contents

MagicMouse

Introducere

Proiectul acesta se vrea a fi o implementare simpla de mouse. Scopul lui este de a misca pointerul mouse-ului prin simpla miscare a placutei. Ideea de la care am pornit a fost urmatoarea: ce ar fi daca am putea sa miscam pointerul mouse-ului fara sa ne folosim degetele? Motivul implementarii acestei solutii hardware este de acela ca vine in ajutorul persoanelor cu disfunctionalitati fizice: nu au degete sau palme.

Descriere generală

Hardware Design

Componente:

Denumirea piesei Proveniență
Plăcuța de la etapa 1 Placutiada 2012+ ore de proiect
Accelerometru MMA7361 http://www.robofun.ro/index.php?route=product/search&keyword=mma7361&category_id=0
Fire izolate pentru conexiune Cablu UTP
Pini tata http://syscom.ro/produse.asp -

Software Design

Programul de pe microcontroller are la baza exemplul HID-mouse pus la dispozitie alaturi de driverul USB VUSB. Programul foloseste Timer1 pentru a citi la 20 ms acceleratiile pe cele trei axe. Vitezele pe x si pe y sunt tranmise ca deplasamentul pe x si y din pachetul de mouse USB. Viteza pe z este transmisa ca deplasamentul mouse wheel-ului din acel pachet. Codul a fost dezvoltat cu ajutorul WinAvr.

Rezultate obtinute

MagicMouse poate functiona ca mouse, nefiind nevoie de a-l tine efectiv in mana. Atat timp cat este legat de obiect si miscat, pointerul mouse-ului se va deplasa.

Concluzii

Pentru a obtine acuratete, este nevoie de multe teste pentru a stabili valorile care fac mouse-ul sa functioneze optim.

Download

Sursele dezvoltate pentru produs:

magicmouse.zip

Resurse

Datasheet-ul accelerometrului MMA7361: http://www.alldatasheet.com/view.jsp?Searchword=MMA7361

Driver USB: http://www.obdev.at/products/vusb/download.html

Datasheet-ul procesorului AtMega16: http://www.atmel.com/dyn/resources/prod_documents/doc2466.pdf