优雅地给树莓派添加开关机键
作为一个硬件爱好者、嵌入式系统工程师、技术宅,树莓派肯定是要玩一玩的,但是用的时间长了总会发现它有一些不完美的地方,比如:没有电源键!
常用的关机方法有两种(外接屏幕和键盘的就不说了):
1、远程登录然后敲命令(这是最合适的关机方法,但是太麻烦,如果没有电脑在身边就没法关机了)
2、拔电源(简单粗暴,但很容易导致文件损坏)
所以为了愉快的使用树莓派,最好还是给它添加一个像电脑一样的电源键,百度了一大圈发现国内(没错,我就是针对国内,来来回回就那么几篇文章,还反反复复互相抄)只有一种添加电源键的方法,那就是写个python脚本、或者其他脚本、或者编译一个程序,反正原理都是一样的,让这个脚本(或程序)开机启动,程序中一直检测设置为电源键的GPIO,如果被触发则关机。这个方法虽然能解决问题,但真的low爆了!!!而且只能关机,不能开机。
在这里跟大家分享一个非常优雅,能关机也能开机的方法:
打开并仔细阅读 /boot/overlays/README
好了今天的分享到此结束,谢谢大家。
其实 /boot/overlays/README 里面已经说的很详细了,为了造福广大人民群众,我就整理一下。
不少人看见英文就头疼,而且这个文件有上千行,很少有人会仔细阅读,这里我就只把电源相关的内容摘录出来(不同版本系统文件的内容略有不同):Name: gpio-shutdown Info: Initiates a shutdown when GPIO pin changes. The given GPIO pin is configured as an input key that generates KEY_POWER events. This event is handled by systemd-logind by initiating a shutdown. Systemd versions older than 225 need an udev rule enable listening to the input device: ACTION!="REMOVE", SUBSYSTEM=="input", KERNEL=="event*", SUBSYSTEMS=="platform", DRIVERS=="gpio-keys", ATTRS{keys}=="116", TAG+="power-switch" This overlay only handles shutdown. After shutdown, the system can be powered up again by driving GPIO3 low. The default configuration uses GPIO3 with a pullup, so if you connect a button between GPIO3 and GND (pin 5 and 6 on the 40-pin header), you get a shutdown and power-up button. Load: dtoverlay=gpio-shutdown,= Params: gpio_pin GPIO pin to trigger on (default 3) active_low When this is 1 (active low), a falling edge generates a key down event and a rising edge generates a key up event. When this is 0 (active high), this is reversed. The default is 1 (active low). gpio_pull Desired pull-up/down state (off, down, up) Default is "up". Note that the default pin (GPIO3) has an external pullup.
这里已经说得很明白了,只要在 /boot/config.txt 中添加相关配置就能实现关机。
比如像这样:# 使用GPIO3(这里的GPIO指3BCM GPIO编号,也就是SCL1)作为电源键,下降沿为按下,上升沿为弹起,内部上拉 dtoverlay=gpio-shutdown
保存并重启,之后你只需要在GPIO3和GND之间接个按键就能实现关机,是不是很简单?
开始划重点!!考试要考的!!记住了!!
不需要添加任何配置,正常关机后不切断树莓派电源,将GPIO3拉到低电平就能开机!没错,这样就实现了开机键!如果不需要GPIO3做开机键,请自行阅读 /boot/overlays/README 中 gpio-poweroff 相关内容
前面提到的配置默认使用GPIO3,也就是SCL1作为电源键,占用了I2C接口,虽然可以用其他GPIO软件模拟I2C,但显然很不方便,最好如下改成其他GPIO,注意这样改了以后这个GPIO口只能做关机键使用,开机键还是GPIO3,目前我没有找到自定义其他开机键的方法。# 使用gpio_pin=17,即GPIO_0(物理引脚PIN_11)做关机键 dtoverlay=gpio-shutdown,gpio_pin=17,active_low=1,gpio_pull=up
GPIO3与SCL1冲突,具体表现为,当启用I2C以后,GPIO3做SCL1使用,因此只能使用GPIO3开机,不能关机。所以如果想只用一个按键作为开、关机键,必须放弃硬件I2C,用其他引脚软件模拟I2C;如果一定要即有开、关机键又同时使用硬件I2C,那么就用GPIO3做开机键,另外配置一个按键做关机键。
以上内容我只在树莓派3B+(系统版本:Raspbian Buster with desktop, Image with desktop based on Debian Buster, Version:July 2019, Release date:2019-07-10, Kernel version:4.19)上做过验证,其他版本不保证可用
/boot/overlays/README 中还有很多非常有用的配置,有兴趣的同学自己去研究。
最后希望大家赶紧行动起来!!抛弃那些 low 爆的开关机按键方案吧!
本文来自 bxgj 的投稿,原发于 blog.csdn.net。
蚂蚁集团提交二轮问询答卷!细数这些企业的专利申请量备受关注的蚂蚁科技集团上市项目又有新进程,在9月9日晚间,蚂蚁交上了二试答卷。8月25日,上交所受理了蚂蚁集团的科创板IPO申请。8月30日,IPO动态更新为已问询。9月7日晚,上
酷派主动终止与小米专利侵权诉讼科技行业发展是首要任务11月10日,酷派发布了一则名为酷派集团有限公司关于主动终止与小米公司系列专利侵权诉讼的声明。酷派集团在声明中宣布即日起主动终止与小米的系列专利诉讼,并撤销正在进行的相关案件。20
小米造车?华为只帮车企造好车!科技创新的星辰大海,有望了?2月19日,小米确定造车的消息迅速登上热搜,引发大量网友讨论。股价一度上涨12,小米公司对此迅速作出回应等等看,暂时没有,等待公告。2月21日,雷军以小米董事长的身份,发布公告称本
古代十位巾帼英雄中国古代的冷兵器战争多为近身搏斗,对力量的要求决定了主要是男人的舞台。但是,在中国古代历史上,也出现了很多驰骋疆场战功赫赫的巾帼英雄。中国古代十位巾帼英雄妇好花木兰吕母迟昭平冼夫人
昭和系奥特曼TV中的最终Boss日本圆谷公司制作的特摄系列,于1966年开始播放,播放年代正值日本年号昭和。讲述了来自M78星云光之国的奥特曼保护地球的故事。昭和系奥特曼也就是指最初一代奥特兄弟。昭和系奥特曼按顺
盘点欧布奥特曼各变身形态欧布奥特曼原型的外观风格与之前的传统奥特曼无太大差异,对称的条纹中规中矩,初始形态的全身配以银色和红色为主,在凯完成第一次任务后,其脖子部分和下半身增加了大面积黑色,升级为起源形态
古代十大名医之祖针灸之祖黄帝黄帝,黄帝是传说中中原各族的共同领袖,同炎帝并称为中华民族的始祖,姓姬,一姓公孙,号轩辕氏有熊氏少典之子。生活在原始社会末期,为部落或部落联盟的领袖。帝王世纪记载黄帝使
携程穿越不确定性wumiancaijing。com疫情影响仍在,携程二季度业绩逆势大涨,作为行业风向标,携程复苏的动力何在?本文由无冕财经(wumiancaijing)原创发布作者陈欣苗编辑陈涧设
孟晚舟归来,华为困局能缓解吗?焦点wumiancaijing。com针对孟晚舟的案件结束,但美国和华为间的官司美国对华为的制裁,都还没有结束。本文由无冕财经(wumiancaijing)原创发布作者施燕芬编辑陈涧设
阿里钉钉地铁广告鄙视的21条职场规则,扎了无数职场人的心来源移动互联网,IDydhlwdyq阿里钉钉又来地铁里做广告了,上次做的广告是述说创业者的艰辛,引发了无数创业者的转发,这次钉钉广告diss的21条职场规则,说的曾经的那些职场潜规
互动式广告黑幕月流水上亿有用户被骗几十万近来一段时间在把玩App的时候总会喜欢点点App里面的砸金蛋活动,有点类似抽奖的形式,这些活动的形式有很多种,要么是砸金蛋,要么是转盘抽奖,要么是刮刮卡。。不过无论怎么玩,奖品永远