基于CPLD的MAX1032采樣控制的實(shí)現(xiàn)
圖6所示是Modelsim的仿真波形。SCLK上跳沿DIN_out的數(shù)據(jù)被MAX1032讀取。
本文引用地址:http://butianyuan.cn/article/148358.htm程序的第二部分的作用是將MAX1032輸出的串行采樣結(jié)果存入CPLD內(nèi)部的一個(gè)14位寄存器。采樣結(jié)果DOUT_in_S是14位的串行序列。CPLD在SCLK的上跳沿讀取數(shù)據(jù)后,可將其存到一個(gè)內(nèi)部寄存器,再由DOUT選擇輸出寄存器的高或低八位數(shù)據(jù)讀出。最后的采樣結(jié)果是并行輸出的??偣?個(gè)字節(jié),末兩位數(shù)據(jù)無效。對(duì)于外部時(shí)鐘模式,可從加載轉(zhuǎn)換啟動(dòng)字開始計(jì)算,在第16個(gè)SCLK下跳沿,芯片將輸入采樣結(jié)果。得到結(jié)果即可按照公式(采樣電壓=12x(轉(zhuǎn)換成十進(jìn)制的輸出結(jié)果)/16384)進(jìn)行計(jì)算。以下是這部分功能的可綜合代碼:
圖7所示是Moddsim仿真的CPLD讀取MAX1032的采樣結(jié)果并將其存入寄存器DOUT_P_buf的仿真圖。由圖可見,在啟動(dòng)采樣后的第16個(gè)SCLK的下跳沿,MAX1032輸出14位串行采樣結(jié)果,CPLD將其存入內(nèi)部寄存器中以待系統(tǒng)讀取。一般在下一次采樣之前,需要將CPLD復(fù)位來清除上一次采樣的數(shù)據(jù)。由于外部時(shí)鐘模式下的SSTRB始終為低,故本例沒有對(duì)該信號(hào)進(jìn)行處理。
5 結(jié)束語(yǔ)
本文介紹了利用CPLD控制MAX1032進(jìn)行采樣的實(shí)現(xiàn)方法,包括CPLD的內(nèi)部邏輯設(shè)計(jì)和對(duì)采樣信號(hào)的處理等。實(shí)驗(yàn)證明,該方法能夠適用
需要使用CPLD控制外圍電路的場(chǎng)合。
評(píng)論