您的位置:首页 > 脚本大全 > > 正文

python多线程实现(python多线程并发让两个LED同时亮的方法)

更多 时间:2022-03-28 01:28:30 类别:脚本大全 浏览量:1948

python多线程实现

python多线程并发让两个LED同时亮的方法

在做毕业设计的过程中,想对多个传感器让他们同时并发执行。之前想到

light_red()

light_blue()

分别在两个shell脚本中同时运行,但是这样太麻烦了。后来学到了python多线程,让程序并发执行。

下面具体介绍步骤:

两个led灯,一个蓝灯,一个红灯

蓝灯正极接13,负极接14

红灯正极接12,负极接14

下面是代码:

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • #!/usr/bin/python
  • # -*- coding: utf-8 -*-
  •  
  • import rpi.gpio as gpio
  • import threading
  • 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()
  •   print "exiting " + self.name
  •  
  • class led_red (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_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多线程实现(python多线程并发让两个LED同时亮的方法)

    以上这篇python多线程并发让两个led同时亮的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持开心学习网。

    原文链接:https://blog.csdn.net/LEE18254290736/article/details/72440760

    您可能感兴趣