有時,系統需要幾個數字可編程電壓輸出通道。這種輸出通道通常提供對機器人定位,工業過程甚至家庭自動化的控制。圖1中的電路控制來自PC并行端口的32個電壓輸出通道。該電路包括8個DAC7615四路電壓輸出,串行數據可編程,12位DAC。控制PC分別對32個DAC通道中的每個通道進行編程,并且所有DAC輸出同時更新。
并行端口的8條數據輸出線為8個四通道DAC7615中的每一個提供串行數據。并行端口的其余四條控制線提供串行數據時鐘,輸入寄存器時鐘,DAC寄存器時鐘和DAC復位功能。每個DAC7615都有一個參考高低輸入,電路分別連接到2.5V和-2.5V的外部參考電壓。兩個OPA4277四通道運算放大器緩沖±2.5V DAC參考電壓。由于所有DAC均使用相同的±2.5V基準電壓,因此所有DAC輸出均作為這些基準電壓的函數一起跟蹤。所有32個通道的最終DAC輸出電壓范圍為-2.5V至+ 2.5V。
該電路通過移入包含兩個串行16位字的串行16位字對八個DAC7615中的每一個進行編程地址位,兩個啞位和DAC 12位數據字。每個DAC7615的V OUTA 通道的串行數據首先移位,然后是V OUTB ,V OUTC ,以及V OUTD 個通道。 DAC7615具有雙緩沖數據輸入,因此電路可以將所有DAC通道的編程數據加載到輸入寄存器,而無需更改先前設置的DAC輸出電壓。在每個16位字移入相應的DAC7615后,DAC控制線瞬間產生低電平脈沖,將移位后的數據鎖存到每個DAC的內部輸入寄存器中。最后,當電路對所有DAC輸入寄存器進行編程時,信號為低電平,以更新內部DAC寄存器并更改所有DAC輸出。
使用并行端口同時進行串行數據傳輸到所有DAC7615,軟件必須首先操縱數字輸出數據,使其以可以流出并行端口的形式放置。控制軟件將一組8個16位字(代表移入每個DAC7615的代碼)轉換為一組16個8位字(圖2)。得到的16個8位字的向量表示16位串行數據流,該電路同時移入DAC7615的四個寄存器中。此轉置重復四次以對每個DAC7615的所有四個通道進行編程。
隨附的程序“WriteDAC32”,這是用Borland Turbo Pascal編寫,接受一組32個12位代碼,用于編程每個DAC通道。 WriteDAC32使用匯編語言程序重復左移每個12位DAC代碼的前導位,然后重建12個8位字,表示PC在所有8個并行端口數據線上輸出的流數據。要對所有32個DAC通道進行編程,需要4X16個數據時鐘周期。如果以菊花鏈方式連接DAC,則所需的時鐘周期數為4X8X16。
-
PCB打樣
+關注
關注
17文章
2968瀏覽量
21698 -
并行端口
+關注
關注
0文章
12瀏覽量
10739 -
華強PCB
+關注
關注
8文章
1831瀏覽量
27749 -
華強pcb線路板打樣
+關注
關注
5文章
14629瀏覽量
43035
發布評論請先 登錄
相關推薦
評論