Linkerkit-admin (Diskussion | Beiträge) (→Codebeispiel Raspberry) |
Linkerkit-admin (Diskussion | Beiträge) (→Codebeispiel Raspberry) |
||
Zeile 34: | Zeile 34: | ||
==Codebeispiel Raspberry== | ==Codebeispiel Raspberry== | ||
<pre class="brush:py">import RPi.GPIO as GPIO | <pre class="brush:py">import RPi.GPIO as GPIO | ||
+ | import spidev | ||
+ | from time import sleep | ||
− | + | # Initialisiere Temp-Sensor auf Analogen-PIN 0 und LED auf Digitalen PIN 4 | |
+ | temp = 0 | ||
+ | led = 4 | ||
− | + | spi = spidev.SpiDev() | |
+ | spi.open(0,0) | ||
+ | GPIO.setwarnings(False) | ||
+ | GPIO.setmode(GPIO.BCM) | ||
+ | GPIO.setup(led, GPIO.OUT) | ||
− | + | def readadc(adcnum): | |
+ | # SPI-Daten auslesen | ||
+ | r = spi.xfer2([1,8+adcnum <<4,0]) | ||
+ | adcout = ((r[1] &3) <<8)+r[2] | ||
+ | return adcout | ||
− | + | while True: | |
+ | value = readadc(temp) | ||
+ | print("Value: " + str(value)) | ||
− | + | if(value > 500): | |
− | + | GPIO.output(led, True) | |
− | if(value > 500): | + | else: |
+ | GPIO.output(led, False) | ||
+ | sleep(0.5) | ||
</pre> | </pre> |
Version vom 19. Oktober 2016, 16:00 Uhr
Bild
Technische Daten / Kurzbeschreibung
Linker Kit Platine mit einem Drehpotentiometer. Dieser Drehpotentiometer erzeugt ein analoges Ausgangssignal zwischen 0 und Vcc (5V DC mit Arduino) am Pin D1. Pin D2 wird nicht verwendet. Der Winkelbereich beträgt 300° mit einer linearen Wertänderung. Der Widerstandswert beträgt 10kΩ, perfekt für den Ardunio.
Spezifikation
Maße: 25,0 × 25,0 × 18,8mm
Gewicht: 4,5g
Widerstandswert: 10kΩ
Codebeispiel Arduino
int adcPin = A0; // setzt den Eingabe Pin für den Potentiometer int ledPin = 5; // setzt den Pin für die LED int adcIn = 0; // variable to store the value coming from the sensor void setup() { Serial.begin(9600); // init seriell zu 9600b/s pinMode(ledPin, OUTPUT); // setzt ledPin zu OUTPUT Serial.println("Drehpotentiometer Test Code!!"); } void loop() { // Liest den Wert aus dem Sensor: adcIn = analogRead(adcPin); if(adcIn >= 500) digitalWrite(ledPin,HIGH); // wenn adc in > 500, led leuchtet else digitalWrite(ledPin, LOW); Serial.println(adcIn); delay(100); // Wartet 0,1 Sekunden }
Codebeispiel Raspberry
import RPi.GPIO as GPIO import spidev from time import sleep # Initialisiere Temp-Sensor auf Analogen-PIN 0 und LED auf Digitalen PIN 4 temp = 0 led = 4 spi = spidev.SpiDev() spi.open(0,0) GPIO.setwarnings(False) GPIO.setmode(GPIO.BCM) GPIO.setup(led, GPIO.OUT) def readadc(adcnum): # SPI-Daten auslesen r = spi.xfer2([1,8+adcnum <<4,0]) adcout = ((r[1] &3) <<8)+r[2] return adcout while True: value = readadc(temp) print("Value: " + str(value)) if(value > 500): GPIO.output(led, True) else: GPIO.output(led, False) sleep(0.5)
Downloads
Infos:
Englisch: 001267857-da-01-en-LINKER_KIT_PLATINE_MIT_DREHPOTENTIOMETER.pdf
Schaltung: 001267857-sp-01-en-LINKER_KIT_PLATINE_MIT_DREHPOTENTIOMETER.pdf