Allgemein | Bücher | OpenStreetMap | Softwaretipps | APN-Einstellungen der wichtigsten Mobilfunkanbieter | Raspberry Pi | Unsere Partner | Warum Handbücher? | Über uns

Tag Archives: Scratch

LCD-Display am Raspberry Pi mit Scratch steuern

Die aktuelle Raspbian-Version „Jessie“ bietet erstmals eine integrierte GPIO-Unterstützung für Scratch. Allerdings lassen sich damit bis jetzt nur digitale Pins ein- und ausschalten oder abfragen. Eine direkte Ansteuerung der bekannten HD44780-kompatiblen LCD-Module gibt es bisher nicht. Diese lässt sich aber über ein im Hintergrund laufendes Python-Programm leicht nachrüsten.

Die Kommunikation zwischen Python und Scratch erfolgt über das Modul scratch 0.0.1a das über die Kommandozeile nachinstalliert werden muss:

sudo pip install scratch --pre

Das LCD-Modul wird im 4-Bit-Modus an den GPIO-Pins angeschlossen. Wir verwenden ein einfaches zweizeiliges Modul ohne I²C-Schnittstelle.

display01_Steckplatine

Anschlussschema für das LCD-Modul am Raspberry Pi

Ein Python-Programm übernimmt die Steuerung des LCD-Displays und fragt in einer Endlosschleife die Ausgabe von Scratch ab. Das Modul scratch 0.0.1a liefert bei jeder Änderung einer Scratch-Variable oder bei einer „Sende an alle“-Nachricht in Scratch eine Datenstruktur zurück. Das Programm überprüft, ob diese die Felder ‚lcd0‘ oder ‚lcd1‘ enthält und schreibt dann deren Inhalte in die obere bzw. untere Zeile des Displays.

#!/usr/bin/python

import RPi.GPIO as GPIO
import time, scratch
s = scratch.Scratch()

LCD_RS = 7
LCD_E  = 8
LCD_D4 = 25
LCD_D5 = 24
LCD_D6 = 23
LCD_D7 = 18

GPIO.setmode(GPIO.BCM)
GPIO.setup(LCD_E,  GPIO.OUT)
GPIO.setup(LCD_RS, GPIO.OUT)
GPIO.setup(LCD_D4, GPIO.OUT)
GPIO.setup(LCD_D5, GPIO.OUT)
GPIO.setup(LCD_D6, GPIO.OUT)
GPIO.setup(LCD_D7, GPIO.OUT)

LCD_WIDTH = 16
LCD_LINE_1 = 0x80
LCD_LINE_2 = 0xC0
LCD_CHR = True
LCD_CMD = False
E_PULSE = 0.00005
E_DELAY = 0.00005
INIT  = 0.01
pause = 0.01

def lcd_enable():
  time.sleep(E_DELAY)
  GPIO.output(LCD_E, True)
  time.sleep(E_PULSE)
  GPIO.output(LCD_E, False)
  time.sleep(E_DELAY)

def lcd_byte(bits, mode):
  GPIO.output(LCD_RS, mode)
  GPIO.output(LCD_D4, bits&0x10==0x10)
  GPIO.output(LCD_D5, bits&0x20==0x20)
  GPIO.output(LCD_D6, bits&0x40==0x40)
  GPIO.output(LCD_D7, bits&0x80==0x80)
  lcd_enable()
  GPIO.output(LCD_D4, bits&0x01==0x01)
  GPIO.output(LCD_D5, bits&0x02==0x02)
  GPIO.output(LCD_D6, bits&0x04==0x04)
  GPIO.output(LCD_D7, bits&0x08==0x08)
  lcd_enable()

def lcd_string(message):
  message = message.ljust(LCD_WIDTH," ")
  for i in range(LCD_WIDTH):
    lcd_byte(ord(message[i]),LCD_CHR)

LCD_INIT = [0x33, 0x32, 0x28, 0x0C, 0x06, 0x01]
for i in LCD_INIT:
  lcd_byte(i,LCD_CMD)
  time.sleep(INIT)

try:
  while True:
    z = (s.receive())['sensor-update']
    lcd_byte(LCD_LINE_1, LCD_CMD)
    if z.has_key('lcd0'):
      lcd_string(z['lcd0'])
    lcd_byte(LCD_LINE_2, LCD_CMD)
    if z.has_key('lcd1'):
      lcd_string(z['lcd1'])
    time.sleep(pause)
