数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 30439|回复: 40

[C51] 菜鸟单片机 - 废旧手机改车载智能系统

    [复制链接]
发表于 2020-2-24 12:02:41 | 显示全部楼层 |阅读模式
以前在老站回复过一个坛友的帖子,是关于手机没有电池如何直接插电池开机的。。

恰巧最近获得一个没电池的手机,改无电池开机,其基本方法和那个帖子差不多:
https://www.mydigit.cn/forum.php?mod=viewthread&tid=750



基本步骤简述:
1、在主板上找到一个+5V的测试点(有些手机主板上没有测试点,那就找等电位点)。飞线一根。
2、飞线串两根并联的4007二极管(为什么是两根4007,因为4007正向电流只有1A有些手机开机瞬间需要2A左右的电流,1根会负载不够,大电流二极管又会比较粗,造成后盖盖不上)
3、将二极管负极(白色横杠测)焊接在电池触点正极(利用二极管0.7V压降形成5-0.7=4.3V的电压)这样模拟电池供电。
4、找电阻(10K、20K、30K、40K……)插在电池触点的负极和电池检测极(四个触点的一般在负极旁边那个,五个触点还有个温度检测,)。模拟电池检测电阻。骗手机,电池存在
这里说一下,绿蓝厂的手机比较坑爹,温度检测触点不接也能开机,但开机一会,会报警电池温度过高。。所以有些手机需要电池检测电阻,和电池温度电阻都要。这里需要说明的是,不同手机电池的检测电阻不一样,大多是10K的,也有30K的,自己试。。如果你本来就有原装电池,只需要自己万用表测量一下电池的负极和检测极的电阻,找个差不多的就行了。功率很小的,贴片,环形电阻都行。
5、参考上面我回复的贴子,有些手机(现在已知高通的CPU,可以修改boot.img包里面的init.rc里面的语句on charger      class_start charger后面加上一句重启命令setprop sys.powerctl reboot然后重新打包boot.img刷入手机,就可以实现插充电器自动开机了)(但是MTK平台的CPU需要MTK平台修改Bootloader源代码,也是能修改的,需要修改两处,找到mediatek\config\sanstar82_cwet_kk目录projectconfig.mk 文件里的MTK_DISABLE_power_ON_OFF_VOLTAGE_LIMITATION=yes改成MTK_DISABLE_power_ON_OFF_VOLTAGE_LIMITATION=yes和MTK_kernel_POWER_OFF_CHARGING=no)这个目前比较麻烦,当然rom厨房修改也行。。


当然作为本贴,我们还有另外一个方法,就是用硬件直接模拟开机键实现上电自动开机(改车载智能系统,汽车发动,上电手机自动开机)
简述一下步骤:
1、找到手机主板上电源键两个触点(其实一个负极,只需要找到电源键正极就行了,如果不知道,负极接根线,然后在开键附近试试,能亮屏或者能开机就是),飞线出来
2、找一个单片机,我用的是STC15F104W,体积小巧,和一个光耦。
3、给单片机写程序,模拟上电后出现电池充电标志(一般上电后会有10s~16s之后才会出现电池充电标志)给一个高电平,控制光耦导通,相当于开机键被按下2S.。实现自动上电开机
下面给出我写的单片机程序,本程序适用于不同开机长度的需要,目前3.3脚到3.5脚都有开机信号,从10秒到16秒,,根据手机出现充电标志的时间自由选用。
单片机正极接刚才第一步飞线接出来的那个5V,负极接电池触点负极,根据需要将模拟开机信号的引脚,接光电耦合器的输入正极,光耦输入负极并在电池触点负极上
光耦的输出正极接开机键飞线出来的正极,负极还是并联在电池触点负极上。

当手机通电,单片机也上电工作,当手机系统跑码到开机检测完成,显示充电图标的时候,这时单片机引脚给了一个高电平信号,让光耦导通,这时候开机键信号在光耦的输出端接通(也就相当于按下了开机键)此时手机正常开机。。然后单片机恢复低电平,光耦关闭,相当于松开开机键。


