Physical computing/Digitale output: verschil tussen versies

Uit Lab
Naar navigatie springen Naar zoeken springen
(Nieuwe pagina aangemaakt met '== microbit == * https://microbit-micropython.readthedocs.io/en/v1.0.1/pin.html * library: <code>microbit</code> * function(s): <code>pin.write_digital(value)</cod...')
 
Geen bewerkingssamenvatting
 
(6 tussenliggende versies door dezelfde gebruiker niet weergegeven)
Regel 9: Regel 9:


<code>pin.write_digital(value)</code>: Set the pin to high if value is 1, or to low, if it is 0.
<code>pin.write_digital(value)</code>: Set the pin to high if value is 1, or to low, if it is 0.
<syntaxhighlight lang=python>
from microbit import pin0, pin1
pin0.write_digital(0)
pin0.write_digital(1)
# default for read_digital: PULL_DOWN
print(pin1.read_digital()) # get value, 0 or 1
pin2.set_pull(PULL_UP)
print(pin2.read_digital()) # get value, 0 or 1
</syntaxhighlight>
Opmerking: de ingebouwde drukknoppen A en B gebruiken een externe pull-up weerstand, deze kun je niet instellen in de software. "pull-up" betekent dat een ingedrukte knop overeenkomt met een 0 als input-waarde.
=== Blink ===
<syntaxhighlight lang=python>
import microbit
microbit.display.off()
while True:
    microbit.pin0.write_digital(1)
    microbit.sleep(1000)
    microbit.pin0.write_digital(0)
    microbit.sleep(1000)
</syntaxhighlight>


== microPython ==
== microPython ==


* library: <code>machine</code>
* library: <code>machine</code>
* class: <code>Pin</code>
* function(s):
* function(s):
**  
**  


In microPython moet je eerst de pin instellen als output-pin:
In microPython moet je eerst de pin instellen als output-pin of als input-pin.
In het laatste geval kun je ook instellen of je de interne pull-up weerstand (of pull-down?) gebruikt.


<syntaxhighlight lang=python>
<syntaxhighlight lang=python>

Huidige versie van 10 nov 2019 om 10:20

microbit

Met de functie pin.write_digital(value) stel je de waarde van een output-pin in. Je hoeft deze pin niet van te voren in te stellen als output-pin.

pin.write_digital(value): Set the pin to high if value is 1, or to low, if it is 0.

from microbit import pin0, pin1

pin0.write_digital(0)
pin0.write_digital(1)

# default for read_digital: PULL_DOWN
print(pin1.read_digital()) # get value, 0 or 1

pin2.set_pull(PULL_UP)
print(pin2.read_digital()) # get value, 0 or 1

Opmerking: de ingebouwde drukknoppen A en B gebruiken een externe pull-up weerstand, deze kun je niet instellen in de software. "pull-up" betekent dat een ingedrukte knop overeenkomt met een 0 als input-waarde.

Blink

import microbit

microbit.display.off()
while True:
    microbit.pin0.write_digital(1)
    microbit.sleep(1000)
    microbit.pin0.write_digital(0)
    microbit.sleep(1000)

microPython

  • library: machine
  • class: Pin
  • function(s):

In microPython moet je eerst de pin instellen als output-pin of als input-pin. In het laatste geval kun je ook instellen of je de interne pull-up weerstand (of pull-down?) gebruikt.

from machine import Pin

p0 = Pin(0, Pin.OUT)    # create output pin on GPIO0
p0.on()                 # set pin to "on" (high) level
p0.off()                # set pin to "off" (low) level
p0.value(1)             # set pin to on/high

p2 = Pin(2, Pin.IN)     # create input pin on GPIO2
print(p2.value())       # get value, 0 or 1

p4 = Pin(4, Pin.IN, Pin.PULL_UP) # enable internal pull-up resistor
p5 = Pin(5, Pin.OUT, value=1) # set pin high on creation