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


Posted in Python onFebruary 18, 2019

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

light_red()

light_blue()

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

下面具体介绍步骤:

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

蓝灯正极接13,负极接14

红灯正极接12,负极接14

下面是代码:

#!/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多线程并发让两个LED同时亮的方法

以上这篇python多线程并发让两个LED同时亮的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中的reduce内建函数使用方法指南
Aug 31 Python
Python中的两个内置模块介绍
Apr 05 Python
Java多线程编程中ThreadLocal类的用法及深入
Jun 21 Python
python并发编程之多进程、多线程、异步和协程详解
Oct 28 Python
对python 命令的-u参数详解
Dec 03 Python
Python异常处理知识点总结
Feb 18 Python
pyinstaller打包opencv和numpy程序运行错误解决
Aug 16 Python
selenium+python实现自动登陆QQ邮箱并发送邮件功能
Dec 13 Python
Python 批量读取文件中指定字符的实现
Mar 06 Python
Python tcp传输代码实例解析
Mar 18 Python
详解Pytorch显存动态分配规律探索
Nov 17 Python
pytorch 权重weight 与 梯度grad 可视化操作
Jun 05 Python
对python 多线程中的守护线程与join的用法详解
Feb 18 #Python
python 多线程重启方法
Feb 18 #Python
解决Python中定时任务线程无法自动退出的问题
Feb 18 #Python
将string类型的数据类型转换为spark rdd时报错的解决方法
Feb 18 #Python
对Python3使运行暂停的方法详解
Feb 18 #Python
解决python线程卡死的问题
Feb 18 #Python
Python中时间datetime的处理与转换用法总结
Feb 18 #Python
You might like
Windows2003 下 MySQL 数据库每天自动备份
2006/12/21 PHP
纯php打造的tab选项卡效果代码(不用js)
2010/12/29 PHP
用PHP读取超大文件的实例代码
2012/04/01 PHP
phpmailer在服务器上不能正常发送邮件的解决办法
2014/07/08 PHP
PHP文件锁函数flock()详细介绍
2014/11/18 PHP
php不使用copy()函数复制文件的方法
2015/03/13 PHP
学习ExtJS accordion布局
2009/10/08 Javascript
jquery隐藏标签和显示标签的实例
2013/11/11 Javascript
jQuery 1.9.1源码分析系列(十三)之位置大小操作
2015/12/02 Javascript
详解js跨域原理以及2种解决方案
2015/12/09 Javascript
jQuery CSS3相结合实现时钟插件
2016/01/08 Javascript
当jquery ajax遇上401请求的解决方法
2016/05/19 Javascript
jquery siblings获取同辈元素用法实例分析
2016/07/25 Javascript
BootStrap表单时间选择器详解
2017/05/09 Javascript
bootstrap响应式工具使用详解
2017/11/29 Javascript
Node.js利用console输出日志文件的方法示例
2018/04/27 Javascript
JavaScript事件委托原理与用法实例分析
2018/06/07 Javascript
在Vue中使用antv的示例代码
2020/06/29 Javascript
深入解答关于Python的11道基本面试题
2017/04/01 Python
深入理解Python中range和xrange的区别
2017/11/26 Python
Python 日志logging模块用法简单示例
2019/10/18 Python
TensorFlow——Checkpoint为模型添加检查点的实例
2020/01/21 Python
PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
2020/11/02 Python
Python3中的tuple函数知识点讲解
2021/01/03 Python
Roxy荷兰官方网站:冲浪、滑雪板、服装和配件
2019/10/22 全球购物
印尼第一大家居、生活和家具电子商务:Ruparupa
2019/11/25 全球购物
C#中有没有静态构造函数,如果有是做什么用的?
2016/06/04 面试题
大学校运会广播稿
2014/02/03 职场文书
大学生素质拓展活动方案
2014/02/11 职场文书
售前工程师职业生涯规划
2014/03/02 职场文书
投资建议书模板
2014/05/12 职场文书
关于读书的演讲稿600字
2014/08/27 职场文书
抗洪救灾感谢信
2015/01/22 职场文书
关于幸福的感言
2015/08/03 职场文书
用python基于appium模块开发一个自动收取能量的小助手
2021/09/25 Python
flex弹性布局详解
2022/03/20 HTML / CSS