给大家提供一些资料详细解释,有需要的自行提取,网盘地址我放在下面
链接:https://pan.baidu.com/s/1NigBeujDZTCFL0hdMiu7yg?pwd=syxp
提取码:syxp
安全气囊控制系统:
1、检测车辆行驶速度和加速度变化
2、如果车辆减速,同时当前车速和加速度都超过阀值,启动气囊
3、气囊启动分为一二级启动,一级充气后延时进行二次充气
4、气囊启动后蜂鸣器响
使用过程:突然大范围拨动电位器RV2,电机速度会剧烈变化,以此演示撞车过程
#include "ADC0832.h"
#include "intrins.h"
/*********************************************
读取ADC
**********************************************/
uchar ADC(uchar ch)//通道ch 1,2
{
uchar temp0,temp1,i;
CS=0;
temp0=0;
temp1=0;
_nop_();
_nop_();
DI=1;//开始位
_nop_();
_nop_();
CLK=1;
_nop_();
_nop_();
CLK=0;
_nop_();
_nop_();
DI=0;
_nop_();
_nop_();
//选择通道0
DI=1;
_nop_();
CLK=1;//上升沿DI=1
_nop_();
CLK=0;//1个下降沿DI=1
_nop_();
if(ch==1)
DI=0;
if(ch==2)
DI=1;
_nop_();
CLK=1;
_nop_();
CLK=0;//第3个上升沿DI=0
_nop_();
DI=1;
//********通道选择结束开始读取转换后的二进制数****
//下降沿读数,一下进行判断和处理,共8次
for(i=0;i<8;i++)
{
temp0=temp0<<1;
CLK=1;
if(DO)
temp0++;
_nop_();
CLK=0;
}
for(i=0;i<8;i++)
{
temp1=temp1>>1;
CLK=1;
if(DO)
temp1=temp1 +0x80;
_nop_();
CLK=0;
}
CS=1;
return temp0;
}
资料借鉴于此纷传