張慧 徐琛
摘 要:文章基于STC89C52單片機設(shè)計了一種具有記憶功能的紅外計數(shù)器,該計數(shù)器性能穩(wěn)定、抗干擾能力強,具有防掉電數(shù)據(jù)丟失,閾值設(shè)置和超閾值報警等功能。系統(tǒng)由按鍵單元、顯示單元、紅外傳感器單元、存儲器單元和報警單元五個主要部分組成。
關(guān)鍵詞:STC89C52;紅外計數(shù)器;AT24C02;閾值
引言
隨著社會的發(fā)展,流水線技術(shù)在企業(yè)生產(chǎn)中應(yīng)用日益廣泛,如何實時、有效、準確地對線上產(chǎn)品進行計數(shù),成為了人們普遍關(guān)心的問題。傳統(tǒng)的計數(shù)器電路復(fù)雜,元件量多,故障率高,維修不方便,且掉電數(shù)據(jù)就會丟失。而以單片機作為核心控制芯片的紅外線電子計數(shù)器能夠大幅度提高產(chǎn)品的穩(wěn)定性、實時性。文章就是基于STC89C52單片機設(shè)計了一種具有記憶功能的紅外計數(shù)器,其不光具有計數(shù)、閾值設(shè)置和超閾值報警功能,還增加了防掉電數(shù)據(jù)丟失功能。
1 系統(tǒng)整體設(shè)計
本系統(tǒng)核心控制部分為STC89C52單片機,系統(tǒng)由報警電路、時鐘與復(fù)位電路、電源電路、按鍵輸入電路、數(shù)碼管和LED顯示部分、紅外傳感器和EEPROM存儲單元組成(圖1)。
時鐘與復(fù)位電路、電源電路構(gòu)成單片機的最小系統(tǒng);按鍵的主要功能是預(yù)設(shè)閾值、清零;報警電路主要作用為當計數(shù)值超過預(yù)設(shè)閾值時進行報警;數(shù)碼管主要用來顯示設(shè)定閾值和計數(shù)值;發(fā)光二極管用于指示工作狀態(tài),閃爍時為計數(shù)狀態(tài);紅外傳感器作用是采集物件通過信號,實現(xiàn)計數(shù);EEPROM存儲單元選用AT24C02芯片完成存儲功能,可以在掉電時保存數(shù)據(jù)。(圖1)
2 主要電路設(shè)計
2.1 揚聲器報警電路設(shè)計
揚聲器報警電路如圖2所示。電路由單片機通過P3.5口進行控制,當計數(shù)值超過上限值時,P3.5輸出方波信號,并經(jīng)三極管放大,讓揚聲器產(chǎn)生“滴滴”的報警聲,以達到報警的目的。
2.2 EEPROM存儲電路
系統(tǒng)選用AT24C02 芯片存儲預(yù)設(shè)閾值和計數(shù)值,電路如圖3所示。AT24C02內(nèi)部存儲地址的0x00和0x01單元用于存儲計數(shù)值,地址0x02和0x03用于存儲預(yù)設(shè)閾值。AT24C02通過6和5號腳分別與單片機的P2.5和P2.6連接,用I2C的串行通信方式與單片機傳輸數(shù)據(jù)。
2.3 紅外傳感器模塊
本系統(tǒng)選用 E18-D80NK型號的紅外光電開關(guān),該傳感器集發(fā)射與接收于一體,檢測距離可以根據(jù)要求進行調(diào)節(jié),有探測距離遠、受可見光干擾小、價格便宜、易于裝配、使用方便等特點。該傳感器有三個引線,其中紅色線接5V電源,綠色線接地,黃色線用于輸出采集信號,通過單片機P1.4口傳入計數(shù)信號。
2.4 按鍵輸入電路(圖4)
按鍵輸入電路包括4個按鍵,選用輕觸開關(guān),按下時輸入低電平。4個按鍵的主要功能為:K1為預(yù)置數(shù)按鍵,K2為加按鍵,K3為減按鍵,K4為清零按鍵。4個按鍵分別接在單片機的P1.0、P1.1、P1.2和P1.3引腳上。
3 程序設(shè)計
程序設(shè)計包括主程序(main)、計數(shù)子函數(shù)(jishu)、按鍵掃描子函數(shù)(keyscan)、顯示子函數(shù)(display)、T0初始化函數(shù)(InitTimer0)、T0中斷服務(wù)函數(shù)(timer0)等幾個部分。
計數(shù)子函數(shù)主要采集紅外傳感器信號,每有物體通過則計數(shù)值加1,并把計數(shù)值存入AT24C02中。按鍵掃描子函數(shù),主要完成對四個按鍵的信息讀取,并根據(jù)按下的按鍵執(zhí)行相應(yīng)的功能。顯示子函數(shù),完成對4位數(shù)碼管的顯示控制,首先通過計算獲取要顯示數(shù)據(jù)的個、十、百、千位,然后通過動態(tài)顯示的編程方法分別向P0和P2口送各個位的段碼和位碼。T0初始化函數(shù)完成對T0計數(shù)器的初始化,設(shè)置工作方式和計數(shù)初值。T0中斷服務(wù)函數(shù)完成500ms的定時,用于控制發(fā)光二極管進行一秒閃爍以及揚聲器的滴滴報警。主程序主要功能是開機讀取24C02的計數(shù)和閾值信息,調(diào)用子函數(shù),完成計數(shù)器功能。
4 結(jié)束語
文章設(shè)計的紅外計數(shù)器采用單片機控制、紅外線遮光方式,抗干擾性好,可靠性高;可調(diào)整閾值,具有超過閾值報警功能;設(shè)計了EEPROM存儲部分,有效防止掉電丟失數(shù)據(jù)。
參考文獻
[1]應(yīng)玉明.基于單片機控制的工件自動計數(shù)系統(tǒng)設(shè)計[J].機電工程技術(shù),2011,40(7):47-49.
[2]盧旭錦.基于Keil c的AT24c02串行EEPROM的編程[J].現(xiàn)代電子技術(shù),2007(8):154-160.
[3]李朝青.單片機原理及接口技術(shù)[M].北京:航空航天大學出版社,2010:17-40.