Stap 14: Eenvoudig elektronica voorbeeld.
De Raspberry Pi hoeft per se niet analoge havens zoals de Arduino. wel kunt u conversieprogramma's die kunnen worden aangesloten op de gpio of een r2r setup gebruiken. Als u wilt een led licht, zal u wilt gebruiken van ten minste twee pinnen. Een gpio en een grond pin. U moet ook een led en een passende weerstand. Zodra u meester deze eenvoudige stappen kunt u aanvullende elektronica en heel wat dingen regelen. Vergeet niet dat de gpio gebruikt slechts zeer lage spanning. Extra veiligheid circuits is nodig voor andere projecten.
Opmerking: u kunt jumper draden van oudere computers gebruiken als u niet hoeft de hele header te gebruiken.
old version ----------- # Turn light on cd /sys/class/gpio # Turn on pin but defaults to low. echo 17 > export# Set port direction in this case we aredoing output. echo out > gpio17/direction # Set pin high and turn on led. echo 1 > gpio17/value #Turn light offecho 0 > gpio17/value ----------------------------------- New version: You have to use the full path with commands.
# Turn light on cd /sys/class/gpio # Turn on pin but defaults to low. echo "17" > /sys/class/gpio/export# Set port direction in this case we aredoing output. echo "out" > /sys/class/gpio/gpio17/direction# Set pin high and turn on led. echo "1" > /sys/class/gpio/gpio17/value #Turn light off
echo "0" > /sys/class/gpio/gpio17/value
================================ Using a button
Controle van de LED met de knop
Nu laten we zetten van input en output samen, en gebruik van de status van de knop om te schakelen van de LED in- of uitschakelen.
De RPi heeft slechts één grond pin die je nodig hebt om verbinding te maken met zowel de LED-circuit en het circuit van de knop aan. Hebt u een draad M/M, u gemakkelijk kunt dit doen door het aansluiten van de kolom zoals wij met de LED deden op de grond. Als dat niet het geval is, lijkt het alsof er geen ruimte om een weerstand van een draad aangesloten op de grond en de knop alles in één groep van vijf kolommen. Maar extra om ruimte te maken, kunt u de knop overbruggen van de kloof in het midden van het breadboard plaatsen.
Een mogelijke configuratie heeft:
- Draden aansluiten pin 3 te
, 6 om te
en 11 tot en met
.
- Het aansluiten van de LED
(
) naar
(
).
- Het aansluiten van de weerstand van
naar
.
- De knop in de terminals
,
,
en
.
Met die ingesteld, kunt u de LED oplichten hebben zo lang als de knop niet is ingedrukt:
while true; docat gpio0/value > gpio17/value done
(Besturingselement gebruiken C dit onderbreken en terug te keren naar een prompt.) Of zo lang als de knop wordt ingedrukt:
while true; doread val < gpio0/value echo$(( ! val )) > gpio17/value done
Of om te schakelen van de LED, telkens wanneer de knop wordt ingedrukt:
while true; doread val < gpio0/value if((val== 0 &&last== 1 )); thenread state < gpio17/value echo$(( ! state )) > gpio17/value filast=$valdone
(Dit laatste maakt gebruik van het feit dat als u probeert te lezen van een uitgang Pins, u de huidige waarde vertelt.)
Als dat allemaal werkte, gefeliciteerd! Nu moet u waarschijnlijk installeren een werkelijke GPIO-bibliotheek, en zet je geest aan meer interessante projecten.
Mensen zijn nu het schrijven van code om te bepalen van de servo's met uw Rpi:
Zie http://code.google.com/p/raspberry gpio python/wiki/PWM