1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我用的python控制的树莓派
下面是代码 import RPi.GPIO as GPIO import time GPIO.setmode(GPIO.BOARD) GPIO.setup(11,GPIO.IN) while 1: v=GPIO.input(11) if(v==1): print "down" time.sleep(0.5) 首先,树莓派时能运行的,使用上没问题, 运行这个代码的时候,正常没有输出的 当我把杜邦线插在11口,就出问题了,刚插上线,就开始打印down了 问题是,我只插了杜邦线的一头到11口,另一头还没动呢,怎么就接到高电平了 我换成12口也是这个样子, 这是树莓派坏了,还是怎么了? |
|
相关推荐
15个回答
|
|
用if语句试一下
|
|
|
|
这个不就是if的么
|
|
|
|
|
|
|
|
多谢,我现在试试去
|
|
|
|
可是电路都没有通啊,就是插上一根杜邦线的一头而已,也没有构成回路,为啥会这样
|
|
|
|
加了那条语句了吗?打印什么信息?
|
|
|
|
就是正常打印啊,开始时输出up,输出5个左右,开始输出down 输出12个左右,就这样循环
|
|
|
|
|
|
|
|
嗯,可以确定引脚处于浮动状态了,程序只是读取引脚的状态,引脚的内部结构是有构成回路的。至于内部结构是什么样的,高通不开源,我们也没办法知道。
|
|
|
|
那怎么解决呢
|
|
|
|
加上拉电阻或下拉电阻,就是接个10K电阻到电源或10K的电阻到地,让引脚初始为高电平或低电平。
|
|
|
|
感谢您,我已经解决了,果然是那个上拉下拉的地方
代码修改成这个可以控制上拉下拉 GPIO.setup(37, GPIO.IN, pull_up_down=GPIO.PUD_UP) 多谢 |
|
|
|
|
|
云汉达人
这个问题很简单: 原因:你的管脚配置成输入,那么处于浮空状态,外部长导线会使他拉高也很容易理解。 解决方法,你需要输入低电平,把外面导线另一头接地,不然就接3v3就ok啦,如果你是想gpio作为输出的,就不要IN,改成OUT |
|
|
|
拉个电阻试试,也许有效呢。
|
|
|
|
只有小组成员才能发言,加入小组>>
791 浏览 0 评论
1151 浏览 1 评论
2527 浏览 5 评论
2860 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2710 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1070浏览 3评论
193浏览 2评论
455浏览 2评论
368浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
453浏览 1评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 11:25 , Processed in 1.523848 second(s), Total 108, Slave 89 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号