于進(jìn)杰+唐正華
【摘 要】大部分單片機(jī)都沒有D/A輸出的引腳,但是一般都有PWM引腳,如果涉及的系統(tǒng)需要外接控制電機(jī)等需要D/A信號(hào)輸出控制的設(shè)備,就需要在單片機(jī)引腳拓展D/A轉(zhuǎn)換。一般都是外接一個(gè)D/A轉(zhuǎn)化芯片來完成,但是價(jià)格比較高,這里討論一個(gè)利用PWM引腳拓展轉(zhuǎn)換成D/A輸出的設(shè)計(jì),大大減低價(jià)格成本。
【關(guān)鍵詞】D/A轉(zhuǎn)換;光電隔離;誤差;PWM
中圖分類號(hào): TN792 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 2095-2457(2017)23-0112-002
【Abstract】Most microcontrollers do not have D/A output pins,but generally have PWM pins, if the system involved in the need for external control of the motor and other equipment need D/A signal output control, you need to expand the microcontroller D/A conversion.Usually a D/A converter chip to complete,but the price is relatively high,here to discuss the use of PWM pin expansion into D/A output design,greatly reducing the cost of the price.
【Key words】D/A conversion;Photoelectric isolation;Error;PWM
0 引言
單片機(jī)控制器受到外界的電磁干擾比較大,這些干擾會(huì)導(dǎo)致單片機(jī)控制器輸出信號(hào)產(chǎn)生誤差。所以在設(shè)計(jì)的時(shí)候,必須根據(jù)所連接負(fù)載可能產(chǎn)生干擾的形式采取相應(yīng)的抗干擾措施,提高單片機(jī)控制器的電磁兼容性。
1 PWM轉(zhuǎn)D/A輸出模塊的設(shè)計(jì)
1.1 硬件電路設(shè)計(jì)
在單片機(jī)輸出接口設(shè)計(jì)中,如果需要D/A輸出,首先想到的是利用單片機(jī)I/O口外接一個(gè)D/A轉(zhuǎn)換芯片,這里我們利用單片機(jī)的PWM接口通過外接設(shè)計(jì)電路,同樣可以得到需要的D/A輸出信號(hào),同時(shí)還可以節(jié)省單片機(jī)的I/O接口資源。
首先選取一個(gè)比較常用的單片機(jī)PIC16F877,如果需要產(chǎn)生0~10V的模擬電壓信號(hào),而PIC16F877本身沒有D/A輸出引腳,不能直接輸出模擬電壓信號(hào)。但PIC16F877芯片帶有兩個(gè)CCP模塊,所對應(yīng)的引腳通過軟件編程均可配置為PWM工作模式,在該模式下,CCPx引腳可以輸出占空比為10位分辨率可調(diào)的方波,這樣我們得到一個(gè)PWM的輸出引腳。通過對PWM輸出引腳接低通濾波器的方法得到D/A輸出。考慮到在這個(gè)轉(zhuǎn)換過程中會(huì)受到外界或是所帶負(fù)載的干擾,以及D/A信號(hào)比較微弱需要增益等一些因素的影響,對PWM輸出直接低通濾波要做一些改進(jìn)。
首先轉(zhuǎn)換要從源頭做起,從PIC16F877出來的PWM信號(hào)先連接一個(gè)高速光電耦合器以減小數(shù)字信號(hào)脈沖對模擬信號(hào)的干擾。再連接一個(gè)單刀雙擲模擬開關(guān)MAX4599來穩(wěn)定PWM輸出的高低電平的電壓值,為后面轉(zhuǎn)D/A信號(hào)提供一個(gè)比較純凈的初始信號(hào)。綜合上述考慮,針對PWM轉(zhuǎn)D/A輸出模塊電路進(jìn)行如下的設(shè)計(jì),如圖1。
1.2 PWM波的轉(zhuǎn)換過程
首先由PIC16F977 的CCP1引腳連接高速光電耦合器6N137進(jìn)行隔離,經(jīng)過隔離后的脈沖信號(hào)接入單刀雙擲模擬開關(guān)MAX4599得到整定后的PWM信號(hào),再經(jīng)過兩級(jí)RC低通濾波后得到0~5V的模擬電壓信號(hào)。如果后面的負(fù)載需要0~10V電壓,再加一個(gè)放大倍數(shù)為2的同相放大器;如果后面的負(fù)載需要比較大的功率,可以再加一個(gè)電壓跟隨器。
2 主要元器件的選取
2.1 R、C元件參數(shù)的選取
2.2 參考電壓芯片的選取
參考電壓芯片選取精密基準(zhǔn)電壓源REF02,該芯片可以提供精確的+10V、+5V、+2.5V輸出的參考電壓,環(huán)境溫度或負(fù)載條件的變化對輸出電壓的影響極小,同時(shí)具有小尺寸,寬電源電壓范圍,應(yīng)用廣泛,能夠在更寬的工作溫度范圍內(nèi)提供更高的精度和溫度穩(wěn)定性。
3 軟件流程圖
軟件編程方面主要是PIC16F877能夠根據(jù)理想電壓曲線的電壓值產(chǎn)生與之對應(yīng)的PWM信號(hào),即通過軟件編程設(shè)置PWM信號(hào)的占空比來實(shí)現(xiàn)。PWM方式電壓輸出的簡要流程圖如圖2。
4 結(jié)束語
通過硬件電路和軟件優(yōu)化,使得單片機(jī)輸出的PWM信號(hào)受到的外界的干擾更小,從而可以提升系統(tǒng)運(yùn)行的穩(wěn)定性。同時(shí)可以節(jié)省出至少8個(gè)I/O引腳資源。
【參考文獻(xiàn)】
[1]張明峰.PIC單片機(jī)入門與實(shí)戰(zhàn)[M].北京航空航天大學(xué)出版社,2004.
[2]劉篤仁.PIC軟硬件系統(tǒng)設(shè)計(jì)一基于PIC16F87X系列[M].電子工業(yè)出版社,2005.
[3]胡漢才.單片機(jī)原理及系統(tǒng)設(shè)計(jì)[M].清華大學(xué)出版社,2002.
[4]蔣璇.數(shù)字系統(tǒng)設(shè)計(jì)入門與應(yīng)用[M].電子工業(yè)出版社,2001.endprint