X79000是Xicor公司推出的12位單通道串行D/A轉換器。其建立時(shí)間僅為6s。該芯片內置參考電壓,且內帶56字節的EEPROM,可用于保存用戶(hù)數據。它可與MCU通過(guò)SPI進(jìn)行接口,最高速度可達5MHz。一個(gè)MCU系統最多可以同時(shí)連接8個(gè)X79000器件,從而可以實(shí)現8路相互獨立的高精度D/A輸出。另外,X79000還可通過(guò)IO引腳直接增加或減少輸出值,且每次的變化量都可以編程控制。X79000具有上電自動(dòng)恢復斷電前設定值的功能,它可在上電過(guò)程保持輸出高阻,待上電完成后自動(dòng)從非易失存儲器中讀出用戶(hù)的設定值并輸出。MCU通過(guò)檢查其提供的上電完成信號來(lái)判斷上電是否完成。雖然X79000是12位D/A轉換器,但如果設置合理,該器件可以達到16位D/A的性能。 1 引腳排列及說(shuō)明 X79000的引腳排列如圖1所示,各引腳的功能如下: CS:SPI接口片選,低電平有效。 SCK:SPI時(shí)鐘。 SI:SPI串行輸入。 SO:SPI串行數據輸出引腳。帶高阻輸出。 RDY:芯片上電完成標志輸出引腳,低電平有效。該腳為漏極開(kāi)路輸出。 CLR:該腳可用于清除DAC內部寄存器,它內部有下拉電阻。當把該引腳接到高電平時(shí),電路會(huì )輸出最低的電壓。 A2,A1,A0:多個(gè)X79000級聯(lián)時(shí),用于地址選擇。內部有下拉電阻。 OE:緩沖輸出使能引腳。高電平有效,低電平時(shí)輸出為高阻。 UP:當工作在直接IO模式時(shí),用于增大輸出值。內部帶有尖脈沖濾波器。 DOWN:當工作在直接IO模式時(shí),用于減小輸出值。內部帶有尖脈沖濾波器。 VCC:正電源,典型值為5V。 VSS:地。 Vout:直接輸出引腳,不受OE引腳的控制。 Vbuf:帶緩沖的輸出引腳。當OE為高電平時(shí),該引腳有輸出,當OE為低電平時(shí),該引腳有輸出,當OE為低電平時(shí),該腳無(wú)輸出。 VFB:有緩沖輸出時(shí)的反饋腳。 Vbuf:內部參考電壓輸出引腳。 VH:當配置寄存器的高3位VH設為0時(shí),此引腳可作為滿(mǎn)量程時(shí)的輸入電壓,最高為3.065V。當配置寄存器的高3位VH設為非0時(shí),此引腳輸出電壓的最大值可以作為其它器件的參考電壓。 VL:功能與VH類(lèi)似,只是對應于最小值。 DNC:空腳。 2 工作原理和使用說(shuō)明 X79000可通過(guò)以下兩種工作方式來(lái)改變輸出電壓: 第一種方式是利用SPI總線(xiàn),通過(guò)寫(xiě)命令修改輸出值,這種方式適用于開(kāi)環(huán)系統中的簡(jiǎn)單DC電壓調節; 第二種方式是使用UP/DOWN引腳直接修改輸出值。這種方式適用于閉環(huán)系統,可使輸出一步一步地接近設定值,然后禁止UP/DOWN引腳的功能,從而保持設定值不變。 X79000輸出電壓的范圍可由配置寄存器(地址為3CH)來(lái)確定,具體設置如表1所列。 表1 輸出電壓范圍的設置 VH2 VH1 VH0 Value VL2 VL1 VL0 Value 0 0 0 外部 0 0 0 外部 0 0 1 605mV 0 0 1 151mV 0 1 0 1.21V 0 1 0 605mV 0 1 1 1.815V 0 1 1 1.21V 1 0 0 2.42V 1 0 0 1.815V 1 0 1 3.025V 1 0 1 2.42V 表中的VH可用于確定輸出電壓的最大值,其范圍從0.605V到3.025V。VL則用于確定輸出電壓的最小值,其范圍從0.151V~2.42V。注意:VH一定要比VL大,否則芯片可能會(huì )工作不正常。 不管選擇什么值,輸出電壓的線(xiàn)性度都能得到保證。例如,要輸出1.9V~2.4V的電壓,可以選擇VH=2.42V,VL=1.815V,這樣,當電壓輸出寄存器為0時(shí),電壓輸出為1.815V,而當輸出寄存器為0x3FF(滿(mǎn)量程)時(shí),電壓輸出為2.42V。輸出電壓的最小變化單位為(2.42-1.815)/4096=0.147mV。如果用一個(gè)標準的DAC器件來(lái)實(shí)現,則該DAC器件必須達到14位的分辨率。如果使用外部電壓作為輸出的最大或最小值,那么,設計時(shí)必須把VH或VL設成0。 X79000帶有1.21V的參考電壓輸出引腳Vref,該引腳的輸出電壓可作為其他器件的參考電壓。 X79000的控制寄存器如圖2所示,圖中,DAC11-DAC0是輸出寄存器,通過(guò)SPI接口可以修改該寄存器,從而改變電壓輸出。VH0~VH2和VH0~VH2分別用于確定輸出電壓的最大值和最小值。要注意的是Count8和Count10,它們的使用方法如表2所列。 表2 Count8和Count10的功能說(shuō)明 Count8 Count10 功 能 說(shuō) 明 0 0 使用12位模式 0 1 使用輸出寄存器的高10位 1 0 使用輸出寄存器的高8位 1 1 保留 當Count8=1,Count10=0時(shí),表示使用輸出寄存器的高8位。即在利用UP或DOWN引腳改變輸出寄存器的值時(shí),其低4位保持不變,每次增加或減少0x10。寄存器的操作只能通過(guò)SPI接口來(lái)完成。 3 應用舉例 X79000與89C51的接口電路如圖3所示,圖中,使用89C51來(lái)模擬SPI接口。其具體操作過(guò)程如下: (1)89C51上電后延時(shí)1秒,以等待整個(gè)系統復位穩定。 (2)寫(xiě)X79000的配置寄存器3CH為0xB0,即配置輸出最高電壓為3.025V,最低電壓為1.815V。 (3)寫(xiě)X79000的輸出寄存器38H和29H,設計時(shí)要千萬(wàn)注意字節順序。 4 結束語(yǔ) 將本電路用在細紗機控制系統中以控制變頻器已運行了將近一年的時(shí)間,未出現過(guò)精度發(fā)生變化的情況,實(shí)踐證明:該電路輸出穩定、性能可靠、精度較高。 |