數據采集是計算機實時控制系統不可缺少的部分,它直接關系到控制的精度。本文介紹的LTC1290是LT公司的一款串行數據采集芯片,它具有分辨率高、與MCU接口簡單、通信參數設置方便等特點。由該芯片與MC68331微處理器組成的某型箭桿織機經紗張力采集系統具有極高的采集精度,可為經紗張力的精密控制提供可靠保障。 1 LTC1290簡介 LTC1290是串行數據采集芯片,內部集成了采樣保持器和12位逐次逼近式模數轉換器。它有八個輸入通道,可以編程為單端或差動式輸入。單端模式下可以共享一個片內采集保持器。空閑模式下可編程為省電模式。其串行口與工業標準串行口兼容,轉換結果可以方便的編程為高位在前或者是低位在前,也可以編程為八位、十二位或者十六位輸出,這就使得它可以方便地與移位寄存器和多種處理器進行連接。圖1是LTC1290的內部功能框圖及外部引腳。 LTC1290主要包括模擬輸入通道、采樣保持、12位模數轉換以及轉換控制等部分。其中多路模擬輸入單元用于接收外部八路模擬輸入,并可根據輸入控制命令選擇輸入模式及所采集的數據通道;采樣保持器完成對所選模擬信號的采樣與保持以便進行數模轉換;數模轉換器將采集的模擬信號轉換成數字信號;控制及時鐘單元控制片選及時鐘轉換等。 2 引腳說明 CS:片選端,該端置低將啟動數據傳輸; CH0~CH9:模擬信號輸入端; COM:輸入信號公共端; DGND和AGND:數字地和模擬地; VCC和V-:正負供電端; REF-和REF+:分別為標準參考正負電源端; DIN:控制命令輸入端,用于設置采集參數; SCLK:串行移位時鐘,用于控制輸入和輸出數據; ACLK:模數轉換脈沖,用于控制模數轉換; DOUT:轉換數據輸出端。 3 LTC1290的工作過程 LTC1290采用同步、全雙工、四線方式與微處理器進行串行通信,具體時序如圖2所示。當移位時鐘與移位數據寄存器同步時,系統將在SCLK的下降沿發送數據,并在SCLK的上升沿捕獲數據。發送數據和接受數據同時進行(全雙工)。在片選端CS下降沿啟動數據傳輸后,微處理器將通過串行輸出發出采集參數控制命令字節到輸入移位寄存器。該控制命令字節是下一次待轉換的控制參數,而不是當前轉換的控制參數。在輸入控制命令的同時,當前數據轉換結果將通過DOUT端輸出。當控制命令字節傳輸完畢而上次轉換輸出尚未完成時,DIN端數據不影響轉換控制。數據交換完畢后啟動模數轉換,此刻片選端CS應置為高電平并且在整個轉換期間應一直為高。轉換結果將在下次數據交換時輸出,轉換結果要比輸入字節延遲一個CS周期,如圖3所示。 每次數據采集前都要設置采集參數,以向輸入移位寄存器寫入正確的控制命令字節。控制命令字節為下降沿開始后輸入的前八位,可用于設置有關數據采集的參數。八位控制命令字節定義如圖4所示。圖中前四位用于選定要采集的數據通道以及確定是差動輸入還是單端輸入。第五位(UNI)確定轉換是單極還是雙極的,該位為邏輯“1”表示單極,否則為雙極。第六位用于確定轉換結果高低位輸出順序:為“1”時,輸出順序為高位在前,反之低位在前。最后兩位(WL1和WL0)用來確定當前輸出數據的長度或編程為省電方式,具體見表1。 表1 長度位功能定義 WL1 WL0 輸出數據長度 WL1 WL0 輸出數據長度 0 0 8位 1 0 12位 0 1 省電模式 1 1 16位 4 LTC1290與微處理器的接口 LTC1290可以與大多數通用微處理器的同步串行接口直接相連,而不需要外接任何電路。如果微處理器沒有串行接口,可將它的四根并行線編程為串口與LTC1290相接。本文以它與MC68331的接口為例闡述其連接方法及實際應用。 5 LTC1290在織機張力采集中的應用 在織機中,經紗張力是必須嚴格監測和控制的,否則就可能出現經紗松弛或張力過大而導致斷紗、停機、出現稀密緯,從而影響產品質量和效率。可以說張力大小的精密控制是織機性能的關鍵之一,而張力精密控制的前提是對張力的精密檢測。本箭桿織機自從采用LTC1290和MC68331構成經紗張力數據采集系統后,采集精度很高(12位,分辨率達到0.0003)控制效果很好。 MC68331是摩托羅拉公司的32位單片機,該單片機功能強大、 工作速度高、數據處理能力強,特別是其內部集成了可獨立于CPU的定時處理單元和隊列串行模塊,從而減輕了CPU的開銷,特別適用于實時多任務的處理。其隊列式串行外圍接口可用于MC68331與其他外設或者MCU之間進行同步串行通信,它有主從兩種模式。MC68331有自己的發送數據RAM、接收數據RAM以及命令RAM。其通信參數設置方便,可以獨立于CPU運行,一次最多可以傳輸8到256位數據而不需要CPU干預。MC68331與LTC1290的接口電路如圖5所示。 在圖5所示電路中,LTC1290用于采集數據通道送來的經紗張力信號,它采用單端模式,微處理器串行通信采用主機模式。MC68331通過PCS0發出片選控制信號,并通過SCLK發出串行時鐘以啟動數據的串行傳輸,從MOSI端將發送數據RAM中的采集參數設置命令發送給LTC1290,同時通過MISO端將轉換結果納入接收數據RAM,以等待CPU取走采集數據。數據采集程序流程如圖6所示。 6 結束語 LTC1290數據采集芯片分辨率高?轉換速度快,轉換參數設置靈活、可與絕大多數微處理器直接連接而不需要任何外部電路,從而給用戶帶來了極大的方便。筆者在某箭桿織機經紗張力采集系統中使用該芯片后,數據采集準確可靠,完全可滿足張力精密控制要求。 |