控制Android充电震动的代码,Android手机使用Tasker控制充电-程序员宅基地

技术标签: 控制Android充电震动的代码  

起因

看到网上有人说,备用机长时间插在电源上会导致电池鼓包,虽然不确定真假,但还是“宁可信其有,不可信其无”,安全第一嘛。

工具

tasker

esp8266开发板

带光耦的继电器

usb公头,母头,线材若干

电烙铁(非必需,如果直接截断一根usb线接到继电器上的话,4也可以省了)

操作

基本流程

tasker在电量变化时通知单片机当前电量,单片机收到手机发来的http post包后查看当前电量,并决定是否操作继电器。例如,当点量小于35时启动充电,等于100时关闭充电,36~99时不进行任何操作。

tasker

在tasker上新建一个电量变化配置文件。

c3df9a4b97548a6d5731ceefc36276b6.png

并在电量变化时将当前电量发送至esp8266(或者发送至自己的物联网服务器,再由该 服务器 控制继电器以实现更复杂的功能。物联网部分今后有系列文章详细介绍),可参考这篇博客 《Android手机使用Tasker转发短信及来电》

esp8266+光耦继电器

ddaaeb489a5d0103f46e3ef6ae1089f6.png

大致效果如图。简单来说就是把继电器的vcc,gnd,sig连接至开发板的Vusb,GND,一个gpio口。之后将usb充电线的vcc线截断,连接至继电器的常开端(为了,省电)

备注:关于光耦继电器

esp8266的gpio是3.3v,但常见的arduino继电器模块是5V的,部分模块可能无法正常使用。采用光耦继电器可以避免因为电平不匹配带来的麻烦。

arduino

这里使用arduino来编写esp8266的代码。只贴出处理函数,其它支持代码(如,连接wifi,启动web服务器,gpio初始化)略。

server.on("/auto", [](){

digitalWrite(led, 0);

for (uint8_t i=0; i

if (server.argName(i) == "battery"){

//当电量<35时,继电器对应的引脚写1,启动继电器

if(server.arg(i).toInt() < 35){

digitalWrite(PIN, 1);

}

//当电量=100时,继电器对应的引脚写0,关闭继电器

if(server.arg(i).toInt() == 100){

digitalWrite(PIN, 0);

}

}

}

digitalWrite(led, 1);

server.send(200, "text/plain", "auto");

});

ESP8266 可以使用 lua 编写,不过我个人对它不熟所以用了相对熟悉的arduino

其它思路

Tasker中可以实现对应电量触发不同任务,给继电器直接下达开/关命令。我并没有采用这种思路,原因见2

Tasker将电池电量送至物联网服务器,由物联网服务器来控制继电器开关。最初设计为该思路,但物联网服务器没写完,故只能将这部分功能转移到单片机上实现

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_35516624/article/details/117582670

智能推荐

二级菜单原生js实现_原生一级二级菜单-程序员宅基地

文章浏览阅读1.8k次。今天莫名其妙想用原生js实现二级菜单,之前用jquery感觉挺简单的,但是jquery好久没用了,试着用原生的js实现一下。首先用nodeName判断子节点为li元素,然后就有二种实现方式1.item.style.display用none和block进行菜单伸缩这种方式挺常见的,但是一开始判断display的值要考虑多一些,因为这种方式加css是直接加到标签上的。代码如下<!DOCTYPE html><html><head><..._原生一级二级菜单

[西柚仔]Gateway网关(二)路由、 断言、 过滤 +实战(源码)_什么是断言 路由 过滤器-程序员宅基地

文章浏览阅读347次。Gateway网关(二)路由、 断言、 过滤 +实战(源码)前言今天给大家讲解一下Gateway三大核心:Route(路由)、Predicate(断言)和Filter(过滤),然后给大家演示代码实操。Route(路由):路由是构建网关的基本模块,它由ID,目标URL,一系列的断言和过滤器组成,如断言为true则匹配路由。Predicate(断言):断言是JDK8的新特性,可以参考java.util.function.Predicate。断言是编程术语,表示为一些布尔表达式,程序员相信在程序中的某个特_什么是断言 路由 过滤器

手机号正则匹配规则_23、使用正则完成市面上手机规则的编写、随机生成11位数然后通过正则匹配出符合规-程序员宅基地

文章浏览阅读557次。$isMob = "/^1[3-9]\d{9}$/";_23、使用正则完成市面上手机规则的编写、随机生成11位数然后通过正则匹配出符合规