4、手机进入开发者模式,设置充电屏幕常亮,取消屏幕解锁(或者用tasker模拟触摸滑动屏幕解锁也行,或者root后删除解锁程序也行)。
5、安装tasker软件,写自启动脚本,如自动打开行车记录软件,自动打开网络,自动打开热点,自动打开地图导航(这里我装了tasker语音控制插件,用语音唤醒导航,默认是车速油耗等信息的软件)。具体tasker软件使用方法这里不赘述,自己百度。


废旧手机取消电池后,能自由发挥。。。比如做个家用监控(掌上看家、星智装等app)、软路由、中继、移动wifi、微型服务器、电子钟、车载智能控制系统、定时器(利用闹钟功能输出定时信号,驱动继电器)物联网智能开关等等等等




图示中,我用了单片机P3.4脚控制光耦触发开机键信号,其实程序我写了四组,每个引脚时间不一样,便于大家直接用,或者简单修改。
P3.0和P3.1其实还能增加两组控制信号,考虑到有以后有可能要烧写程序,就没用他们了,
8脚有4脚用应该也足够了,VCC和GND用掉两个脚。
其实8脚单片机足够了。







/*开发板STC89C52测试,如果要换成STC15F104W用延时子程序要用软件重新生成,这两个狗屌延时不一样*/
/*(如果使用15F104W单片机,替换下延时子程序)
void Delay500ms()                //@12.000MHz
{
        unsigned char i, j, k;

        _nop_();
        _nop_();
        i = 23;
        j = 205;
        k = 120;
        do
        {
                do
                {
                        while (--k);
                } while (--j);
        } while (--i);
}



/*目前实现的功能是P3.2口10秒按下开关2秒,P3.3口12秒按下开关2秒……………………………………P3.5口16秒按下开关键2秒的功能*/
#include<reg52.h>  //52单片机头文件
#include    "intrins.h"    //程序中_nop_()函数需用
unsigned char x;
unsigned char y;
sbit K2=P3^2;  //3.2脚定义
sbit K3=P3^3;  //3.3脚定义
sbit K4=P3^4;  //3.4脚定义
sbit K5=P3^5;  //3.5脚定义
/*以下是0.5秒延时子程序*/
        void Delay500ms()                //@12.000MHz
{
        unsigned char i, j, k;

        _nop_();
        i = 4;
        j = 205;
        k = 187;
        do
        {
                do
                {
                        while (--k);
                } while (--j);
        } while (--i);
}
/*以上是0.5秒延时子程A序*/
        void main(void)                   //主函数
{        
        K2=0;                                           //3.2脚开机置0 (这时候低电平)
        K3=0;
        K4=0;                                           //3.4脚开机置0 (这时候低电平)
        K5=0;                               //3.5脚开机置0 (这时候低电平)
for(y=20;y>0;y--)
{
        Delay500ms();
}
K2=1;                                                  //通电10秒后3.2口置1  (这时候高电平)
for(y=4;y>0;y--)
{
        Delay500ms();
}
K3=1;                                                  //通电12秒后3.3口置1  (这时候高电平)
K2=0;                                                  //通电12秒后3.2口置0  (这时候低电平)
for(y=4;y>0;y--)
{
        Delay500ms();
}
K4=1;                                                  //通电14秒后3.4口置1  (这时候高电平)
K3=0;                                                  //通电14秒后3.3口置0  (这时候低电平)
for(y=4;y>0;y--)
{
        Delay500ms();
}
K5=1;                                                  //通电16秒后3.5口置1  (这时候高电平)
K4=0;                                                  //通电16秒后3.4口置0  (这时候低电平)
for(y=4;y>0;y--)
{
        Delay500ms();
}
K5=0;                                                  //通电18秒后3.5口置0  (这时候低电平)

        while (1);                   //自循环空程序,啥也不干,一直持续
}




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x

打赏

参与人数 5家元 +141 收起 理由
o759 + 50 怎样查看哪些手机开机瞬间需要2A左右的电流.
jackydiy + 6 原創內容
yangjinghuan + 10 很棒,一直想弄
家睦 + 60
人艰不拆了 + 15

查看全部打赏

发表于 2022-12-14 19:49:21 | 显示全部楼层
  一般汽车中控研发到装车需要两年周期,是一个很严谨的过程。
回复 支持 反对

使用道具 举报

发表于 2022-12-14 13:13:20 | 显示全部楼层
有时间折腾折腾
回复 支持 反对

使用道具 举报

发表于 2022-12-11 13:11:23 | 显示全部楼层
为什么,我测三星老手机的电池电阴只有2.4K,我试了2.2K,3.3K,10K,20K都不能开机呢
回复 支持 反对

使用道具 举报

发表于 2022-10-4 00:43:02 来自手机浏览器 | 显示全部楼层
感觉这个好麻烦,忘记在哪里看见过,开机键并个电容就能有点自启
回复 支持 反对

使用道具 举报

发表于 2022-4-5 14:10:39 | 显示全部楼层
向帖主学习!~
回复 支持 反对

使用道具 举报

发表于 2022-2-16 21:45:23 | 显示全部楼层
我懒的折腾了。
平时随身携带一个8寸平板,上车就架上,导航,车机,视频,都可以用上。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
回复 支持 反对

使用道具 举报

发表于 2022-2-15 19:00:57 来自手机浏览器 | 显示全部楼层
这个及时雨啊,谢谢!之前看过有人说开机键并个电容就行,我总觉得不靠谱。
回复 支持 反对

使用道具 举报

发表于 2022-2-12 08:24:34 来自手机浏览器 | 显示全部楼层
ddaniell 发表于 2020-2-25 13:58
取消了电池有什么危险,危险的是锂电池,就剩下一个主板和屏幕了,有什么危险?行车记录仪和中控也是只有 ...

楼主您好,想向您请教3触点无电池供电的连接,开机只是振动,不亮屏,麻烦,谢谢。我vx     243374059
回复 支持 反对

使用道具 举报

发表于 2022-2-10 18:57:25 | 显示全部楼层
楼主您好,麻烦有空请看下我的帖子,请教怎么改手机直流,私信没币发不了消息。
回复 支持 反对

使用道具 举报

发表于 2021-3-21 10:10:51 | 显示全部楼层
二极管并联增加电流要串分流电阻,否则容易击穿二极管
回复 支持 反对

使用道具 举报

发表于 2021-3-18 18:09:01 来自手机浏览器 | 显示全部楼层
修改boot就可以实现了:shy:,我把我红米NOTE4改的行车记录仪,实现充电开机,用tasker实现断电关机,
回复 支持 反对

使用道具 举报

发表于 2021-3-14 21:59:40 | 显示全部楼层
感觉还是整个root的手机改系统文件实现自动开机吧
然后买个hud显示的膜贴上,把手机放到玻璃下面,导航软件好像有投影显示。不知道有没有能投影显示的其他app。
回复 支持 反对

使用道具 举报

发表于 2021-3-10 08:30:55 | 显示全部楼层
待机功耗是多少:victory:
回复 支持 反对

使用道具 举报

发表于 2021-1-27 14:02:47 | 显示全部楼层
楼主太厉害了,在下佩服佩服:praise::praise::praise:
回复 支持 反对

使用道具 举报

发表于 2021-1-27 14:01:43 | 显示全部楼层
楼主厉害 了
回复 支持 反对

使用道具 举报

发表于 2020-10-20 13:33:58 | 显示全部楼层
楼主高才,佩服佩服,受教了:praise:
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-10 09:49:16 | 显示全部楼层
261307853 发表于 2020-9-7 21:44
车辆实时状态是通过什么在手机上显示的?

“图吧汽车卫士”app   要配合OBD硬件使用,我用的是咸鱼17块钱包邮的小安盒子。挺好用的,能显示车速,转速,油耗,故障码,胎压………………很多信息。
回复 支持 反对

使用道具 举报

发表于 2020-9-7 21:44:24 | 显示全部楼层
ddaniell 发表于 2020-3-3 10:08
由于主帖已经不能编辑了,今天正好拍了一张装车图,,,由于正在开车,就没拍视频了,安全重要嘛。。。
我 ...

车辆实时状态是通过什么在手机上显示的?
回复 支持 反对

使用道具 举报

发表于 2020-9-6 16:46:26 来自手机浏览器 | 显示全部楼层
你好,你那个无电池开机还是有点疑惑,方便加v请教不,我v18979681588
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-7-13 13:15 , Processed in 0.156000 second(s), 12 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表