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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? define.h

?? 使用freescale的DP256B和D12做的CAN轉USB接口板的固件源代碼,現在的CAN分析儀每個至少要5000多,自己實現一個,希望對大家開發CAN轉USB有所幫助.
?? H
字號:
//出錯延時
#define TIME_OUT	8000

#define UINT uint
#define UCHAR uchar
#define ULONG ulong


void Delay(ulong time)
{
	while(time--);
}

ULONG RTI_count = 0;
ULONG CAN_REV_COUNT = 0;

//CAN的波特率設置
#define	BTR0_125kbps	0x87
#define	BTR1_125kbps	0xD8

#define	BTR0_250kbps	0x83
#define	BTR1_250kbps	0xD8

#define	BTR0_500kbps	0x81
#define	BTR1_500kbps	0xD8

#define	BTR0_1000kbps	0x80//有問題
#define	BTR1_1000kbps	0xD8//有問題

UCHAR	CAN_BTR0 = BTR0_500kbps;//波特率初始值是500kbps
UCHAR	CAN_BTR1 = BTR1_500kbps;//波特率初始值是500kbps

//-------------------   CAN   ------------------------
//定義CAN信息幀的數據類型。
typedef  struct  _ASCL_CAN_OBJ{
	ulong	time;
	ulong	channel 	;//接收該幀的CAN通道
	ulong	ID;
	uchar	RemoteFlag	;//是否是遠程幀
	uchar	ExternFlag	;//是否是擴展幀
	uchar	DataLen		;
	uchar	Data[8];
	uchar	Recv_buffer_overflow_status;
}ASCL_CAN_OBJ;

uchar Recv_buffer_overflow = 0;
uchar SCI_CMD = 0;
uchar RX0_OK = 0;
uchar RX1_OK = 0;
uchar TX_OK = 0;

//發送幀信息格式定義
typedef  struct  _SendFrame_OBJ
{
	uchar   RemoteFlag;         //遠程幀標志
	uchar   ExternFlag;         //擴展幀標志
	ulong   ID;                 //標識符
	uchar   Priority;           //優先級 
	uchar   DataLen;            //數據長度
	uchar   Data[8];            //數據域
}SendFrame_OBJ;
SendFrame_OBJ   SendFrame;


//-------------------   USB   ------------------------

#define D12_DATA	(*((volatile unsigned char*)(0x0000)))
#define D12_CMD		(*((volatile unsigned char*)(0x0001)))

#define D12_DATA_SOFT 		0x0000
#define D12_COMMAND 	0x0100

#define D12_CMD_HARD		0xAAAA
#define D12_DATA_HARD		0xBBBB

#define		D12_SPD_0		( PTM_PTM6 = 0 )
#define		D12_SPD_1		( PTM_PTM6 = 1  )
#define		D12_A0_0		( PTM_PTM7 = 0 )	//或者( PORTB_BIT0 = 0 )	//看硬件連接情況
#define		D12_A0_1		( PTM_PTM7 = 1 )	//或者( PORTB_BIT0 = 1 )	//看硬件連接情況
#define		D12_INT_0		( PORTE_BIT1 == 0 )
#define		D12_INT_1		( PORTE_BIT1 == 1 )

#define 	D12_WR_1		 PORTE_BIT4 = 0;
#define 	D12_WR_0		 PORTE_BIT2 = 0;PORTE_BIT4 = 1; 
#define 	D12_RD_1		 PORTE_BIT4 = 0; 
#define 	D12_RD_0		 PORTE_BIT2 = 1;PORTE_BIT4 = 1; 


#define		Set_LED(led)	(PTP = ~led)
uchar Get_LED()
{
	return ~PTP;
}

uchar USB_D12_OK = 0;
#define	RTI_LED_ON		(PTP_PTP0 = 0)
#define	RTI_LED_OFF		(PTP_PTP0 = 1)

#define	USB_LED_ON		(PTP_PTP1 = 0)
#define	USB_LED_OFF		(PTP_PTP1 = 1)

#define	LED2_ON			(PTP_PTP2 = 0)
#define	LED2_OFF		(PTP_PTP2 = 1)

#define	LED3_ON			(PTP_PTP3 = 0)
#define	LED3_OFF		(PTP_PTP3 = 1)

#define	CAN1_TX_LED_ON		(PTP_PTP4 = 0)
#define	CAN1_TX_LED_OFF		(PTP_PTP4 = 1)

#define	CAN1_RX_LED_ON		(PTP_PTP5 = 0)
#define	CAN1_RX_LED_OFF		(PTP_PTP5 = 1)


#define	CAN0_TX_LED_ON		(PTP_PTP6 = 0)
#define	CAN0_TX_LED_OFF		(PTP_PTP6 = 1)

#define	CAN0_RX_LED_ON		(PTP_PTP7 = 0)
#define	CAN0_RX_LED_OFF		(PTP_PTP7 = 1)


UCHAR D12_INT = 0;

UINT EP0_Request_wLength = 0;
UINT EP0_Request_wCount = 0;
UCHAR * EP0_Request_PData;
UINT EP0_state = 0;

UINT EP0_Receive_wLength = 0;
UINT EP0_Receive_wCount = 0;
UCHAR EP0_Receive_PData[16] = {0};

UINT EP1_CMD = 0;
UINT EP1_Request_wLength = 0;
UINT EP1_Request_wCount = 0;
UCHAR EP1_Request_PData[64] = {0};
UINT EP1_state = 0;

UINT EP2_CMD = 0;
ULONG EP2_Request_wLength = 0;
ULONG EP2_Request_wCount = 0;
UCHAR* EP2_Request_PData;
UCHAR EP2_Test_data[64] ={0};
UINT EP2_state = 0;

#define IDLE           0
#define TRANSMIT       1
#define RECEIVE        2

UCHAR EP1_Out_buf[16] = {0};
UCHAR EP2_Out_buf[64] = {0};

#define SWAP(x)   ((((x) & 0xFF) << 8) | (((x) >> 8) & 0xFF))

//設備描述符
UCHAR DeviceDescr[18] =
{
	0x12,0x01,
    0x10,0x01,//USB規范版本1.1,以BCD碼表示
    0xdc,  //設備類碼(0xdc表示測試類型)
    0,  //設備子類碼
    0,  //設備協議
    16,//最大封包大小
	0xaa,0xaa,//制造商ID(idVendor)
	0xbb,0xbb,//產品ID(idProduct)
	0x00,0x01,//發行序號,以BCD表示
    0,//制造商的字符串描述符索引
    0,//產品的字符串描述符索引
    0,//設備序號的字符串描述符索引
	1//配置描述符的個數
};


UCHAR ConfigDescr[46] =
{
	//配置描述符
    0x09, 0x02,
    0x2e,0x00,	//描述符的總長度
	1,           //接口描述符的個數
	1,           //該配置描述符的值
    0,           //該配置描述符的字符串描述符的索引
	0xa0,        //供電方式:總線供電
	1,         //最大耗電量
	
	//接口描述符
	0x09,//接口描述符長度
    0x04,//接口描述符標識
    0,		//接口描述符的索引(從0開始)
    0,		//交互設定值 bAlternateSetting
	4,		//端點數目
	0xdc,		//接口類碼(0xdc表示測試類型)
	0xa0,		//接口次類碼,0表示無無次類碼,1表示引導接口次類
	0xb0,		//接口協議,0表示無,1表示鍵盤接口協議,2表示鼠標接口協議
	0,		//接口描述符的字符串描述符的索引
	
	//端點描述符--EP1_IN
	0x07,//sizeof(USB_ENDPOINT_DESCRIPTOR),
	0x05,//USB_ENDPOINT_DESCRIPTOR_TYPE,
	0x81,//端點的地址
	0x03,//00->控制傳輸;01->實時傳輸;02->大量傳輸;03->中斷傳輸
	16,0x00,//該斷點能傳輸的最大字節數
	10,           //輪循間隔,以1毫秒為單位(只對中斷端點和同步端點有效)
	
	//端點描述符--EP1_OUT
	0x07,          //sizeof(USB_ENDPOINT_DESCRIPTOR),
	0x05,          //USB_ENDPOINT_DESCRIPTOR_TYPE,
	0x01,           //端點的地址
	0x03,          ////00->控制傳輸;01->實時傳輸;02->大量傳輸;03->中斷傳輸
	16,0x00,     //該斷點能傳輸的最大字節數,
	10,              ////輪循間隔,以1毫秒為單位(只對中斷端點和同步端點有效)
	
	//端點描述符--EP2_IN
	0x07,//sizeof(USB_ENDPOINT_DESCRIPTOR),
	0x05,//USB_ENDPOINT_DESCRIPTOR_TYPE,
	0x82,//端點的地址
	0x02,////00->控制傳輸;01->實時傳輸;02->大量傳輸;03->中斷傳輸
	64,0x00,//該斷點能傳輸的最大字節數
	0,           ////輪循間隔,以1毫秒為單位(只對中斷端點和同步端點有效)
	
	//端點描述符--EP2_OUT
	0x07,          //sizeof(USB_ENDPOINT_DESCRIPTOR),
	0x05,          //USB_ENDPOINT_DESCRIPTOR_TYPE,
	0x02,           //端點的地址
	0x02,          ////00->控制傳輸;01->實時傳輸;02->大量傳輸;03->中斷傳輸
	64,0x00,     //該斷點能傳輸的最大字節數,
	0              ////輪循間隔,以1毫秒為單位(只對中斷端點和同步端點有效)
};


struct _device_request
{
	UCHAR bmRequestType;//一個字節
	UCHAR bRequest;//一個字節
	UINT wValue;//兩個字節
	UINT wIndex;//兩個字節
	UINT wLength;//兩個字節
} device_request;

UCHAR * my_buf= (UCHAR *)"This is TMS320LF2407 and PDIUSBD12's Response To PC! I Love USB.(BY LvWei)--------*";
UCHAR CMD_EXE_STATUS[8] = {0};//前五個字節復制bRequest,wValue,wIndex,  5,6,字節保留,7字節表示CMD是否成功執行

#define CAN_RECV_BUF_LENGTH		256					//接收緩沖區長度

uchar		Recv_Frame_status[CAN_RECV_BUF_LENGTH];

//USB包的格式定義
//注意:這個結構體修改了,在EP2中的發送歷程中計算packet長度的地方也要修改

typedef union _union_USB_Packet_OBJ
{	
	struct  _USB_Packet_OBJ
	{
		ULONG   start;
		ULONG	CAN_frame_num;
		
		ASCL_CAN_OBJ Recv_Frame[CAN_RECV_BUF_LENGTH];//緩沖區
			
		ULONG   end;
	} USB_Packet_struct;
	
	UCHAR Bytes[1 + 2 + sizeof(ASCL_CAN_OBJ)*CAN_RECV_BUF_LENGTH + 1];
} USB_Packet_;

