python多執行緒併發讓兩個LED同時亮的方法

2022-10-03 15:48:11 字數 1789 閱讀 6014

在做畢業設計的過程中,想對多個感測器讓他們同時併發執行。之前想到

light_red()

light_blue()

分別在兩個shell指令碼中同時執行,但是這樣太麻煩了。後來學到了python多執行緒,讓程式併發執行。

下面具體介紹步驟:

兩個led燈,乙個藍燈,乙個紅燈

藍燈正極接13,負極接14

紅燈正極接12,負極接14

下面是**:

#!/usr/bin/python

# -*- coding: utf-8 -*-

import rpi.gpio as gpio

import threa程式設計客棧ding

import time

class led_blue(threading.thread): #繼承父類threading.thread

def __init__(self, threadid, name, counter):

threading.thread.__init__(self)

self.threadid = threadid

self.name = name

self.counter = counter

def run(self): #把要執行的**寫到run函式裡面 執行緒在建立後會直接執行run函式

print "starting " + self.name

led_blue_on()

p程式設計客棧rint "exiting " + self.name

class led_red程式設計客棧 (threading.thread): #繼承父類threading.thread

def __init__(self, threadid, name, counter):

threading.thread.__init__(self)

self.threadid = threadwww.cppcns.comid

self.name = name

self.counter = counter

def run(self): #把要執行的**寫到run函式裡面 執行緒在建立後會直接執行run函式

print "starting " + self.name

led_red_on()

print "exiting " + self.name

def led_blue_on():

pin_no=13

gpio.setmode(gpio.board)

gpio.setup(pin_no, gpio.out程式設計客棧)

gpio.output(pin_no,gpio.high)

def led_red_on():

pin=12

gpio.setmode(gpio.board)

gpio.setup(pin, gpio.out)

gpio.output(pin,gpio.high)

# 建立新執行緒

thread1 = led_blue(1, "light_blue_on_on", 1)

thread2 = led_red(2, "light_red_on", 2)

# 開啟執行緒

thread1.start()

thread2.start()

print "exiting main thread"

time.sleep(20)

gpio.cleanup()

效果圖,畫素很渣:

本文標題: python多執行緒併發讓兩個led同時亮的方法

本文位址:

python多執行緒併發讓兩個LED同時亮

在做畢業設計的過程中,想對多個感測器讓他們同時併發執行。之前想到 light red light blue 分別在兩個shell指令碼中同時執行,但是這樣太麻煩了。後來學到了python多執行緒,讓程式併發執行。下面具體介紹步驟 兩個led燈,乙個藍燈,乙個紅燈 藍燈正極接13,負極接14 紅燈正極...

python多執行緒實現兩個向量相加

data1 1,2,3,4,5,6,7,8,9,0 向量1 data2 3,4,5,6,2,4,3,4,5,7 向量2 匯入包 import threading from queue import queue 每乙個執行緒都需要執行的函式,每一位的加法 def job i,j,q q.put i j...

Python多執行緒,併發

單執行緒程式只有乙個 手指 但多執行緒的程式有多個 手指 每個 手指 仍然移動到控制流語句定義的下一行 但這些 手指 可以在程式的不同地方,同時執行不同的 行 你可以使用 python 的threading 模組,在單獨的執行緒中執行延遲或安排的 這個單獨的執行緒將因為 time.sleep 呼叫而...