HMI-3-[汽车上电]:模拟汽车上电过程

简介: HMI-3-[汽车上电]:模拟汽车上电过程

image.png

汽车的上电过程,简单科技分为以下几步



1. 挡我们把要是拧到ACC之后,或者一键启动按第一下的时候,低压部分电器上电 VCU引电模块上电。整车进入ACC状态。


2. 这时把钥匙拧到ON状态,或者一键启动第二次按下是,通过某个特定的DAC引脚,通知整个控制电源管理芯片,控制整车控制主芯片得电运行。整车控制器得电后随即控制继电器2闭合,将蓄电池12V电源引致电机控制器,发动机控制器灯。带所有子控制器得电并完成自检成功后,通过CAN总线向整车控制器反馈上电结果,经过整车控制器确认完毕后,点亮仪表盘对应的指示灯,并通过声音提示驾驶员上电完成。这时候进入ON状态。


3. 执行点火操作。钥匙拧到start或者踩住刹车第三次按下一键启动按钮就OK了。(一键启动的车好像可以直接踩刹车点火哈)


一下为我目前的上电逻辑设计

image.png

首先,我需要判断是不是刹车踩下(Ctrl按下),如果刹车踩下,就只有两种操纵,启动和关闭操作,这里面我需要判断当前的上电状态。如果硬完成了自检即上电状态变为第二中,也就是我理解的正常启动,上电->自检->启动->关闭。


如果测试的上电状态为3,表示表示当前车是启动状态,那么不管猜不猜刹车,都得灭车。剩下其余的状态,在刹车踩下的状态下,只能执行点火启动操作。好像没有说的咋明白呀。


看下代码吧(*^▽^*)

void ControlPanel::slot_powerUpControl()
{
    if(controlIsPressed)
    {
        if(powerUpSteps == 2)
        {
            //正常点火操作
        }
        else if(powerUpSteps == 3)
        {
            if(m_meterDisplay)
            {
                m_meterDisplay->powerOff();
            }
            powerUpSteps = 0;
            m_maincontrol->setPowerControlState(powerUpSteps);
        }
        else
        {
            //执行快速点火点火
            m_meterDisplay->fastStart();
            powerUpSteps = 3;
            m_maincontrol->setPowerControlState(powerUpSteps);
        }
    }
    else
    {
        if(powerUpSteps == 0)
        {
            if(m_meterDisplay)
            {
                m_meterDisplay->powerUp();
            }
        }
        else if(powerUpSteps == 1)
        {
            if(m_meterDisplay)
            {
                m_meterDisplay->selfInspection();
            }
        }
        else if(powerUpSteps == 2)
        {
            if(m_meterDisplay)
            {
                m_meterDisplay->powerOff();
            }
            powerUpSteps = 0;
            m_maincontrol->setPowerControlState(powerUpSteps);
        }
        else if(powerUpSteps == 3)
        {
            if(m_meterDisplay)
            {
                m_meterDisplay->powerOff();
            }
            powerUpSteps = 0;
            m_maincontrol->setPowerControlState(powerUpSteps);
        }
    }
}

有部分接口还没有写完,后续持续更新。

看下效果展示image.png

目录
相关文章
|
1月前
|
监控 IDE 机器人
基于Nodemcu的手机控制小车
基于Nodemcu的手机控制小车
38 0
|
1月前
|
传感器
基于Arduino的植物状态监测系统
基于Arduino的植物状态监测系统
43 1
|
1月前
|
传感器 IDE 开发工具
基于Arduino的自行车转向指示灯
基于Arduino的自行车转向指示灯
18 0
|
4月前
|
数据采集 传感器 监控
LabVIEW汽车ECU测试系统
LabVIEW汽车ECU测试系统
54 2
|
6月前
|
编解码 监控 定位技术
LabVIEW使用单板RIO开发远程监控电源信号
LabVIEW使用单板RIO开发远程监控电源信号
44 3
HMI-39-【节能模式】实现中心仪表转速表自检及左右仪表布局
昨天我们把中心仪表的迷你仪表应写出来了,并且实现了速度表的显示,今天我们来搞一下这个中心仪表的自检,也就是转速表的自检。
HMI-39-【节能模式】实现中心仪表转速表自检及左右仪表布局
HMI-38-【节能模式】中心仪表mini仪表速度表实现
今天我们来做中心仪表的mini仪表中的车速表,就是三个数字显示,数字素材因为我的艺术家给我设计的时候,偷懒了,没有用下图中的字体,还是沿用了运动和舒适模式中的字体,咱们就将就的用吧,没有办法呀,咱也不会搞美术呀。
HMI-38-【节能模式】中心仪表mini仪表速度表实现
HMI-35-【运动模式】实现速度表和转速表自检
今天咱们给速度表和转速表增加一个自检功能, 就是从小走大最大再回到最小。用到的和上篇一样,也是有一个自己写的定时器。