Raspberry Pi:Примеры/Пользовательский интерфейс для управления устройствами: различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) (→Код) |
Нет описания правки |
||
Строка 10: | Строка 10: | ||
Сохраните программу и запустите из консоли или любой IDE: | Сохраните программу и запустите из консоли или любой IDE: | ||
<syntaxhighlight lang="python | <syntaxhighlight lang="python"> | ||
python3 gui_switch.py | python3 gui_switch.py | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 39: | Строка 39: | ||
===Python 2.X=== | ===Python 2.X=== | ||
<syntaxhighlight lang="python" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="python" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
from Tkinter import * | from Tkinter import * | ||
import RPi.GPIO as GPIO | import RPi.GPIO as GPIO | ||
Строка 70: | Строка 70: | ||
===Python 3.X=== | ===Python 3.X=== | ||
<syntaxhighlight lang="python" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="python" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
from tkinter import * | from tkinter import * | ||
import RPi.GPIO as GPIO | import RPi.GPIO as GPIO |
Версия от 06:53, 24 мая 2023
Содержание | Введение | Продукты | Операционная система | Настройка | Основы Linux | Аппаратные средства | Неисправности | Типовые проблемы | Часто возникающие вопросы | Библиотеки | Примеры |
Проверка/Оформление/Редактирование: Мякишев Е.А.
Черновик |
Пользовательский интерфейс для управления устройствами
Данный пример демонстрирует как создать форму с чекбоксом для включения или выключения устройств.
Сохраните программу и запустите из консоли или любой IDE:
python3 gui_switch.py
Необходимое оборудование
- плата Raspberry Pi;
Схема
Будьте осторожны при обращении с портами GPIO вашего Raspberry Pi. Помните входы и выходы GPIO расссчитаны на напряжение +3,3В |
Вы можете собрать схему из этих примеров для тестирования работы программы:
- Мигание светодиодом с помощью модуля RPi.GPIO
- Защита выводов GPIO от повреждения, с применением модуля RPi.GPIO
- Подключение МОП-транзистора
- Управление мощной нагрузкой с помощью реле
- Управление мощной нагрузкой с помощью Powerswitch tail
Все манипуляции по подключению производите только при отключенном питании платы Raspberry Pi |
Код
Python 2.X
from Tkinter import *
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(18, GPIO.OUT)
class App:
def __init__(self, master):
frame = Frame(master)
frame.pack()
self.check_var = BooleanVar()
check = Checkbutton(frame, text='Pin 18',
command=self.update,
variable=self.check_var, onvalue=True, offvalue=False)
check.grid(row=1)
def update(self):
GPIO.output(18, self.check_var.get())
root = Tk()
root.wm_title('On / Off Switch')
app = App(root)
root.geometry("200x50+0+0")
root.mainloop()
Python 3.X
from tkinter import *
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(18, GPIO.OUT)
class App:
def __init__(self, master):
frame = Frame(master)
frame.pack()
self.check_var = BooleanVar()
check = Checkbutton(frame, text='Pin 18',
command=self.update,
variable=self.check_var, onvalue=True, offvalue=False)
check.grid(row=1)
def update(self):
GPIO.output(18, self.check_var.get())
root = Tk()
root.wm_title('On / Off Switch')
app = App(root)
root.geometry("200x50+0+0")
root.mainloop()