blender中文三维立体文字制作方法_blender怎么做立体字-程序员宅基地

文章浏览阅读2w次。启动blender后使用左侧工具栏;“Create”创建 → “Text”文本 ;选中刚刚创建的text,点击键盘tab键,或者调整到编辑模式,或者在对象目录树中选中刚刚创建的text对象;这时候变为可编辑状态,英文字母或者数字可以直接输入,输入后左下角会出现insert text的对话面板;中文无法在blender中直接输入,所以要打开一个记事本,输入中文,然后复制中文,..._blender怎么做立体字

计算机网络 第二章 物理层 笔记-程序员宅基地

文章浏览阅读97次。b站 王道计算机考研 计算机网络 笔记

Vue + elementUi 实现菜单无限级的分类导航_vue 菜单分类-程序员宅基地

文章浏览阅读4.4k次。Vue + elementUi 实现菜单无限级的分类导航[ { "id": 1, "parent_id": 0, "menu_name": "第一级菜单 1", "sorting": 0, "node": [ { "id": 2, ..._vue 菜单分类

随便推点

如何将本地项目提交到git服务器中_git 提交一个已有的本地项目到服务器-程序员宅基地

文章浏览阅读693次。1、初始化git git init2、添加要提交的文件 git add 文件名(注:当要把整个项目都提交则用 git add . ,每次文件只要被修改,都要重新在add一次,不然commit只会提交add 暂存区里的内容)3、完成提交 git commit -m "描述"4、将本地git和服务器上的连接(如果已经连接,这一步可以省略) git remote add origin ***.git ,origin是你要提交到的仓库的地址5、将本地项目推..._git 提交一个已有的本地项目到服务器

Postgresql本地语言环境参数设置(LC_COLLATE,LC_CTYPE)-程序员宅基地

文章浏览阅读1.5w次,点赞5次,收藏22次。大家在安装PG的时候,可能会忽略LC_COLLATE,LC_CTYPE参数设置,这里说明一下这两个参数的设置是在初始化数据库的时候设置的,初始化后是无法更改的,所以还是要注意一下。如果你本地系统设置的语言环境就是你想要的,那么这里可以不加该参数,如果不是你需要的,那么这里可以指定为你需要的语言环境设置其他相类似的参数可以更改,如lc_messages,lc_monetary,lc_numeric..._lc_collate

新时代火热技术栈:大数据->人工智能(AI)->区块链_区块链大数据人工智能测试方案-程序员宅基地

文章浏览阅读3.8k次,点赞2次,收藏7次。前言 对于大数据与人工智能,相信大家已经耳熟能详了,所以本文在此仅会重点讲解区块链这个概念,读完本文您将收获到:了解一种链接了当今时代几大热点的技术栈,并知道该技术栈将在未来发挥怎么样重要的作用。_区块链大数据人工智能测试方案

android 自动更新(适配6.0-9.0)_com.qianwen:update-app:3.5.2-程序员宅基地

文章浏览阅读1.3k次。使用GitHub开源的项目AppUpdate使用文档也写的非常清楚1.设置Gradle 依赖dependencies { compile 'com.qianwen:update-app:3.5.2'}2.设置get方式请求服务器获取是否更新的JSON数据,返回的数据格式参加开源项目的使用文档3.在需要app调用更新的时候引用下面代码并且更新下载new Upda..._com.qianwen:update-app:3.5.2

计算机图形学知识点_计算机图形学的两个核心问题分别是什么-程序员宅基地

文章浏览阅读1.3k次。1 什么是计算机图形学数学算法将二维或三维图形转化为计算机显示器的栅格形式的科学。简单地说,计算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。虽然通常认为CG是指三维图形的处理,事实上也包括了二维图形及图像的处理。 计算机图形学主要包含四大部分的内容:建模(Modeling)、渲染(Rendering)、动画(Animatio..._计算机图形学的两个核心问题分别是什么

ai人工智能论文写作方法有哪些?-程序员宅基地

文章浏览阅读344次,点赞9次,收藏8次。aipaperpass作为一款智能写作助手,集成了上述多种AI人工智能论文写作方法。它不仅可以提供论文写作思路、快速生成初稿、检查语法和拼写错误等功能,还能自动摘要、推荐内容、格式化排版等。这些功能使得aipaperpass成为一款强大的论文写作工具,能够帮助研究者更加高效、准确地完成论文的撰写工作。

推荐文章

热门文章

相关标签