《智能卡技術(shù)》課件-第5章_第1頁
《智能卡技術(shù)》課件-第5章_第2頁
《智能卡技術(shù)》課件-第5章_第3頁
《智能卡技術(shù)》課件-第5章_第4頁
《智能卡技術(shù)》課件-第5章_第5頁
已閱讀5頁,還剩283頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第5章智能卡應(yīng)用系統(tǒng)5.1課程設(shè)計——智能卡門禁系統(tǒng)設(shè)計5.2課程訓(xùn)練——一卡通系統(tǒng)的綜合應(yīng)用5.3典型智能卡應(yīng)用系統(tǒng)5.4智能卡應(yīng)用系統(tǒng)開發(fā)的一般方法思考題5.1課程設(shè)計——智能卡門禁系統(tǒng)設(shè)計5.1.1設(shè)計要求

1.智能卡門禁系統(tǒng)——門禁機模塊的設(shè)計

1)非接觸式IC卡讀寫頭部分主要內(nèi)容:讀寫頭部分采用非接觸式IC卡讀寫模塊,由讀卡器讀入數(shù)據(jù)并加以保存。智能卡按常規(guī)要具有加密和數(shù)據(jù)分區(qū)存儲功能,讀寫頭的讀寫距離在5~10cm左右,必須具有掉電保護(hù)、精確時間計時和顯示及3~5KB的臨時數(shù)據(jù)存儲功能。2)門禁機主控模塊主要內(nèi)容:智能門禁機主控模塊是智能門禁機系統(tǒng)的核心部分,主要包括MCU、鍵盤、顯示、電子時鐘、外部數(shù)據(jù)存儲器及掉電保護(hù)和看門狗電路,有精確時間計時和顯示。2.智能卡門禁系統(tǒng)——系統(tǒng)管理模塊的設(shè)計

1)系統(tǒng)管理主控模塊的設(shè)計主要內(nèi)容:設(shè)計門禁上層軟件的主控模塊,其主要實現(xiàn)的功能是最高權(quán)限卡對管理員和一般用戶發(fā)卡,管理員對一般用戶發(fā)卡。它要能對丟失的卡進(jìn)行掛失,對找回的卡進(jìn)行解掛,同時還要具備查找功能。

2)系統(tǒng)管理的數(shù)據(jù)庫管理軟件的設(shè)計主要內(nèi)容:運用高級語言編程,制作數(shù)據(jù)庫管理軟件。它采集下位機的數(shù)據(jù)并保存,然后管理采集到的數(shù)據(jù),具有采集、數(shù)據(jù)更新、查詢統(tǒng)計和打印報表功能。3.智能卡門禁系統(tǒng)——數(shù)據(jù)傳輸模塊的設(shè)計主要內(nèi)容:完成中央控制電腦與門禁讀寫器之間的數(shù)據(jù)傳輸協(xié)議的設(shè)計,能實現(xiàn)主、從機的雙向數(shù)據(jù)傳輸及一對一、一對多的數(shù)據(jù)傳輸。5.1.2總體方案根據(jù)設(shè)計要求,整個智能卡門禁系統(tǒng)分為三大部分:其一是讀寫器部分,包括MCU、復(fù)位電路、時鐘電路、顯示電路、鍵盤、數(shù)據(jù)存儲等主控模塊及非接觸式IC卡讀寫模塊和電鎖驅(qū)動部分;其二是中央控制電腦的軟件管理系統(tǒng)模塊;其三是中央控制電腦與讀寫器之間的數(shù)據(jù)傳輸模塊。其總體方案見圖5.1。圖5.1非接觸式IC卡門禁系統(tǒng)框圖5.1.3非接觸式IC卡門禁機的設(shè)計系統(tǒng)采用Philips公司的非接觸式MIFARE1(M1)卡,以M1卡作為用戶卡,以用戶卡的序列號SN(全球惟一)為依據(jù)控制門的開啟。因為它是一個高頻卡(工作頻率為13.5MHz),有較強的抗干擾能力,讀寫距離遠(yuǎn)(5~10cm)。首先,在發(fā)卡系統(tǒng)(中央控制電腦)里把用戶的卡號及個人信息輸入系統(tǒng)數(shù)據(jù)庫,并將該卡號作為合法卡號下載給所有門禁機。當(dāng)有一張M1卡在門禁機的有效工作范圍內(nèi)時,系統(tǒng)會自動向卡發(fā)出命令,卡接收到命令后向門禁機反饋其SN,門禁機判斷收到的卡號是否合法。如果合法,則驅(qū)動電磁門鎖開門并實時上傳其開門記錄;如果是非法卡(未經(jīng)授權(quán)或已掛失的卡),則拒絕開門并上傳報警信息。只有最高授權(quán)者(掌握授權(quán)密碼)才可以發(fā)管理員卡,管理員必須用管理員卡方可登錄發(fā)卡系統(tǒng)進(jìn)行發(fā)卡/下傳合法卡號、掛失、解掛、下傳黑名單等操作。

由于采用了Philips公司的非接觸式MIFARE1卡,因此卡的讀寫模塊也采用了以Philips公司最新推出的MIFARE讀寫芯片MFRC500為核心開發(fā)的ZLG500A讀寫模塊。門禁機模塊的硬件原理圖見附錄B。此系統(tǒng)通過AT89C52對ZLG500A的控制達(dá)到對卡的讀寫。系統(tǒng)結(jié)構(gòu)簡單,成本較低且具有信息量大和安全保密性好等特點。外圍配有RS232轉(zhuǎn)RS485接口,能與PC機互連成網(wǎng)絡(luò),可以完成讀卡、顯示卡號和出入時間、身份識別、開鎖以及保存和上傳出入記錄、下載黑名單、設(shè)置開門權(quán)限等功能。圖5.2非接觸式IC卡門禁機總體工作流程1.ZLG500A讀寫模塊特性

1)功能特性圖5.3為ZLG500A非接觸式IC卡讀寫模塊,該模塊采用最新Philips的高集成ISO14443讀卡芯片——MFRC500,能讀寫RC500內(nèi)EEPROM,提供三線SPI接口,并具有控制線輸出口,能與任何MCU接口。此外,該模塊采用四層電路板設(shè)計,雙面表貼,EMC性能優(yōu)良;并自帶無源蜂鳴器信號輸出,能用軟件控制輸出頻率及持續(xù)時間。圖5.3ZLG500A模塊實物圖J1J2表5.1ZLG500A非接觸式IC卡讀寫模塊引腳說明

(a)J1引腳說明

(b)J2引腳說明

ZLG500A模塊可方便地與任何MCU進(jìn)行接口,如圖5.4所示為ZLG500A與MCS-51單片機的典型接口。SCLK、SDATA、SS為ZLG500A與MCU相連接的控制線,分別為時鐘線SCLK、數(shù)據(jù)線SDATA和片選SS。圖5.4ZLG500A與MCS-51單片機的接口圖2)?ZLG500A三線串行讀卡模塊接口規(guī)范

(1)接口原理:接口空閑時主機SS=1,SCLK=0,SDATA=0;從機SS=1,SCLK=1,SDATA=0。其中SS和DATA是雙向的,而時鐘線SCLK是單向的。

SCLK只能由主控制器產(chǎn)生,該信號必須嚴(yán)格遵守時序規(guī)范,否則將出現(xiàn)通信錯誤,讀卡模塊必須釋放該線。

SS為數(shù)據(jù)發(fā)送使能,若一方有數(shù)據(jù)要發(fā)送給另一方,則該方控制SS線為低并在發(fā)送結(jié)束后將該線置高,接收數(shù)據(jù)方不得控制該線,雙方必須遵守通信協(xié)議,不得同時控制該線。

SDATA為數(shù)據(jù)線,由數(shù)據(jù)發(fā)送端控制數(shù)據(jù),接收端必須釋放該線。該線在一次傳輸開始時還同時作為數(shù)據(jù)接收端的響應(yīng)信號。(2)時序圖:圖5.5ZLG500A的時序圖

