树莓派python 控制GPIO
sudo pip install rpi.gpio
#!/usr/bin/env python
# encoding: utf-8 import RPi.GPIO as GPIO
import time # 指定GPIO口的选定模式为GPIO引脚编号模式
GPIO.setmode(GPIO.BCM) # 指定GPIO14的模式为输出模式,且初始状态为低电平。
# 如果上面GPIO口的选定模式指定为主板模式的话,这里就应该指定8号而不是14号。
GPIO.setup(14, GPIO.OUT,initial = GPIO.LOW) # 循环10次
for i in range(0, 10):
# 让GPIO14输出高电平(LED灯亮)
GPIO.output(14, True)
# 持续一段时间
time.sleep(0.5)
# 让GPIO14输出低电平(LED灯灭)
GPIO.output(14, False)
# 持续一段时间
time.sleep(0.5) GPIO.cleanup()
# 清理GPIO口
#!/usr/bin/env python
# encoding: utf-8
import time
import RPi.GPIO as GPIO GPIO.cleanup() GPIO.setmode(GPIO.BCM) btn_input = 27;
LED_output = 17; # GPIO btn_input set up as input.
GPIO.setup(btn_input, GPIO.IN)
GPIO.setup(LED_output, GPIO.OUT) # handle the button event
def buttonEventHandler_rising (pin):
# turn LED on
print('buttonEventHandler_rising',pin)
GPIO.output(LED_output,True) GPIO.add_event_detect(btn_input, GPIO.RISING , callback=buttonEventHandler_rising, bouncetime=200) try:
while True : time.sleep(0.1)
finally:
GPIO.remove_event_detect(btn_input)
GPIO.cleanup()
#!/usr/bin/python
#+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
#|R|a|s|p|b|e|r|r|y|P|i|-|S|p|y|.|c|o|.|u|k|
#+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
#
# ultrasonic_1.py
# Measure distance using an ultrasonic module
#
# Author : Matt Hawkins
# Date : 09/01/2013 # Import required Python libraries
import time
import RPi.GPIO as GPIO # Use BCM GPIO references
# instead of physical pin numbers
GPIO.setmode(GPIO.BCM) # Define GPIO to use on Pi
GPIO_TRIGGER = 23
GPIO_ECHO = 24 print "Ultrasonic Measurement" # Set pins as output and input
GPIO.setup(GPIO_TRIGGER,GPIO.OUT) # Trigger
GPIO.setup(GPIO_ECHO,GPIO.IN) # Echo while 1==1: # Set trigger to False (Low)
GPIO.output(GPIO_TRIGGER, False) # Allow module to settle
time.sleep(0.5) # Send 10us pulse to trigger
GPIO.output(GPIO_TRIGGER, True)
time.sleep(0.00001)
GPIO.output(GPIO_TRIGGER, False)
start = time.time() while GPIO.input(GPIO_ECHO)==0:
start = time.time() while GPIO.input(GPIO_ECHO)==1:
stop = time.time() # Calculate pulse length
elapsed = stop-start # Distance pulse travelled in that time is time
# multiplied by the speed of sound (cm/s)
distance = elapsed * 34300 # That was the distance there and back so halve the value
distance = distance / 2 print "Distance : %.1f" % distance # Reset GPIO settings
GPIO.cleanup()
树莓派python 控制GPIO的更多相关文章
- 树莓派Zero W GPIO控制
作者:陈拓 chentuo@ms.xab.ac.cn 2018.06.09/2018.07.05 0. 概述 本文介绍树莓派 Zero W的GPIO控制,并用LED看效果. 0.1 树莓派GPIO编 ...
- 在树莓派上用Python控制LED
所需材料 一个已经安装配置好了的树莓派 连接控制树莓派所用的其他必须设备 200Ω电阻 x 8 led x 8 面包板及连接线若干 电路连接 电路图 按照电路图所示,在面包板上进行连接. 编写程序 安 ...
- 树莓派基于scratch2控制GPIO
本文通过MetaWeblog自动发布,原文及更新链接:https://extendswind.top/posts/technical/raspberry_scratch2_gpio_control.m ...
- 视频图文教学 - 用最快的速度把 DotNet Core Blazor 程序安装到 树莓派中 并且用网页控制 GPIO 闪灯
前言 dotnet core 在3.0时代已经发展得很好. 尤其是在跨平台方面更已经是达到了很实用的阶段. 作为 dotnet 程序员, 应该对 Linux 有充分的了解, 也可以在业余时间玩玩硬件, ...
- Android(Linux)控制GPIO的方法及实时性分析
Linux下控制GPIO的方法有N种,详细请参考<RPi GPIO Code Samples>,文中用十多种语言演示了如何控制GPIO,非常全面详尽.因此,这里不再多做赘述,仅把调试过程中 ...
- 阿里云物联网平台体验(树莓派+Python篇)
阿里云物联网平台体验(树莓派+Python篇) 虽然对阿里云物联网平台比较熟悉了,从一开始就有幸参与了飞凤平台(Link Develop 一站式开发平台的前身)的一些偏硬件接入的工作.但是同时也见证了 ...
- 树莓派 Learning 003 --- GPIO 001 --- 点亮LED
树莓派 Learning 003 - GPIO 001 - 点亮LED 我的树莓派型号:Raspberry Pi 2 Model B V1.1 装机系统:NOOBS v1.9.2 树莓派 Learni ...
- 使用Python控制1602液晶屏实时显示时间(附PyCharm远程调试)
前言 原创文章,转载引用务必注明链接.水平有限,如有疏漏,欢迎指正. 本文介绍一下UP板的GPIO资源使用,以及一个使用Python演示一个简单的demo. 本文使用Markdown写成,为获得更好的 ...
- 树莓派4硬件---GPIO篇
树莓派拿到手已经两个多月了,其实从最开始的期待安装好ROS,到前几天完成了ROS的源码编译安装,对linux的调教也时花了些时间的.现在终于想起来,树莓派上还有GPIO,还没有用过了.说干就干,开始. ...
随机推荐
- el-pagination分页优化
表格分页优化: <template> <el-pagination small background @size-change="handleSizeChange" ...
- [LeetCode] 581. 最短无序连续子数组 ☆
描述 给定一个整数数组,你需要寻找一个连续的子数组,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序. 你找到的子数组应是最短的,请输出它的长度. 示例 1: 输入: [2, 6, 4, 8 ...
- Python学习日记(十五) collections模块
在内置函数(dict.list.set.tuple)的基础上,collections模块还提供了几个其他的数据类型:Counter.deque.defaultdict.namedtuple和Order ...
- MySQL Hardware--RAID级别查看
MegaCli查看RAID级别: ## 查raid卡信息(生产商.电池信息及所支持的raid级别) /usr/local/sbin/MegaCli -AdpAllInfo -aALL |grep -E ...
- centos7小命令
修改时区:timedate [root@centos2 ~]# timedatectl set-timezone Asia/Shanghai 修改语言:localectl [root@centos2 ...
- DeferredResult使用方式和场景
为什么使用DeferredResult? API接口需要在指定时间内将异步操作的结果同步返回给前端时: Controller处理耗时任务,并且需要耗时任务的返回结果时: 当一个请求到达API接口,如果 ...
- readme.txt 为什么我们不重视
1.很多源码项目下面都有编译说明,readme 2.我们的电脑上每个目录都有很多文件,我们似乎可以建立一个readme.txt 知道是什么 节约一些时间
- discuz论坛门户资讯入库接口【原创】
最近想打造一个社区门户站点,所以写了这个入库接口,可以对接数据入库. <?php /* * Discuz x3.2 门户免登陆发布接口 * 2018-08-10 * Copyright 68xi ...
- matlab运行程序时出现failed to start a parallel pool
运行matlab做并行时得到如下报错: failed to start a parallel pool. (For information in addition to the causing err ...
- python - alipay sdk 使用 及 注意点
一. 在 点击跳转 这里拿到自己的 appid 和 支付宝公钥 , 如果想要得到 支付宝的公钥 就需要获取 应用的公钥,具体获取方式 : 获取应用公钥和私钥 a. 应用私钥和支付宝公钥 获取 ...