怎么用C8051FF330D單片機設計恒流源控制器
以C8051FF330D單片機為控制核心, 并利用C8051FF330D的I2C串行總線擴展外圍器件, 同時以模塊化設計方法,設計了一種程控恒流源。而且整個電源還具有功耗低、體積小, 電流紋波小、控制精度高和運行穩(wěn)定等特點。
工具/原料
- C8051FF330D單片機、JTAG接口、LED數(shù)碼管、電路圖、鍵盤
步驟/方法
- 系統(tǒng)總體結(jié)構:采用C8051FF330D單片機內(nèi)部的10位電流型數(shù)模轉(zhuǎn)換器和電流/電壓轉(zhuǎn)換電路來輸出0~4 V的模擬量, 然后用這個電壓信號來控制恒流源的輸出電流, 以使其按照給定值變化。
- 輸出接口電路:C8051F330D內(nèi)部電路中的數(shù)模轉(zhuǎn)換器輸出的0~1 mA電流信號通過基準電阻轉(zhuǎn)換為0~2 V的電壓信號后, 再經(jīng)過放大電路轉(zhuǎn)換為0~4 V的標準信號輸出。其模擬量輸出信號轉(zhuǎn)換電路如圖所示。
- 掉電保護電路:為了避免系統(tǒng)掉電情況的發(fā)生, 本設計采用FM24CL04作為非易失存儲器來保護系統(tǒng)參數(shù)及其它中間數(shù)據(jù)。與EEPROM不同, FM24CL04可以以總線速度進行寫操作, 它使用的是工業(yè)標準兩線I2C接口, 圖3所示是本電源系統(tǒng)附帶的掉電數(shù)據(jù)保護電路。
- 鍵盤及顯示電路;采用ZLG7290B專用芯片還可以簡化電路和程序, 減輕電路的調(diào)試負擔。而且, 作為工業(yè)級顯示驅(qū)動芯片, ZLG7290B也具有較強的抗干擾能力。圖4 所示是由C8051F330D 單片機和ZLG7290B專用顯示驅(qū)動芯片組成的鍵盤及顯示驅(qū)動電路原理圖。
- 主程序設計:采用C語言來進行軟件設計, 以實現(xiàn)系統(tǒng)的各項功能。系統(tǒng)應用程序采用模塊化結(jié)構設計, 主要包括主程序、參數(shù)調(diào)用修改子程序、DAC0初始化程序等。圖5所示是其主程序流程圖。
- 模塊函數(shù)程序設計:
Void DAC_Init (void)
{
REF0CN =0X30; /*內(nèi)部偏壓發(fā)生器和電壓基準緩沖器工作, 基準從VREF腳輸出*、
ID0CB =0XF2;
}
存儲器寫入函數(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;
}
……
注意事項
- 在制作和配置過程中一定要按照以上步驟來進行
- 最后成功后,還要進行一定的調(diào)試
評論