Kazalo:

Začnite z grafičnim vmesnikom Raspberry Pi: 8 korakov
Začnite z grafičnim vmesnikom Raspberry Pi: 8 korakov

Video: Začnite z grafičnim vmesnikom Raspberry Pi: 8 korakov

Video: Začnite z grafičnim vmesnikom Raspberry Pi: 8 korakov
Video: Как мы копим 3000$ ежемесячно живя в Японии 2024, November
Anonim
Začnite z grafičnim vmesnikom Raspberry Pi
Začnite z grafičnim vmesnikom Raspberry Pi

Imate torej Raspberry Pi in kul idejo, kako pa uporabniku olajšate interakcijo s pametnim telefonom?

Izdelava grafičnega uporabniškega vmesnika (GUI) je pravzaprav precej enostavna in z nekaj potrpljenja lahko ustvarite neverjetne projekte.

1. korak: širši pregled

Eno najmočnejših orodij, ki jih Raspberry Pi ponuja v primerjavi z drugimi mikro, je hitra hitrost in enostavnost ustvarjanja grafičnega uporabniškega vmesnika (GUI) za vaš projekt.

Eden od načinov za dosego tega, posebnost, če imate celoten zaslon na dotik (ali standardni zaslon in vnosno napravo, kot je miška), je postal neverjeten!

V tem članku bomo s Tkinterjem uporabljali Python 3:

Zmogljiva knjižnica za razvoj aplikacij grafičnega uporabniškega vmesnika (GUI) na Raspberry Pi, kar zadeva proizvajalce.

Tkinter je verjetno najpogosteje uporabljen v Pythonu in na internetu obstaja veliko virov.

2. korak: "Pozdravljeni svet" v Tkinterju

Slika
Slika

Uporabljamo aRaspberry Pi, naložen z Raspbian Stretch OS.

Za zagon naših aplikacij Tkinter GUI. lahko uporabimo tudi kateri koli drug operacijski sistem, ki ima nameščen python.

Raspbian ima nameščene Python 2, Python 3 in knjižnico Tkinter.

Če želite preveriti, katero različico ste namestili, iz zagona terminala:

python3 --verzija

Ustvarite novo datoteko z imenom app.py in vnesite spodnjo kodo, prikazano spodaj:

#!/usr/bin/python

iz tkinter import * # uvozi Tkinter lib root = Tk () # ustvari root objekt root.wm_title ("Hello World") # nastavi naslov okna root.mainloop () # zažene zanko grafičnega vmesnika

Če ne uporabljate IDE, zaženite naslednji ukaz v terminalu iz imenika, ki vsebuje vašo kodo Python, da zaženete program.

python3 app.py

3. korak: prilagoditev okna

Prilagajanje okna
Prilagajanje okna

Zdaj pa poglejmo, kako prilagoditi to okno.

Barva ozadja

root.configure (bg = "black") # spremenite barvo ozadja v "black"

ali

root.configure (bg = " # F9273E") # uporabite šestnajstiško barvno kodo

Dimenzije oken

root.geometry ("800x480") # podajte dimenzijo okna

ali

root.attributes ("-celozaslonski način", True) # nastavljeno na celozaslonski način

Upoštevajte, da se boste v celozaslonskem načinu zagozdili, če ne ustvarite načina za izhod

# lahko zapustimo, ko pritisnemo tipko za izhod

def end_fullscreen (dogodek): root.attributes ("-fullscreen", False) root.bind ("", end_fullscreen)

4. korak: Pripomočki v Tkinterju

Pripomočki v Tkinterju
Pripomočki v Tkinterju
Pripomočki v Tkinterju
Pripomočki v Tkinterju

Tkinter vključuje veliko različnih pripomočkov, ki vam pomagajo ustvariti najprimernejši uporabniški vmesnik. Pripomočki, ki jih lahko uporabite, vključujejo: • besedilno polje

• gumbi

• gumb za preverjanje

• drsnik

• polje s seznamom

• radijski gumb

• itd.

Zdaj lahko dodamo nekaj pripomočkov, kot so besedilo, gumbi in vnosi.

Dodajanje pripomočkov

Nalepke

label_1 = Oznaka (root, text = "Pozdravljeni, svet!")

Preden je viden v oknu, moramo nastaviti njegov položaj. Uporabili bomo pozicioniranje mreže.

label_1.grid (vrstica = 0, stolpec = 0) # nastavite položaj

Vnos vnosa

label_1 = Oznaka (root, text = "Pozdravljeni, svet!", font = "Verdana 26 krepko, fg ="#000 ", bg ="#99B898 ")

label_2 = Label (root, text = "Kako ti je ime?", height = 3, fg = "#000", bg = "#99B898") entry_1 = Vnos (root) #input entry label_1.grid (row = 0, stolpec = 0) label_2.grid (vrstica = 1, stolpec = 0) entry_1.grid (vrstica = 1, stolpec = 1)

Gumbi

#Dodajte gumb v okno

Button = Button (root, text = "Submit") Button.grid (vrstica = 2, stolpec = 1)

5. korak: Dodajanje logike

Dodajanje logike
Dodajanje logike
Dodajanje logike
Dodajanje logike

Zdaj imamo preprost obrazec, vendar s klikom na gumb ne naredite ničesar !!

Raziskali bomo, kako nastaviti dogodek na pripomočku za gumbe in ga povezati s funkcijo, ki se izvede ob kliku.

V ta namen bomo oznako_1 posodobili tako, da bo prikazala "Pozdravljeni + besedilo, vneseno v vnos". Ko izberete gumb za oddajo.

Prenesite spodnjo kodo in jo zaženite.

Korak 6: LED nadzor

LED nadzor
LED nadzor
LED nadzor
LED nadzor
LED nadzor
LED nadzor
LED nadzor
LED nadzor

Doslej vidimo, kako v okno dodati gumb in mu dodati logiko, da izvedemo dejanje.

Zdaj bomo kodo nekoliko spremenili. Ustvarili bomo obrazec in mu dodali dva gumba. Ena za vklop/izklop LED, druga za izhod iz programa.

Opomba: Preden zaženete svojo malino, preverite, ali imate nameščeno knjižnico GPIO, odprite ukazno okno in vnesite naslednje namestitev knjižnice GPIO. Odprite ukazno okno in vnesite naslednje:

$ sudo apt-get posodobitev

$ sudo apt-get install python-rpi.gpio python3-rpi.gpio

Zgradba:

Potrebni deli:

1 x Raspberry Pi 3

1x LED

1 x 330Ω upor

Gradnja vezja:

Sledite zgornjim fotografijam.

Bodite pozorni na usmerjenost LED in priključek, kjer je priključen (GPIO23).

7. korak: Dodajanje krmilnika servo motorja

Dodajanje krmilnika servo motorja
Dodajanje krmilnika servo motorja
Dodajanje krmilnika servo motorja
Dodajanje krmilnika servo motorja
Dodajanje krmilnika servo motorja
Dodajanje krmilnika servo motorja

Prešli bomo na nekaj drugega kot na gumb, ki ga lahko uporabimo tudi za različne vhode za nadzor izhodov PWM (Pulse Width Modulation) iz Raspberry Pi.

Servo motor je odlična izbira, saj prevede signal PWM v kot.

Konstrukcija:

Potrebni deli:

1 x Raspberry Pi 3

1x LED

1 x 330Ω upor

1 x servo motor

Gradnja vezja:

Sledite zgornjemu diagramu (LED priključen na GPIO 23, servo motor priključen na GPIO 18).

Če ste zaljubljeni, preverite video.

8. korak: Zaključek

Evo ga! Pojdite naprej in osvojite nekaj neverjetnih idej uporabniškega vmesnika!

Če imate kakršno koli vprašanje, lahko pustite komentar.

Če želite izvedeti več o mojih delih, obiščite moj kanal

myYouTube

myTwitter

myLinkedin

Hvala, ker ste prebrali ta navodila ^^ in lep dan želim. Se vidiva. Ahmed Nouira.

Priporočena: