用CBI協(xié)議的USB軟驅(qū)讀取繡花機花版文件
引 言 繡花機廣泛用于紡織行業(yè),基本原理為讀取繡花花版文件到主控設備,進行固定算法的花版解釋,控制繡花機機頭進行繡花動作,目前廣泛利用USB接口讀取花版文件。USB協(xié)議對所有USB設備進行分類,同類型的設備擁有一些共同的行為特征和傳輸協(xié)議,在此基礎(chǔ)之上USB協(xié)議又劃分了子類設備,進一步區(qū)分相同類設備的屬性,以利于設計主機與設備的數(shù)據(jù)傳輸。對于USB大容量存儲設備(mass storage device)設計,普遍采用兩種基本傳輸方式:CBI和BULKONLY。使用較多的是BULKONLY協(xié)議,主要應用在U盤存儲設備;而CBI協(xié)議由于具有中斷傳輸?shù)奶匦?,主要應用在USB硬盤及工業(yè)上普遍使用的USB軟盤驅(qū)動器,目前,在繡花機的使用過程中也需要磁盤讀寫花版文件,這樣的好處是保密性強、可隨時更換,可以作為U盤的很好補充。
1 M8SS storage CBI協(xié)議介紹 在CBI協(xié)議的描述中,必須采用4種傳輸方式和通道進行主機和設備的數(shù)據(jù)交換,這4種方式稱為端口,按順序為:O,控制傳輸;1,塊輸入(bulkin);2,塊輸出(bulk-out);3,中斷傳輸。這與普通U盤設備采用2個傳輸端口有明顯區(qū)別。控制端口0主要用來在主機和設備間傳送USB標準命令和對硬盤的控制命令集,批量輸入端口1和批量輸出端口2用來傳輸大量塊數(shù)據(jù),中斷端口3用來返回命令的發(fā)送狀態(tài)用于主機產(chǎn)生中斷。1.1 數(shù)據(jù)傳輸過程 在對設備進行任何操作前,主機都必須發(fā)送mass_storage_ufi協(xié)議中定義的相關(guān)UFI命令塊(USB FloppyInterface Command)。從控制端口0傳送到設備,命令塊被分為無數(shù)據(jù)、數(shù)據(jù)進、數(shù)據(jù)出3種類型。主機將以指定類請求ADSC開始命令傳輸,接著在控制傳輸?shù)臄?shù)據(jù)階段傳輸命令塊。指定類請求命令包如表1所列。
對于CBI設備來說,主機每次發(fā)送UFI命令塊前都必須由指定類請求ADSC引導,否則設備不識別。以下是發(fā)送一組UFI命令響應的過程舉例:
標簽: