早期的低壓電力線載波通信芯片的接口電路相對復(fù)雜、抗干擾能力差,且多為國外產(chǎn)品,性價(jià)比低,因此,單片機(jī)系統(tǒng)較少采用低壓電力線載波通信。隨著通信技術(shù)的發(fā)展,新型低壓電力線載波通信接口芯片解決了以上缺點(diǎn),使得單片機(jī)系統(tǒng)采用低壓電力線載波通信變得簡單易用。
PL2101簡介
PL2101采用二相相移鍵控,載波頻率120KHz,帶寬15KHz,傳輸速率500bps。它由單一的+5V電源供電,與單片機(jī)的接口簡單,外圍模擬發(fā)射/接收電路也較簡單,工作時(shí)無需外接模擬混頻器。PL2101內(nèi)置有5種實(shí)用的功能電路:時(shí)鐘電路、32 Bytes SRAM、電壓監(jiān)測、看門狗定時(shí)器及復(fù)位電路。其中,時(shí)鐘與SRAM在主電源掉電后可由3V備用電池供電繼續(xù)工作。
采用PL2101擴(kuò)展單片機(jī)低壓電力線載波通信接口
硬件電路設(shè)計(jì)
PL2101的半雙工收發(fā)控制端、HEAD(數(shù)據(jù)同步端)、RXD_TXD (半雙工數(shù)據(jù)收發(fā)、數(shù)據(jù)輸入/輸出端)引腳用于與單片機(jī)、DSP處理器收發(fā)數(shù)據(jù),實(shí)現(xiàn)低壓電力線載波通信功能;PL2101內(nèi)部的寄存器采用標(biāo)準(zhǔn)I2C接口(由SCL、SDA引腳組成進(jìn)行操作;另外,PL2101的 WDI(看門狗計(jì)數(shù)器清零輸入端)、 RESET(上電及看門狗計(jì)數(shù)器溢出復(fù)位輸出端)和PFo(電源掉電指示端)用于單片機(jī)對PL2101的工作狀態(tài)監(jiān)測。
采用PL2101為MSP430單片機(jī)擴(kuò)展低壓電力線載波通信接口的原理。PL2101和MSP430F149的接口部分,PL2101的外圍模擬發(fā)射/接收電路可參考芯片手冊的典型電路。使用MSP430F149的P1口與PL2101的8個(gè)引腳連接。使用MSP430F149具有中斷功能的 P1口的引腳P1.6連接HEAD,以實(shí)現(xiàn)在中斷方式下發(fā)送/接收PL2101的數(shù)據(jù);由于MSP430F149未集成I2C總線接口,因此,MSP430F149通過P1.2、P1.3引腳軟件模擬I2C時(shí)序來訪問PL2101的內(nèi)部寄存器;另外,由于MSP430F149采用3.3V邏輯電平,PL2101采用5V COMS邏輯電平,因此不能直接連接引腳,需要進(jìn)行電平轉(zhuǎn)換。
數(shù)據(jù)收發(fā)軟件設(shè)計(jì)
MSP430F149只需對P1口操作就可以通過PL2101進(jìn)行數(shù)據(jù)收發(fā),實(shí)現(xiàn)與其它單片機(jī)的低壓電力線載波通信。
單片機(jī)對PL2101的發(fā)送/接收數(shù)據(jù)工作時(shí)序。當(dāng)PL2101相對單片機(jī)處于發(fā)射態(tài)時(shí),PL2101由 HEAD的上升沿對內(nèi)部解調(diào)的數(shù)據(jù)進(jìn)行鎖存輸出,外部單片機(jī)可在HEAD的下降沿后讀取PL2101從電力線接收到的數(shù)據(jù)。而當(dāng)PL2101處于接收態(tài)時(shí),PL2101在 HEAD的上升沿對RXD_TXD的數(shù)據(jù)進(jìn)行鎖存,可讓外部單片機(jī)在 HEAD的下降沿后將數(shù)據(jù)置于RXD_TXD引腳,由PL2101發(fā)送到電力線上。
MSP430F149接收數(shù)據(jù)流程。程序采用子程序形式,采用中斷方式接收數(shù)據(jù)。MSP430F149發(fā)送數(shù)據(jù)流程與接收流程相似,可以看出,通過PL2101發(fā)送/接收數(shù)據(jù)的軟件設(shè)計(jì)比較簡單。
PL2101配置及監(jiān)控軟件設(shè)計(jì)
PL2101的配置通過對其內(nèi)部寄存器的操作來實(shí)現(xiàn)。PL2101上電復(fù)位后,除寫保護(hù)寄存器外,其它寄存器均處于寫保護(hù)狀態(tài)。單片機(jī)系統(tǒng)對PL2101上電復(fù)位后,應(yīng)先向PL2101的寫保護(hù)寄存器寫1xxx xxxx B以打開寫保護(hù),再按電網(wǎng)特性向捕獲門限寄存器寫入相關(guān)數(shù)據(jù)來配置PL2101。
(審核編輯: 小王子)