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

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

?? scsi.c

?? USB通信程序開發(附源碼 精品)包括詳細論文說明
?? C
?? 第 1 頁 / 共 2 頁
字號:
/*++

Module Name:

         Scsi.c

Abstract:

         Header file related to D12 module

Environment:

        ICCAVR 6.29

Revision History:

        04/23/2004      chenchi   created

--*/
/******************************************************************/

#include <macros.h>
#include "d12.h"
#include "scsi.h"
#include "scsi_data.h"
#include "nflash32.h"

unsigned char BulkPhase = 0;
unsigned char BulkStausPhase;
unsigned int dCBWDaTrLen;
unsigned char * WritePageBuff = "";
unsigned int WritePageBuffLen = 0;

CSW_STRUCT  Usb_Csw;
CBW_STRUCT  Usb_Cbw;

/************************************************************
**工程名稱:U盤固件程序開發
**編譯器類型及版本:ICCAVR 6.29
**日期:2004.4.30
**創建人:陳馳
**所屬單位:湖南大學計算機與通信學院

**芯片類型:AT90S8515,PDIUSUD12,K9F5608U0A-YCB0
**時鐘頻率:8MHZ

**函數功能:處理PC發送的批量傳輸包
**函數輸入參數及說明:接收數據長度

**函數返回值:無
**在本函數以外定義的變量:
**調用的函數說明:無

**修改人:陳馳
**修改日期:2004.4.30
**修改說明:創建
*************************************************************/
void Bulk_Out_Packet(unsigned char len){
	unsigned char i,j,*p;
	unsigned char Buff[64];
	if(BulkPhase == CommandPhase){
		j = D12_DATA;
		csram;
		p = XmtBuff.b;
		*(p++) = j;
		for(i=0;i<len;i++)
		{
	  		j = D12_DATA;
	   		csram;
	   		asm("st Z+,%j");
		}
		Usb_BoCommand();
	}
	else if(BulkPhase == OutDataPhase){
		j = D12_DATA;
		csram;
		p = Buff;
		*(p++) = j;
		for(i=0;i<len;i++)
		{
	  		j = D12_DATA;
	   		csram;
	   		asm("st Z+,%j");
		}
		for(i=0;i<len;i++){
			WritePageBuff[WritePageBuffLen+i] = Buff[i];
		}
		WritePageBuffLen += len;
		if(WritePageBuffLen == 512){
			Usb_BoBulkInData();
			WritePageBuffLen = 0;
		}
	}
	D12_COMMAND = 0x04;//選擇端點(指針指向0位置)
	cwait;
	D12_COMMAND = 0xf1;
	cwait;
	D12_COMMAND = 0xf2;//清端點緩沖區
}
/************************************************************
**工程名稱:U盤固件程序開發
**編譯器類型及版本:ICCAVR 6.29
**日期:2004.4.30
**創建人:陳馳
**所屬單位:湖南大學計算機與通信學院

**芯片類型:AT90S8515,PDIUSUD12,K9F5608U0A-YCB0
**時鐘頻率:8MHZ

**函數功能:SCSI命令處理
**函數輸入參數及說明:無

**函數返回值:無
**在本函數以外定義的變量:
**調用的函數說明:無

**修改人:陳馳
**修改日期:2004.4.30
**修改說明:創建
*************************************************************/
void Usb_BoCommand(void){	
	XmtBuff.p_p=1;
	dCBWDaTrLen=((XmtBuff.b[11]<<8)+(XmtBuff.b[10]))<<15;
        dCBWDaTrLen=(dCBWDaTrLen<<1)+((XmtBuff.b[9]<<8)+(XmtBuff.b[8])) ;
	Usb_Cbw.CBWCB[0] = XmtBuff.b[15];
	switch(Usb_Cbw.CBWCB[0]){
		case 0x00:
			SCSICMD_TestUnitReady();
			BulkStausPhase = InCSWPhase;
			break;
		case 0x03:
			SCSICMD_RequestSense();
               		BulkStausPhase=InCSWPhase;
               		break;
		case 0x12:
			SCSICMD_Inquiry();
			BulkStausPhase = InCSWPhase;
			break;
		case 0x1a:
			SCSICMD_ModeSense06();
               		BulkStausPhase=InCSWPhase;
               		break;
		case 0x1e:
			SCSICMD_PreventAllowMediumRemoval();
               		BulkStausPhase=InCSWPhase;
               		break;
		case 0x23:
			SCSICMD_ReadFormatCapacities();
			BulkStausPhase = InCSWPhase;
			break;
		case 0x25:
			SCSICMD_ReadCapacity();
               		BulkStausPhase=InCSWPhase;
              		break;
		case 0x28:
			SCSICMD_Read10();
               		BulkStausPhase=InCSWPhase;
               		break;
		case 0x2a:
			SCSICMD_Write10();
               		BulkPhase =OutDataPhase;
               		break;
		case 0x2f:
			SCSICMD_Verify10();
               		BulkStausPhase=InCSWPhase;
               		break;
		case 0x5a:
			SCSICMD_ModeSense10();
               		BulkStausPhase=InCSWPhase;
               		break;
		default:
			BulkStausPhase=InCSWPhase;
			break;
	}
}
/************************************************************
**工程名稱:U盤固件程序開發
**編譯器類型及版本:ICCAVR 6.29
**日期:2004.4.30
**創建人:陳馳
**所屬單位:湖南大學計算機與通信學院

**芯片類型:AT90S8515,PDIUSUD12,K9F5608U0A-YCB0
**時鐘頻率:8MHZ

**函數功能:PC輸入數據處理
**函數輸入參數及說明:無

**函數返回值:無
**在本函數以外定義的變量:
**調用的函數說明:無

**修改人:陳馳
**修改日期:2004.4.30
**修改說明:創建
*************************************************************/
void Usb_BoBulkInData(void){
	flashWrite(WritePageBuff);
	if(WriteResidueVal == 0){
		BulkPhase = CommandPhase;
	}
}
/************************************************************
**工程名稱:U盤固件程序開發
**編譯器類型及版本:ICCAVR 6.29
**日期:2004.4.30
**創建人:陳馳
**所屬單位:湖南大學計算機與通信學院

**芯片類型:AT90S8515,PDIUSUD12,K9F5608U0A-YCB0
**時鐘頻率:8MHZ

**函數功能:回應批量傳輸包
**函數輸入參數及說明:無

**函數返回值:無
**在本函數以外定義的變量:
**調用的函數說明:無

**修改人:陳馳
**修改日期:2004.4.30
**修改說明:創建
*************************************************************/
void Bulk_In_Packet(void){
	if(XmtBuff.wrLength != 0)
		BULK_submit();
	else if(ReadResidueVal != 0)
		flashRead();
	else if(BulkStausPhase == InCSWPhase){
		XmtBuff.p_p=0;
		XmtBuff.p = (unsigned char *)&Usb_Csw;
		XmtBuff.wrLength = 13;
		BULK_submit();
	}
}
/************************************************************
**工程名稱:U盤固件程序開發
**編譯器類型及版本:ICCAVR 6.29
**日期:2004.4.30
**創建人:陳馳
**所屬單位:湖南大學計算機與通信學院

**芯片類型:AT90S8515,PDIUSUD12,K9F5608U0A-YCB0
**時鐘頻率:8MHZ

**函數功能:SCSI命令
**函數輸入參數及說明:無

**函數返回值:無
**在本函數以外定義的變量:
**調用的函數說明:無

**修改人:陳馳
**修改日期:2004.4.30
**修改說明:創建
*************************************************************/
void SCSICMD_Inquiry(void){
	Usb_Set_Csw();
	Usb_Csw.dCSWDataResidue[1] = 0;
	Usb_Csw.dCSWDataResidue[2] = 0;
	Usb_Csw.dCSWDataResidue[3] = 0;
	Usb_Csw.dCSWDataResidue[4] = 0;
	XmtBuff.pp = SCSI_INQUIRY;
	XmtBuff.wrLength = 36;
	BULK_submit();
}
/************************************************************
**工程名稱:U盤固件程序開發
**編譯器類型及版本:ICCAVR 6.29
**日期:2004.4.30
**創建人:陳馳
**所屬單位:湖南大學計算機與通信學院

**芯片類型:AT90S8515,PDIUSUD12,K9F5608U0A-YCB0
**時鐘頻率:8MHZ

**函數功能:創建CSW數據塊
**函數輸入參數及說明:無

**函數返回值:無
**在本函數以外定義的變量:
**調用的函數說明:無

**修改人:陳馳
**修改日期:2004.4.30
**修改說明:創建
*************************************************************/
void Usb_Set_Csw(void){
	Usb_Csw.dCSWSignature[0] = 0x55;
	Usb_Csw.dCSWSignature[1] = 0x53;
	Usb_Csw.dCSWSignature[2] = 0x42;
	Usb_Csw.dCSWSignature[3] = 0x53;
	Usb_Csw.dCSWTag[0] = XmtBuff.b[4];
	Usb_Csw.dCSWTag[1] = XmtBuff.b[5];
	Usb_Csw.dCSWTag[2] = XmtBuff.b[6];
	Usb_Csw.dCSWTag[3] = XmtBuff.b[7];
	Usb_Csw.bCSWStatus = 0;
}
/************************************************************
**工程名稱:U盤固件程序開發
**編譯器類型及版本:ICCAVR 6.29
**日期:2004.4.30
**創建人:陳馳
**所屬單位:湖南大學計算機與通信學院

**芯片類型:AT90S8515,PDIUSUD12,K9F5608U0A-YCB0
**時鐘頻率:8MHZ

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国内不卡的二区三区中文字幕| 欧美视频一区在线观看| 成人精品国产免费网站| 欧美专区在线观看一区| 欧美国产一区二区在线观看| 日本一不卡视频| 在线观看日韩高清av| 国产女人水真多18毛片18精品视频 | 99久久精品免费| 欧美日韩一区视频| 国产精品久久久爽爽爽麻豆色哟哟 | 欧美探花视频资源| 国产女人18毛片水真多成人如厕 | 亚洲精品中文字幕乱码三区| 韩国一区二区三区| 欧美性大战久久久久久久| 国产精品国产三级国产| 国产精品一级片| 久久综合九色综合欧美亚洲| 天天色综合天天| 欧美日韩国产中文| 亚洲一区二区在线观看视频| 日本精品一区二区三区高清 | 亚洲欧洲精品成人久久奇米网| 久久久不卡网国产精品一区| 日韩成人精品在线观看| 欧美日韩国产一二三| 伊人婷婷欧美激情| 在线一区二区三区| 怡红院av一区二区三区| 色欧美88888久久久久久影院| 在线观看av不卡| 亚洲一区二区三区中文字幕| 色婷婷国产精品综合在线观看| 9191久久久久久久久久久| 性做久久久久久免费观看| 欧美伊人精品成人久久综合97| 日韩精品综合一本久道在线视频| 国产拍欧美日韩视频二区| 精品系列免费在线观看| 久久久久久97三级| 97国产一区二区| 一区二区三区不卡视频| 欧美色老头old∨ideo| 琪琪久久久久日韩精品| 日韩一区二区在线看| 国产精品亚洲午夜一区二区三区| 欧美性xxxxx极品少妇| 日韩av中文在线观看| 日韩欧美高清在线| 高清av一区二区| 一区二区三区在线视频免费观看| 麻豆成人91精品二区三区| 日韩欧美精品在线| 粉嫩av一区二区三区| 亚洲日本在线a| 91精品国产入口在线| 懂色av中文一区二区三区| 亚洲乱码日产精品bd| 日韩视频免费观看高清完整版在线观看| 亚洲欧美日韩精品久久久久| 欧美三级欧美一级| 国产精品亚洲а∨天堂免在线| 91精品欧美久久久久久动漫| 国产乱码精品一区二区三区av| 欧美人成免费网站| 国产在线国偷精品免费看| 久久色.com| 日本韩国欧美在线| 国产在线不卡一区| 亚洲最快最全在线视频| 久久色在线观看| 欧美群妇大交群中文字幕| 国产精品一二二区| 午夜成人免费视频| 国产精品国产三级国产aⅴ入口| 国产成人免费视频精品含羞草妖精| 欧美片在线播放| 成人爱爱电影网址| 捆绑调教美女网站视频一区| 亚洲欧洲成人av每日更新| 欧美v日韩v国产v| 色94色欧美sute亚洲13| 国产在线精品一区在线观看麻豆| 日韩一级黄色大片| 欧美在线观看禁18| 丁香激情综合五月| 久久成人综合网| 亚洲高清视频的网址| 中文字幕一区av| 久久亚洲春色中文字幕久久久| 韩国av一区二区三区四区| 舔着乳尖日韩一区| 亚洲天堂成人在线观看| 久久久久久久久久久久电影 | 久久女同互慰一区二区三区| 欧美三级乱人伦电影| 91在线精品一区二区三区| 国产精品影视在线观看| 麻豆一区二区三| 日韩电影一区二区三区| 亚洲电影视频在线| 亚洲丰满少妇videoshd| 国产精品国产三级国产普通话99| 在线观看中文字幕不卡| 色又黄又爽网站www久久| 99久久精品免费看| 91在线观看视频| 91看片淫黄大片一级在线观看| 亚洲人精品午夜| 亚洲伦在线观看| 中文字幕免费不卡| 成人免费在线播放视频| 国产精品欧美精品| 亚洲女人的天堂| 亚洲综合丝袜美腿| 三级在线观看一区二区| 日本不卡高清视频| 免费在线视频一区| 狠狠色丁香九九婷婷综合五月| 综合久久给合久久狠狠狠97色| 欧美日韩视频不卡| 在线综合亚洲欧美在线视频| 69成人精品免费视频| 日韩精品影音先锋| 国产欧美日韩另类视频免费观看| 欧美三级一区二区| 91精品免费观看| 精品国产乱码久久久久久影片| 色综合天天综合网天天看片| 欧美日韩国产高清一区| 欧美日韩大陆在线| 日韩一级片在线观看| 久久精品欧美一区二区三区麻豆 | 91香蕉视频mp4| 91老师国产黑色丝袜在线| 欧美优质美女网站| 日韩三级高清在线| 国产欧美日韩在线| 亚洲综合在线五月| 精品一区二区日韩| 91麻豆国产福利在线观看| 91麻豆精品国产91久久久更新时间| 成人亚洲精品久久久久软件| av在线不卡网| 欧美日韩亚州综合| 国产色91在线| 亚洲国产精品久久艾草纯爱| 精品一区二区免费| 欧美无人高清视频在线观看| 日韩午夜激情电影| 亚洲欧美日本在线| 精品一区免费av| 色偷偷久久一区二区三区| 精品日产卡一卡二卡麻豆| 亚洲一区视频在线观看视频| 经典三级一区二区| 欧美影视一区二区三区| 久久精品一区二区三区av| 亚洲va在线va天堂| 波多野结衣一区二区三区| 日韩一级视频免费观看在线| 亚洲人成网站精品片在线观看| 国产精品国产三级国产a| 奇米色一区二区| 91在线视频播放地址| 久久久精品天堂| 日韩成人免费在线| 欧美午夜精品电影| 欧美国产禁国产网站cc| 麻豆免费看一区二区三区| 欧美综合亚洲图片综合区| 亚洲丝袜制服诱惑| 国产福利一区二区三区在线视频| 韩国精品久久久| 欧美一级在线视频| 亚洲成人激情社区| 一本高清dvd不卡在线观看| 国产日韩欧美电影| 国产制服丝袜一区| 制服丝袜亚洲网站| 亚洲亚洲人成综合网络| 色8久久人人97超碰香蕉987| 国产精品久久久久国产精品日日| 亚洲人成7777| www.色综合.com| 国产蜜臀97一区二区三区| 国产精品亚洲人在线观看| 精品国产乱码久久久久久浪潮| 2021国产精品久久精品| 蜜臂av日日欢夜夜爽一区| 51久久夜色精品国产麻豆| 日韩国产欧美视频| 欧美体内she精高潮| 亚洲在线视频网站| 欧美日韩亚洲综合一区| 丝袜脚交一区二区| 欧美一区二区三区系列电影| 青娱乐精品视频在线| 欧美一区永久视频免费观看|