USB數字電視接收棒的設計與實現
2 硬件驅動程序的設計
硬件驅動程序是系統設計中很關鍵的一個部分,它直接關系到各硬件芯片是否能正常穩定的工作。硬件的驅動是由主控芯片來完成,在本方案中將uSB傳輸控制芯片CY7C68013作為主控芯片,它內置增強型的8051內核,通過I2C總線來控制前端的高頻頭和信道解調芯片,完成對前端的驅動。
硬件驅動程序設計主要是根據硬件電路的設計特點來編寫CY7C68013的固件程序。固件程序可以處理來自系統的USB標準請求,完成各種數據的交換工作和事物處理。CypreSS公司提供了固件程序框架,用戶可在此框架上增加自己的功能代碼以完成相應功能。整個硬件驅動流程圖如圖2所示。本文引用地址:http://www.104case.com/article/166826.htm
(1)設定USB芯片的工作方式為Slave FIFO,Au-to In模式,利用端點2(設為1 024×4 b大小)進行傳輸。在這種模式下USB芯片內的數據傳輸不需要8051內核的干預,利用CY7C68013特有的量子FIFO自動完成數據的傳輸,這樣可以保證數據的傳輸速率不受到8051內核的頻率限制而達到一個較高的速度,滿足USB 2.0高速傳輸的要求。
(2)打開I2C總線,初始化高頻頭,延遲1 s后設定高頻頭的掃描頻率,這里延遲1 s是為了保證高頻頭在初始化后能正常穩定的工作,是芯片在技術上的要求。
(3)初始化信道解調器,并將其設定為自動模式,使其自動檢測信號參數并將信息反饋給高頻頭,協調兩塊芯片之間的某些參數(如增益等),使兩者配合工作。
(4)判斷信號是否鎖定,如未鎖定,再判斷是否是第一次進行鎖頻,如果先前未曾鎖頻過則需改變高頻頭的掃描頻率,再次檢測,直到鎖定。如果曾經鎖頻過,則無需改變頻率,再次自動檢測即可。
(5)在鎖定信號以后,每間隔5 s再次檢測鎖定情況,如果失鎖則返回第四步再次進行檢測。循環判斷信號鎖定情況的目的是為了避免系統在正常工作時,由于信號質量變差而造成失鎖導致系統不能正常工作(例如系統接收時進入隧道等環境),通過定時檢測信號鎖定情況就可以在發生此類事件后進行必要的操作,讓系統重新正常工作。
3 PC機應用程序設計
3.1 應用程序的主要功能
PC機應用程序是用戶與底層資源信息交互的一個平臺。在本方案中,應用程序主要完成以下兩大功能。
評論