亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
欧美日韩日本视频| 久久久99久久| 欧美日韩午夜影院| 色婷婷狠狠综合| 97久久超碰国产精品| 福利电影一区二区| 国产91精品在线观看| 国产精品一区二区在线观看网站| 日韩国产欧美视频| 日本中文在线一区| 日韩和的一区二区| 免费成人av在线| 久久99国产精品久久99果冻传媒| 久久99日本精品| 国产一区二区三区免费播放| 国产不卡视频在线播放| 懂色av一区二区夜夜嗨| 成人app网站| 欧洲日韩一区二区三区| 欧美日韩美少妇| 91精品国产美女浴室洗澡无遮挡| 91精品在线麻豆| 日韩一区二区在线看片| www激情久久| 中文字幕在线观看不卡| 一区二区三区四区乱视频| 亚洲成人三级小说| 久久不见久久见中文字幕免费| 国产一区二区三区免费| av爱爱亚洲一区| 欧美在线观看一区二区| 日韩精品一区二区三区中文不卡| 久久综合狠狠综合久久激情| 国产精品女人毛片| 亚洲一区二区三区四区中文字幕| 日产欧产美韩系列久久99| 久久97超碰国产精品超碰| 成人免费看视频| 在线观看欧美日本| 欧美本精品男人aⅴ天堂| 欧美国产日韩一二三区| 一区二区三区不卡视频在线观看| 日韩高清不卡在线| 国产成人av一区| 日本精品一级二级| 3atv一区二区三区| 欧美激情在线观看视频免费| 一区二区免费看| 九色综合国产一区二区三区| www.成人在线| 91精品国产高清一区二区三区蜜臀| 久久久综合精品| 亚洲一区二区三区视频在线| 国产一区二区三区久久悠悠色av| 色吧成人激情小说| 精品88久久久久88久久久| 亚洲免费资源在线播放| 久久国产福利国产秒拍| 欧美制服丝袜第一页| 久久久久国产一区二区三区四区 | 精品国产免费人成在线观看| 中文字幕第一页久久| 午夜视频在线观看一区二区三区 | 日韩精品在线看片z| 亚洲精品videosex极品| 久久精品国产精品青草| 91视频国产观看| 制服丝袜亚洲网站| 中文字幕免费不卡在线| 亚洲色图一区二区| 老司机精品视频一区二区三区| 不卡的av网站| 日韩一二三区不卡| 18成人在线视频| 麻豆久久久久久| 色嗨嗨av一区二区三区| 欧美裸体一区二区三区| 久久久综合网站| 日韩在线a电影| 99re成人精品视频| 26uuu色噜噜精品一区| 亚洲国产成人tv| 国产成人午夜99999| 欧美中文字幕一区二区三区亚洲| 久久亚洲欧美国产精品乐播| 一区二区免费看| 成人亚洲一区二区一| 日韩亚洲欧美一区| 亚洲一区二区在线免费看| 国产成人精品亚洲日本在线桃色 | 久国产精品韩国三级视频| 一本色道**综合亚洲精品蜜桃冫| 欧美电视剧免费观看| 亚洲午夜免费电影| 国产精品系列在线播放| 亚洲精品一区二区三区蜜桃下载| 午夜视频一区在线观看| av动漫一区二区| 久久精品视频免费观看| 日韩电影在线观看网站| 色欧美片视频在线观看在线视频| 久久久久久久久一| 久久er精品视频| 欧美亚洲国产一区二区三区| 国产精品午夜免费| 国产在线观看一区二区| 91麻豆精品国产91久久久更新时间 | 亚洲电影中文字幕在线观看| 成人高清免费在线播放| 精品国产污污免费网站入口 | 国产一区二区三区精品欧美日韩一区二区三区 | 亚洲精品中文字幕在线观看| 国产大片一区二区| 精品sm捆绑视频| 日本伊人色综合网| 欧美自拍丝袜亚洲| 一级女性全黄久久生活片免费| www.久久精品| 国产精品福利一区| av在线这里只有精品| 国产精品不卡视频| 成人免费高清视频在线观看| 久久久久久99精品| 免费亚洲电影在线| 欧美一级高清大全免费观看| 精品亚洲aⅴ乱码一区二区三区| 欧美一区二区三区四区五区| 男男gaygay亚洲| 欧美成人乱码一区二区三区| 青青草97国产精品免费观看无弹窗版| 欧美日韩成人一区二区| 亚洲高清免费在线| 欧美美女激情18p| 亚洲成人在线网站| 91精品国产品国语在线不卡| 久久机这里只有精品| 久久蜜桃一区二区| 国产很黄免费观看久久| 欧美极品另类videosde| 成人黄色一级视频| 丝袜亚洲另类丝袜在线| 日韩三级视频在线观看| av不卡在线观看| 亚洲一区二区中文在线| 精品国产乱码久久久久久夜甘婷婷 | caoporn国产精品| 日韩中文字幕区一区有砖一区 | 国产亚洲美州欧州综合国| 成人动漫一区二区在线| 亚洲黄色免费网站| 69av一区二区三区| 国产在线麻豆精品观看| 国产精品久久久久久久蜜臀 | 国产资源在线一区| 精品国产三级a在线观看| 91亚洲国产成人精品一区二三 | 亚洲色图在线看| 不卡免费追剧大全电视剧网站| 亚洲美女区一区| 欧美福利视频一区| 9人人澡人人爽人人精品| 亚洲国产精品久久人人爱蜜臀 | 色欧美片视频在线观看| 午夜欧美视频在线观看| 欧美丰满少妇xxxbbb| proumb性欧美在线观看| 午夜精品久久一牛影视| 久久久九九九九| 在线观看一区日韩| 久久精品久久精品| 亚洲欧洲av一区二区三区久久| 欧美日韩色综合| 国产精品一级片| 亚洲国产一区在线观看| 久久久美女毛片| 欧美日韩免费一区二区三区视频| 久久精品99国产精品| 亚洲男人的天堂av| 欧美一级一区二区| 91色视频在线| 九九热在线视频观看这里只有精品| 国产精品久久久久久久久免费樱桃| 中文字幕一区二区5566日韩| 一区二区久久久久久| 欧美aⅴ一区二区三区视频| 丝袜美腿一区二区三区| 国产一区二区久久| 欧美日韩精品一区二区三区四区 | 亚洲一区二区精品久久av| 中文字幕av在线一区二区三区| 亚洲精品高清在线观看| 91视频www| 丁香亚洲综合激情啪啪综合| 久久精品网站免费观看| www.爱久久.com| 久久久国产一区二区三区四区小说| 亚洲国产成人av网| 欧美性猛片xxxx免费看久爱| 精品国产一二三| 蜜臀精品一区二区三区在线观看 |