【ラズパイ】0~9の数字を表示する

7セグLEDの桁を4桁に変更しました。

それに伴い、回路も修正。

さて、実際にプログラミを作成していきます。

まずは初期化。

def initialize():
    GPIO.setmode(GPIO.BCM)
    GPIO.setup(17, GPIO.OUT)
    GPIO.setup(27, GPIO.OUT)
    GPIO.setup(22, GPIO.OUT)
    GPIO.setup(10, GPIO.OUT)
    GPIO.setup(9, GPIO.OUT)
    GPIO.setup(11, GPIO.OUT)
    GPIO.setup(5, GPIO.OUT)
    GPIO.setup(14, GPIO.OUT)
    GPIO.setup(15, GPIO.OUT)
    GPIO.setup(18, GPIO.OUT)
    GPIO.setup(23, GPIO.OUT)
    GPIO.setup(24, GPIO.OUT)


def clear():
    GPIO.output(17, GPIO.LOW)
    GPIO.output(27, GPIO.LOW)
    GPIO.output(22, GPIO.LOW)
    GPIO.output(10, GPIO.LOW)
    GPIO.output(9, GPIO.LOW)
    GPIO.output(11, GPIO.LOW)
    GPIO.output(5, GPIO.LOW)
    GPIO.output(14, GPIO.LOW)
    GPIO.output(15, GPIO.LOW)
    GPIO.output(18, GPIO.LOW)
    GPIO.output(23, GPIO.LOW)
    GPIO.output(24, GPIO.LOW)

LEDを点灯させるのですが、GPIOの番号では分かりづらいので、LEDの番号に置き換え。

def ledA():
    GPIO.output(17, GPIO.HIGH)

def ledB():
    GPIO.output(27, GPIO.HIGH)

def ledC():
    GPIO.output(22, GPIO.HIGH)

def ledD():
    GPIO.output(10, GPIO.HIGH)

def ledE():
    GPIO.output(9, GPIO.HIGH)

def ledF():
    GPIO.output(11, GPIO.HIGH)

def ledG():
    GPIO.output(5, GPIO.HIGH)

これを使って、数字0~9を点灯する処理を作っていきます。


def output0():
    clear()
    ledA()
    ledB()
    ledC()
    ledD()
    ledE()
    ledF()

def output1():
    clear()
    ledB()
    ledC()

def output2():
    clear()
    ledA()
    ledB()
    ledG()
    ledE()
    ledD()

def output3():
    clear()
    ledA()
    ledB()
    ledG()
    ledC()
    ledD()

def output4():
    clear()
    ledF()
    ledB()
    ledG()
    ledC()

def output5():
    clear()
    ledA()
    ledF()
    ledG()
    ledC()
    ledD()

def output6():
    clear()
    ledA()
    ledF()
    ledG()
    ledC()
    ledE()
    ledD()

def output7():
    clear()
    ledA()
    ledB()
    ledC()

def output8():
    clear()
    ledA()
    ledB()
    ledC()
    ledD()
    ledE()
    ledF()
    ledG()

def output9():
    clear()
    ledA()
    ledB()
    ledC()
    ledD()
    ledF()
    ledG()

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください