基于PCI總線(xiàn)的塔康視頻信號產(chǎn)生電路設計
3 系統軟件設計
3.1 FPGA功能實(shí)現
FPGA開(kāi)發(fā)采用Altera綜合開(kāi)發(fā)平臺Quartus II 6.0,利用VHDL語(yǔ)言開(kāi)發(fā)了雙口RAM、總線(xiàn)控制、地址譯碼、D/A轉換器控制、脈沖序列產(chǎn)生、波道控制和詢(xún)問(wèn)信號檢測等7個(gè)功能模塊,分別為:1)設計雙口RAM,用于實(shí)現PCI9054數據和DSP數據的交換:2)實(shí)現PCI9054本地總線(xiàn)邏輯控制,例如:對雙口RAM的讀寫(xiě)邏輯;3)實(shí)現DSP的地址譯碼邏輯,根據不同的指令選擇不同的功能單元;4)實(shí)現D/A轉換器的邏輯控制;5)產(chǎn)生脈沖序列。根據需要,可產(chǎn)生基準脈沖、填充脈沖、應答脈沖、隨機脈沖,組成脈沖序列;6)實(shí)現波道控制和衰減控制;7)實(shí)現對詢(xún)問(wèn)信號的檢測等。FPGA內部邏輯如圖5所示。本文引用地址:http://dyxdggzs.com/article/180513.htm
3.2 DSP程序設計
DSP片上程序以CCS2.0為開(kāi)發(fā)平臺,主要包括器件初始化程序、系統初始化程序、包絡(luò )數據(由15 Hz和135 Hz正弦信號組成)產(chǎn)生程序、INTO中斷程序、INTl中斷程序和定時(shí)器中斷程序。其中,器件初始化程序完成片內外設的初始化(如鎖相環(huán)時(shí)鐘發(fā)生器參數的設置,定時(shí)器參數的設置,可屏蔽中斷的設置等);系統初始化程序完成整個(gè)系統的初始化(I0地址分配、全局變量的初始化設置和系統外設的初始化);包絡(luò )數據產(chǎn)生程序主要產(chǎn)生15 Hz正弦數據表和135Hz正弦數據表兩張函數表;INT0中斷程序完成接收PC指令:INTl中斷主要接收到詢(xún)問(wèn)信號后完成應答功能;定時(shí)器中斷程序完成查找函數表并通過(guò)計算產(chǎn)生包絡(luò )數據,啟動(dòng)D/A轉換電路產(chǎn)生包絡(luò )信號,同時(shí)產(chǎn)生脈沖選擇信號,控制FPGA輸出脈沖序列。DSP主程序流程如圖6所示。塔康包絡(luò )信號波形如圖7所示。
3.3 PCI驅動(dòng)程序開(kāi)發(fā)
根據Windows提供的驅動(dòng)程序模型,使用VC++6.0和DriverStudio軟件編寫(xiě)了WDM驅動(dòng)程序。該驅動(dòng)程序對PCI9054起到內存映射和中斷管理的作用。驅動(dòng)程序安裝后,應用程序對PCI卡的訪(fǎng)問(wèn)可通過(guò)調用WindowsAPI的函數CreateFile()實(shí)現。這樣,對端口的操作最終表現為對一個(gè)文件的操作。
4 結論
針對系統模塊化的設計要求,開(kāi)發(fā)了基于PCI9054的塔康視頻信號產(chǎn)生板卡。基于PCI總線(xiàn)的塔康視頻信號產(chǎn)生電路適用于多種工控機平臺,通用性強,并且滿(mǎn)足設計要求,實(shí)際使用效果良好,因此具有良好的應用前景。
評論