由圖中可以看出:在SS為低的情況時,時鐘和數(shù)據(jù)線上的信號才有效;且在SCLK為低時SDATA變化,在SCLK為高時SDATA應(yīng)保持穩(wěn)定。以上傳輸中,從數(shù)據(jù)發(fā)送器請求開始至數(shù)據(jù)接收器響應(yīng)的時間是不確定的,這取決于接收器內(nèi)的MCU是否忙。有必要設(shè)置一個看門狗定時器對數(shù)據(jù)接收器的響應(yīng)進(jìn)行監(jiān)視,一旦接收器響應(yīng),則MCU必須根據(jù)數(shù)據(jù)傳輸?shù)姆较?,?yán)格控制以下幾個時間,以確保數(shù)據(jù)傳輸無誤:t1——數(shù)據(jù)接收器響應(yīng)至MCU產(chǎn)生第一個SCLK上升沿的時間。

t2——兩個字節(jié)傳輸之間SCLK低電平的持續(xù)時間。

t3——傳輸最后一個字節(jié)的最后一位的SCLK信號的上升沿至SS上升沿的時間。

tH——SCLK信號的高電平持續(xù)時間。

tL——SCLK信號的低電平持續(xù)時間。在數(shù)據(jù)傳輸?shù)姆较虿煌瑫r,對時間t1~t3、tH和tL都有各自不同的要求。(3)通信協(xié)議:MCU與ZLG500A的通信必須先由MCU發(fā)送命令和數(shù)據(jù)給ZLG500A開始,ZLG500A執(zhí)行命令完畢后,將命令執(zhí)行的狀態(tài)和響應(yīng)數(shù)據(jù)發(fā)回MCU。開始通信前,收發(fā)雙方必須處于空閑狀態(tài)。首先由MCU發(fā)出SS下降沿信號,然后等待ZLG500A在SDATA線上的響應(yīng)。若在50ms內(nèi)未檢測到此信號,則退出本次傳輸;若正確響應(yīng),則MCU可將命令和數(shù)據(jù)發(fā)送出去。然后MCU等待ZLG500A發(fā)回的狀態(tài)和響應(yīng)數(shù)據(jù),即等待SS線上的下降沿信號。若在50ms內(nèi)未檢測到此信號,則退出本次傳輸;若正確檢測到SS信號,則可以接收狀態(tài)和數(shù)據(jù)。ZLG500A初始化的子程序如下:SCLK BIT P1.0SDATA BIT P1.1SS BIT P1.2RST BIT P3.3ZLG500A:SETB RST ;ZLG500A內(nèi)部復(fù)位

LCALL DELAY_50ms CLR RST LCALL DELAY_50ms SETB SS ;處于空閑狀態(tài)

CLR SDATA CLR SCLK MOV 58H,#11H MOV 59H,#11H MOV 5AH,#11H MOV 5BH,#11H LCALL CONFIG ;配置

LCALL REQUEST ;發(fā)送請求

LCALL ANTICOLL ;防碰撞;***********IFHAVECARD*********** MOVA,52H CJNEA,#04H,SA123 ;A=04表示沒有卡存在

LJMPSA234SA123: RETSA234: LCALLREAD_BLOCK;從存儲器中讀取數(shù)據(jù)

LCALLDELAY_100ms MOVR2,#20 MOVR0,#58H MOVR1,#80H LCALLCOMPARE ;進(jìn)行卡號的比較和驗證REL13: SETB FLAG LCALLREL123 JB FLAG,REL13 RET

上述程序中,CONFIG子程序為ZLG500A的復(fù)位和配置子程序,是由MCU向ZLG500A發(fā)出的不帶數(shù)據(jù)的命令程序;REQUEST子程序是MCU向ZLG500A發(fā)出的帶一個字節(jié)數(shù)據(jù)的命令程序,主要是檢查在有效范圍內(nèi)是否有卡存在;ANTICOLL子程序是防沖突操作,必須在執(zhí)行了REQUEST命令后立即執(zhí)行。

MCU與ZLG500A之間的通信一般遵循如下的數(shù)據(jù)格式。

MCU向ZLG500A發(fā)出的命令模式的格式如下:INFO[0]INFO[n]其中:SeqNr為1Byte,表示數(shù)據(jù)交換包的序號;

Command為1Byte,表示命令字符;

Len為1Byte,表示數(shù)據(jù)的長度;

Data[0…N]為LenByte,表示數(shù)據(jù)字節(jié);

BCC為1Byte,表示一個字節(jié)的BCC校驗。INFO[0] INFO[n]其中:SeqNr為1Byte,表示數(shù)據(jù)交換包的序號;

Status為1Byte,表示狀態(tài)字符;

Len為1Byte,表示數(shù)據(jù)的長度;

Data[0…N]為LenByte,表示數(shù)據(jù)字節(jié);

BCC為1Byte,表示一個字節(jié)的BCC校驗。按照上述數(shù)據(jù)格式傳輸編制的CONFIG、REQUEST和ANTICOLL子程序的清單如下:;**************CONFIG***********************CONFIG: MOV60H,#00H ;數(shù)據(jù)交換包的序號

MOV61H,#52H ;配置命令字符代碼

MOV62H,#00H ;數(shù)據(jù)的長度為0 LCALLBCC_SUM0 ;BCC校驗子程序

MOV63H,A ;BCC_SUM MOVA,#00H MOVR2,#04H MOVR0,#60H ;發(fā)送首地址

LCALLSPI_SENDMOVR0,#30H ;接收起始地址

LCALLSPI_RCV RET;***************REQUEST***********************REQUEST: MOV60H,#00H ;數(shù)據(jù)交換包的序號

MOV61H,#41H ;請求命令字符代碼

MOV62H,#01H ;數(shù)據(jù)的長度為1 MOV63H,#01H ;請求模式的數(shù)據(jù)mode=01H LCALLBCC_SUM MOV64H,A MOVA,#00H MOVR2,#05H ;發(fā)送5個字節(jié)數(shù)

MOVR0,#60H ;60H到64H的數(shù)據(jù)發(fā)送

LCALLSPI_SEND MOVR0,#40H ;接收起始地址

LCALLSPI_RCV RET;**************ANTICOLL***********************ANTICOLL:MOV60H,#00 ;數(shù)據(jù)交換包的序號

MOV61H,#42H ;防碰撞命令字符代碼

MOV62H,#01 ;數(shù)據(jù)的長度為1 MOV63H,#00H ;數(shù)據(jù)值為0 LCALLBCC_SUM MOV64H,A MOVA,#00H MOVR2,#05H ;發(fā)送5個字節(jié)數(shù)MOVR0,#60H ;60H到64H的數(shù)據(jù)發(fā)送LCALLSPI_SENDMOVR0,#50H ;存放數(shù)據(jù)LCALLSPI_RCVMOVA,52HCJNEA,#04H,L0MOV58H,53HMOV59H,54HMOV5AH,55HMOV5BH,56HMOVA,58HXRLA,59H XRL A,5AH XRLA,5BH MOV5CH,A MOVA,#00H CLRP3.4 LCALLDELAY_50ms LCALLDELAY_50ms LCALLDELAY_50ms LCALLDELAY_50ms SETBP3.4L0: RET3)寫數(shù)據(jù)MCU—ZLG500A表5.2ZLG500A讀寫模塊寫數(shù)據(jù)步驟

傳輸過程中必須嚴(yán)格遵守以下時間要求:t1>7s,t2>14s,tH>7s,tL>9s,t3=任意下面是MCU向ZLG500A寫入數(shù)據(jù)的子程序(為滿足上述時間要求,可通過加入空操作來實現(xiàn))。SPI_SEND:

ANL P3,#0F7H ;恢復(fù)SS的輸出功能,傳輸開始請求

DEC R0 ;發(fā)送數(shù)據(jù)的首地址

SETB SDATA CLR SCLK JB SDATA,$ ;SDATA仍為高,則等待

