Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- !/usr/bin/env python
- # -*- coding: utf-8 -*-
- # Copyright (c) 2017-18 Richard Hull and contributors
- # See LICENSE.rst for details.
- import time
- from datetime import datetime
- from luma.led_matrix.device import max7219
- from luma.core.interface.serial import spi, noop
- from luma.core.virtual import viewport, sevensegment
- def date(seg):
- now = datetime.now()
- seg.text = now.strftime("%y-%m-%d")
- def clock(seg, seconds):
- interval = 0.5
- for i in range(int(seconds / interval)):
- now = datetime.now()
- seg.text = now.strftime("%H-%M-%S")
- if i % 2 == 0:
- seg.text = now.strftime("%H-%M-%S")
- else:
- seg.text = now.strftime("%H %M %S")
- time.sleep(interval)
- def show_message_vp(device, msg, delay=0.1):
- # Implemented with virtual viewport
- width = device.width
- padding = " " * width
- msg = padding + msg + padding
- n = len(msg)
- virtual = viewport(device, width=n, height=8)
- sevensegment(virtual).text = msg
- for i in reversed(list(range(n - width))):
- virtual.set_position((i, 0))
- time.sleep(delay)
- def show_message_alt(seg, msg, delay=0.1):
- width = seg.device.width
- padding = " " * width
- msg = padding + msg + padding
- for i in range(len(msg)):
- seg.text = msg[i:i + width]
- time.sleep(delay)
- ddef main():
- serial = spi(port=0, device=0, gpio=noop())
- device = max7219(serial, cascaded=1)
- seg = sevensegment(device)
- date = 'date'
- scroll = 'scroll'
- exit = 'exit'
- display = 'display'
- Display = 'Display'
- clear = 'clear'
- while True:
- print("")
- print("time = Uhrzeit")
- print("date = Datum")
- print("scroll = Scrolling-Text")
- print("display = Displaying-TExt")
- print("exit = Exit")
- print("")
- Input = raw_input("What will you do? ")
- if Input == time:
- print ("")
- print ("Time will be showen for 60 ")
- clock(seg, seconds=60)
- seg.text = ""
- elif Input == date:
- print ("")
- print ("Datum fΓΌr 60 Sekunden aktiviert")
- date(seg)
- time.sleep(60)
- seg.text = ""
- elif Input == scroll:
- print("")
- Scroll = raw_input("What should scroll? ")
- print ("Scrolling "+Scroll+" ")
- show_message_alt(seg,""+Scroll+"")
- # print ("Scrolling "+Scroll+" ")
- elif Input == display:
- print ("")
- print ("Maximal 8 Buchstaben / Zeichen")
- Display = raw_input("What should display? ")
- print ("Displaying "+Display+"; 'clear' for a clean Display")
- seg.text = (" "+Display+" ")
- # time.sleep(10)
- # seg.text = ""
- elif Input == clear:
- print("")
- print("Clean Display")
- seg.text = ""
- elif Input == exit:
- seg.text = (" ")
- break
- else:
- print ("Unkown command / For Exit 'exit' or 'Ctrl + C'")
- if __name__ == '__main__':
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement