亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? carinfor.c

?? 駕駛員考試電樁考試系統(tǒng)的車載程序
?? C
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
/****************************************Copyright (c)**************************************************
**                               長(zhǎng)春智君電子有限公司
**
**
**--------------文件信息--------------------------------------------------------------------------------
**文   件   名: CarInfor.c
**創(chuàng)   建   人: 查立軍
**最后修改日期: 2007年04月29日
**描        述: 路考車載函數(shù)
**
**--------------歷史版本信息----------------------------------------------------------------------------
** 創(chuàng)建人: 查立軍
** 版  本: 1.0
** 日 期: 2007年04月29日
** 描 述: 原始版本
**
**------------------------------------------------------------------------------------------------------
** 修改人: 查立軍
** 版  本: 2.0
** 日 期: 2007年09月19日
** 描 述:
**
**--------------當(dāng)前版本修訂------------------------------------------------------------------------------
** 修改人: 
** 日 期:
** 描 述:
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
#include "config.h"
#include "CarInfor.h"

#define byCar_Motor 		0x00800000		//DIN9		P1.23
#define byCar_Door 			0x00010000		//DIN5		P0.16
//#define byCar_Door 			0x02000000		//DIN5		P0.16
//#define byCar_Door 			0x80000000		//DIN5		P0.16
#define byCar_AirPressure 	0x00020000		//DIN6		P0.17
#define byCar_SeatBelt 		0x00100000		//DIN7		P1.20

#define byCar_A_Dir 			0xFFBFFFFF		//DIN0		P1.22
#define byCar_B_Dir 			0xFFFBFFFF 		//DIN1		P0.18
#define byCar_C_Dir 			0xFFF7FFFF 		//DIN2		P0.19
#define byCar_Motor_Dir 		0xFF7FFFFF		//DIN9		P1.23
#define byCar_Brake_Dir 		0xFFDFFFFF		//DIN4		P1.21
#define byCar_Door_Dir 			0xFFFEFFFF		//DIN5		P0.16
#define byCar_AirPressure_Dir 	0xFFFDFFFF		//DIN6		P0.17
#define byCar_SeatBelt_Dir 		0xFFEFFFFF		//DIN7		P1.20

#define bitButton1			0x02000000		//DIN9		P0.25
#define bitButton2			0x80000000		//DIN10		D31

#define byLight1	 		0x40000000		//DIN23		D30
#define byLight2	 		0x20000000		//DIN22		D29
#define byLight3	 		0x10000000		//DIN21		D28
#define byLight4	 		0x00040000		//DIN20		P1.18
#define byLight5	 		0x01000000		//DIN19		P0.24
#define byLight6	 		0x00080000		//DIN18		P1.19
#define byLight7	 		0x00800000		//DIN17		P0.23
#define byLight8	 		0x00400000		//DIN16		P0.22

#define bitButton1_Dir			0xFDFFFFFF		//DIN9		P0.25
#define bitButton2_Dir			0x7FFFFFFF		//DIN10		D31

#define byLight1_Dir 			0xBFFFFFFF		//DIN23		D30
#define byLight2_Dir 			0xDFFFFFFF		//DIN22		D29
#define byLight3_Dir 			0xEFFFFFFF		//DIN21		D28
#define byLight4_Dir 			0xFFFBFFFF		//DIN20		P1.18
#define byLight5_Dir 			0xFEFFFFFF		//DIN19		P0.24
#define byLight6_Dir 			0xFFF7FFFF		//DIN18		P1.19
#define byLight7_Dir 			0xFF7FFFFF		//DIN17		P0.23
#define byLight8_Dir 			0xFFBFFFFF		//DIN16		P0.22

#define bitOut1				0x00000800		//P0.11
#define bitOut2				0x00001000		//P0.12


//#define byCar_C 0x02000000		//DIN8		P1.25
//#define byCar_C 0x00000020		//DIN9		P0.5
//#define byCar_C 0x00000040		//DIN10		P0.6
//#define byCar_C 0x01000000		//DIN11		P1.24
//#define byCar_C 0x00020000		//DIN12		P1.17
//#define byCar_C 0x00010000		//DIN13		P1.16
//#define byCar_C 0x00000004		//DIN14		P0.2
//#define byCar_C 0x00000010		//DIN15		P0.4

//#define byCar_C 0x00400000		//DIN16		P0.22
//#define byCar_C 0x00800000		//DIN17		P0.23
//#define byCar_C 0x00080000		//DIN18		P1.19
//#define byCar_C 0x01000000		//DIN19		P0.24
//#define byCar_C 0x00040000		//DIN20		P1.18
//#define byCar_C 0x10000000		//DIN21		D24
//#define byCar_C 0x20000000		//DIN22		D29
//#define byCar_C 0x40000000		//DIN23		D30

//2008-2-8 start (for ZhangKao of ShenYang)
#define _A0		0x00000001
#define _A1		0x00000002
#define _A2		0x00000004
#define _A3		0x00000008
#define _A4		0x00000010
#define _A5		0x00000020
#define _A6		0x00000040
#define _A7		0x00000080
#define _A8		0x00000100
#define _A9		0x00000200

#define _SpeakControl 0x00020000	//P017
#define _SpeakPD      0x00040000	//P018
#define _EINT2        0x00040000	//EINT2
#define _CS2    	  0x02000000 	//P3.25    CS2
#define _A22		  0x00400000    //P3.22    A22
#define _WE			  0x08000000    //P3.27	   WE

#define byCar_Brake 		0x00100000		//right DIN15		P1.20

#define byCar_A 			0x00000400		//right DIN4		P0.10
#define byCar_B 			0x00000800		//right DIN5		P0.11
#define byCar_C 			0x00001000		//right DIN11		P0.12
//2008-2-8 end
/****************************************************************************
* 名稱:CarInforPinSet() 外部函數(shù)
* 功能:
* 入口參數(shù):
* 出口參數(shù):
****************************************************************************/
void CarInforPinSet(void)
{
	
	IO1DIR = IO1DIR & byCar_A_Dir;			//DIN0		P1.22
	IO0DIR = IO0DIR & byCar_B_Dir;			//DIN1		P0.18
	IO0DIR = IO0DIR & byCar_C_Dir;			//DIN2		P0.19

	IO1DIR = IO1DIR & byCar_Motor_Dir;		//DIN3		P0.20
	IO0DIR = IO0DIR & byCar_Door_Dir;		//DIN5		P0.16
	IO0DIR = IO0DIR & byCar_AirPressure_Dir;//DIN6		P0.17
	IO1DIR = IO1DIR & byCar_SeatBelt_Dir;	//DIN7		P1.20
	
	//BUTTONG INFOR
	IO0DIR = IO0DIR & bitButton1_Dir;		//DIN9		P0.28
	IO2DIR = IO2DIR & bitButton2_Dir;		//DIN10		D31
	
	//light 
	IO2DIR = IO2DIR & byLight1_Dir;			//DIN23		D30
	IO2DIR = IO2DIR & byLight2_Dir;			//DIN22		D29
	IO2DIR = IO2DIR & byLight3_Dir;			//DIN21		D28
	IO1DIR = IO1DIR & byLight4_Dir;			//DIN20		P1.18
	IO0DIR = IO0DIR & byLight5_Dir;			//DIN19		P0.24
	IO1DIR = IO1DIR & byLight6_Dir;			//DIN18		P1.19
	IO0DIR = IO0DIR & byLight7_Dir;			//DIN17		P0.23
	IO0DIR = IO0DIR & byLight8_Dir;			//DIN16		P0.22

	//IO out
	IO0DIR = IO0DIR | bitOut1;
	IO0DIR = IO0DIR | bitOut2;
	
//speak
//#define _CS2    	  0x00000000 	//P3.25    CS2
//#define _A22		  0x00000000    //P3.22    A22
//#define _WE			  0x00000000    //P3.27	   WE
	IO3DIR = IO3DIR | _CS2;
	IO3DIR = IO3DIR | _A22;
	IO3DIR = IO3DIR | _WE;

//2008-2-8	
//#define byCar_Brake 		0x00100000		//right DIN15		P1.20
	PINSEL2 = PINSEL2 & 0xFFFFFFF7; //.3=0   P1.20       is GPIO        is not 
	IO1DIR = IO1DIR | byCar_Brake;
	IO1SET = byCar_Brake;

//#define byCar_A 			0x00000400		//right DIN4		P0.10
	PINSEL0 = PINSEL0 & 0xFFCFFFFF; //.21.20=00   P0.10       is GPIO        is not 
	IO0DIR = IO0DIR & 0xFFFFFBFF;

//#define byCar_B 			0x00000800		//right DIN5		P0.11
	PINSEL0 = PINSEL0 & 0xFF3FFFFF; //.23.22=00   P0.11       is GPIO        is not 
	IO0DIR = IO0DIR & 0xFFFFF7FF;

//#define byCar_C 			0x00001000		//right DIN11		P0.12
	PINSEL0 = PINSEL0 & 0xFCFFFFFF; //.25.24=00   P0.12       is GPIO        is not 
	IO0DIR = IO0DIR & 0xFFFFEFFF;
	
/*	//判斷車狀態(tài):前進(jìn)、后退
byA=1;
while(byA)
{
	GPIO_input =IO0PIN;// (IO1PIN & byCar_A);// >> 22;
	byA = GPIO_input;
	GPIO_input = IO0PIN;//(IO0PIN & byCar_B) >> 18;
	byB = GPIO_input;
	GPIO_input = IO0PIN;//(IO0PIN & byCar_C) >> 19;
	byC = GPIO_input;
	}
if(GPIO_input==0x44)
byA=0;
else 
byA=3;*/
}
/****************************************************************************
* 名稱:BrakeControl(uint8 u8Brake) 外部函數(shù)
* 功能:控制剎車:
* 入口參數(shù):1:表示要求剎車
			0:表示要求解除剎車
* 出口參數(shù):
****************************************************************************/
void BrakeControl(uint8 u8Brake)
{
	if(u8Brake)
		IO1CLR = byCar_Brake;
	else
		IO1SET = byCar_Brake;
}
/****************************************************************************
* 名稱:GetCarStatus() 外部函數(shù)
* 功能:獲得車的狀態(tài):
* 入口參數(shù):
* 出口參數(shù):1,停車,2:后退,3:前進(jìn),4:熄火
****************************************************************************/
void ShowABC(unsigned char x,unsigned char y,uint8 byA,uint8 byB,uint8 byC);

uint8 GetCarStatus(uint32 iStopTime,uint32 iMotorTime)
{
	static uint8 byOldCarStatus,byCarStatus;
	static uint32 iStopCounter;
	static uint8 byOldMotor,byMotor;
	static uint32 iMotorCounter;
	static uint8 byForward,byBackward,byStop;

	uint8 byA,byB,byC;

	uint8 byCarSensorError1;
	uint8 byBrakeIn,byCarDoor,byAirPressure,bySeatBelt,byDead;

	uint32 GPIO_input;
	uint8 SendBufTemp;
	
	static uint8 iForwardCounter;
	static uint8 iBackwardCounter;
	
	//判斷車狀態(tài):前進(jìn)、后退
	
	GPIO_input = (IO0PIN & byCar_A) >> 10;
	byA = GPIO_input;
	GPIO_input = (IO0PIN & byCar_B) >> 11;
	byB = GPIO_input;
	GPIO_input = (IO0PIN & byCar_C) >> 12;
	byC = GPIO_input;
	
//	ShowABC(16,76,byA,byB,byC);
	
	byOldCarStatus = byCarStatus;
	if(byA==0 && byB==1 &&byC==1)
		byCarStatus = 0x01;
	else if(byA==1 && byB==0 &&byC==1)
		byCarStatus = 0x02;
	else if(byA==1 && byB==1 &&byC==0)
		byCarStatus = 0x03;
	else if(byA==1 && byB==1 &&byC==1)
//		byCarStatus = 0x04;
;
	else
		byCarSensorError1 = TRUE;
	
	if ((byCarStatus - byOldCarStatus)==1)// || (byOldCarStatus - byCarStatus)==2)
	{
		iStopCounter=0;
		iBackwardCounter=0;
		iForwardCounter++;
		if(iForwardCounter>1)
		{
			iForwardCounter=0;
			byForward=0x01;
			byBackward=0x00;
			byStop=0x00;
		}
	}
	else if ((byOldCarStatus - byCarStatus)==1)// || (byCarStatus - byOldCarStatus)==2)
	{
		iStopCounter=0;
		iForwardCounter=0;
		iBackwardCounter++;
		if(iBackwardCounter>1)
		{
			iBackwardCounter=0;
			byForward=0x00;
			byBackward=0x01;
			byStop=0x00;
		}
	}
	
	if (byOldCarStatus == byCarStatus)
	{
		iStopCounter++;
		if(iStopCounter>=iStopTime)
		{
			iStopCounter=0;
			byForward=0x00;
			byBackward=0x00;
			byStop=0x01;
			iForwardCounter=0;
			iBackwardCounter=0;
		}
	
	}
	else
		iStopCounter=0;
	
	//判斷車狀態(tài):熄火
	byDead=FALSE;
	
	byOldMotor=byMotor;
	GPIO_input = (IO1PIN & byCar_Motor) >> 23;
	byMotor = GPIO_input;
	if(byOldMotor == byMotor)
	{
		iMotorCounter++;
		if(iMotorCounter>iMotorTime)
			byDead = TRUE;
	}
	else
	{
		iMotorCounter=0;
		byDead = FALSE;
	}

	//判斷車狀態(tài):剎車、關(guān)門、氣壓、安全帶
	GPIO_input = (IO1PIN & byCar_Brake) >> 21;
	byBrakeIn =! (GPIO_input & 0x00000001);
	GPIO_input = (IO2PIN & byCar_Door) >> 16;
	byCarDoor =! (GPIO_input & 0x00000001);
	GPIO_input = (IO0PIN & byCar_AirPressure) >> 17;
	byAirPressure =! (GPIO_input & 0x00000001);
	GPIO_input = (IO1PIN & byCar_SeatBelt) >> 20;
	bySeatBelt =! (GPIO_input & 0x00000001);

	//車狀態(tài)
//	SendBufTemp=bySeatBelt*0x80 + byAirPressure*0x40 + byCarDoor*0x20 + byBrakeIn*0x10 + byDead*0x08 + byStop*0x04 + byBackward*0x02 + byForward*0x01;
//	byDead=1;
	SendBufTemp=byDead*0x08 + byStop*0x04 + byBackward*0x02 + byForward*0x01;
	return SendBufTemp;
}

/****************************************************************************
* 名稱:SpeakerPinSet() 外部函數(shù)
* 功能:
* 入口參數(shù):
* 出口參數(shù):
****************************************************************************/
void SpeakerPinSet(void)
{
//2008-2-5	
//#define _EINT2      	  0x00040000	//EINT2
//	PINSEL0 = PINSEL0 & 0xBFFFFFFF; //.31.30=10   P0.15       is not GPIO        is  EINT2
//	PINSEL0 = PINSEL0 | 0x80000000; 
	PINSEL0 = PINSEL0 & 0x3FFFFFFF; //.31.30=00   P0.15       is GPIO        is not EINT2
	IO0DIR = IO0DIR & 0xFFFF7FFF;
 
//2008-2-5	
//#define _SpeakControl 0x00020000	//P017
	PINSEL1 = PINSEL1 & 0xFFFFFFF3; //.3.2=00   P0.17       is GPIO        not  
	IO0DIR = IO0DIR | _SpeakControl;

//2008-2-5	
//#define _SpeakPD      0x00040000	//P018
	PINSEL1 = PINSEL1 & 0xFFFFFFFC; //.5.4=00   P0.18       is GPIO        not  
	IO0DIR = IO0DIR | _SpeakPD;

	IO3DIR = IO3DIR | 0x000003FF;//bySpeakPinA0-A9;
//	
	// _RW		P3.27		設(shè)為輸出
	IO3DIR = IO3DIR | 0x08000000;
///*	

	IO3CLR=_CS2;
	IO3CLR =_A22;

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久精品欧美丰满| 久久草av在线| 51精品视频一区二区三区| 国产成人午夜精品影院观看视频 | 国产欧美一区二区在线观看| 欧美视频日韩视频在线观看| 不卡一卡二卡三乱码免费网站| 亚洲18色成人| 一二三区精品福利视频| 国产色综合一区| 精品国产1区2区3区| 欧美一级日韩不卡播放免费| 国产69精品久久久久777| 欧美aⅴ一区二区三区视频| 夜夜嗨av一区二区三区四季av| 国产精品网站在线观看| 精品国产乱码久久久久久1区2区| 69堂国产成人免费视频| 欧美三级蜜桃2在线观看| 99re热这里只有精品免费视频| 国产成人小视频| 蜜桃一区二区三区在线| 五月天久久比比资源色| 亚洲1区2区3区视频| 亚洲线精品一区二区三区| 18成人在线观看| 国产精品久久久久久久午夜片| 精品国产精品网麻豆系列 | 悠悠色在线精品| 亚洲欧美另类在线| 亚洲激情五月婷婷| 亚洲美女免费在线| 亚洲精品中文在线观看| 樱花草国产18久久久久| 亚洲自拍欧美精品| 一区二区三区在线视频播放| 欧美国产在线观看| 欧美激情综合五月色丁香| 久久综合九色综合欧美亚洲| 精品剧情v国产在线观看在线| 777奇米成人网| 6080午夜不卡| 日韩一级在线观看| 久久精品免费看| 高清视频一区二区| 日韩三级在线观看| 欧美性高清videossexo| 91免费国产视频网站| 高清不卡一区二区在线| 不卡一区二区中文字幕| 一本一道久久a久久精品综合蜜臀| 91麻豆视频网站| 欧美日韩成人综合天天影院 | 91在线精品秘密一区二区| 大美女一区二区三区| 91亚洲国产成人精品一区二区三| 国产91精品入口| 欧美在线观看禁18| 91精品国产色综合久久ai换脸| 亚洲精品在线观| 国产婷婷色一区二区三区在线| 日韩一区欧美小说| 亚洲国产美国国产综合一区二区| 奇米精品一区二区三区在线观看 | 日韩精品一二区| 麻豆免费看一区二区三区| 韩国视频一区二区| 风间由美一区二区三区在线观看| 国产福利91精品一区| 91麻豆123| 欧美日韩久久久久久| 精品剧情在线观看| 国产精品久久久久久久久果冻传媒 | 久久久国产午夜精品| 亚洲乱码日产精品bd| 天堂蜜桃一区二区三区| 国产乱一区二区| 91久久香蕉国产日韩欧美9色| 欧美一区二区人人喊爽| 久久综合中文字幕| 亚洲一区自拍偷拍| 韩国三级在线一区| 色88888久久久久久影院野外| 精品盗摄一区二区三区| 亚洲麻豆国产自偷在线| 精品综合久久久久久8888| 成人av在线资源| 亚洲精品一区二区三区香蕉| 成人h动漫精品| 欧美日韩国产高清一区二区三区| 久久青草国产手机看片福利盒子| 亚洲女同一区二区| 国产中文字幕一区| 一本一本大道香蕉久在线精品| 欧美精品一区二区在线观看| 亚洲国产综合色| 成人综合婷婷国产精品久久蜜臀| 欧美日本一区二区| 18成人在线观看| 国产麻豆成人精品| 欧美日本一区二区| 亚洲女与黑人做爰| 国产主播一区二区三区| 日韩欧美你懂的| 亚洲一区av在线| 91在线高清观看| 国产天堂亚洲国产碰碰| 国内不卡的二区三区中文字幕| 欧美日免费三级在线| 国产精品污污网站在线观看| 开心九九激情九九欧美日韩精美视频电影 | 亚洲在线中文字幕| 丰满亚洲少妇av| 欧美成人乱码一区二区三区| 亚洲精品中文字幕乱码三区| 久久99精品久久久久久久久久久久| 91免费精品国自产拍在线不卡| 久久久噜噜噜久噜久久综合| 日本欧美在线观看| 在线观看视频欧美| 一区视频在线播放| 国产xxx精品视频大全| 精品国产一区二区三区久久影院 | 精品在线免费视频| 3751色影院一区二区三区| 一区二区三区视频在线观看| 国产91在线|亚洲| 欧美日韩精品一区二区三区| 亚洲国产美国国产综合一区二区| 91丨porny丨国产| 国产精品狼人久久影院观看方式| 精品少妇一区二区三区免费观看 | 欧美午夜精品电影| 国产日韩欧美精品在线| 国产精品99久久久| 久久久影视传媒| 免费在线观看一区二区三区| 欧美精品第一页| 欧美96一区二区免费视频| 欧美成人在线直播| 国产夫妻精品视频| 亚洲狠狠丁香婷婷综合久久久| 91国偷自产一区二区三区观看| 亚洲成年人网站在线观看| 欧美二区在线观看| 精品亚洲aⅴ乱码一区二区三区| 国产亚洲综合在线| 成人激情免费电影网址| 亚洲品质自拍视频| 欧美日韩国产一级二级| 蜜乳av一区二区三区| 欧美一级夜夜爽| 国产一区二区不卡在线| 中文字幕av一区二区三区免费看| 99久久亚洲一区二区三区青草| 一区二区三区在线视频免费| 91精品欧美综合在线观看最新| 久久精品99国产国产精| 国产午夜久久久久| 91天堂素人约啪| 日韩成人精品在线观看| 久久综合色综合88| 欧洲av一区二区嗯嗯嗯啊| 日韩电影网1区2区| 久久久91精品国产一区二区三区| 波多野结衣一区二区三区| 亚洲一区二区三区四区的| 日韩欧美国产不卡| eeuss鲁片一区二区三区在线看| 亚洲第一狼人社区| 久久女同精品一区二区| 色婷婷亚洲精品| 国产一区二区在线看| 亚洲综合成人在线| 久久亚洲春色中文字幕久久久| 成人av电影在线观看| 夜夜操天天操亚洲| 日韩欧美成人午夜| 不卡的电视剧免费网站有什么| 亚洲va韩国va欧美va精品| 久久亚洲精华国产精华液| 欧美性一二三区| 成人免费视频caoporn| 天天影视涩香欲综合网| 国产精品视频免费| 制服丝袜中文字幕亚洲| 91在线国内视频| 国产一区二区三区久久久| 欧美日韩大陆在线| 成人激情小说网站| 美腿丝袜一区二区三区| 一区二区三区在线观看网站| 久久久久久久性| 91精品国产综合久久久蜜臀图片| 成人动漫一区二区| 美女国产一区二区| 亚洲免费av高清| 中文字幕二三区不卡| 91精品国产综合久久精品性色| 国产成人av一区二区三区在线|