Toon posts:

Troubleshooting GPOI raspberry pi ivm geen Led-blinking

Pagina: 1
Acties:

Onderwerpen

Vraag


  • Frij5fd
  • Registratie: September 2012
  • Laatst online: 22:06
Mijn vraag
Als zelfs een eenvoudige blink niet werkt, kun je dan op de één of andere manier checken of de aansturing van de GPIO nog wel werkt?

Probleembeschrijving
Ik heb enkele eenvoudige python-scriptjes geprobeerd om een LED te laten knipperen, het LED-je blijft echter vrolijk branden in alle gevallen. Een script wat bij de elektronica doos zit, waarvan de componenten ook afkomstig zijn, ziet er zo uit:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/bin/env python3
import RPi.GPIO as GPIO
import time

ledPin = 11    # RPI Board pin11

def setup():
    GPIO.setmode(GPIO.BOARD)       # Numbers GPIOs by physical location
    GPIO.setup(ledPin, GPIO.OUT)   # Set ledPin's mode is output
    GPIO.output(ledPin, GPIO.LOW) # Set ledPin low to off led
    print ('using pin%d'%ledPin)

def loop():
    while True:
        GPIO.output(ledPin, GPIO.HIGH)  # led on
        print ('...led on')
        time.sleep(1)   
        GPIO.output(ledPin, GPIO.LOW) # led off
        print ('led off...')
        time.sleep(1)

def destroy():
    GPIO.output(ledPin, GPIO.LOW)     # led off
    GPIO.cleanup()                     # Release resource

if __name__ == '__main__':     # Program start from here
    setup()
    try:
        loop()
    except KeyboardInterrupt:  # When 'Ctrl+C' is pressed, the child program destroy() will be  executed.
        destroy()


Het script laat zich zonder problemen starten met python3 ~/LAFVIN_PI_Code/Python_Code/1_Blink/Blink.py
met als output:
code:
1
2
3
4
5
6
7
using pin11
...led on
led off...
...led on
led off...
...led on
led off...



Relevante software en hardware die ik gebruik
Raspberry 4 met 4Gb RAM met extension board en breadboard. Als weerstand had ik eerst 220 Ohm en toen 330 Ohm geprobeerd.
Ik gebruik de laatste versie van Raspbian met python 3.
Ik heb overigens ook ander script geprobeerd, ook op basis van de fysieke pin 11. En een script op basis van de fysieke pin 7.

Wat ik al gevonden of geprobeerd heb
Ik heb al gekeken of ik het extension board verkeerd om had aangesloten op de raspberry pi. Dat bleek het geval te zijn; door met een multimeter een closed circuit meting te doen, kon ik zien welke pin op het pi-board naar welke pin op het extensie board ging. Maar misschien heb ik daarmee de pi beschadigd?
Verder heb ik ook even een 3,3V pin aangesloten ipv pinnen 7 of 11; toen ging de LED een stuk minder fel branden

Alle reacties


  • grasmanek94
  • Registratie: Juli 2015
  • Laatst online: 15:48
Voor zover mij bekend is kan standaard alleen root GPIO doen, run je het script wel met sudo of heb je je gebruiker rechten gegeven om GPIO te besturen?

  • Frij5fd
  • Registratie: September 2012
  • Laatst online: 22:06
Ik heb inmiddels nog wat verder zitten proberen en het lijkt erop dat het probleem in het gebruik van het externsion board zit. Als ik deze code gebruik en direct het broadbord met GPIO 17 en GND verbind (boardpinnen 9 en 11), dan werkt het wel:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
import RPi.GPIO as GPIO
import time
LED_PIN = 17
GPIO.setmode(GPIO.BCM)
GPIO.setup(LED_PIN, GPIO.OUT)
try:
    while True:
        GPIO.output(LED_PIN, GPIO.HIGH)
        time.sleep(1)
        GPIO.output(LED_PIN, GPIO.LOW)
        time.sleep(1)
except KeyboardInterrupt:
    GPIO.cleanup()

Maar, bedankt voor je reactie!

NB: ik heb https://www.bol.com/nl/nl...ergdoos/9200000127629706/ doos gekocht om te spelen met de pi, maar zoals de reviews aangeven is de handleiding erg slecht en kloppen er soms dingen niet. Helaas

  • Frij5fd
  • Registratie: September 2012
  • Laatst online: 22:06
Uiteindelijk werkt alles naar behoren. Een simpele manier om het functioneren van de GPIO-pins te testen is hier te vinden: https://abyz.me.uk/rpi/pigpio/faq.html#Have_I_fried_my_GPIO


Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee