首 页文档资料下载资料维修视频汽修在线平台
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 汽车技术 > 汽车技术
设计辅助泊车系统与DVD通信
来源:汽车电器  作者:佚名  2013-03-09 07:39:39


    通信协议中数据传输的主要内容与辅助泊车过程中需要的提示有关。主要分为:工作状态提示,文字提示,转向盘图形提示,雷达提示。

    辅助泊车工作状态分为默认模式、前后雷达模式和辅助泊车模式。

    文字提示区主要为:寻找泊车位,向左打满转向盘,向右打满转向盘,请保持转向盘角度低速行驶,速度过快,违规操作切换至工作状态,请挂前进档,请挂倒后档,制动,注意侧距,与车位平行等文字及声音提示。

    转向盘提示区主要为左/右打转向盘的动态图案提示。转向盘中间位数字提示,给出辅助泊车移动过程中的关键停车点的移动距离提示。

雷达提示和一般车的雷达报警功能保持一致。

3.2通信软件流程设计

    在辅助泊车控制器和DVD的通信过程中,用到了大量的时间,如果直接在主循环中使用相关时间标识来进行通信设计,会影响程序的可观、可读以及程序的执行效率。在本设计中,通信的设计分为两部分:一是数据的赋值过程,在主函数中随着程序运转的状态进行赋值;二是通信本身的执行在中断中进行。

    在辅助泊车控制器中使用TPM2的定时器作为时基,时间为100 μs,所有通信都用状态机来执行,其中,通信时钟线的半周期时间0.5 ms直接用定时器的时间来运行。凡是涉及时间的直接在定时器中断中运行即可。

 

    如图5、图6所示,通信的传输过程主要分为3个内容:传输内容的确定也即通信数据赋值和通信长度确定(是否是连续多个命令,几个命令),开启状态机(对状态机进行设置使之进入状态机,设置传输数据及使能状态同步和时间设置),状态机运行。其中传输内容和开启状态机在主循环和函数中进行,而状态机本身则在定时器中断中运行。

3.3通信代码设计

通信的代码设计中采用结构体加状态机的方式,所用结构体如下所示。结构体中的val为通信数据的值,数据传输时用位移动bit-shift方式进行,对于等待时间,是可以调节的,因此新增了一个等待时间,增加程序调整的灵活度。

    enum comstate {IDLE,SYN,DATA,WAIT};

//通信的状态,枚举量

    typedef struct Com_//结构体

    {

    word val ;//通信数据

    word timecnt ; //通信的时间计数

    byte  state ;//通信所处状态

    byte  wait_time ;//等待时间调节

    }_Com;

    如图5所示为状态机中的主要内容,传输过程就是对数据和时钟线的电平设置过程,所有的内容都在状态机函数中。状态机为一个整体,在100 Ls中断里运行,其代码如下:

    if (DVD timecnt>=4) //100 p,s定时器的0.5 ms状态机时基的设定

    {

    DVD_timecnt=0;

    DVD fsm inform();刀通信状态机

    }

    else DVD timecnt++;

    在使用状态机前需要在主函数中进行触发,示

例代码如下:

    inform.val=snd buf [ tmp_cnt++ ];//待发送数值

    inform.state=SYN ; //设置同步状态,使能状态

机跳转

inform.wait time=DVD_IDLE ;//设定等待时间

上一页  [1] [2] [3] [4]  下一页

  • 好的评价
      0%(0)
  • 差的评价
      0%(0)

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:99,492.19000 毫秒