TLC5615串行數(shù)模轉(zhuǎn)換器在開關(guān)電源中的應(yīng)用
由時(shí)序圖可以看出,當(dāng)片選CS為低電平時(shí),輸入數(shù)據(jù)DIN由時(shí)鐘SCLK同步輸入或輸出,而且最高有效位在前,低有效位在后。輸入時(shí)SCLK的上升沿把串行輸入數(shù)據(jù)DIN移入內(nèi)部的16位移位寄存器,SCLK的下降沿輸出串行數(shù)據(jù)DOUT,片選CS的上升沿把數(shù)據(jù)傳送至DAC寄存器。
當(dāng)片選CS為高電平時(shí),串行輸入數(shù)據(jù)DIN不能由時(shí)鐘同步送入移位寄存器;輸出數(shù)據(jù)DOUT保持最近的數(shù)值不變而不進(jìn)入高阻狀態(tài)。由此要想串行輸入數(shù)據(jù)和輸出數(shù)據(jù)必須滿足兩個(gè)條件:第一時(shí)鐘SCLK的有效跳變;第二片選CS為低電平。這里,為了使時(shí)鐘的內(nèi)部饋通最小,當(dāng)片選CS為高電平時(shí),輸入時(shí)鐘SCLK應(yīng)當(dāng)為低電平。
串行數(shù)模轉(zhuǎn)換器TLC5615的使用有兩種方式,即級(jí)聯(lián)方式和非級(jí)聯(lián)方式。如不使用級(jí)聯(lián)方式,DIN只需輸入12位數(shù)據(jù)。DIN輸入的12位數(shù)據(jù)中,前10位為TLC5615輸入的D/A轉(zhuǎn)換數(shù)據(jù),且輸入時(shí)高位在前,低位在后,后兩位必須寫入數(shù)值為零的低于LSB的位,因?yàn)?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/TLC5615">TLC5615的DAC輸入鎖存器為12位寬。如果使用TL5615的級(jí)聯(lián)功能,來(lái)自DOUT的數(shù)據(jù)需要輸入16位時(shí)鐘下降沿,因此完成一次數(shù)據(jù)輸入需要16個(gè)時(shí)鐘周期,輸入的數(shù)據(jù)也應(yīng)為16位。輸入的數(shù)據(jù)中,前4位為高虛擬位,中間10位為D/A轉(zhuǎn)換數(shù)據(jù),最后2位為低于LSB的位即零。
2應(yīng)用電路實(shí)例
圖3給出了在開關(guān)電源中,TLC5615和AT89C51單片機(jī)的接口電路。在電路中,AT89C51單片機(jī)的P3.0-P3.2分別控制TLC5615的片選CS,串行時(shí)鐘輸入SCLK和串行數(shù)據(jù)輸入DIN。電路的連接采用非級(jí)聯(lián)方式。根據(jù)開關(guān)電源的設(shè)計(jì)要求,可變基準(zhǔn)電壓范圍為0V~4V。因此,TLC5615的基準(zhǔn)電壓選為2.048V,其最大模擬輸出電壓為4.096V??蓾M足開關(guān)電源的要求。
TLC5615采用非級(jí)聯(lián)方式,將要輸入的12位數(shù)據(jù)存在R0、R1寄存器中,其D/A轉(zhuǎn)換程序如下:
CLRP3?0;片選有效
MOVR2,#4;將要送入的前四位數(shù)據(jù)位數(shù)
MOVA,R0;前四位數(shù)據(jù)送累加器低四位
SWAPA;A中高四位與低四位互換
LCALLWR?data;DIN輸入前四位數(shù)據(jù)
MOVR2,#8;將要送入的后八位數(shù)據(jù)位數(shù)
MOVA,R1;八位數(shù)據(jù)送入累加器A
LCALLWR?data;DIN輸入后八位數(shù)據(jù)
CLRP3?1;時(shí)鐘低電平
SETBP3?0;片選高電平,輸入的12位數(shù)據(jù)有效
END:結(jié)束
送數(shù)子程序如下:
WR?data:NOP;空操作
LOOP:CLRP3?1;時(shí)鐘低電平
RLCA;數(shù)據(jù)送入位標(biāo)志位CY
MOVP3?2,C;數(shù)據(jù)輸入有效
SETBP3?1;時(shí)鐘高電平
DJNZR2,LOOP;循環(huán)送數(shù)
RET返回
3結(jié)語(yǔ)
由于采用接口簡(jiǎn)單的模擬數(shù)字轉(zhuǎn)換器TLC5615,使得開關(guān)電源的硬件電路大為簡(jiǎn)化,線路板面積縮小,成本降低。
評(píng)論