except KeyboardInterrupt:
  GPIO.cleanup()

Das abgebildete Scratch-Programm zeigt eine einfache Digitaluhr auf dem LCD-Display.

Digitaluhr in Scratch mit LCD-Display

Digitaluhr in Scratch mit LCD-Display

Buchtipp:


Der kleine Hacker: Programmieren für Einsteiger.
Mit Scratch schnell und effektiv programmieren lernen.
Links: amazon.deFranzis-Verlag

Merken

Merken

Merken


Pin-Belegung der GPIO-Schnittstelle auf dem Raspberry Pi 2, B+ und A+

Die meisten GPIO-Programme, Python usw. verwenden die links dargestellte Pin-Belegung der GPIO-Schnittstelle auf dem Raspberry Pi B+, A+ und B2.

Pin-Belegung der GPIO-Schnittstelle auf dem Raspberry Pi für ScratchGPIO
Die Scratch-Erweiterung ScratchGPIO bezeichnet die GPIO-Pins anders, als alle anderen Programme auf dem Raspberry Pi. Die Abbildung rechts zeigt in gelb die als Eingang definierten Pins und in grün die als Ausgang definierten Pins mit ihren Nummern. Die hellblau dargestellten Pins können sowohl als Eingang, wie auch als Ausgang verwendet werden.


Franzis Arduino Maker Kit

arduino_makerkit20 Projekte – Original Arduino UNO – 55 Bauteile – Programmierung in Scratch und Arduino IDE

Der Franzis-Verlag schreibt zum neuen Arduino Maker Kit:
Haben Sie schon viele Arduino™-Projekte umgesetzt? Egal ob Ja oder Nein, hier sind Sie richtig. Mit Scratch für Arduino™ müssen Sie sich nicht mehr mit der Arduino™-IDE beschäftigen, sondern können den Sketch grafisch erstellen. Das Paket enthält alles, was Sie brauchen, um noch mehr aus dem Arduino™ herauszuholen: 55 Bauteile (inkl. original Arduino™ UNO) und ein 160-seitiges Handbuch: Willkommen bei den Makern!

Haben Sie bereits Ihr nächstes Arduino™-Projekt geplant? Falls nicht, nehmen Sie sich doch Zeit für die 20 Projekte in diesem Paket. Ob nun Programmierung oder Elektronik, hier lernen Sie neue Dinge: etwa die grafische Programmierung mit
Scratch oder die Ansteuerung eines LCD mit Erweiterung des Zeichensatzes – für jeden ist etwas dabei. Für die Kaffeepause können Sie sich an Pong wagen und dieses mit Draht steuern.

Projekte im Arduino Maker Kit:

  • LED-Blinklicht
  • Wechselblinklicht
  • S4A – Scratch für Arduino™
  • Fußgängerampel mit Taster
  • Fußgängerampel mit Scratch
  • Spielwürfel mit LEDs
  • LED per Pulsweitenmodulation dimmen
  • Analoge Pegelanzeige mit LEDs
  • Pong-Spiel mit Arduino™-Tasten steuern
  • Scratch mit analoger Eingabe steuern
  • Scratch mit dem Smartphone steuern
  • Spiele mit den Fingern steuern
  • Texte auf dem LCD darstellen
  • Uhr auf dem LCD
  • Zahlenspiel mit Tasten und LCD
  • Eigene Zeichen für das LCD erstellen
  • Umlaute auf dem LCD
  • Menüsteuerung auf dem LCD
  • LCD-Statusanzeige für Windows-PCs
  • Arduino™ vom Tablet oder Smartphone programmieren

Die 55 Bauteile im Überblick:

  • 1x Arduino™ UNO
  • 2x Steckplatinen
  • 1x LCD (2-zeilig)
  • 14x Arduino™-Headerkabel
  • 1x LED blau
  • 1x LED gelb
  • 2x LED grün
  • 1x LED orange
  • 2x LED rot
  • 1x Pfostenverbinder
  • 6x Taster
  • 1x Potenziometer
  • 1x Drehknopf
  • 6x 10 kOhm Widerstände
  • 7x 220 Ohm Widerstände
  • 1x 560 Ohm Widerstand
  • 6x 22 MOhm Widerstände
  • 1x isolierter Schaltdraht