USB_Packet_		USB_Packet;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区私人影院日本| 不卡av在线网| 中文字幕的久久| 欧美专区在线观看一区| 国产在线麻豆精品观看| 一区二区三区.www| 精品国产91久久久久久久妲己| 色综合婷婷久久| 国产一区二区三区电影在线观看| 一级精品视频在线观看宜春院| 久久久精品国产免大香伊| 欧美色网一区二区| 91丨国产丨九色丨pron| 国产毛片一区二区| 久久99久久精品欧美| 亚洲超碰97人人做人人爱| 国产精品久久久久久亚洲伦| 337p日本欧洲亚洲大胆色噜噜| 欧美喷潮久久久xxxxx| 92精品国产成人观看免费| 美女mm1313爽爽久久久蜜臀| 亚洲国产日韩av| 亚洲欧美偷拍卡通变态| 国产精品理论在线观看| 26uuu精品一区二区| 制服丝袜中文字幕亚洲| 欧美日韩中文字幕一区二区| 色天使色偷偷av一区二区| 不卡电影免费在线播放一区| 国产精品主播直播| 国产一区欧美二区| 另类成人小视频在线| 日本美女一区二区| 青青草国产精品97视觉盛宴| 亚洲一线二线三线久久久| 一区二区在线观看视频| 综合自拍亚洲综合图不卡区| 国产欧美日韩中文久久| 国产视频一区在线观看| 久久久久久久久久久久久久久99| 精品国产乱码久久久久久免费| 日韩三级电影网址| 日韩精品一区在线观看| 欧美不卡一二三| www国产精品av| 日本一区免费视频| 国产欧美一区二区精品性色| 中文字幕 久热精品 视频在线| 国产农村妇女毛片精品久久麻豆| 国产日产精品1区| 国产精品婷婷午夜在线观看| 国产精品美女久久久久aⅴ| 国产精品午夜在线观看| √…a在线天堂一区| 亚洲免费视频成人| 亚洲一区二区三区四区在线免费观看 | 日韩av一区二区三区四区| 日本欧美一区二区三区| 久久国产日韩欧美精品| 国产精品资源站在线| 99精品国产热久久91蜜凸| 一本久久a久久精品亚洲| 欧美图区在线视频| 欧美一区二区三区啪啪| 久久一区二区三区四区| 中文字幕+乱码+中文字幕一区| 综合在线观看色| 亚洲国产中文字幕| 男男成人高潮片免费网站| 国产综合一区二区| 99久久精品国产一区| 精品视频资源站| 欧美成人性福生活免费看| 国产女人水真多18毛片18精品视频| 国产精品美女久久久久久2018| 亚洲国产日韩a在线播放性色| 蜜臀a∨国产成人精品| 丁香啪啪综合成人亚洲小说| 91亚洲精品乱码久久久久久蜜桃| 欧美日韩另类国产亚洲欧美一级| 精品欧美乱码久久久久久1区2区| 国产精品电影院| 日韩国产精品久久| 粉嫩高潮美女一区二区三区| 欧美综合在线视频| 精品久久久久久无| 一区二区三区四区中文字幕| 精品一区二区三区在线播放 | 欧美激情一区二区| 亚洲午夜久久久| 国产精品一区三区| 欧日韩精品视频| 久久久久久夜精品精品免费| 国产精品久久久久久久久免费桃花| 亚洲va国产天堂va久久en| 国产精品亚洲第一| 欧美日韩国产综合一区二区 | 免费高清不卡av| 色综合天天性综合| 欧美精品一区二区蜜臀亚洲| 一区二区三区在线视频免费观看| 精品一区二区三区在线观看| 精品婷婷伊人一区三区三| 中文字幕一区二区三区四区不卡 | 欧美日韩极品在线观看一区| 国产精品久久久久毛片软件| 久久99精品久久久| 欧美猛男男办公室激情| 亚洲婷婷综合久久一本伊一区| 久久成人久久爱| 欧美美女激情18p| 亚洲激情第一区| 成人视屏免费看| 久久你懂得1024| 美女脱光内衣内裤视频久久影院| 在线国产电影不卡| 自拍偷拍亚洲激情| 成人一级片在线观看| 久久综合网色—综合色88| 日韩黄色小视频| 欧美日韩极品在线观看一区| 一区二区三区高清在线| 色综合天天综合在线视频| 国产精品短视频| 91丨porny丨首页| 国产精品成人午夜| 豆国产96在线|亚洲| 久久精品视频一区二区| 国内不卡的二区三区中文字幕| 日韩一区二区高清| 日韩 欧美一区二区三区| 欧美日本一区二区| 污片在线观看一区二区| 欧美日韩中文一区| 婷婷成人激情在线网| 欧美日韩久久不卡| 亚洲成av人片一区二区三区| 欧美视频三区在线播放| 日韩高清在线不卡| 制服.丝袜.亚洲.中文.综合| 午夜激情一区二区三区| 欧美精选一区二区| 日韩精品午夜视频| 日韩一级二级三级| 精品一区二区精品| 国产午夜亚洲精品理论片色戒| 国产精品自产自拍| 中文字幕日韩欧美一区二区三区| 91在线精品一区二区| 一区二区三区不卡视频| 69堂成人精品免费视频| 麻豆成人综合网| 久久久电影一区二区三区| 国产99久久精品| 亚洲裸体xxx| 欧美日韩一级黄| 久久99国产精品久久99果冻传媒| 久久久国产一区二区三区四区小说 | 9i在线看片成人免费| 亚洲人成在线观看一区二区| 91蝌蚪porny成人天涯| 亚洲国产日韩精品| 日韩免费一区二区三区在线播放| 麻豆精品一区二区综合av| 久久免费看少妇高潮| 成人精品鲁一区一区二区| 一区二区视频在线| 欧美日韩国产小视频| 国产伦精品一区二区三区免费| 欧美国产一区在线| 91国偷自产一区二区三区成为亚洲经典 | 日韩欧美一区在线观看| 国产精品正在播放| 亚洲欧洲精品天堂一级| 欧美日韩一区高清| 久久99久久久久久久久久久| 中文字幕一区二区三区在线观看| 精品视频在线免费| 国产激情一区二区三区| 一区二区成人在线| 久久色在线观看| 欧美色爱综合网| 国产尤物一区二区在线| 樱花影视一区二区| 久久久国产一区二区三区四区小说 | 最新国产成人在线观看| 91精品国产乱码| 成人免费观看视频| 日韩有码一区二区三区| 中文字幕中文字幕一区| 欧美一级欧美三级在线观看| 成人av影视在线观看| 免费在线视频一区| 亚洲免费观看高清完整版在线 | www.欧美精品一二区| 欧美aaaaaa午夜精品| 亚洲精品视频一区| 国产偷v国产偷v亚洲高清| 欧美一级午夜免费电影| 色狠狠综合天天综合综合|