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的pandas框架操作Excel文件中的数据教程
Mar 31 Python
通过数据库对Django进行删除字段和删除模型的操作
Jul 21 Python
python实现的正则表达式功能入门教程【经典】
Jun 05 Python
Python输出带颜色的字符串实例
Oct 10 Python
python指定写入文件时的编码格式方法
Jun 07 Python
python os用法总结
Jun 08 Python
用pycharm开发django项目示例代码
Jun 13 Python
python异常触发及自定义异常类解析
Aug 06 Python
Linux下升级安装python3.8并配置pip及yum的教程
Jan 02 Python
python opencv 实现对图像边缘扩充
Jan 19 Python
Python 如何创建一个线程池
Jul 28 Python
Python入门之基础语法详解
May 11 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
有关php运算符的知识大全
2011/11/03 PHP
Drupal7中常用的数据库操作实例
2014/03/02 PHP
PHP 实现的将图片转换为TXT
2015/10/21 PHP
JavaScript判断DOM何时加载完毕的技巧
2012/11/11 Javascript
浅析jQuery中常用的元素查找方法总结
2013/07/04 Javascript
轻松创建nodejs服务器(1):一个简单nodejs服务器例子
2014/12/18 NodeJs
JavaScript入门系列之知识点总结
2016/03/24 Javascript
js实现人民币大写金额形式转换
2016/04/27 Javascript
JS实现左右无缝轮播图代码
2016/05/01 Javascript
基于jquery实现即时检查格式是否正确的表单
2016/05/06 Javascript
浅谈JavaScript对象的创建方式
2016/06/13 Javascript
D3.js实现柱状图的方法详解
2016/09/21 Javascript
Angularjs实现分页和分页算法的示例代码
2016/12/23 Javascript
JS实现本地存储信息的方法(基于localStorage与userData)
2017/02/18 Javascript
jQuery插件FusionCharts绘制的3D环饼图效果示例【附demo源码】
2017/04/02 jQuery
javascript 面向对象实战思想分享
2017/09/07 Javascript
微信小程序实现多选框功能的实例代码
2020/06/24 Javascript
vue 需求 data中的数据之间的调用操作
2020/08/05 Javascript
python通过colorama模块在控制台输出彩色文字的方法
2015/03/19 Python
python实现爬虫统计学校BBS男女比例之数据处理(三)
2015/12/31 Python
Python实现Youku视频批量下载功能
2017/03/14 Python
Python实现压缩和解压缩ZIP文件的方法分析
2017/09/28 Python
解决phantomjs截图失败,phantom.exit位置的问题
2018/05/17 Python
python 拼接文件路径的方法
2018/10/23 Python
python使用for...else跳出双层嵌套循环的方法实例
2020/05/17 Python
python中有帮助函数吗
2020/06/19 Python
如何验证python安装成功
2020/07/06 Python
Python把图片转化为pdf代码实例
2020/07/28 Python
一些常用的HTML5模式(pattern) 总结
2015/07/14 HTML / CSS
ProBikeKit澳大利亚:自行车套件,跑步和铁人三项装备
2016/11/30 全球购物
易程科技软件测试笔试
2013/03/24 面试题
制药工程专业职业生涯规划范文
2014/03/10 职场文书
民政局办理协议离婚(范本)
2014/10/25 职场文书
2015年小学语文教学工作总结
2015/05/25 职场文书
教师节晚会主持词
2015/06/30 职场文书
python 利用PyAutoGUI快速构建自动化操作脚本
2021/05/31 Python