<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 電源與新能源 > 設計應用 > 集合四種功能,我的“雙核獨顯”電源制作過程 12-06

          集合四種功能,我的“雙核獨顯”電源制作過程 12-06

          作者: 時間:2012-12-22 來源:網(wǎng)絡 收藏

            近段時間我制造了一個集電流源、電壓源、充電和烙鐵于一身的“四用”電源,同時還有個顯示屏顯示。在設計過程中,我用到兩個單片機,一個負責變量采集,一個主負責顯示。于是我的同事就把這個“怪獸”叫做“”電源。

            核心是控制一個由MOS管搭建的一個電壓調(diào)節(jié)板,可以數(shù)控電壓,因此得到一個電壓源;通過電流反饋,調(diào)節(jié)電壓,又得到一個電流源;通過電流電壓反饋,得到一個鋰電池充電器;通過烙鐵溫度反饋,得到一個恒溫烙鐵控制器,思路就是這么來的。單片機是飛思卡爾QD4,兩個16bit定時器/PWM ,四通道10bitAD。它的主要功能有:1、電壓源;2、電流源;3、充電器;4、恒溫烙鐵控制器。

            下面是電路圖:

          主控電路

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            調(diào)壓電路

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            調(diào)壓電路中NMOS借鑒白光烙鐵的電路,不過要做快速開關,圖中的R9不能太大,我用500歐的,PWM 2KHZ可以。上拉電阻R13也很重要,在單片機異常是,保證關斷輸出。MOS后端的電路,可以參考DC芯片資料。

            其中具體的焊接過程我就忽略不寫了,相信大家根據(jù)我給的電路圖就可以做出相對應的產(chǎn)品。

            以下是一些總體圖和測試圖:

            總體的樣子

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

              電源輸入是用筆記本電源。輸出是一個USB口,我平時用不到大電流,3A足夠了,步進10ma。最大輸出電壓接近輸入電壓,步進0.01V。顯示用的是nokia5110顯示屏(上圖是用5V供電,屏幕有雜點,下面改為3.7V,完美屏)。

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

              輸入由一個電位器,一個按鍵構成。電位器仿照示波器的用法,可以上下選擇,也可以輸入設定值。按鍵短按用來“確定”,長按“返回”這些信息由單片機1采集,單線發(fā)送給單片機2,顯示。單線通信花了不少精力。采樣電阻50m歐,用358放大。電流采集后要校正,消除偏差。
          做好了這一大堆東西后,我們要對其進行基本的功能測試。

            一、電壓源

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            下圖中:9.22V是實時采集的真實電壓,S:設定值,I:電流

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            電壓輸出相應很快,示波器截圖

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            快速扭動電位器,都可以用示波器作畫了

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            二、電流源

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            下圖中:0.44A是實時采集的真實電流,S:設定值,V:電壓

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06  三、充電模式

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            為了測試,把我移動電源的電池芯拆出來了。當時舍得的橫流充階段電流為300ma,這叫一個等啊

            不過能看到這么多輸出信息,挺爽的

            0264mA是累計充電電量,I:當前充電電流,V:電池電壓

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            四、烙鐵模式

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            炊煙裊裊啊……公司的熱成像儀送檢了,無法校準溫度。我是用公式直接算的,感覺偏低了。不過筆記本電源供電,剛剛的。愛死這個烙鐵了

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            介紹一下這個USB烙鐵

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            烙鐵是用白光936烙鐵柄改的,接了個USB頭,外側做電源線,usb的數(shù)據(jù)線接反饋電阻。經(jīng)過測試,3A電流,usb口毫無問題,而且升溫也不錯,所以程序了限定3A。太大電流,筆記本電源會保護。

            以下是我將產(chǎn)品組裝進盒子里面的圖示:

            殼子是拆了一個12V/2A的電源的塑料殼,把這么大一坨東西,塞進去,可是費了功夫。

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            終于塞的差不多

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            進去了?。∽竺嬉粡?/P>

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            右面一張

            集合四種功能,我的“雙核獨顯”電源制作過程 12-06

            上面的是開機圖片(怎么跟大哥大似的)……

            到此為止所有的制作就已經(jīng)完成了。
            在制作過程中,我想給大家說一下我的一些編程方面的經(jīng)驗。

            一、時基函數(shù)

            我現(xiàn)在覺得這個函數(shù)應該是每個工程必須的,但回想我看過的單片機書,好像沒有講到這一點的,相見恨晚。
            void TimePro()
            {
            if(!b_8msFG)
            return;
            b_8msFG = 0;
            Tim8ms++;
            PIHtim++;
            if(KeyTim 《 255)
            KeyTim++;
            if(PIHtim 》 4)
            {
            TPM2C0SC = 0x48; //開外部中斷
            }
            LCDTim++;
            LCDFlashTim++;
            if(Tim1ms 》 124)
            {
            Tim1ms = 0;
            Tim1S++;
            ……
            ……
            ……
            }
            }
            上面就是一個“時基函數(shù)”,當你的程序有幾個外圍需要同時控制時,再用NOP延時,直線執(zhí)行已經(jīng)忙不過來了,需要用上面的函數(shù)。
            b_8msFG在8ms定時中斷中置為1。TimePro()在主函數(shù)中調(diào)用。這樣KeyTim、LCDTim這些計時變量就在一直計時。例如調(diào)用鍵盤程序,判斷一下KeyTim是否到時間,到了執(zhí)行,KeyTim清零,不到返回,再去調(diào)用別的函數(shù)體。這樣分時復用CPU,避免了NOP來浪費系統(tǒng)資源,當幾個外圍執(zhí)行周期不同時,更是這樣 。

            二、AD采樣(數(shù)字濾波)

            這個程序是公司的標準模塊。大學時,AD采出來,我就直接用了。工作了才發(fā)現(xiàn)這樣不好,采完后還要做一下數(shù)字濾波。數(shù)字濾波,不知誰起的這么好聽的名字,唬住不少人。其實很簡單,但很實用。在這里,實際操作就是:采六次,去掉最大最小值,剩四個求平均。以前對它的作用體會不深,當有一個單片機直接測交流真有效值的項目,一個不堪入目的波形進入單片機,數(shù)字濾波后,一下數(shù)值穩(wěn)定不亂跳了,頓生感慨。
            下面是程序:
            void ADPro()
            {
            uchar n,i;
            if(ADTim 《10) return;
            ADTim = 0;
            for(n=0;n《6;n++)
            {
            ADChannel = Channelin; //通道選擇;
            while(!ADC1SC1_COCO) NOP();//等待轉換完成
            ADC1SC1_COCO = 0;
            ADNum = ADC1R; //取得AD值
            // ADNum = 298;
            if(0==n)
            {
            m_ADCSum = 0;
            m_ADCMax = ADNum;
            m_ADCMin = ADNum;
            }
            if(ADNum《m_ADCMin)
            {
            m_ADCMin = ADNum;
            }
            else if(ADNum》m_ADCMax)
            {
            m_ADCMax = ADNum;
            }
            m_ADCSum += ADNum;
            ADNum = 0;
            }
            m_ADCSum=m_ADCSum-m_ADCMax;
            m_ADCSum=m_ADCSum-m_ADCMin; //減去最大最小值
            m_ADCSum = m_ADCSum》》2; //取均值
            switch (Channelin)
            {
            case 0 :
            ADSet = m_ADCSum;
            break;
            case 1 :
            ADI = m_ADCSum;
            break;
            case 2 :
            ADTemp = m_ADCSum;
            break;
            ca


          上一頁 1 2 下一頁

          評論


          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();