郭志強(qiáng)
摘要 闡述以美國(guó)德州電子公司的ibutton器件DS1990A為核心,以MSP430為單片機(jī),通過(guò)低功耗LCD,實(shí)現(xiàn)數(shù)字顯示,并通過(guò)計(jì)算機(jī)串口實(shí)現(xiàn)數(shù)據(jù)上傳,配合計(jì)算機(jī)軟件,完成一個(gè)完整的考勤系統(tǒng)。
關(guān)鍵詞 iButton;MSP430單片機(jī);串行通訊;計(jì)算機(jī)軟件;考勤系統(tǒng)
中圖分類號(hào) TP274文獻(xiàn)標(biāo)識(shí)碼 B文章編號(hào) 1674-6708(2009)05-0059-02
0引言
在現(xiàn)代企業(yè)中,考勤系統(tǒng)成為其必不可缺的一個(gè)組成部分,許多企業(yè)以其作為對(duì)員工考核,評(píng)比的依據(jù)。因此,如何正確合理的選擇一套合理穩(wěn)定的考勤系統(tǒng)成為許多企業(yè)管理者重要的工作。作者通過(guò)多年工作經(jīng)驗(yàn),對(duì)當(dāng)前比較流行的幾種考勤工作方式進(jìn)行了篩選,通過(guò)對(duì)他們從準(zhǔn)確度、保密性、使用壽命等多方面因素進(jìn)行比較,選出了較為合適的工作方式,配合MSP430單片機(jī)系統(tǒng)的低功耗特性實(shí)現(xiàn)了準(zhǔn)確且保密的考勤系統(tǒng),并由計(jì)算機(jī)實(shí)現(xiàn)數(shù)據(jù)整理、查詢、修改等功能。
1 iButton簡(jiǎn)介
iButton是一種堅(jiān)固的數(shù)據(jù)載體,可作為自動(dòng)識(shí)別系統(tǒng)的電子注冊(cè)號(hào)。數(shù)據(jù)通過(guò)1-Wire(R) 協(xié)議傳輸,只需要一條信號(hào)引線和一個(gè)地回路。每個(gè)iButton內(nèi)包含工廠刻入的唯一 64 位注冊(cè)號(hào),可絕對(duì)跟蹤。堅(jiān)固耐用的不銹鋼iButton封裝具有極強(qiáng)的環(huán)工廠刻入的 64位注冊(cè)號(hào)確保正確無(wú)誤的器件選擇環(huán)境適應(yīng)能力,可防塵、防潮、防震。這種緊湊的紐扣外形使其自動(dòng)對(duì)準(zhǔn)相應(yīng)的探測(cè)頭,易于人工操作。
2 器件介紹
2.1 MSP430單片機(jī)簡(jiǎn)介
在當(dāng)今世界,能源問(wèn)題已經(jīng)是擺在世界各國(guó)面前的頭等大事,因此,如何節(jié)約能源、如何充分利用能源,成為每個(gè)科學(xué)技術(shù)人員都必須面對(duì)的重要問(wèn)題。針對(duì)過(guò)去的51系列單片機(jī)速度慢,能耗高等問(wèn)題,美國(guó)德州電子公司(TI)研制出了MSP430系列單片機(jī),其主要優(yōu)點(diǎn)為低功耗(最低休眠工作電流0.1uA),速度快(單指令周期運(yùn)行,最高速度達(dá)8m,內(nèi)部資源豐富(內(nèi)建USART/SPI WATCHDOG TIME等內(nèi)部模塊)等優(yōu)勢(shì),成為節(jié)能型電子工業(yè)產(chǎn)品設(shè)計(jì)的首選。
2.2 iBUTTON器件選擇
選擇Maxim的DS1991,這是一種進(jìn)行讀/寫(xiě)操作的數(shù)據(jù)載體,它有3個(gè)獨(dú)立的電子密鑰,提供1 152位安全、非易失存儲(chǔ)器。每個(gè)密鑰分區(qū)包括384位,具有獨(dú)立的64位密碼和公共識(shí)別區(qū),可靠保證了數(shù)據(jù)的安全性。
2.3電源芯片選擇
采用MAXIM8881,此芯片能在低耗電3.5uA情況下實(shí)現(xiàn)最大200mA電流輸出,是低功耗產(chǎn)品中DC/DC芯片的理想選擇
2.4接口芯片
RS-232芯片采用MAXIM3221。
2.5顯示方式設(shè)定
采用太陽(yáng)人公司出品sms0814B系列低功耗LCD,工作電流僅為8uA,且顯示位數(shù)有8位,足夠顯示各種數(shù)據(jù)。
2.6編程語(yǔ)言選擇
在本系統(tǒng)的設(shè)計(jì)中,針對(duì)所選單片機(jī)芯片,筆者選擇了IAR公司的C語(yǔ)言編譯系統(tǒng):IAR 系統(tǒng)嵌入式Workbench,是一種用于開(kāi)發(fā)應(yīng)用各種不同的目標(biāo)處理器的靈活的集成環(huán)境,它提供一個(gè)方便的窗口界面用于迅速的開(kāi)發(fā)和調(diào)試。嵌入式Workbench 支持多種不同的目標(biāo)處理器,用戶用不同的目標(biāo)處理器開(kāi)發(fā)的工程Projects,可以在工程的基礎(chǔ)上逐個(gè)規(guī)定目標(biāo)工程。它的主要特點(diǎn)是:通用性強(qiáng),可在Windows95 Windows NT 或Windows3.11 下運(yùn)行;分層的項(xiàng)目Project 表示,直觀的用戶界面利用了Windows 的優(yōu)點(diǎn),使程序設(shè)計(jì)者方便的進(jìn)行調(diào)試;只在必須時(shí)使用Make,不會(huì)帶來(lái)多余的操作,以占用更多的計(jì)算機(jī)時(shí);實(shí)用重新編譯程序重新匯編程序和連接文件,方便用戶使用;嵌入式Workbench 工具和編輯器的全集成;支持阻滯和跌蕩;全面的超文本幫助,界面友好。
2.7程序設(shè)計(jì)
在通訊程序設(shè)計(jì)之前,首先應(yīng)制定所需的通訊協(xié)議。針對(duì)本系統(tǒng)設(shè)計(jì),設(shè)定iButton設(shè)備通訊為下行通訊,與計(jì)算機(jī)通訊為上行通訊。通訊協(xié)議如下:
上行:
計(jì)算機(jī)發(fā)送命令:
0x7A 0x0A 0xFF
下行:
單片機(jī)系統(tǒng)響應(yīng):
0x6B0x0B dd dd dd dd dd dd dd dd dd dd 0x0EE
其中dd為單片機(jī)上串?dāng)?shù)據(jù),均為十進(jìn)制ASCII碼
(-12.5=0x30 0x30 0x30 0x30 0x30 0x2D 0x31 0x32 0x35 0x30 既所有數(shù)據(jù)均轉(zhuǎn)化為10位數(shù)據(jù),整數(shù)位不足8位的前面補(bǔ)0,小數(shù)位不足2位的,后面補(bǔ)0,遇負(fù)號(hào)補(bǔ)0x2D)
下行:為iButton接觸時(shí),產(chǎn)生中斷并使單片機(jī)開(kāi)始工作,按iButton的工作時(shí)序開(kāi)始發(fā)送有效數(shù)據(jù)呼叫iButton器件,如果在規(guī)定的時(shí)間內(nèi)ibutton器件可靠接觸觸點(diǎn),單片機(jī)將能夠可靠讀取所需數(shù)據(jù)。
單片機(jī)發(fā)送命令:
xxxxxx
iButton響應(yīng):
yyyyyy
用戶界面方面,由于MSP430單片機(jī)的中斷源有限,只是P1,P2口可以作為中斷源的輸入,選用P1口作為按鍵的輸入口,當(dāng)有按鍵按下時(shí),產(chǎn)生中斷事件,單片機(jī)按中斷號(hào)選擇在lcd上顯示的內(nèi)容,用以提示客戶是否通訊成功。
3結(jié)論
綜上所述,在本設(shè)計(jì)中采用了MSP430單片機(jī)和DS1991構(gòu)成的考勤系統(tǒng),由于單片機(jī)本身的高速和低功耗特性及DS1991的抗干擾耐磨損特性,本系統(tǒng)相對(duì)于比較通用的紙卡是考勤機(jī)擁有了更多優(yōu)點(diǎn),特別適用于不方便交流供電及各種惡劣場(chǎng)合的考勤系統(tǒng)應(yīng)用,能夠在礦井下,油田附近等特殊工作場(chǎng)所得到廣泛的應(yīng)用。
參考文獻(xiàn)
[1]Dallas Semiconductor Corporation. Book of DS19xx iButton Standards[M].
[2]胡大可.MSP430系列FLASH型超低功耗16位單片機(jī)[M].北京航空航天大學(xué)出版社.
[3]MSP430系列16位超低功耗單片機(jī)實(shí)踐與系統(tǒng)設(shè)計(jì)[M].