新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 怎么用C8051FF330D單片機設計恒流源控制器

        怎么用C8051FF330D單片機設計恒流源控制器

        作者: 時間:2016-11-18 來源:網絡 收藏
        在飛速發展的電子和電信技術系統中, 電源的優劣在一定程度上決定著電信設備的性能和壽命。雖然目前市場上的數控恒壓技術已經比較成熟, 數控電壓源產品也已朝著智能化和小型化的趨勢發展, 且價格也越來越便宜。
        C8051FF330D單片機為控制核心, 并利用C8051FF330D的I2C串行總線擴展外圍器件, 同時以模塊化設計方法,設計了一種程控恒流源。而且整個電源還具有功耗低、體積小, 電流紋波小、控制精度高和運行穩定等特點。

        工具/原料

        • C8051FF330D單片機、JTAG接口、LED數碼管、電路圖、鍵盤

        步驟/方法

        1. 系統總體結構:采用C8051FF330D單片機內部的10位電流型數模轉換器和電流/電壓轉換電路來輸出0~4 V的模擬量, 然后用這個電壓信號來控制恒流源的輸出電流, 以使其按照給定值變化。
        2. 輸出接口電路:C8051F330D內部電路中的數模轉換器輸出的0~1 mA電流信號通過基準電阻轉換為0~2 V的電壓信號后, 再經過放大電路轉換為0~4 V的標準信號輸出。其模擬量輸出信號轉換電路如圖所示。

        3. 掉電保護電路:為了避免系統掉電情況的發生, 本設計采用FM24CL04作為非易失存儲器來保護系統參數及其它中間數據。與EEPROM不同, FM24CL04可以以總線速度進行寫操作, 它使用的是工業標準兩線I2C接口, 圖3所示是本電源系統附帶的掉電數據保護電路。
        4. 鍵盤及顯示電路;采用ZLG7290B專用芯片還可以簡化電路和程序, 減輕電路的調試負擔。而且, 作為工業級顯示驅動芯片, ZLG7290B也具有較強的抗干擾能力。圖4 所示是由C8051F330D 單片機和ZLG7290B專用顯示驅動芯片組成的鍵盤及顯示驅動電路原理圖。
        5. 主程序設計:采用C語言來進行軟件設計, 以實現系統的各項功能。系統應用程序采用模塊化結構設計, 主要包括主程序、參數調用修改子程序、DAC0初始化程序等。圖5所示是其主程序流程圖。
        6. 模塊函數程序設計:
          Void DAC_Init (void)
            {
            REF0CN =0X30; /*內部偏壓發生器和電壓基準緩沖器工作, 基準從VREF腳輸出*、
            ID0CB =0XF2;
            }
            存儲器寫入函數如下:
            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;
            }
            ……

        注意事項

        • 在制作和配置過程中一定要按照以上步驟來進行
        • 最后成功后,還要進行一定的調試


        評論


        技術專區

        關閉
        主站蜘蛛池模板: 调兵山市| 杭锦后旗| 长春市| 葫芦岛市| 横峰县| 岗巴县| 鄂托克前旗| 东城区| 芒康县| 宜良县| 荆门市| 筠连县| 儋州市| 鄂尔多斯市| 上饶市| 苏尼特左旗| 育儿| 鄄城县| 民丰县| 英德市| 宁化县| 邢台市| 山东| 仁寿县| 东安县| 磐安县| 芮城县| 环江| 兰溪市| 资阳市| 金阳县| 西城区| 明光市| 黄浦区| 罗山县| 九寨沟县| 吴堡县| 厦门市| 奉化市| 全南县| 郯城县|