張?jiān)俸」緩?qiáng) 張幼涵
中圖分類號(hào):TP2文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1671-7597(2009)0920006-02
一、引言
隨著電子技術(shù)的普及,家庭用防盜設(shè)備的應(yīng)用逐漸增多,而針對(duì)家庭用的防盜報(bào)警設(shè)備由于過(guò)去使用專用防盜器,導(dǎo)致有效檢測(cè)面積覆蓋率低、價(jià)格昂貴、安裝困難、功耗大等問(wèn)題,本系統(tǒng)采用新的設(shè)計(jì)思路,摒棄舊的傳感器,使用價(jià)格低廉的紅外激光發(fā)射管和對(duì)應(yīng)波長(zhǎng)光電接收管以及簡(jiǎn)易的波形采樣整形濾波電路,構(gòu)成了防盜系統(tǒng)的傳感部分;而從功耗和成本上考慮,采用PICnW級(jí)單片機(jī)PIC16F676作為后端數(shù)據(jù)采集,以及數(shù)據(jù)處理和報(bào)警等控制器。計(jì)算機(jī)采集部分,采用計(jì)算機(jī)串口接收數(shù)據(jù),軟件方面,采用Microsoft Visual Basic6.0編制。
整機(jī)結(jié)構(gòu)如下圖1:
以圖1所示,只是采用一路報(bào)警信號(hào)作為表示功能,在實(shí)際應(yīng)用中,可以采用CD4555等類似的擴(kuò)展芯片實(shí)現(xiàn)信號(hào)通道擴(kuò)展,擴(kuò)展電路如下。
二、PIC單片機(jī)簡(jiǎn)介
PIC單片機(jī),microchip公司的產(chǎn)品。采用哈佛架構(gòu)的RISC單片機(jī),其指令集也很精簡(jiǎn)。同時(shí),其產(chǎn)品線比較廣泛,從最基本的8位單片機(jī)到12位、14位甚至16位高端一應(yīng)俱全,一般我們將其產(chǎn)品劃分為低、中、高三個(gè)級(jí)別。
PIC集成的外設(shè)極為豐富。片內(nèi)集成USART、I2C、AD、PWM等模塊。有的還有LCD驅(qū)動(dòng)模塊、USB驅(qū)動(dòng)模塊甚至以太網(wǎng)模塊。應(yīng)用起來(lái)極為簡(jiǎn)便,同時(shí)也可以減少外圍電路。由于PIC的IO輸出承載力很強(qiáng),可達(dá)20mA以上,加上PWM,使其在各個(gè)方面都很有作為。
程序運(yùn)行之后,先進(jìn)行系統(tǒng)初始化,由于本系統(tǒng)采用外部時(shí)鐘喚醒,在初始化期間,應(yīng)將系統(tǒng)的時(shí)鐘源定義在TIMERA上。
檢測(cè)部分,以一路檢測(cè)信號(hào)為說(shuō)明,當(dāng)TXD發(fā)送出一系列定時(shí)脈沖波后,RXD會(huì)在一段時(shí)間后檢測(cè)到這個(gè)序列波,為了防止誤報(bào)現(xiàn)象的發(fā)生,發(fā)送的光波序列,采用準(zhǔn)曼徹斯特編碼方式,即以上升沿為二進(jìn)制數(shù)字1,下降沿為二進(jìn)制數(shù)字0,當(dāng)產(chǎn)生連續(xù)的1或0時(shí),系統(tǒng)提前產(chǎn)生一個(gè)偽下降,為了保證系統(tǒng)可靠,其通訊時(shí)間將擴(kuò)大一倍,即以2位的通訊時(shí)間來(lái)傳輸1位有效數(shù)據(jù)。
按鍵部分采用外部中斷模式,使用內(nèi)部上拉電平,當(dāng)按鍵按下后,系統(tǒng)采樣到一個(gè)下降沿,產(chǎn)生中斷,啟動(dòng)部分功能,本系統(tǒng)將按鍵功能定義為系統(tǒng)初始化功能,即按鍵按下后,系統(tǒng)復(fù)位,進(jìn)行系統(tǒng)初始化。
當(dāng)信號(hào)采集部分通訊出現(xiàn)中斷,軟件將進(jìn)行判別,當(dāng)滿足一定條件后,系統(tǒng)認(rèn)為光線被固定物體遮擋住,蜂鳴器長(zhǎng)響報(bào)警,為提高報(bào)警效果,產(chǎn)品上還增加了LM386等功率防大電路驅(qū)動(dòng)喇叭,增大了報(bào)警范圍;同時(shí)通過(guò)串行通訊發(fā)送到計(jì)算機(jī)遠(yuǎn)端,由計(jì)算機(jī)軟件判斷是否是滿足報(bào)警故障,是否通過(guò)連接的手機(jī)或移動(dòng)通信模塊,上報(bào)到指定電話或直接撥打電話。
以下為單片機(jī)程序代碼,由于篇幅限制,只能提供描述原理性質(zhì)的偽代碼以供大家參考。
文件名:wartest.c
#i nclude
//定義芯片工作時(shí)的配置位
__CONFIG(HS & WDTEN & PWRTEN & BOREN & DP & LVPDIS & DUNPROT & WRTDIS & DEBUGEN & PROTECT);
//聲明函數(shù)類型
//定義變量
unsigned char num1,num2;
bit flag1,flag2 ;
... ...
//函數(shù)
/*******************************
函數(shù)名:main
入口:無(wú)
出口:無(wú)
功能:主函數(shù)
*******************************/
void main(void)
{
initport1();
initport2();
inittime();
while(1)
{
testport();
if(testport1_1==1)
{
sendmess();
}
}
}
/*******************************
函數(shù)名:initport1
入口:無(wú)
出口:無(wú)
功能:初始化端口1
*******************************/
void initport1(void)
{
......
}
/*******************************
函數(shù)名:initport2
入口:無(wú)
出口:無(wú)
功能:初始化端口2
*******************************/
void initport2(void)
{
......
}
/*******************************
函數(shù)名:testport
入口:無(wú)
出口:無(wú)
功能:測(cè)試端口信號(hào)
*******************************/
void testport(void)
{
......
}
/*******************************
函數(shù)名:sendmess
入口:無(wú)
出口:無(wú)
功能:發(fā)送報(bào)警信息
*******************************/
void sendmess(void)
{
......
}
說(shuō)明:以上程序僅為了指示程序功能用。
三、結(jié)束語(yǔ)
本系統(tǒng)經(jīng)過(guò)試驗(yàn)驗(yàn)證,采集成功率達(dá)到95%以上,同時(shí)由于其成本低廉,已經(jīng)進(jìn)行了小批量投產(chǎn)試運(yùn)行,效果良好。
參考文獻(xiàn):
[1]PIC16F685/687/689/690數(shù)據(jù)手冊(cè),microchip公司數(shù)據(jù)手冊(cè).
[2]武鋒,PIC單片機(jī)C語(yǔ)言開(kāi)發(fā)入門,北京航空航天大學(xué)出版社.
[3]Di Jasio(加西奧等),PIC微控制器技術(shù)及應(yīng)用,電子工業(yè)出版.