Interfacing PS2 controller met AVR-Bit Bang (5 / 5 stap)

Stap 5: Bedrijfswaarde de code


ten slotte de code
Als u het stroomdiagram begrepen heb zal dit vrij eenvoudig zijn

De code heeft slechts 2-functie
1) int gameByte (korte int opdracht)
2) ongeldig int_PS2inanalougemode()

int gameByte (korte int opdracht)
{
korte int i;                                                 variabele gebruikt als teller
_delay_us(1);
korte int gegevens = 0x00;                             Schakel gegevensvariabele om Sla instelling lage bits later.

voor (ik = 0; ik < 8; i ++) / / as 8 bytes worden overgedragen ik < 8
{

Als (command & _BV(i)) //each beetje opdracht is ge-and met 1 één voor één, dus de waarde van dat cmnd is als in de voorwaarde
{
SBI (PORTB, PScommand);       Als de opdracht is een opdracht pin is ingesteld
}
anders
{
CBI (PORTB, PScommand);     anders is opdracht pin nul gemaakt
}


CBI (PORTB, PSclock);                        KLOK LAAG
_delay_us(1);                                    wachten voor uitvoer naar het stabiliseren


Als ((PINB & _BV(PSdata)))
{
SBI(Data, i);                               Lees PSdata pin en winkel
}
anders
{
CBI(Data, i);
}

SBI (PORTB, PSclock);                             KLOK HOGE
}

SBI (PORTB, PScommand);
_delay_us(20);                                                   wachten voor ACK geschiedde.
Return(Data);

}

VOID int_PS2inanalougemode()-
deze functie zet de controller in de analoge modus totdat deze waarde 0x73 in 2de byte die dat PS2 controller in de analoge modus ophaalt aangeeft als het geen resultaat de teller aan de stappen geeft en blijft zetten PS2 controller in de analoge modus is

int main(void)
in de hoofdlus poll we gewoon de inbreng van de PS2 controller.
video

volledige code is hier

Gerelateerde Artikelen

40 x RGB LED Controller met 8-bits PWM en selecteerbaar patronen

40 x RGB LED Controller met 8-bits PWM en selecteerbaar patronen

UPDATE: Deze controller is vervangen door de veel beter 48 kanaal Mono / 16 kanaals RGB LED Controller, met USB-aansluiting en compatibiliteit van de ColorMotion . Bezoek http://www.chromationsystems.com/48channled.html voor meer informatie koppeling
PS2 Controller Interfacing

PS2 Controller Interfacing

Videospelletjes kan enorme hoeveelheden van plezier en we hebben sommige nostalgische banden met enkele games. Maar zelfs onze favoriete meest gekoesterde spellen kunnen een beetje saai als te veel, te vaak gespeeld. En hoewel spellen bieden talloze
Arduino: Controle Servo met PS2 controller (programma met Visuino)

Arduino: Controle Servo met PS2 controller (programma met Visuino)

In dit Instructable leert u hoe te programmeren van de Arduino te controleren servomotor uit een Play Station 2 controller met behulp van Visuino - een makkelijk te gebruiken grafische ontwikkelomgeving voor Arduino.Houd er rekening mee dat de aantek
Controle van om het even wat met ps2 controller en Arduino (draadloos)

Controle van om het even wat met ps2 controller en Arduino (draadloos)

In dit instructable leert u hoe u een led met een playstation 2 controller en een Arduino, maar u kunt in principe alles wat je wilt.Stap 1: materialenU moet:ArduinoPS2 controller (draadloos of niet)Route:3 x 1 k weerstanden2 x 4.7uf condensatoren1 x
Hoe Interface 16 X 2 LCD met AVR Microcontroller

Hoe Interface 16 X 2 LCD met AVR Microcontroller

hier is het circuit diagram van Interfacing 16 X 2 LCD AVR microcontroller. In dit circuit bieden de kristal oscillator de klok de microcontroller. De condensatoren die verbonden aan het kristal zal fungeren als filters en helpen van het kristal te r
Draadloze NES controller met weergave van gegevens over

Draadloze NES controller met weergave van gegevens over

BEZORGT uw NES CONTROLLER, BACK TO THE FUTURE!Dit project integreert een xbee, de arduino, de weergave van gegevens en de generieke nes-controller maken een afstandsbediening voor een arduino + xbee project.  U kunt het display gebruiken om feedback
Bluetooth PS2 Controller

Bluetooth PS2 Controller

De oorspronkelijke PlayStation 2 controller is nog steeds een stevige en goedgebouwde controller naar huidige maatstaven. Beter nog, kunnen ze had worden tegenwoordig voor een fractie van de kosten van een controller met dezelfde kwaliteit.We zijn va
Bristle Bot van PS2 Controller Motor

Bristle Bot van PS2 Controller Motor

dit is een variatie van de nu gemeenschappelijk bristle-bot. Het is een beetje groter, met 3 AA batterijen en de motor van de trillingen van een PS2 game controllerStap 1: Materialen en hulpmiddelen die nodig zijn Voor materialen, hebt u nodig:-4 ide
Een Xbox-Controller met LEDs oplichten

Een Xbox-Controller met LEDs oplichten

dit instructable uiteengezet om het licht van de vier A, B, X, Y knoppen en juweel van een originele Xbox Controller-S.Ter voltooiing van dit project, is die comfortabel met een soldeerbout aanbevolen. Zelfs als je niet ervaren in het solderen zijn m
PlayStation 2 controller met Raspberry Pi

PlayStation 2 controller met Raspberry Pi

Dit leerprogramma zal tonen hoe het gebruik van de Playstation 2 Controller (PS2) met de Raspberry Pi. Wij gebruiken de Arduberry aan te passen van het schild aan de Raspberry Pi.Stap 1: Hardware vereistRaspberry PiArduberryDexter industrieën Playsta
USB NES-controller met een arduino!

USB NES-controller met een arduino!

UPDATE 22-12-2014Instructables gebruiker mattpbooth heeft bijgewerkt de code en het is hosting op github:https://github.com/mattpbooth/ArduinoNESController...Matt bedankt!UPDATE 03-12-2011Een println vervangen met print (derp).UPDATE 01-12-2011Alle c
The ps2 controller rumble prank

The ps2 controller rumble prank

Ongeveer een jaar of zo ik heb een stapel van ps2 controlers, een keek vrij smashed up en andere ontbrak enkel sommige rubber op de analoge stick. Dus natuurlijk mijn plan whas alleen maar om te wisselen van de stokken, goed met de ontbrekende rubber
PicLink RS232 lage kosten ontwikkeling controller met ADC

PicLink RS232 lage kosten ontwikkeling controller met ADC

PICLink RS232 ingesloten ControllerDe PICLink RS232-controllermodule biedt een microcontroller liefhebber eengemakkelijk om te bouwen van mini-microcontroller module. Deze ingesloten microcontroller isICSP (in circuit serial) programmeerbare en biedt
Hoe aan te passen een kloon NES-controller met bluetooth

Hoe aan te passen een kloon NES-controller met bluetooth

ik kocht een draadloze Bluetooth-RS232 TTL Transceiver-Module van DX (SKU: 80711) en vraag me af wat ik ermee kan doen.Dus, ik ben echt nostalgisch en besloot om te bouwen van een NES kloon crontoller naar bluetooth-adapter, omdat door deze manier ik