ISPl362在基于FPGA的紅外成像系統(tǒng)中的應(yīng)用
2 USB固件結(jié)構(gòu)設(shè)計
USB固件結(jié)構(gòu)設(shè)計包括枚舉過程和數(shù)據(jù)傳輸過程。數(shù)據(jù)傳輸過程與枚舉過程中的in中斷的處理方法類似。因此這里主要介紹枚舉過程的固件編寫。
枚舉過程的流程圖如圖2所示。
枚舉過程就是主機(jī)通過向設(shè)備發(fā)送一系列請求來識別設(shè)備的過程。USB一共定義了11種標(biāo)準(zhǔn)USB請求,其中有些請求是必須的。例如,主機(jī)必須通過Get Descriptor請求來獲取設(shè)備的設(shè)備描述符、接口描述符和端點(diǎn)描述符等信息,才能識別設(shè)備;必須通過Set Address請求為設(shè)備分配惟一的非零地址,以便于主機(jī)識別設(shè)備并與設(shè)備進(jìn)行數(shù)據(jù)傳輸;必須通過SetConfiguration請求為設(shè)備分配非零的配置值等。USB請求只能使用控制管道來進(jìn)行傳輸。主機(jī)在沒有識別連上的是何種設(shè)備之前,會為未知設(shè)備分配一個默認(rèn)地址O,主機(jī)通過0地址與設(shè)備通信,直到主機(jī)確定真正有設(shè)備連接了之后,就會為該設(shè)備分配一個惟一的非零地址。在此之后,主機(jī)可通過這個非零地址跟設(shè)備通信,包括獲取該設(shè)備的所有配置信息、接口信息以及完成最后的數(shù)據(jù)傳輸?shù)取?br />2.1 芯片初始化
芯片的初始化主要包括工作模式、速度的選擇以及寄存器的配置等操作。工作模式的選擇可通過設(shè)置ISPl362的第62引腳A1為高電平來實(shí)現(xiàn)。這里實(shí)現(xiàn)的是全速的數(shù)據(jù)傳輸。下面主要介紹寄存器的配置。
評論