林鈺洲
摘要:該文設(shè)計(jì)了一款提醒老人用藥的電子鬧鐘,其主要內(nèi)容是電子電路和軟件編程兩大塊的內(nèi)容。電子電路部分是以STC89C52為核心,結(jié)合DS1302時(shí)鐘模塊、LCD1602模塊、L298N電機(jī)驅(qū)動(dòng)模塊、42步進(jìn)電機(jī)、12V電源等實(shí)現(xiàn)對(duì)用藥系統(tǒng)的控制。電路實(shí)現(xiàn)了時(shí)間顯示、時(shí)間調(diào)整、定時(shí)提醒鬧鐘、自動(dòng)出藥等功能,經(jīng)過實(shí)踐該系統(tǒng)達(dá)到了設(shè)計(jì)目的和要求。
關(guān)鍵詞:單片機(jī);DS1302;AT89C52;提醒老人用藥
引言
嵌入式計(jì)算機(jī)技術(shù)是當(dāng)今計(jì)算機(jī)發(fā)展的重要方向之一,單片機(jī)作為最典型的嵌入式系統(tǒng),被廣泛應(yīng)用于工業(yè)測控、網(wǎng)絡(luò)通信、智能儀器和家用電器等領(lǐng)域,已成為現(xiàn)代電子系統(tǒng)中的智能化工具。單片機(jī)的全稱為單片微型計(jì)算機(jī),主要用于控制,所以稱它為微控制器或嵌入式控制器,單片機(jī)是將計(jì)算機(jī)的基本部件微型化并集成在一塊芯片上的微型計(jì)算機(jī)。
1.系統(tǒng)需求分析
經(jīng)過調(diào)查發(fā)現(xiàn),很多時(shí)候子女因忙于工作并無法時(shí)刻陪在老人身邊,身體不適的老人常常會(huì)忘記用藥,所以我設(shè)計(jì)了一款智能鬧鐘來提醒老人用藥。
2.電子電路設(shè)計(jì)
根據(jù)設(shè)需求以及STC89C52的特點(diǎn),通過按鍵進(jìn)行用藥時(shí)間的設(shè)定,當(dāng)DS1302中的時(shí)間與設(shè)定時(shí)間吻合時(shí)鬧鐘便會(huì)響起,老人需要按一下開關(guān),停止鬧鐘并由單片機(jī)向步進(jìn)電機(jī)發(fā)出一定頻率和數(shù)量的脈沖信號(hào),實(shí)現(xiàn)出藥功能。其設(shè)計(jì)方案說明如下:①12V電源為L298N電機(jī)驅(qū)動(dòng)模塊供電②電機(jī)驅(qū)動(dòng)模塊為步進(jìn)電機(jī)和單片機(jī)供電③單片機(jī)與其他模塊之間接線進(jìn)行通信
2.1單片機(jī)最小系統(tǒng)
單片機(jī)最小系統(tǒng)必需包括電源電路、晶振電路、復(fù)位電路。電源電路需要+5V工作電壓為單片機(jī)供電,晶振電路采用的是11.0592MHz的無源石英晶體振蕩器。
2.2供電電路及電機(jī)驅(qū)動(dòng)模塊
L298N電機(jī)驅(qū)動(dòng)模塊的驅(qū)動(dòng)部分供電范圍為+5V~+35V,可以板內(nèi)取電,此時(shí)要求供電范圍為+7V~+35V。由于步進(jìn)電機(jī)需要12V電源,所以選用12V電源作為輸入,為42步進(jìn)電機(jī)供電,同時(shí)利用該電機(jī)驅(qū)動(dòng)模塊的特點(diǎn),使用該模塊的5V使能端口,為單片機(jī)提供電源。
2.3步進(jìn)電機(jī)
42步進(jìn)電機(jī)是將電脈沖信號(hào)轉(zhuǎn)變?yōu)榻俏灰频脑?,其為二相四線制,以8拍的方式工作,則每個(gè)脈沖旋轉(zhuǎn)0.9°,即每旋轉(zhuǎn)一圈需要400個(gè)脈沖信號(hào)來勵(lì)磁。
2.4實(shí)時(shí)時(shí)鐘模塊
DS1302實(shí)時(shí)時(shí)鐘模塊能夠計(jì)算2100年之前的年、月、日、時(shí)、分、秒、星期,同時(shí)還具有閏年調(diào)整的能力。該模塊通過一個(gè)串行I/O口進(jìn)行通信,使得管腳數(shù)最少,其工作電流為200nA并且?guī)в幸粋€(gè)CR2032電池,使之能夠在掉電的情況下繼續(xù)走時(shí)。
2.5液晶顯示模塊
LCD1602模塊是一種低功耗顯示器件,具有顯示內(nèi)容豐富、體積小、重量輕、壽命長、安全省電等優(yōu)點(diǎn)。該模塊一共有16根引腳,通過其中11根線與單片機(jī)之間進(jìn)行通信,顯示實(shí)時(shí)時(shí)鐘。
2.6組合按鍵開關(guān)
利用6個(gè)按鍵開關(guān)組合成一套人機(jī)交互方案來修正系統(tǒng)時(shí)間和設(shè)定鬧鐘時(shí)間。由于按鍵響應(yīng)必需快,必需用到中斷,而STC98C52芯片只擁有2個(gè)外部中斷接口,所以利用二極管擴(kuò)展中斷的方法,將外部中斷擴(kuò)展至6個(gè)。
3.KeilC51編程流程
編程采用模塊化思想對(duì)上面的各個(gè)模塊進(jìn)行編程設(shè)計(jì)。主程序分為以下幾個(gè)模塊:①初始化過程,包括LCD1602初始化和DS1302初始化。②循環(huán)過程,包括對(duì)DS1302進(jìn)行讀寫并顯示到LCD1602上,判斷讀取時(shí)間是否與設(shè)定的時(shí)間是否吻合③若吻合則向步進(jìn)電機(jī)發(fā)送一定頻率和次數(shù)的脈沖。
4.Proteus仿真
將Proteus將電路圖繪制好,利用軟件將編好的程序進(jìn)行編譯并生成HEX文件,在Proteus中讀取HEX文件進(jìn)行仿真,其仿真結(jié)果如下:
5.實(shí)踐結(jié)果及結(jié)論
一個(gè)利用STC89C52芯片與L298N電機(jī)驅(qū)動(dòng)模塊、LCD1602模塊、DS1302模塊等之間進(jìn)行通信實(shí)現(xiàn)提醒老人用藥具體項(xiàng)目完成。Proteus的應(yīng)用使單片機(jī)系統(tǒng)設(shè)計(jì)變得更加容易,降低了單片機(jī)學(xué)習(xí)應(yīng)用的門檻,大大提高了產(chǎn)品開發(fā)應(yīng)用的成功率。
參考文獻(xiàn)
[1]王迎旭主編.單片機(jī)原理及應(yīng)用.北京:機(jī)械工業(yè)出版社
[2]李建忠.單片機(jī)原理及應(yīng)用.西安:西安電子科技大學(xué)出版社
[3]劉平.深入淺出玩轉(zhuǎn)51單片機(jī).北京:北京航空航天大學(xué)出版社
(作者單位:浙江科技學(xué)院機(jī)械與能源工程學(xué)院)