- Nødvendige komponenter:
- Kredsløbsdiagram:
- Skiftregister IC 74HC595:
- Flow af arbejde:
- Programmeringsforklaring:
Raspberry Pi er et ARM-arkitekturbaseret kort designet til elektroniske ingeniører og hobbyister. PI er en af de mest pålidelige projektudviklingsplatforme derude nu. Med højere processorhastighed og 1 GB RAM kan PI bruges til mange højt profilerede projekter som billedbehandling og Internet of Things.
For at udføre nogle af højt profilerede projekter skal man forstå de grundlæggende funktioner i PI. Vi vil dække alle de grundlæggende funktioner i Raspberry Pi i disse vejledninger. I hver tutorial vil vi diskutere en af funktionerne i PI. Ved afslutningen af denne Raspberry Pi Tutorial Series vil du være i stand til at lave projekter med høj profil alene. Gå igennem nedenstående vejledninger:
- Kom godt i gang med Raspberry Pi
- Raspberry Pi-konfiguration
- LED Blinkende
- Raspberry Pi-knapgrænseflade
- Raspberry Pi PWM generation
- Styring af jævnstrømsmotor ved hjælp af Raspberry Pi
- Stepper Motor Control med Raspberry Pi
I denne Raspberry Pi-skiftregistervejledning vil vi interface Shift-register med Pi. PI har 26 GPIO-ben, men når vi laver projekter som 3D-printer, er outputnålene, der leveres af PI, ikke nok. Så vi har brug for flere output pins, for at tilføje flere output pins til PI tilføjer vi Shift Register Chip. En Shift Register-chip tager data fra PI-kortet serielt og giver parallel output. Chippen har 8 bit, så chippen tager 8 bit fra PI serielt og leverer derefter 8 bit logisk output gennem 8 output pins.
Til 8 bit skiftregister skal vi bruge IC 74HC595. Det er en 16 PIN-chip. Chipens pin-konfiguration forklares senere i denne vejledning.
I denne vejledning bruger vi tre PI's GPIO-ben til at få otte output fra Shift Register Chip. Husk her, at PIN-koder på chip kun er til output, så vi kan ikke forbinde nogen sensorer til chipoutput og forvente, at PI læser dem. Lysdioder tilsluttes ved chipoutputtet for at se de 8 bit data, der sendes fra PI.
Vi vil diskutere lidt om Raspberry Pi GPIO Pins før vi går videre,
Der er 40 GPIO output pins i Raspberry Pi 2. Men ud af 40 kan kun 26 GPIO-ben (GPIO2 til GPIO27) programmeres. Nogle af disse ben udfører nogle specielle funktioner. Med særlig GPIO afsat, har vi kun 17 GPIO tilbage. Hver af disse 17 GPIO-ben kan maksimalt levere 15 mA strøm. Og summen af strømme fra alle GPIO-pins kan ikke overstige 50 mA. Hvis du vil vide mere om GPIO-ben, skal du gå igennem: LED blinker med Raspberry Pi
Nødvendige komponenter:
Her bruger vi Raspberry Pi 2 Model B med Raspbian Jessie OS. Alle de grundlæggende hardware- og softwarekrav er tidligere diskuteret, du kan slå det op i Raspberry Pi Introduktion, bortset fra hvad vi har brug for:
- Tilslutningsstifter
- 220Ω eller 1KΩ modstand (6)
- LED (8)
- 0,01 µF kondensator
- 74HC595 IC
- Brødbræt
Kredsløbsdiagram:
Skiftregister IC 74HC595:
Lad os tale om PINKODERNE til SKIFTREGISTER, vi skal bruge herinde.
Pin-navn |
Beskrivelse |
Q0 - Q7 |
De er outputstifterne (rødt rektangel), hvor vi får 8 Bit Data parallelt. Vi forbinder otte LED til dem for at se den parallelle output. |
Datapind (DS) |
Første data sendes bit for bit til denne pin. For at sende 1 trækker vi DATA-stiften højt op og for at sende 0 trækker vi DATA-stiften ned. |
Clock Pin (SHCP) |
Hver puls ved denne pin tvinger registrene til at tage en bit data fra DATA-pin og gemme den. |
Skiftoutput (STCP) |
Efter modtagelse af 8 bits leverer vi denne pin til at se output. |
Flow af arbejde:
Vi følger flowdiagrammet og skriver et decimaltællerprogram i PYTHON. Når vi kører programmet, ser vi LED-tælling ved hjælp af Shift Register i Raspberry Pi.
Programmeringsforklaring:
Når alt er tilsluttet i henhold til kredsløbsdiagrammet, kan vi tænde PI for at skrive programmet i PYHTON.
Vi vil tale om få kommandoer, som vi skal bruge i PYHTON-programmet, Vi skal importere GPIO-filer fra biblioteket, nedenstående funktion giver os mulighed for at programmere GPIO-ben på PI. Vi omdøber også "GPIO" til "IO", så når vi vil henvise til GPIO-ben i programmet, bruger vi ordet 'IO'.
importer RPi.GPIO som IO
Nogle gange, når GPIO-stifterne, som vi prøver at bruge, udfører måske nogle andre funktioner. I så fald modtager vi advarsler, mens vi udfører programmet. Kommandoen nedenfor fortæller PI at ignorere advarslerne og fortsætte med programmet.
IO.setwarnings (Falsk)
Vi kan henvise GPIO-benene på PI, enten ved pin-nummer om bord eller ved deres funktionsnummer. Ligesom 'PIN 29' på tavlen er 'GPIO5'. Så vi fortæller her, enten skal vi repræsentere stiften her med '29' eller '5'.
IO.setmode (IO.BCM)
Vi indstiller GPIO4-, GPIO5- og GPIO6-ben som output
IO.opsætning (4, IO.OUT) IO.opsætning (5, IO.OUT) IO.opsætning (6, IO.OUT)
Denne kommando udfører sløjfen 8 gange.
for y i området (8):
Mens 1: bruges til uendelig løkke. Med denne kommando udføres udsagnene inde i denne sløjfe kontinuerligt.
Yderligere forklaring på programmet findes i kodeafsnittet nedenfor. Vi har alle nødvendige instruktioner til at sende data til SKIFTREGISTER nu.