摘要: 給出了用C8051FF330D的內(nèi)部電流型D/A轉(zhuǎn)換器和電流/電壓轉(zhuǎn)換電路來(lái)輸出0~4V的模擬信號(hào)量,, 用于控制恒流源輸出電流,, 并使其按設(shè)定的值進(jìn)行變化,, 從而完成可編程恒流源控制器的設(shè)計(jì)方法,。利用該方法設(shè)計(jì)的程控恒流源具有電流紋波小、控制精度高和運(yùn)行穩(wěn)定等特點(diǎn),。
0 引言
在飛速發(fā)展的電子和電信技術(shù)系統(tǒng)中,, 電源的優(yōu)劣在一定程度上決定著電信設(shè)備的性能和壽命。因此,, 人們對(duì)程控恒流器件的需求也日益迫切,。雖然目前市場(chǎng)上的數(shù)控恒壓技術(shù)已經(jīng)比較成熟, 數(shù)控電壓源產(chǎn)品也已朝著智能化和小型化的趨勢(shì)發(fā)展,, 且價(jià)格也越來(lái)越便宜,。但是, 在恒流源方面,, 尤其是數(shù)字控制的恒流技術(shù)則由于起步較晚,, 高性能的數(shù)控恒流器件的開發(fā)和應(yīng)用存在著巨大的發(fā)展空間。為此, 本文以C8051FF330D單片機(jī)為控制核心,, 并利用C8051FF330D的I2C串行總線擴(kuò)展外圍器件,, 同時(shí)以模塊化設(shè)計(jì)方法,設(shè)計(jì)了一種程控恒流源,。而且整個(gè)電源還具有功耗低,、體積小, 電流紋波小,、控制精度高和運(yùn)行穩(wěn)定等特點(diǎn),。
1 系統(tǒng)總體結(jié)構(gòu)
該程控恒流源設(shè)計(jì)主要采用C8051FF330D單片機(jī)內(nèi)部的10位電流型數(shù)模轉(zhuǎn)換器和電流/電壓轉(zhuǎn)換電路來(lái)輸出0~4 V的模擬量, 然后用這個(gè)電壓信號(hào)來(lái)控制恒流源的輸出電流,, 以使其按照給定值變化,。由于本系統(tǒng)擴(kuò)展了I2C串行總線接口,以及以ZLG7290為核心的鍵盤和LED數(shù)碼管顯示器電路,, 因而可用鍵盤進(jìn)行電流值和時(shí)間間隔的設(shè)定,, 其電流值設(shè)定范圍為0~10 A, 時(shí)間間隔為0~10小時(shí),。另外,, 系統(tǒng)還具有掉電保護(hù)功能, 故當(dāng)其恢復(fù)用電后,, 可使電流源從斷點(diǎn)處恢復(fù)運(yùn)行,。
圖1所示是本系統(tǒng)的硬件組成結(jié)構(gòu)。其中,,時(shí)鐘電路采用外部晶體振蕩器來(lái)提高時(shí)鐘精度,JTAG接口電路則為系統(tǒng)提供全速,、非侵入式的在線系統(tǒng)調(diào)試接口,, 而外部復(fù)位電路可用于強(qiáng)制MCU進(jìn)入復(fù)位狀態(tài)。
圖1 系統(tǒng)硬件組成結(jié)構(gòu)圖
2 硬件電路設(shè)計(jì)
2.1 模擬量輸出接口電路
C8051F330D內(nèi)部有一個(gè)10位電流型的D/A轉(zhuǎn)換器IDA0,, 它的最大輸出電流具有0.5 mA,、1 mA和2 mA三種不同的設(shè)置。同時(shí),, IDA0還具有靈活的輸出更新機(jī)制,, 并允許無(wú)縫滿度變化, 可支持無(wú)抖動(dòng)波形更新,。IDA0的三種更新方式分別為寫IDA0H,、定時(shí)器溢出和外部引腳邊沿出發(fā)。本設(shè)計(jì)采用P1.0輸出,, 并采用定時(shí)器溢出的更新方式,。
C8051F330D內(nèi)部電路中的數(shù)模轉(zhuǎn)換器輸出的0~1 mA電流信號(hào)通過(guò)基準(zhǔn)電阻轉(zhuǎn)換為0~2 V的電壓信號(hào)后, 再經(jīng)過(guò)放大電路轉(zhuǎn)換為0~4 V的標(biāo)準(zhǔn)信號(hào)輸出。其模擬量輸出信號(hào)轉(zhuǎn)換電路如圖2所示,。
圖2 模擬量輸出信號(hào)轉(zhuǎn)換電路
2.2 掉電保護(hù)電路
在電信和其他通信系統(tǒng)中,, 如果設(shè)備斷電,將給系統(tǒng)造成巨大損失,, 甚至可能使系統(tǒng)癱瘓,。
為了避免系統(tǒng)掉電情況的發(fā)生, 本設(shè)計(jì)采用FM24CL04作為非易失存儲(chǔ)器來(lái)保護(hù)系統(tǒng)參數(shù)及其它中間數(shù)據(jù),。與EEPROM不同,, FM24CL04可以以總線速度進(jìn)行寫操作, 它使用的是工業(yè)標(biāo)準(zhǔn)兩線I2C接口,, 圖3所示是本電源系統(tǒng)附帶的掉電數(shù)據(jù)保護(hù)電路,。
圖3 掉電數(shù)據(jù)保護(hù)電路
由于FM24CL04存儲(chǔ)器的寫入速度極快, 因此,, 在一個(gè)高噪聲的通信環(huán)境中,, 它受到干擾的可能性很小。此外,, FM24CL04使用二線制串行總線及握手協(xié)議來(lái)進(jìn)行雙向傳輸,, 由于這種方式占用的引腳少, 因此,, 系統(tǒng)線路板占用的空間也比較小,。
2.3 鍵盤及顯示電路
本系統(tǒng)配置有4位鍵盤和8位LED數(shù)碼管顯示電路, 以用于顯示編程數(shù)據(jù)和參數(shù),。鍵盤顯示器接口電路采用廣州周立功單片機(jī)發(fā)展有限公司的專用芯片ZLG7290B數(shù)碼管顯示驅(qū)動(dòng)和鍵盤管理芯片,。該芯片能夠直接驅(qū)動(dòng)8位共陰式數(shù)碼管或者64位獨(dú)立的LED, 同時(shí),, 也可以掃描和管理64位按鍵,。本電路將ZLG7290B通過(guò)I2C總線與單片機(jī)進(jìn)行連接, 僅需要兩根信號(hào)線即可傳遞數(shù)據(jù),。
同時(shí),, 采用ZLG7290B專用芯片還可以簡(jiǎn)化電路和程序, 減輕電路的調(diào)試負(fù)擔(dān),。而且,, 作為工業(yè)級(jí)顯示驅(qū)動(dòng)芯片, ZLG7290B也具有較強(qiáng)的抗干擾能力,。圖4 所示是由C8051F330D 單片機(jī)和ZLG7290B專用顯示驅(qū)動(dòng)芯片組成的鍵盤及顯示驅(qū)動(dòng)電路原理圖,。
圖4 鍵盤顯示驅(qū)動(dòng)電路
一般情況下, 在設(shè)計(jì)時(shí),, 為了使電源更加穩(wěn)定,, 可在圖4電路的VCC和GND之間接入電解電容。由于電路中的數(shù)碼管在工作時(shí)要消耗較大的電流, 因此,, 其限流電阻的典型值可取的更大一些,。另外, 由于數(shù)碼管掃描和鍵盤掃描線共用,,因此,, 本電路采用二極管來(lái)防止按鍵對(duì)數(shù)碼管顯示的干擾。
3 軟件設(shè)計(jì)
3.1 主程序設(shè)計(jì)
本系統(tǒng)采用C語(yǔ)言來(lái)進(jìn)行軟件設(shè)計(jì),, 以實(shí)現(xiàn)系統(tǒng)的各項(xiàng)功能,。系統(tǒng)應(yīng)用程序采用模塊化結(jié)構(gòu)設(shè)計(jì), 主要包括主程序,、參數(shù)調(diào)用修改子程序,、DAC0初始化程序等。圖5所示是其主程序流程圖,。
圖5 主程序流程圖
3.2 模塊函數(shù)程序設(shè)計(jì)
模塊函數(shù)程序主要是為結(jié)構(gòu)化模塊設(shè)計(jì)定義一些函數(shù),, 如各定時(shí)器的初始化函數(shù)、SMBUS初始化及處理函數(shù),、DAC0的初始化和處理函數(shù),,另外, 也包括往鐵電存儲(chǔ)器中寫入字節(jié)的函數(shù)和從目標(biāo)地址讀取數(shù)據(jù)等函數(shù),。其中DAC0的初始化程序代碼如下:
Void DAC_Init (void)
{
REF0CN =0X30; /*內(nèi)部偏壓發(fā)生器和電壓基準(zhǔn)緩沖器工作,, 基準(zhǔn)從VREF腳輸出*、
ID0CB =0XF2;
}
存儲(chǔ)器寫入函數(shù)如下:
Viod EEPROM_ByteWrite ( uchar i2caddr,uchar addr, uchar dat )
{
While (smb_busy)
Smb_busy = 1;
Target = i2caddr;
Smb_w =write;
Smb_sendwordaddr = 1;
Smb_randomread = 0;
Smb_ackpoll =1;
Word_addr = addr;
Smb_singlebyte_out = dat;
Psmb_data_out =&smb_singlebyte_out;
Smb_data_len =1;
Sta = 1;
}
……
4 結(jié)束語(yǔ)
本文給出了用C8051FF330D的內(nèi)部電流型D/A轉(zhuǎn)換器和電流/電壓轉(zhuǎn)換電路來(lái)設(shè)計(jì)可編程恒流源控制器的設(shè)計(jì)方法,。由于C8051F330D單片機(jī)的運(yùn)算速度比普通單片機(jī)要快,, 而且功耗比較低, 同時(shí)內(nèi)置有DAC和ADC,, 由此可在電子產(chǎn)品開發(fā)過(guò)程中減小產(chǎn)品體積,, 降低硬件連線的復(fù)雜程度。實(shí)驗(yàn)證明,, 本設(shè)計(jì)的程控電流源具有輸出電流穩(wěn)定準(zhǔn)確等特點(diǎn), 而且電流隨負(fù)載和環(huán)境溫度變化小,, 輸出電流誤差范圍為±5 mA,, 同時(shí)其輸出電流也較大, 是一款價(jià)格低廉,, 性能穩(wěn)定,,操作簡(jiǎn)單的實(shí)用性通信電流源。