当前位置:首页 > 长寿水果 > 红树莓 > 正文

树莓派-上拉电阻、下拉电阻与接电开关

2023-02-06 04:02:28  来源:网络   热度:

树莓派-上拉电阻、下拉电阻与接电开关

在使用树莓派的过程当中,我们难免要在外部加入一些元器件,从简单的开关,到复杂的电机,传感器。

如果你直接使用GPIO上的引脚,树莓派的元器件受电磁扰动会导致引脚上的高低电平不稳定,那么此时就需要一个电阻来将树莓派的电信号拉到一个稳定的状态。

上拉电阻就是指将输出信号固定为高电平。

电阻的选择也是有讲究的,比如说上拉电阻选择电阻大的比如10K欧,功耗就会比较小,但是可能会带来延时,同时要保证电路的驱动。

下拉电阻如果选择过小,可能会因为INPUT端的内阻过大导致电流直接接地了,INPUT端就收不到信号。

这次我其实是想检测一个外部的接电开关,接好GND和VCC之后,接电开关会延伸出一条信号线(24V),在接触端碰到金属的时候,信号线就会变成0V断开的状态。

24V对于树莓派来说是一个过于大的电压了,所以,首先我需要用一些电阻来给接电开关分压。用万用表测量好接电开关的内阻,然后挑选一个合适的电阻来进行分压,接着就像我们高中做实验那样,测量这个电阻的两端电压,最好是控制在4~5V左右。

我不确定这个电路图有没有什么多余的部分,最左边的电阻使用的是220K欧的电阻,作为INPUT的下拉电阻。电路的实现已经验证了,可以通过digitalRead来获取接电开关的闭合情况,电路的意图是使用树莓派的GPIO口能作为一个通断表测量一下电路是否通断。

如果有更好的方案可以大家多讨论。

树莓派 双网卡配置

树莓派有线网口连接一台交换机,地址10.10.10.12,交换机不连外网。

无线网口连接WIFI,地址192.168.0.201

设想是树莓派通过WIFI连接外网,通过有线连内网跑一个正在写的程序

配置好后发现两个网段都可以ping通,但是ping 不通 www.google.com

怀疑是路由表的问题

之前一个小项目上也遇到过linux系统双网卡,分别接内网外网,ping外网地址默认使用内网网卡的问题。

同时我手头有台ubuntu主机也是一样的连接方式,但是没有问题

查看之后发现路由表第一条有问题,所有的包都从eth0发出去了

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

0.0.0.0 192.168.0.1 0.0.0.0 UG 303 0 0 eth0

之前遇到过类似的问题,发现是路由的配置问题,并且问题出在先配置无线,再配置有线的情况下,反之就没问题。如果最后配置有线IP,会增加一条新的路由规则,导致数据全部从这个有线网卡发送出去。

这次直接把这条路由删掉,发现也行。

再开机启动里加上就行

sudo route del -net 0.0.0.0/0 eth0

但是加上了不其效果,猜想是相关服务还没启动,加了个time.sleep(20)解决

一周热门