CLR SS MOV R5,#100DL33:MOVR6,#7DHDL44:JBSDATA,ASDF ;MCU等待SDATA的上升沿

DJNZ R6,DL44 DJNZ R5,DL33 AJMP SPI_SENDASDF:ANL P1,#0FDH;SDATA恢復(fù)輸出SENDBYTE: NOP INC R0 NOP NOP MOV A,@R0 MOV R3,#8 ;設(shè)置一個字節(jié)的位數(shù)

NOP NOPSENDBIT: NOP RLC A MOV SDATA,C ;發(fā)送數(shù)據(jù)位

NOP NOPSETBSCLK:NOP NOP CLR SCLK DJNZ R3,SENDBIT DJNZ R2,SENDBYTE SETB SS ;本次數(shù)據(jù)傳輸結(jié)束

CLR SDATA NOP JB SS,$ RET4)讀數(shù)據(jù)ZLG500A—MCU

響應(yīng)信號和SCLK信號由MCU產(chǎn)生,SS信號和SDATA信號由ZLG500A產(chǎn)生。ZLG500A會在SS線上產(chǎn)生一個下降沿,發(fā)出請求數(shù)據(jù)傳輸?shù)男盘枺却齅CU響應(yīng)后本次數(shù)據(jù)傳輸開始。MCU將在SCLK為高時讀取SDATA線上的數(shù)據(jù),傳輸完畢后,ZLG500A將會在SS線上產(chǎn)生一個上升沿結(jié)束本次傳輸。讀數(shù)據(jù)的具體步驟見表5.3。表5.3ZLG500A讀寫模塊讀數(shù)據(jù)步驟

傳輸過程中必須嚴(yán)格遵守以下時間要求:t1>14s,t2>16s,tH>6s,tL>6s,t3>9s

下面是MCU從ZLG500A讀取數(shù)據(jù)的子程序(同理,為滿足上述時間要求,可通過加入空操作來實現(xiàn))。SPI_RCV: ORL P3,#08H ;SS設(shè)置為輸入

ANL P1,#0FDH;SDATA設(shè)置為輸出

DEC R0 CLR SCLK SETB SDATA NOP ORL P1,#02 ;SDATA設(shè)置為輸入

NOP NOPRCVBYTE: MOV R3,#8 INC R0RCVBIT: NOP NOP SETB SCLK NOP NOP MOV C,SDATA ;讀取一位

RLC A NOP NOPCLR SCLKNOPNOPDJNZ R3,RCVBITMOV @R0,A ;讀取的一個字節(jié)存入指定地址NOPNOPJNB SS,RCVBYTEANL P1,#0FDH ;SDATA設(shè)置為輸出CLR SDATARET2.門禁機主控模塊首先,我們看一下MCU部分的設(shè)計和控制的實現(xiàn)。圖5.6是MCU控制框圖,從圖中可以看出,MCU除了完成對ZLG500A讀寫模塊的控制外,還要承擔(dān)其他功能的控制,主要包括四大部分:鍵盤和顯示部分,實時時鐘和掉電保護(hù)部分,數(shù)據(jù)存儲和數(shù)據(jù)傳輸部分,驅(qū)動控制部分。圖5.6門禁機控制框圖1)鍵盤和顯示部分鍵盤和顯示是一般智能化儀器儀表均須具有的功能,是人機交互最主要的方式。不同的智能儀器,隨著其功能、MCU資源的占用、使用環(huán)境等各種條件的不同,可采用多種鍵盤和顯示方案。本應(yīng)用系統(tǒng)中,由于外圍部件較多,MCU資源占用較大,為了盡可能地減少MCUI/O(輸入輸出)的占用,鍵盤的設(shè)計采用串入并出的方式,利用一片74LS164,占用MCU的四根I/O口,就可以實現(xiàn)16個鍵的全部功能。具體電路見圖5.7。圖5.7串行口擴(kuò)展的行列式鍵盤

從系統(tǒng)監(jiān)控軟件的角度來看,僅僅完成鍵盤掃描、讀取當(dāng)前時刻的鍵盤狀態(tài)是不夠的,還有不少問題需要解決,否則,在操作鍵盤時就容易引起誤操作、失控等現(xiàn)象。首先是去抖動處理。按鍵的觸點在閉合和斷開時均會產(chǎn)生抖動,這時觸點的邏輯電平是不穩(wěn)定的,如不妥善處理,將會引起按鍵命令的錯誤執(zhí)行或重復(fù)執(zhí)行。最常用的一種方法是軟件延時,采用此方法來避開抖動階段,延時過程一般取10~50ms。

其次是連擊的處理。當(dāng)按下某個鍵時,鍵盤處理程序便查找相應(yīng)的功能號,并轉(zhuǎn)到相應(yīng)的功能模塊程序去執(zhí)行,如果這時操作者還沒有釋放按鍵,MCU就會反復(fù)執(zhí)行該按鍵對應(yīng)的功能,好像操作者在連續(xù)操作該鍵一樣。本系統(tǒng)中需要按鍵去改變系統(tǒng)的實時日歷,如果出現(xiàn)連擊現(xiàn)象,操作者就很難設(shè)定時間。要解決連擊問題,最關(guān)鍵的是一次按鍵只讓它響應(yīng)一次,該鍵不釋放就不執(zhí)行第二次。為此要分別檢測到按鍵按下的時刻和釋放的時刻。有兩種程序結(jié)構(gòu)可以解決連擊的問題:一是按下鍵盤就執(zhí)行,執(zhí)行完成后等待操作者釋放按鍵,在未釋放按鍵前不再執(zhí)行指定的功能,從而避免了一次按鍵重復(fù)執(zhí)行的現(xiàn)象;二是在按鍵釋放后再執(zhí)行指定的功能,同時可以避免連擊,但與前一種相比,給人一種反應(yīng)遲鈍的感覺。具體采用哪種結(jié)構(gòu),可根據(jù)實際情況而定。

顯示器是人與計算機系統(tǒng)打交道所必不可少的部分,本系統(tǒng)要求門禁機在不打卡時具備顯示當(dāng)前時間,打卡時顯示該卡卡號及打卡時間的功能。為此,選用了具有良好顯示界面的圖形點陣液晶顯示器。圖形點陣液晶顯示器分辨率較高,且能夠顯示各種復(fù)雜圖形,為以后的擴(kuò)展留下了余地。本系統(tǒng)所選擇的是JG19264A圖形點陣液晶,圖5.8為JG19264A的結(jié)構(gòu)框圖,引腳說明見表5.4。圖5.8JG19264A圖形點陣液晶結(jié)構(gòu)框圖表5.4JG19264A圖形點陣液晶引腳說明

續(xù)表JG19264A液晶的分辨率為192×64,該液晶的顯示內(nèi)核是HD61203U與HD61202U,其中一片HD61203U作為64路行驅(qū)動器,三片HD61202U組成192點列的列驅(qū)動器組。所以圖形液晶顯示模塊的電路特性實際上是HD61203U和HD61202U組合的電路特性。

HD61203U是帶有振蕩器和顯示時序發(fā)生器的行驅(qū)動器。它具有64路行驅(qū)動輸出,它的特點在于它本身帶有振蕩器和時序發(fā)生器,通過外接振蕩電阻電容使其上電后就以其設(shè)定的占空比系數(shù)1/N值開始行掃描工作;它可以自行完成行、列驅(qū)動時序的生成及分配,自動進(jìn)行行驅(qū)動的工作;同時向列驅(qū)動器輸出同步信號及顯示數(shù)據(jù)驅(qū)動所需的脈沖時序,控制列驅(qū)動器HD61202U的工作,所以我們只要控制HD61203U就可以操作整個液晶模塊。HD61202U是帶顯示存儲器的圖形液晶顯示列驅(qū)動控制器。它的特點是內(nèi)置64×64位的顯示存儲器,顯示屏上各像素點的顯示狀態(tài)與顯示存儲器的各位數(shù)據(jù)一一對應(yīng),顯示存儲器的數(shù)據(jù)直接作為圖形顯示驅(qū)動信號。顯示數(shù)據(jù)為“1”,則表示相應(yīng)的像素點顯示;顯示數(shù)據(jù)為“0”,則表示相應(yīng)的像素點不顯示。同時HD61202U配備了一套顯示存儲器的管理電路和與計算機的連接口電路。

HD61202U一共有七條指令,從作用上可分為兩類。第一條和第二條指令為顯示狀態(tài)設(shè)置類;其余指令為數(shù)據(jù)讀寫操作指令,見表5.5。表5.5HD61202U的指令一覽表

下面是各個指令的功能:

(1)讀取狀態(tài)字(StatusRead):狀態(tài)字是計算機了解HD61202U當(dāng)前狀態(tài),或是HD61202U向計算機提供其內(nèi)部狀態(tài)的惟一信息渠道。狀態(tài)字為一個字節(jié),其中僅有3位有效位,它們是:

BUSY:表示當(dāng)前HD61202U接口控制電路的運行狀態(tài)。BUSY=1,表示HD61202U正在處理計算機發(fā)來的指令或數(shù)據(jù),此時接口電路被封鎖,不能接受除讀狀態(tài)字外的任何操作;BUSY=0,表示HD61202U接口控制電路已處于“準(zhǔn)備好”狀態(tài),等待計算機的訪問。ON/OFF:表示當(dāng)前HD61202U的工作狀態(tài),即反映RST端的電平狀態(tài)。當(dāng)RST為低電平狀態(tài)時,HD61202U處于復(fù)位工作狀態(tài),RESET=1;當(dāng)RST為高電平狀態(tài)時,HD61202U為正常工作狀態(tài),RESET=0。在指令設(shè)置和數(shù)據(jù)讀寫時要注意狀態(tài)字中的BUSY標(biāo)志。只有在BUSY=0時,計算機對HD61202U的操作才能有效。因此計算機在每次對HD61202U操作之前,都要讀出狀態(tài)字判斷BUSY是否為“0”。若不為“0”,則計算機需要等待,直至BUSY=0為止。計算機對HD61202U操作的流程如圖5.9所示。圖5.9

HD61202U操作的流程(2)顯示開關(guān)設(shè)置(DisplayON/OFF):該指令設(shè)置顯示開/關(guān)觸發(fā)器的狀態(tài),由此控制顯示數(shù)據(jù)鎖存的工作方式,從而控制顯示位為開/關(guān)的控制位。當(dāng)D=1為顯示設(shè)置,顯示數(shù)據(jù)鎖存器正常工作,顯示屏上呈現(xiàn)所需的顯示效果。此時在狀態(tài)字中ON/OFF=1。當(dāng)D=0為關(guān)顯示設(shè)置,顯示數(shù)據(jù)鎖存器被置零,顯示存儲器并沒有被破壞,在狀態(tài)字中ON/OFF=0。

(3)顯示起始行設(shè)置(DisplayStartLine):該指令設(shè)置了顯示起始行寄存器的內(nèi)容。HD61203U有64行顯示的管理能力,該指令中L5~L0顯示起始行的地址,取值在0~3FH(1~64行)范圍內(nèi),它規(guī)定了顯示屏上最頂一行所對應(yīng)的顯示存儲器的內(nèi)容,則顯示屏將呈現(xiàn)顯示內(nèi)容向上或向下平滑滾動的顯示效果。(4)頁面地址設(shè)置

(SetPage(Xaddress)):該指令設(shè)置了頁面地址,即X地址寄存器的內(nèi)容。HD61202U將顯示存儲分成8頁,指令代碼中P2~P0就是要確定當(dāng)前所要選擇的頁面地址,取值范圍為00~07H,代表顯示第1~8頁。該指令規(guī)定了以后的讀/寫操作將在哪一個頁面上進(jìn)行。

(5)列地址設(shè)置(SetYaddress):該指令設(shè)置了Y地址計數(shù)器的內(nèi)容,C5~C0=0~3FH(1~64)代表某一頁面上的某一單元地址,隨后的一次讀或?qū)憯?shù)據(jù)將在這個單元上進(jìn)行。Y地址計數(shù)器具有自動加1的功能,在每一次讀寫數(shù)據(jù)后它將自動加1,所以在連續(xù)進(jìn)行讀寫數(shù)據(jù)時,Y地址計數(shù)器不必每一次都設(shè)置。頁面地址的設(shè)置和列地址的設(shè)置將顯示存儲單元惟一地確定下來,為后來的顯示數(shù)據(jù)的讀寫作了地址選通。(6)寫顯示數(shù)據(jù)(WriteDisplayData):該操作將8位數(shù)據(jù)寫入先前已確定的顯示存儲器的單元內(nèi)。操作完成后,列地址計數(shù)器自動加1。

(7)讀顯示數(shù)據(jù)(ReadDisplayData):該操作是將HD61203U接口部分輸出到寄存器內(nèi)容讀出,然后列地址自動加1。本系統(tǒng)采用直接訪問式的接口方式,就是將液晶顯示模塊的接口作為存儲器或I/O設(shè)備直接掛在計算機總線上,計算機以訪問存儲器或I/O設(shè)備的方式操作液晶顯示模塊的工作。其具體的原理圖如圖5.10所示。圖5.10液晶與MCU接口電路表5.6液晶顯示屏控制關(guān)系

另外,MCU的P2.1接液晶顯示模塊的R/,用來控制數(shù)據(jù)總線的數(shù)據(jù)流向;用P2.2接液晶顯示模塊的RS,用來區(qū)分是數(shù)據(jù)還是指令;用P2.0接液晶顯示模塊的,控制模塊的使能;P0口(P0.0~P0.7)直接與液晶顯示模塊的雙向數(shù)據(jù)/地址端相連。為了加強P0口的驅(qū)動能力和減少外界的干擾,該口全部外接了上拉電阻。

JG19264A的讀時序圖和寫時序圖分別如圖5.11和圖5.12所示,按照此時序編程,MCU即可實現(xiàn)對液晶正常的控制。圖5.11JG19264A讀時序圖圖5.12JG19264A寫時序圖2)實時時鐘和掉電保護(hù)部分在門禁系統(tǒng)中,需要實時記錄出入數(shù)據(jù)(開門的卡號及其出現(xiàn)的時間)。若采用單片機軟件計時,一方面需要占用硬件計數(shù)器資源,另一方面需要設(shè)置中斷、查詢等,耗費單片機的CPU資源。而在系統(tǒng)中采用實時時鐘芯片則能很好地解決這個問題。實時時鐘采用了美國Dallas公司推出的一種高性能、低功耗、帶RAM的DS1302芯片,它可以對年、月、日、周日、時、分、秒進(jìn)行計時,且具有閏年補償功能,工作電壓為2.5~5.5V。采用三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。?DS1302內(nèi)部有一個31×8的用于臨時性存放數(shù)據(jù)的RAM寄存器。DS1302是DS1202的升級產(chǎn)品,與DS1202兼容,但增加了主電源/后備電源雙電源引腳,同時提供了對后備電源進(jìn)行涓細(xì)電流充電的能力。圖5.13為DS1302的引腳及內(nèi)部結(jié)構(gòu)圖。DS1302共有12個寄存器,其中有7個寄存器與日歷、時鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式。此外,DS1302還有年份寄存器、控制寄存器、充電寄存器、時鐘突發(fā)寄存器及與RAM相關(guān)的寄存器等。時鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器內(nèi)容。DS1302與RAM相關(guān)的寄存器分為兩類:一類是單個RAM單元,共31個,每個單元RAM為一個8位的字節(jié),其命令控制字為COH~FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;再一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫所有的RAM的31B,命令控制字為FEH(寫)、FFH(讀)。具體的參數(shù)見表5.7。圖5.13DS1302的引腳及內(nèi)部結(jié)構(gòu)圖表5.7DS1302寄存器參數(shù)表

圖5.14DS1302的控制字和數(shù)據(jù)讀寫時序

控制字節(jié)的最高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入到DS1302中;位6如果為0,則表示存取日歷時鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位(位0)如為0表示要進(jìn)行寫操作,為1表示進(jìn)行讀操作,控制字節(jié)總是從最低位開始輸出。

DS1302的數(shù)據(jù)的寫入是在控制指令字輸入后的下一個SCLK時鐘的上升沿,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時從低位(位0)至高位(位7)。DS1302是通過把RST輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供了終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)RST為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對DS1302進(jìn)行操作。如果在傳送過程中置

RST為低電平,則會終止此次數(shù)據(jù)傳送,并且I/O引腳變?yōu)楦咦钁B(tài)。上電運行時,在VCC≥2.5V之前,RST必須保持低電平。只有在SCLK為低電平時,才能將RST置為高電平。本系統(tǒng)實時時鐘模塊電路原理圖如圖5.15所示,MCU的P1.2、P1.3分別與DS1302的SCLK、I/O相連,VCC2接主電源,VCC1接后備電源,出現(xiàn)掉電時自動轉(zhuǎn)入后備電源供電,以防時鐘出現(xiàn)停止情況。X1、X2接外部晶振。圖5.15實時時鐘模塊電路原理圖MCU對DS1302的讀寫控制主要包括DS1302的初始化和讀取DS1302的時間和日期,初始化過程就是給DS1302賦予初始的時間和日期,詳見子程序SET1302。當(dāng)實時時鐘芯片被啟動后,在沒有接收到新的初始化指令的情況下,其內(nèi)部的時鐘將一直不停地運行,從而保證時間的實時性和準(zhǔn)確性;MCU在任何時候都可以通過讀取DS1302內(nèi)部時間和日期寄存器中的值而獲得準(zhǔn)確的時間和日期,GET1302為時間和日期的讀取子程序。;**************************************************;模塊名稱:DS1302.asm;功

能:實時時鐘模塊;時鐘芯片型號:DS1302T_CLKBitP1.2 ;實時時鐘時鐘線引腳

T_IOBitP1.3 ;實時時鐘數(shù)據(jù)線引腳

T_RSTBitP3.6 ;實時時鐘復(fù)位線引腳;**************************************************;子程序名:SET1302;功能:設(shè)置DS1302初始時間,并啟動計時;調(diào)

用:RTInputByte;入口參數(shù):初始時間在:Second,Minute,Hour,Day,Month,Week,YearL(地址連續(xù));返

值:無;影響資源:ABR0R1R4R7;***************************************************SET1302:CLR T_RSTCLR T_CLKSETB T_RSTMOV B,#8EH ;控制寄存器

LCALL RTInputByteMOV B,#00H ;寫操作前WP=0LCALL RTInputByteSETB T_CLKCLR T_RSTMOV R0,#SecondMOV R7,#7 ;秒

星期

MOV R1,#80H;秒寫地址SET13021:CLR T_RSTCLR T_CLKSETB T_RSTMOV B,R1;寫秒分時日月星期年地址LCALLRTInputByteMOV A,@R0 ;寫秒數(shù)據(jù)

MOV B,ALCALL RTInputByteINC R0INC R1INC R1SETB T_CLKCLR T_RSTDJNZ R7,SET13021CLR T_RSTCLR T_CLKSETB T_RSTMOV B,#8EH;控制寄存器

LCALLRTInputByteMOV B,#80H;控制,WP=1,寫保護(hù)

LCALL RTInputByteSETB T_CLKCLR T_RSTRET;**************************************************;子程序名:GET1302;功

能:從DS1302讀時間;調(diào)

用:RTInputByte,RTOutputByte;入口參數(shù):時間保存在:Second,Minute,Hour,Day,Month,Week,YearL;返回值:無;影響資源:ABR0R1R4R7;*********************************************Get1302:MOV R0,#Second;

MOV R7,#7MOV R1,#81H;秒地址GET13021:CLR T_RSTCLR T_CLKSETB T_RSTMOV B,R1 ;秒

星期

地址

LCALLRTInputByteLCALLRTOutputByteMOV @R0,A ;秒

INC R0INC R1INC R1SETB T_CLKCLR T_RSTDJNZ R7,GET13021 RET;**************************************************;寫1302一字節(jié)

(內(nèi)部子程序);**************************************************RTInputByte:MOV R4,#8Inbit1:MOV A,BRRC AMOV B,AMOV T_IO,CSETB T_CLKCLR T_CLKDJNZ R4,Inbit1RET;**********************************************;讀1302一字節(jié)

(內(nèi)部子程序);***********************************************RTOutputByte: MOV R4,#8Outbit1: MOV C,T_IO RRC A SETB T_CLK CLR T_CLK DJNZ R4,Outbit1 RET3)門禁記錄存儲與傳輸各門禁點的出入記錄可采用實時上傳或定時采集的方式從門禁機傳輸給中央數(shù)據(jù)庫,前者對系統(tǒng)網(wǎng)絡(luò)速度要求較高,當(dāng)網(wǎng)絡(luò)堵塞時有丟失數(shù)據(jù)的可能。本系統(tǒng)采用了出入記錄暫時存儲在門禁機中,每隔一段時間(例如每周一次)上傳給中央數(shù)據(jù)庫的方式,為此要求門禁機有一個具備一定容量的存儲器,用于暫存門禁數(shù)據(jù)以及由中央數(shù)據(jù)庫下載的授權(quán)卡號。門禁機存儲器的容量取決于一個門禁記錄的長度、系統(tǒng)的卡容量以及定時上傳周期內(nèi)最大的刷卡次數(shù)等,通常應(yīng)留有一定的余量以免由于超出存儲容量而丟失數(shù)據(jù)。本系統(tǒng)采用了AT24C256作為門禁機的存儲器,其存儲容量達(dá)64KB,劃分成兩個區(qū),一個區(qū)用來存儲所讀取的記錄,另一個區(qū)用來存儲上位機下載的授權(quán)卡號。門禁機存儲器模塊的電路原理圖如圖5.16所示。圖5.16門禁機存儲器模塊的電路原理圖AT24C256是Atmel公司具有的I2C總線結(jié)構(gòu),電可擦寫與編程的只讀存儲芯片(EEPROM)。

MCU對AT24C256的讀寫必須遵循I2C總線傳輸?shù)臅r序要求,MCU向AT24C256寫入和讀出數(shù)據(jù)的時序和格式要求與AT24C01基本一致,在此不再贅述。對于一個單一的讀寫器來講,自身的數(shù)據(jù)存儲是有限的,讀寫器外帶的數(shù)據(jù)存儲器主要作為數(shù)據(jù)的臨時存儲。對于大量的、需要長期保存的數(shù)據(jù),一般是通過有線或無線,甚至網(wǎng)絡(luò)系統(tǒng)傳輸?shù)街骺赜嬎銠C中進(jìn)行保存的。5.1.4非接觸式IC卡門禁管理系統(tǒng)的設(shè)計門禁管理系統(tǒng)是智能門禁系統(tǒng)的管理中心,它主要包括系統(tǒng)管理的主控模塊和數(shù)據(jù)庫模塊。主控模塊主要的功能是卡管理,即發(fā)卡。它包括最高權(quán)限卡對管理員和一般用戶發(fā)卡,管理員對一般用戶發(fā)卡;卡的掛失與解掛;卡查詢等功能。而數(shù)據(jù)庫模塊的主要功能是門禁數(shù)據(jù)采集、數(shù)據(jù)更新、查詢統(tǒng)計和報表的打印等。一個好的門禁管理系統(tǒng),應(yīng)該具有下面的各項功能:(1)系統(tǒng)要有良好的人機界面以方便操作人員的操作;(2)由于使用的人員多和復(fù)雜性,系統(tǒng)要有嚴(yán)格的權(quán)限管理;(3)數(shù)據(jù)、記錄的操作方便、明了、快捷;(4)對原始數(shù)據(jù)庫的管理必須安全、方便、快捷;(5)方便快捷的記錄查找,同時支持多種條件的查找;(6)上傳數(shù)據(jù)能自動保存到相應(yīng)的數(shù)據(jù)庫中;(7)上傳數(shù)據(jù)能長時間保存;(8)風(fēng)格多樣的打印報表功能。圖5.17非接觸式IC卡門禁管理系統(tǒng)的功能結(jié)構(gòu)示意圖

整個系統(tǒng)可分為三大模塊:一是系統(tǒng)管理主控模塊,主要包括系統(tǒng)設(shè)置、卡片管理和授權(quán)三大部分;二是系統(tǒng)數(shù)據(jù)庫管理模塊,主要包括查詢、統(tǒng)計、維護(hù)和打印等功能;三是通信模塊,完成上位機和下位機的通信與管理。1.門禁管理系統(tǒng)主控模塊設(shè)計本系統(tǒng)的主控模塊主要由四層三大部分組成。第一部分為卡片管理,完成系統(tǒng)管理和卡授權(quán)、原始數(shù)據(jù)庫的操作和管理等任務(wù);第二部分為新刷卡記錄,完成當(dāng)天門禁記錄的存儲和管理,其主要作用是記錄當(dāng)天的人員進(jìn)出情況;第三部分為舊刷卡記錄,是對以前一段時間內(nèi)刷卡的情況進(jìn)行保存操作,其主要作用是對以前的人員進(jìn)出情況做記錄以便以后進(jìn)行查找。主控模塊的構(gòu)成框圖如圖5.18所示。圖5.18門禁管理系統(tǒng)主控模塊的構(gòu)成框圖1)卡片管理模塊卡片管理模塊主要完成最高權(quán)限發(fā)卡、權(quán)限設(shè)置、下傳黑名單、查找等功能,可以對最高權(quán)限、管理員、一般用戶的數(shù)據(jù)庫進(jìn)行管理操作。它具有對一般用戶的原始數(shù)據(jù)進(jìn)行查找,對不同人員的權(quán)限進(jìn)行設(shè)置等功能。圖5.19為卡片管理的操作界面示意圖,用戶可以很方便地進(jìn)行各項功能的操作。

2)最高權(quán)限發(fā)卡模塊最高權(quán)限發(fā)卡模塊主要完成對最高權(quán)限進(jìn)行發(fā)卡和取消最高權(quán)限卡等功能。3)權(quán)限設(shè)置模塊權(quán)限設(shè)置模塊主要完成給管理員和一般用戶的授權(quán),實現(xiàn)對不同的人員進(jìn)行發(fā)卡、授權(quán)、權(quán)限的取消、修改原始數(shù)據(jù)庫等功能,并能對卡進(jìn)行掛失、解掛、刪除等功能。圖5.20為卡片權(quán)限設(shè)置的操作界面示意圖,在下拉選擇框內(nèi)選擇管理員或最高權(quán)限,再輸入相應(yīng)的卡號。如果原始數(shù)據(jù)庫中存在此卡號,則可對相應(yīng)的權(quán)限范圍進(jìn)行操作和管理;若無此卡號,則操作無效。最高權(quán)限的卡能對一般用戶和管理員用戶進(jìn)行授權(quán)操作,而管理員用戶則只能對一般用戶授權(quán)。圖5.19卡片管理的操作界面示意圖圖5.20卡片權(quán)限設(shè)置的操作界面示意圖

2.系統(tǒng)的數(shù)據(jù)庫管理軟件設(shè)計數(shù)據(jù)庫管理軟件是門禁管理系統(tǒng)的重要組成部分,它負(fù)責(zé)數(shù)據(jù)庫結(jié)構(gòu)的建立、數(shù)據(jù)的錄入和管理,具有采集新刷卡記錄、對刷卡記錄進(jìn)行排序、查找、卡號統(tǒng)計,保存當(dāng)天的刷卡記錄等功能;同時要求具有對刷卡記錄進(jìn)行班級統(tǒng)計、專業(yè)統(tǒng)計、卡號統(tǒng)計、報表打印,對作廢的卡進(jìn)行刪除等輸出、統(tǒng)計的功能。具體功能見圖5.21。此外,考慮到操作人員的計算機知識普遍較差,因此要求有良好的人機界面;由于該系統(tǒng)的使用對象多,要求有較好的權(quán)限管理;在數(shù)據(jù)處理方面要求原始數(shù)據(jù)修改簡單方便,支持多條件修改;數(shù)據(jù)查詢方便,支持多條件查詢;在相應(yīng)的權(quán)限下,刪除數(shù)據(jù)方便簡單,數(shù)據(jù)穩(wěn)定性好;具有數(shù)據(jù)自動處理功能,盡量減少人工干預(yù);最后能進(jìn)行統(tǒng)計和報表的打印功能。圖5.21門禁管理系統(tǒng)數(shù)據(jù)庫管理軟件的功能框圖圖5.22數(shù)據(jù)庫報表生成和打印操作界面5.1.5非接觸式IC卡門禁系統(tǒng)——數(shù)據(jù)傳輸模塊的設(shè)計數(shù)據(jù)傳輸可以有多種方式,既可以采用有線方式(如總線傳輸、串行傳輸、局域網(wǎng)絡(luò)傳輸和廣域網(wǎng)絡(luò)傳輸?shù)?,也可以采用無線方式(如短距離無線直線傳輸、無線網(wǎng)絡(luò)傳輸?shù)?,實際運用時可根據(jù)具體要求和條件靈活掌握。本系統(tǒng)中兩種傳輸方式并存,以有線傳輸為主,無線傳輸為輔,可適應(yīng)不同用戶的需求。

有線傳輸一般采用RS485串行數(shù)據(jù)傳輸方式。數(shù)據(jù)信號采用差分傳輸方式,也稱為平衡傳輸。它使用一對雙絞線,其最大傳輸距離約為1219m,最大傳輸速率為10Mb/s。平衡雙絞線的長度與傳輸速率成反比,在100kb/s以下,才可能使用規(guī)定的最長電纜。只有在很短的距離下才能獲得最高傳輸速率。一般100m長的雙絞線的最大傳輸速率僅為1Mb/s。RS485需要兩個終接電阻,其阻值要求等于傳輸電纜的特性阻抗,終接電阻接在傳輸總線的兩端。在短距離傳輸時可不需終接電阻,即一般在300m以下不需終接電阻。1.無線數(shù)據(jù)傳輸系統(tǒng)的設(shè)計在智能門禁系統(tǒng)中,上位機一般采用PC機進(jìn)行通信和管理,下位機則為MCU控制的智能卡讀寫器。在上位機與下位機之間、下位機與下位機之間都可以采用無線數(shù)據(jù)傳輸,見圖5.23。圖5.23無線收發(fā)電路結(jié)構(gòu)

本系統(tǒng)無線數(shù)據(jù)傳輸采用FC201B/E的無線模塊(如圖5.24所示)作為網(wǎng)絡(luò)通信接口。FC201B/E無線數(shù)據(jù)傳輸模塊是利用先進(jìn)的單片機技術(shù)、無線射頻技術(shù)和數(shù)字處理技術(shù)設(shè)計的功率較大、體積較小的模塊式半雙工數(shù)傳電臺,可實現(xiàn)點對點、點對多點的多級組網(wǎng)通信,最大可尋址4096個用戶。

FC201B/E無線數(shù)據(jù)傳輸模塊采用雙鎖相環(huán)及雙VCO結(jié)構(gòu),數(shù)據(jù)調(diào)制采用FFSK方式,工作頻率履蓋20MHz,可存儲16個收、發(fā)信道,用戶可根據(jù)情況配置使用或由程序控制使用。該模塊采用標(biāo)準(zhǔn)RS232接口,可與任何具有RS232接口的設(shè)備相連;具有多種通信協(xié)議,包容性強;內(nèi)置軟件看門狗,保證電臺長期可靠運行。

本系統(tǒng)中,F(xiàn)C201B/E采用透明模式通信協(xié)議(E協(xié)議)。透明模式是為用戶完全自定義高層通信過程而設(shè)置的一種模式。從用戶終端接收的數(shù)據(jù)不作任何處理發(fā)送到空中,對從空中接收到的數(shù)據(jù)不作任何處理轉(zhuǎn)送給用戶終端,數(shù)傳電臺只起數(shù)據(jù)傳輸?shù)慕永m(xù)作用。透明模式下,RS232接口的數(shù)據(jù)流控制是以電臺和終端之間的控制信號CTS控制完成的。當(dāng)CTS信號有效(低電平)時,表示數(shù)據(jù)發(fā)送緩沖區(qū)滿或此時不能發(fā)送數(shù)據(jù),用戶終端應(yīng)停止向電臺傳送數(shù)據(jù);當(dāng)CTS信號無效(高電平)時,表示數(shù)據(jù)發(fā)送緩沖區(qū)未滿或此時可發(fā)送數(shù)據(jù),用戶終端可向電臺傳送數(shù)據(jù)。FC201B/E的發(fā)送數(shù)據(jù)緩沖區(qū)有效值為72B,一般情況下,用戶終端連續(xù)向電臺傳送72?B數(shù)據(jù)后,根據(jù)CTS信號有效與否,需要暫停發(fā)送數(shù)據(jù)。圖5.25URAT連接方式1)上位機通信軟件設(shè)計上位機是以Windows為平臺,采用Microsoft推出的ActiveX技術(shù)實現(xiàn)與無線模塊的串行通信。利用高級語言編程可以很方便地進(jìn)行調(diào)用,這種方法不僅較為簡單,而且非常實用。

PC機通過無線傳輸模塊發(fā)送/接收數(shù)據(jù)的流程如圖5.26所示。上位機通過無線傳輸模塊接收來自下位機的數(shù)據(jù),主要是智能讀卡器讀取的卡號和時間,然后核查該卡號是否被授權(quán),并將核查的結(jié)果通過無線傳輸模塊傳給下位機,同時將接收到的數(shù)據(jù)存入相應(yīng)的數(shù)據(jù)庫中。圖5.26PC機無線傳輸模塊發(fā)送/接收數(shù)據(jù)的流程MCU與無線傳輸模塊之間的數(shù)據(jù)發(fā)送/接收的匯編子程序如下。發(fā)送子程序:SEND:?MOV TMOD,#20H MOV TL1,#0E6H MOV TH1,#0E6H SETB TR1 MOV SCON,#0C0H MOV PCON,#00H ;SMOD=0 CLR TI MOV R7,#04MOV R0,#58HGOUT:MOV A,@R0MOV SBUF,AOUT:JBC TI,END1AJMP OUTEND1:INC R0DJNZ R7,GOUTRET

發(fā)送子程序首先設(shè)置定時器1工作在方式2,設(shè)置串行口工作在方式3。由于MCU采用的外部振蕩頻率為11.0592MHz,因此通過設(shè)置定時器的初始值,可以使MCU的串行口以1200b/s進(jìn)行傳輸。其中R7中存放要傳送的字節(jié)數(shù),R0中存放要傳送數(shù)據(jù)的首地址,當(dāng)R7指定的字節(jié)數(shù)傳輸完畢后,MCU自動退出數(shù)據(jù)的發(fā)送,回到主程序。接收子程序與發(fā)送子程序基本相同,只是R0中存放的是接收數(shù)據(jù)的首地址。接收子程序:RECEIVE:MOVTMOD,#20H;設(shè)置定時器1為方式2 MOVTL1,#0E6H;設(shè)預(yù)置值1200/11.0592MHz MOVTH1,#0E6H SETB TR1 ;啟動定時器1MOV SCON,#0C0h ;設(shè)置串行口為方式3MOV PCON,#00H ;SMOD=0SETB RENMOV R0,50HIN:JBC RI,EASD AJMP IN ;為RB8=0為數(shù)據(jù)位EASD:MOV A,SBUFMOV @R0,ARET5.2課程訓(xùn)練——一卡通系統(tǒng)的綜合應(yīng)用5.2.1華深達(dá)實C3系統(tǒng)的功能與組成

1.系統(tǒng)概述華深達(dá)實C3系統(tǒng)是基于目前最先進(jìn)的非接觸式智能卡技術(shù)、計算機技術(shù)、網(wǎng)絡(luò)通信技術(shù)開發(fā)的一卡通應(yīng)用系統(tǒng)。所謂“C3”,“C”意指Card,即非接觸式智能卡(又稱射頻IC卡);“3”意指3通,即卡通、庫通、網(wǎng)通。

卡通:在C3中,一次發(fā)卡,全系統(tǒng)通用,能同時實現(xiàn)考勤、消費、門禁、會議簽到等應(yīng)用,任何子系統(tǒng)先上或后上均不需要重新發(fā)卡。庫通:C3數(shù)據(jù)庫系統(tǒng),由帳套系統(tǒng)統(tǒng)一管理,各系統(tǒng)數(shù)據(jù)資源共享,一次性輸入人員信息、一次性發(fā)卡,同時實現(xiàn)考勤、門禁、消費等應(yīng)用,考勤和消費經(jīng)過會計期間結(jié)算后,直接用于工資系統(tǒng)的計算。網(wǎng)通:包括局域網(wǎng)(C/S模式)的解決方案和廣域網(wǎng)(B/S模式)的解決方案。

華深達(dá)實C3系統(tǒng)將用戶、卡片、讀卡設(shè)備以及管理需求緊密聯(lián)系在一起,用一張IC卡可實現(xiàn)身份識別、電子消費和人員信息管理等??梢詫崿F(xiàn)門禁、考勤、消費、巡更、會議簽到等多種智能卡應(yīng)用,同時持卡人的各類信息可通過非接觸式智能卡、終端讀寫設(shè)備和網(wǎng)絡(luò)傳送到控制中心服務(wù)器,管理人員可方便地通過管理系統(tǒng)進(jìn)行實時監(jiān)控和管理。華深達(dá)實C3系統(tǒng)可根據(jù)不同企、事業(yè)單位的需求靈活配置,具有保密性高、可靠性高、網(wǎng)絡(luò)結(jié)構(gòu)簡單、數(shù)據(jù)傳輸能力強、應(yīng)用范圍廣等優(yōu)點。華深達(dá)實C3系統(tǒng)中采用了MIFARE系列非接觸式智能IC卡,具備全球惟一的32位序列號,無機械磨損,三重密碼校驗機制,從而保證了使用卡片的惟一性;卡內(nèi)16個分區(qū),每個分區(qū)有獨立的密碼保護(hù),操作時相互不影響。此卡應(yīng)用快捷、靈活、安全,非常適合企業(yè)管理多用性和安全性的要求。2.系統(tǒng)組成圖5.31華深達(dá)實C3系統(tǒng)組成圖

整個系統(tǒng)采用平臺+應(yīng)用的模式,即4+N:“4”為四個平臺系統(tǒng),包括控制臺管理、人員信息管理、設(shè)備卡片管理中心、帳套管理四個系統(tǒng);“N”為一個或多個應(yīng)用系統(tǒng),C3企業(yè)版現(xiàn)有考勤管理、工資管理、門禁管理、消費管理和會議簽到五個應(yīng)用系統(tǒng),并將逐步增加更多的應(yīng)用系統(tǒng)。一個或多個應(yīng)用系統(tǒng)與平臺系統(tǒng)組成一個相關(guān)的企業(yè)一卡通解決方案。此外系統(tǒng)還可掛接華深達(dá)實的一控二門禁系統(tǒng),可與人力資源HRMS等系統(tǒng)接口。5.2.2華深達(dá)實C3系統(tǒng)的啟用與配置

1.第一次啟用前的準(zhǔn)備工作系統(tǒng)成功安裝后:

(1)如果是正式用戶,需將加密狗插入到USB端口,否則系統(tǒng)將進(jìn)入演示或應(yīng)急模式。在演示模式下,所有的功能都開放,但人員信息控制在五個或五個以內(nèi);在應(yīng)急模式下,功能及人員數(shù)量不做限制,但每開啟一個功能模塊的窗口,系統(tǒng)將出現(xiàn)五次請插入加密狗的提示,應(yīng)急模式主要用于加密狗丟失等情況下應(yīng)急之用。在“開始”菜單的“程序”項里找到“華深達(dá)實C3企業(yè)版”→“帳套管理系統(tǒng)”項,建立并啟用帳套。

(2)在“開始”菜單的“程序”項里找到“華深達(dá)實C3企業(yè)版”→“C3企業(yè)版3.0”項,或運行桌面上的快捷圖標(biāo)“C3企業(yè)版3.0”啟動本系統(tǒng)。2.建立帳套

1)建立帳套(數(shù)據(jù)庫)

帳套管理系統(tǒng)是整個C3系統(tǒng)的數(shù)據(jù)管理器,系統(tǒng)安裝成功后,首先要通過帳套管理系統(tǒng)完成數(shù)據(jù)庫的建立,才能保證其他系統(tǒng)的正常運行。

2)啟用帳套帳套建立成功之后,必須經(jīng)過啟用,用戶才能正常使用。3.第一次啟用C3企業(yè)版3.01)連接數(shù)據(jù)庫服務(wù)器圖5.32連接數(shù)據(jù)庫服務(wù)器操作界面

輸入正確的服務(wù)器及登錄服務(wù)器的用戶名和密碼。服務(wù)器名、登錄名及密碼在安裝服務(wù)器時由系統(tǒng)管理員設(shè)置好,客戶端無需設(shè)置,必要時可與數(shù)據(jù)庫服務(wù)器的管理員聯(lián)系。如果數(shù)據(jù)庫服務(wù)器裝在本機,可單擊窗口右下方的“幫助”按鈕,然后再單擊“確定”按鈕,系統(tǒng)將自動填入本機服務(wù)器名及默認(rèn)登錄名“sa”。在第一次運行后,這些信息將記錄在注冊表里,以后使用無需再輸入。單擊“連接”按鈕,出現(xiàn)數(shù)據(jù)庫連接界面,正常情況下,該界面一閃即過,如果該界面停滯不消失,表明系統(tǒng)仍在尋找數(shù)據(jù)庫服務(wù)器,很有可能是網(wǎng)絡(luò)不暢通或數(shù)據(jù)庫服務(wù)器名字錯。這時,用戶需耐心等待,幾分鐘后,將再次彈出“連接參數(shù)”的設(shè)置界面(正常情況下不會彈出)。2)選擇帳套圖5.33系統(tǒng)登錄界面3)注冊開發(fā)商信息圖5.34C3企業(yè)版3.0系統(tǒng)主界面4.導(dǎo)入主頁如果是第一次使用C3系統(tǒng),首先要建立系統(tǒng)解決方案。解決方案是由一個或多個主頁組成的,系統(tǒng)本身自帶了各應(yīng)用系統(tǒng)的解決方案主頁,在crc_files目錄下,用戶可直接導(dǎo)入,亦可自行建立。5.設(shè)置平臺系統(tǒng)如果是第一次使用C3系統(tǒng),應(yīng)按以下順序設(shè)置平臺系統(tǒng)。

1)設(shè)備卡片管理中心的持卡類型設(shè)置售飯機可支持多種不同類型卡的消費,在建立人員信息時,必須為每個人員指定一種卡類型,卡類型的信息在此處設(shè)置。

2)人員信息管理系統(tǒng)人員信息管理系統(tǒng)主要完成部門數(shù)據(jù)設(shè)置、基本字段設(shè)置、人事檔案建立等。只有這些信息都建立好之后,其他系統(tǒng)才能正常使用。3)控制臺系統(tǒng)

(1)設(shè)置客戶名稱:設(shè)置客戶的相關(guān)信息,用戶進(jìn)入任何一個子系統(tǒng),在窗口的標(biāo)題欄和功能樹的最上方,都將顯示在此設(shè)定的公司中文名稱。

(2)設(shè)置會計期間:控制臺系統(tǒng)中的會計期間設(shè)置主要完成會計期間類別的生成,系統(tǒng)設(shè)定會計期間的時間段維護(hù),用戶自定義會計期間的增加、刪除和修改等,同時用戶還可以在這里綜合查看考勤、工資和售飯系統(tǒng)的會計期間狀態(tài),便于控制整個C3系統(tǒng)的結(jié)算體系。在考勤、工資、售飯各系統(tǒng)中分別有一個“當(dāng)前會計期間設(shè)置”模塊,用來設(shè)置本系統(tǒng)的當(dāng)前會計期間的狀態(tài)等信息,這里的會計期間就來自于控制臺中所設(shè)置的會計期間。(3)會計期間分配:在C3系統(tǒng)中,每個人員都必須對應(yīng)一個會計期間,否則無法完成考勤的結(jié)算、工資的計算等操作。

(4)建立用戶、分配權(quán)限:對于任何一個系統(tǒng)而言,系統(tǒng)的安全性無疑是最重要的,給每位操作員建立用戶,并授予相應(yīng)的權(quán)限,才能為系統(tǒng)的安全性提供保障。4)設(shè)備卡片管理中心的設(shè)備管理設(shè)備卡片管理中心主要是對硬件和卡片進(jìn)行操作和管理,如考勤系統(tǒng)的考勤機,門禁系統(tǒng)的門禁機,售飯系統(tǒng)的售飯機等。如果用戶只使用工資系統(tǒng),則此系統(tǒng)可以不予設(shè)置。該系統(tǒng)主要包括設(shè)備和卡片管理。

(1)設(shè)備管理:包括添加設(shè)備和設(shè)備訪問權(quán)限。

(2)卡片操作:包括卡分段設(shè)置、卡流水號分配、初始化系統(tǒng)卡和發(fā)卡。6.各系統(tǒng)的內(nèi)在聯(lián)系平臺系統(tǒng)設(shè)置完成之后,考勤、工資、門禁、消費、會議簽到等應(yīng)用系統(tǒng)就可以正常使用了,在這里,重點分析各系統(tǒng)在整個應(yīng)用中的內(nèi)在聯(lián)系,以進(jìn)一步理解一卡通的概念。

1)工資系統(tǒng)與考勤、售飯系統(tǒng)在C3系統(tǒng)中工資的計算和考勤、售飯是直接關(guān)聯(lián)的。在考勤系統(tǒng)中,“數(shù)據(jù)結(jié)算”模塊主要就是為了和工資系統(tǒng)接口,其中“會計期間統(tǒng)計表”中所統(tǒng)計出的所有考勤結(jié)果將直接通過數(shù)據(jù)庫傳輸?shù)焦べY系統(tǒng),工資系統(tǒng)根據(jù)統(tǒng)計結(jié)果,結(jié)合工資計算的公式,得出工資結(jié)果。

在售飯系統(tǒng)中,“帳戶期間統(tǒng)計”和“其他匯總期間匯總”中所統(tǒng)計的數(shù)據(jù)結(jié)果可直接在工資系統(tǒng)中引用。在工資系統(tǒng)中,“數(shù)據(jù)準(zhǔn)備”→“項目公式設(shè)定”中的參考數(shù)據(jù),“出勤項目”、“加班項目”、“請假項目”和“出差項目”,分別是調(diào)用了考勤系統(tǒng)中的自定義統(tǒng)計項目、加班類型、請假類型和出差類型;“售飯項目”調(diào)用了售飯系統(tǒng)的相關(guān)項目。2)工資系統(tǒng)和人事系統(tǒng)在工資系統(tǒng)中,“數(shù)據(jù)準(zhǔn)備”→“項目公式設(shè)定”模塊,可通過單擊菜單欄“特別”→“其他參考數(shù)據(jù)”調(diào)出“職務(wù)”等人事信息,這些是調(diào)用了人員信息管理系統(tǒng)中“基本設(shè)置”→“基本字段設(shè)置”中的相關(guān)數(shù)據(jù)。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論