Franzis Arduino Maker Kit
Autor: Christian Immler
Franzis Verlag
Handbuch: 160 Seiten komplett in Farbe
ISBN: 978-3-645-65219-3(amazon.de)

 


Franzis Raspberry Pi Maker Kit

65269-8-raspberrry-pi-maker-kit-cover20 Projekte – 62 Bauteile – Programmierung in Scratch und Python

Der Franzis-Verlag schreibt zum neuen Raspberry Pi Maker Kit:
Sie haben bereits einen Raspberry Pi im Einsatz und vielleicht auch schon ein erstes Elektronik-Projekt umgesetzt? Dann sind Sie hier richtig: Dieses Lernpaket bietet alles, um mehr als nur einfache Projekte umzusetzen: 62 Bauteile sowie ein 160-seitiges Handbuch. Nachdem Sie die 20 detailliert beschriebenen Projekte umgesetzt haben, sind Sie bereit für die Welt der Maker.

Ihr Raspberry Pi kann viel mehr, als Sie dachten: Steuern Sie Ihren Minicomputer mit Löffeln, lassen Sie sich Songs auf dem LCD anzeigen oder bauen Sie Ihre eigene Binäruhr. Dank der grafischen Programmiersprache Scratch klappt das alles in kürzester Zeit. Vorkenntnisse in der Programmierung sind nicht notwendig. Falls für Ihre Ideen die GPIO-Anschlüsse nicht ausreichen, lernen Sie in einem Projekt, wie Sie die Ports erweitern.

Der Raspberry Pi – ein PC im Miniformat

Mit dem speziell angepassten Linux ist der Raspberry Pi (nicht im Paket enthalten) ein Strom sparender, lautloser PC-Ersatz. Seine frei programmierbare GPIO-Schnittstelle macht den Raspberry Pi besonders interessant für Hardwarebastler und die Maker-Szene.

Projekte im Raspberry Pi Maker Kit:

  • LED mit Python ein-/ausschalten
  • Erste Projekte mit Scratch
  • GPIO mit Scratch ansteuern
  • Fußgängerampel mit Python und mit Scratch
  • Spielwürfel mit LEDs
  • Scratch-Katze mit GPIO-Tasten steuern
  • Digitaluhr mit Scratch auf dem LC-Display
  • LC-Display mit Python ansteuern
  • LC-Display im 8-Bit-Modus
  • IP-Adresse des Raspberry Pi anzeigen
  • Laufschrift auf dem LCD
  • Erweiterte Statusanzeige
  • Interaktive Statusanzeige mit Tasten
  • Lauflicht mit dem Portexpander
  • Binäruhr
  • CPU-Lastanzeige mit LEDs am Port-Expander
  • LC-Display am Port-Expander
  • LC-Display für RaspBMC Media Center
  • PiKey PiKey – Spiele mit den Fingern steuern

Die 62 Bauteile im Überblick:

  • 3x Steckplatine
  • 1x LCD (2-zeilig)
  • 1x Port-Expander MCP23017
  • 2x LED blau
  • 2x LED gelb
  • 2x LED grün
  • 2x LED orange
  • 2x LED rot
  • 1x Pfostenverbinder
  • 4x Taster
  • 1x 15 kOhm Potenziometer
  • 4x 10 kOhm Widerstand
  • 4x 1 kOhm Widerstand
  • 10x 220 Ohm Widerstand
  • 1x 560 Ohm Widerstand
  • 6x 22 MOhm Widerstand
  • 12x GPIO-Verbindungskabel
  • 2x ca. 1m isolierte Schaltdraht
  • 2x Krokodilkabe

Franzis Raspberry Pi Maker Kit
Autor: Christian Immler
Franzis Verlag
Handbuch: 160 Seiten komplett in Farbe
ISBN: 978-3-645-65269-8 (amazon.de)

 


 

Allgemein | Bücher | OpenStreetMap | Softwaretipps | APN-Einstellungen der wichtigsten Mobilfunkanbieter | Raspberry Pi | Unsere Partner | Warum Handbücher? | Über uns

Durch die weitere Nutzung der Seite stimmst du der Verwendung von Cookies zu. Weitere Informationen

Die Cookie-Einstellungen auf dieser Website sind auf "Cookies zulassen" eingestellt, um das beste Surferlebnis zu ermöglichen. Wenn du diese Website ohne Änderung der Cookie-Einstellungen verwendest oder auf "Akzeptieren" klickst, erklärst du sich damit einverstanden.

Schließen