試談基于單片機(jī)的卡式考勤機(jī)的設(shè)計(jì)說明_第1頁
試談基于單片機(jī)的卡式考勤機(jī)的設(shè)計(jì)說明_第2頁
試談基于單片機(jī)的卡式考勤機(jī)的設(shè)計(jì)說明_第3頁
試談基于單片機(jī)的卡式考勤機(jī)的設(shè)計(jì)說明_第4頁
試談基于單片機(jī)的卡式考勤機(jī)的設(shè)計(jì)說明_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、WORD.30/30基于單片機(jī)的卡式考勤機(jī)的設(shè)計(jì)前言近年來隨著計(jì)算機(jī)在社會(huì)領(lǐng)域的滲透, 單片機(jī)的應(yīng)用正在不斷地走向深入,同時(shí)帶動(dòng)傳統(tǒng)控制檢測(cè)日新月益的更新。在實(shí)時(shí)檢測(cè)和自動(dòng)控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往是作為一個(gè)核心部件來使用,僅單片機(jī)方面知識(shí)是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu),以與針對(duì)具體應(yīng)用對(duì)象特點(diǎn)的軟件結(jié)合,以作完善。 智能 IC 卡考勤機(jī)是在實(shí)際工作生產(chǎn)中提出的研究課題,在實(shí)際工作中對(duì)每個(gè)員工的出勤情況的統(tǒng)計(jì)是企業(yè)事業(yè)單位人力資源管理的一項(xiàng)重要容。智能 IC 卡考勤機(jī)能夠智能的記錄員工的出勤、缺席、遲到、早退次數(shù),以此來更好的約束員工養(yǎng)成良好的出勤習(xí)慣。每個(gè)員工在一定時(shí)間的出勤情況一目

2、了然,方便了領(lǐng)導(dǎo)對(duì)員工出勤情況的統(tǒng)計(jì)。本設(shè)計(jì)主要采用高性能、低功耗的AT89C52 單片機(jī)為控制核心,鍵盤輸入、顯示和存儲(chǔ)采用串口連接的方式,鍵盤輸入為44 鍵盤,鍵盤除了09 十個(gè)數(shù)字鍵外還設(shè)有方便查詢工作的功能鍵,顯示為靜態(tài)顯示,6 個(gè)數(shù)碼管在平時(shí)可顯示年、月、日或時(shí)間,每個(gè)員工在上班和下班的時(shí)候打卡,系統(tǒng)自動(dòng)記錄打卡時(shí)間,然后和系統(tǒng)設(shè)定好的時(shí)間進(jìn)行對(duì)比,從而判定員工的出勤,缺席,遲到,早退情況,智能 IC 卡考勤機(jī)會(huì)將員工每天的出勤情況進(jìn)行累加,方便查詢者更快的了解員工一個(gè)階段的出勤狀況。 本設(shè)計(jì)力爭(zhēng)做到準(zhǔn)確、實(shí)用、節(jié)省時(shí)間、操作方便。1 單片機(jī)的概述單片機(jī)微型計(jì)算機(jī)是微型計(jì)算機(jī)的一個(gè)重

3、要分支,也是頗具生命力的機(jī)種。單片機(jī)微型計(jì)算機(jī)簡稱單片機(jī),特別適用于控制領(lǐng)域,故又稱為微控制器。通常,單片機(jī)由單塊集成電路芯片構(gòu)成,部包含有計(jì)算機(jī)的基本功能部件:中央處理器、存儲(chǔ)器和I/O接口電路等。因此,單片機(jī)只需要和適當(dāng)?shù)能浖c外部設(shè)備相結(jié)合,便可成為一個(gè)單片機(jī)控制系統(tǒng)。 單片機(jī)經(jīng)過1、2、3、3代的發(fā)展,目前單片機(jī)正朝著高性能和多品種方向發(fā)展,它們的CPU功能在增強(qiáng),部資源在增多,引角的多功能化,以與低電壓底功耗。1.1 單片機(jī)基礎(chǔ)知識(shí)單片機(jī)又稱單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。概括的講,一塊芯片就成了一臺(tái)計(jì)算機(jī)。MVS-51系列或其兼容

4、的單片機(jī)仍是美國INTEL公司于1980年推出的產(chǎn)品,于MVS-48單片機(jī)相比,它的結(jié)構(gòu)更先進(jìn),功能更強(qiáng),在原來的基礎(chǔ)上增加了更多的電路單元和指令,指令數(shù)達(dá)111條,MVS-51系列或其兼容的單片機(jī)仍是應(yīng)用的主流產(chǎn)品,各高校與專業(yè)學(xué)校的培訓(xùn)教材仍與MVS-51單片機(jī)作為代表進(jìn)行理論基礎(chǔ)學(xué)習(xí)。MVS-51系列單片機(jī)主要包括8031、8051、和8751等通用產(chǎn)品。DP-51S單片機(jī)仿真試驗(yàn)儀是由致遠(yuǎn)電子設(shè)計(jì)的DP系列單片機(jī)仿真實(shí)驗(yàn)儀之一,是一種功能強(qiáng)大的單片機(jī)應(yīng)用技術(shù)學(xué)習(xí)、調(diào)試。1.2 單片機(jī)的應(yīng)用領(lǐng)域單片機(jī)廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專用設(shè)備的智能化管理與過程控制等領(lǐng)域,

5、大致可分為如下幾個(gè)疇:在智能儀器表的應(yīng)用單片機(jī)具有體積小功耗低、控制功能強(qiáng)、擴(kuò)展靈活、微型化和使用方便等優(yōu)點(diǎn),廣泛應(yīng)用于儀器儀表中,結(jié)合不同類型的傳感器,可實(shí)現(xiàn)諸如電壓、功能、頻率、濕度、流量、速度、厚度、角度、長度、硬度、元素、壓力等物理量的測(cè)量。采用單片機(jī)控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起采用電子或數(shù)字電路更加強(qiáng)大。例如精密的測(cè)量設(shè)備(功率計(jì),示波器,各種分析儀)。在家用電器中的應(yīng)用可以這樣說,現(xiàn)在的家用電器基本上都采用了單片機(jī)控制,從電飯煲、洗衣機(jī)、電冰箱、空調(diào)機(jī)、彩電、其他音響視頻器材、再到電子稱量設(shè)備,五花八門,無所不在。在工業(yè)控制中的應(yīng)用用單片機(jī)可以構(gòu)成形式多樣的控

6、制系統(tǒng)、數(shù)據(jù)采集系統(tǒng),例如工廠流水線的智能化管理,電梯智能化控制、各種報(bào)警系統(tǒng),與計(jì)算機(jī)聯(lián)網(wǎng)構(gòu)成二級(jí)控制系統(tǒng)等。在計(jì)算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用現(xiàn)代單片機(jī)普遍具備通信接口,可以很方便地與計(jì)算機(jī)進(jìn)行數(shù)據(jù)通信,為計(jì)算機(jī)網(wǎng)絡(luò)和通信設(shè)備間的應(yīng)用提供了很好的物質(zhì)條件,現(xiàn)在的通信設(shè)備基本上都實(shí)現(xiàn)了單片機(jī)智能控制,從手機(jī)、機(jī)、小型程控交換機(jī)、樓宇自動(dòng)通信呼叫系統(tǒng)、列車無線通信、再到日常工作中隨處可見的移動(dòng),集群移動(dòng)通信,無線電對(duì)講機(jī)等。單片機(jī)在醫(yī)用設(shè)備領(lǐng)域中的應(yīng)用單片機(jī)在醫(yī)用設(shè)備中的用途亦相當(dāng)廣泛,例如醫(yī)用呼吸機(jī),各種分析儀,監(jiān)護(hù)儀,超聲診斷設(shè)備與病床呼叫系統(tǒng)等等。此外,單片機(jī)在工商、金融、科研、教育、國防航

7、空等領(lǐng)域都有著十分廣泛的用途。1.3 單片機(jī)的發(fā)展趨勢(shì)單片機(jī)現(xiàn)在可以說百花齊放,百家爭(zhēng)鳴的時(shí)期,世界上各大芯片制造公司都推出了自己的單片機(jī),從8位、16位到32位,數(shù)不勝數(shù),應(yīng)有盡有,有與主流C51系列兼容的,也有不兼容的,但他們各具特色,護(hù)城互補(bǔ),為單片機(jī)的應(yīng)用提供了廣闊的天地。縱觀單片機(jī)的發(fā)展過程,可以預(yù)示單片機(jī)的發(fā)展趨勢(shì),大致有:微型單片機(jī)現(xiàn)在常規(guī)的單片機(jī)普遍都是將中央處理器(CPU)、隨機(jī)存取數(shù)據(jù)存儲(chǔ)(RAM)、只讀程序存儲(chǔ)器(ROM)、并行和串行通信接口,中斷系統(tǒng)、定時(shí)電路、時(shí)鐘電路集成在一塊單一的芯片上,增強(qiáng)型的單片機(jī)集成了如A/D轉(zhuǎn)換器、PMW(脈寬調(diào)制電路)、WDT(看門狗)、

8、有些單片機(jī)將LED(液晶)驅(qū)動(dòng)電路都集成在單一芯片上,這樣單片機(jī)包含的單元電路就更多,功能就越強(qiáng)大,甚至單片機(jī)廠商還可以根據(jù)用戶的要求量身定做,制造出具有自己特色的單片機(jī)芯片。此外,現(xiàn)在的產(chǎn)品普遍要求體積小、重量輕,這就要求單片機(jī)除了功能強(qiáng)和功耗低外,好要求體積小。現(xiàn)在的許多單片機(jī)都具有多種封裝形式,其中SMD(表面封裝)越來越受歡迎,使得由單片機(jī)構(gòu)成的系統(tǒng)正朝微型化方向發(fā)展。低功耗CMOS化MCS-51系列的8031推出時(shí)的功耗達(dá)630mW,而現(xiàn)在的單片機(jī)普遍都在100mW左右,隨著對(duì)單片機(jī)功耗要求越來越低,現(xiàn)在的各個(gè)單片機(jī)制造商基本都采用了CMOS(互補(bǔ)金屬氧化物半導(dǎo)體工藝)。和CHMOS

9、(互補(bǔ)高密度金屬氧化物半導(dǎo)體工藝)。CMOS雖然功耗低,單由于其物理特征決定其工作速度不夠高,而CHMOS則具備了高速和低功耗的特點(diǎn),這些特征,更適合于要求低功耗像電池供電的應(yīng)用場(chǎng)合。所以這種工藝將是今后一段時(shí)期單片機(jī)發(fā)展的主要途徑。主流與多品種共存現(xiàn)在雖然單片機(jī)的品種繁多,各具特色,但仍以80C51為核心的單片機(jī)占主流,兼容其結(jié)構(gòu)和指令系統(tǒng)的有PHILIPS公司的產(chǎn)品,ATMEL公司的產(chǎn)品和中國的Winbond系列單片機(jī)。所以80C51占據(jù)了半壁江山。而Microchip公司的PIC精簡指令集合(RISC)也有著強(qiáng)勁的發(fā)展勢(shì)頭,中國的HOLTEX公司今年的單片機(jī)產(chǎn)量與日俱增,與其低價(jià)質(zhì)優(yōu)的優(yōu)

10、勢(shì),占據(jù)一定的市場(chǎng)份額。此外還有MOTOROLA公司的產(chǎn)品,日本幾大公司的專用單片機(jī)。在一定的時(shí)期,這種情形將得以延續(xù),將不存在某個(gè)單片機(jī)一統(tǒng)天下的壟斷局面,走的是一寸互補(bǔ)、相輔相成、共同發(fā)展的道路。2方案設(shè)計(jì)與論證2.1 系統(tǒng)總體設(shè)計(jì)概述智能IC 卡考勤機(jī)的主要功能是檢查和記錄員工的出勤的狀況。本設(shè)計(jì)采用單片機(jī)AT89C52 與其接口電路來實(shí)現(xiàn)考勤機(jī)功能。 為了使設(shè)計(jì)使用方便,操作方便,簡單明了的輸入輸出設(shè)備是必不可少的,本設(shè)計(jì)采用44 鍵盤作為輸入設(shè)備。每個(gè)員工擁有一帶有自己身份的IC 卡,操作者如要查詢一個(gè)員工一段時(shí)間的出勤情況便可以輸入要查詢員工的。 對(duì)應(yīng)輸入,顯示輸出系統(tǒng)采用了串口連

11、接的方式,6 個(gè) LED 數(shù)碼管在平時(shí)可以顯示年、月、日,在操作者查詢出勤情況時(shí)可以顯示員工和對(duì)應(yīng)的出勤狀況。 24C256 芯片作為智能IC 卡考勤機(jī)的存儲(chǔ)器,這樣可以記錄每個(gè)員工一段時(shí)間的出勤狀況的,方便統(tǒng)計(jì)。 為了避免智能IC 卡在工作時(shí)出現(xiàn)故障,使用了MAX813L 芯片來實(shí)現(xiàn)“看門狗”功能,對(duì)系統(tǒng)進(jìn)行時(shí)時(shí)檢查,發(fā)現(xiàn)故障可以與時(shí)復(fù)位。 DS1302 芯片為時(shí)鐘芯片,芯片除了正常電源外還外接了一個(gè)備用電池,可以防止掉電丟失數(shù)據(jù)。 IC 卡采用可反復(fù)使用十萬次的SLE4442 型號(hào)的IC 卡。系統(tǒng)總體框圖如下:圖2.1-1 硬件總體框圖2.2 方案論證智能IC 卡考勤機(jī)的顯示可以采用并行連

12、接和串口連接,并行口占用大量引腳,串口連接的好處為節(jié)省引腳。 智能 IC 卡考勤機(jī)的時(shí)間現(xiàn)實(shí)使用了 DS1302 時(shí)鐘芯片,用此芯片的好處為 89C52 單片機(jī) SLE4442I C 卡插座 存儲(chǔ)系統(tǒng) DS1302 時(shí)鐘芯片 看門狗電路 顯 示系統(tǒng) 4*4 鍵盤掉電數(shù)據(jù)不丟失,可靠,安全。 單片機(jī)系統(tǒng)經(jīng)常用于各種各樣工作現(xiàn)場(chǎng),在工作現(xiàn)場(chǎng)中存在著各種各樣的干擾源,給系統(tǒng)的運(yùn)行帶來很多問題,使系統(tǒng)無常運(yùn)行,甚至產(chǎn)生誤操作,造成嚴(yán)重的事故為了使智能 IC 卡考勤機(jī)能正常無誤的工作,本設(shè)計(jì)采用 MAX813L 芯片作為了“看門狗”系統(tǒng)。3 硬件設(shè)計(jì)3.1 AT89C52的簡介AT89C52 是美國AT

13、MEL 公司生產(chǎn)的低電壓,高性能CMOS8 位單片機(jī),片含 8kbytes 的可反復(fù)擦寫的只讀程序存儲(chǔ)器(PEROM)和 256bytes 的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),器件采用ATMEL 公司的高密度,非易失性存儲(chǔ)技術(shù)生產(chǎn),與標(biāo)準(zhǔn)的MCS-51 指令系統(tǒng)與8052 產(chǎn)品引腳兼容,片臵通用8 位中央處理器(CPU)和Flash 存儲(chǔ)單元,功能強(qiáng)大AT89C52 單片機(jī)適合于許多較為復(fù)雜控制應(yīng)用場(chǎng)合。 先進(jìn)CMOS 工藝制造并帶有非易失性Flash 程序存儲(chǔ)器。全部支持12 時(shí)鐘和6 時(shí)鐘操作。P89C51X2 和P89C52X2/54X2/58X2 分別包含128 字節(jié)和256 字節(jié) RAM

14、、32 條I/O 口線、3 個(gè)16 位定時(shí)/計(jì)數(shù)器、6 輸入4 優(yōu)先級(jí)嵌套中斷結(jié)構(gòu)、1 個(gè)串行I/O 口(可用于多機(jī)通信、I/O 擴(kuò)展或全雙工UART)以與片振蕩器和時(shí)鐘電路。此外,由于器件采用了靜態(tài)設(shè)計(jì),可提供很寬的操作頻率圍(頻率可降至 0)??蓪?shí)現(xiàn)兩個(gè)由軟件選擇的節(jié)電模式空閑模式和掉電模式??臻e模式凍結(jié) CPU,但 RAM、定時(shí)器、串口和中斷系統(tǒng)仍然工作。掉電模式保存 RAM 的容,但是凍結(jié)振蕩器,導(dǎo)致所有其它的片功能停止工作。由于設(shè)計(jì)是靜態(tài)的,時(shí)鐘可停止而不會(huì)丟失用戶數(shù)據(jù)。運(yùn)行可從時(shí)鐘停止處恢復(fù)。3.1.1主要性能參數(shù)與MCS-51 產(chǎn)品指令和引腳完全兼容。8K 字節(jié)可重擦寫Flash

15、 閃速存儲(chǔ)器。 1000 次擦寫周期。 全靜態(tài)操作:0HZ-24HZ。 三級(jí)加密程序存儲(chǔ)器。 2568 字節(jié)部RAM。 32 個(gè)可編程I/O 口線。 3 個(gè)16 位定時(shí)器。 8 個(gè)中斷源。 可編程串行UART 通道。 低功耗空閑和掉電模式。31.2功能特性概述AT89C52 提供以下標(biāo)準(zhǔn)功能:8k 字節(jié) FLASH 閃速存儲(chǔ)器,256 字節(jié)部 RAM,32 個(gè) I/O 口線,3 個(gè) 16 位定時(shí)/計(jì)數(shù)器,一個(gè) 6 向量兩極中斷結(jié)構(gòu),一個(gè)全雙工串行通信口,片振蕩器與時(shí)鐘電路。同時(shí),AT89C52 可降至0HZ 的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式。空閑方式停止CPU 工作,但允許RA

16、M,定時(shí)/計(jì)數(shù)器,串行通信口中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM 中的容,但振蕩器停止工作并禁止其他所有不見工作直到下一個(gè)硬件復(fù)位 1 。3.1.3 引腳定義V SS :地。 V CC :電源;提供掉電、空閑、正常工作電壓。 P0.00.7:P0 口是開漏雙向口,可以寫為 1 使其狀態(tài)為懸浮用作高阻輸入。P0 也可以在訪問外部程序存儲(chǔ)器時(shí)作地址的低字節(jié),在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)作數(shù)據(jù)總線,此時(shí)通過部強(qiáng)上拉輸出1。 P1.01.7:P1 口是帶部上拉的雙向I/O 口,向P1 口寫入1 時(shí),P1 口被部上拉為高電平,可用作輸出口。當(dāng)作為輸入腳時(shí),被外部拉低的P1 口會(huì)因?yàn)椴可侠敵鲭娏?。P1 口第

17、二功能:T2(P1.0)定時(shí)/計(jì)數(shù)器 2 的外部記數(shù)/時(shí)鐘輸出。T2EX(P1.1):定時(shí)/計(jì)數(shù)器2 重裝載/方向控制。 P2.02.7:P2 口是帶部上拉的雙向I/O 口,向P2 口寫入1 時(shí),P2 口被部上拉為高電平,可用作輸入口。當(dāng)作為輸入腳時(shí),被外部拉低的P2 口會(huì)因?yàn)椴可侠敵鲭娏?。在訪問外部程序存儲(chǔ)器和外部數(shù)據(jù)時(shí)分別作為地址高位字節(jié)和 16 為地址(MOVXDPTR),此時(shí)通過部強(qiáng)上拉傳送1。當(dāng)使用8 位尋址方式(MOVRi)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),P2 口發(fā)送P2 特殊功能寄存器的容。 P3.03.7:P3 口是帶部上拉的雙向I/O 口,向P3 口寫入1 時(shí),P3 口被部上拉為高

18、電平,可用作輸入口。當(dāng)作為輸入腳時(shí),被外部拉低的P3 口會(huì)因?yàn)椴可侠敵鲭娏?。P3 口具有以下特殊功能; RXD(P3.0):串行輸入口。 TXD(P3.1):串行輸出口。 /INT0(P3.2):外部中斷0。 /INT1(P3.3):外部中斷1。 T0(P3.4):定時(shí)器0 外部輸入。 T1(P3.5):定時(shí)器1 外部輸入。 /WR(P3.6):外部數(shù)據(jù)存儲(chǔ)器寫信號(hào)。 /RD(P3.7):外部數(shù)據(jù)存儲(chǔ)器讀信號(hào)。 RST:復(fù)位,當(dāng)晶振在運(yùn)行中,只要復(fù)位管腳2 個(gè)機(jī)器周期高電平即可復(fù)位,部有擴(kuò)散電阻連接到V SS ,僅需要外接一個(gè)電容到V CC 即可實(shí)現(xiàn)上電復(fù)位。 農(nóng)業(yè)大學(xué)學(xué)士學(xué)位論文 9 /

19、ALE:地址鎖存器使能,在訪問外部存儲(chǔ)器時(shí),輸出脈沖鎖存地址的低字節(jié),在正常情況下,ALE 輸出信號(hào)恒定為1/6 振蕩頻率。并可用作外部時(shí)鐘或定時(shí),注意每次訪問外部數(shù)據(jù)時(shí)一個(gè) ALE 脈沖將被忽略。ALE 可以通過臵位 SFR 的 auxlilary.0 禁止,臵位后ALE 只能在執(zhí)行MOVX 指令時(shí)被激活。 /PSEN:程序存儲(chǔ)使能:當(dāng)執(zhí)行外部程序存儲(chǔ)器代碼時(shí),/PSEN 每個(gè)機(jī)器周期被激活兩次,在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),/PSEN 無效,訪問部程序存儲(chǔ)器時(shí) /PESEN 無效。 /EA/V PP :外部尋址使能/編程電壓;在訪問整個(gè)外部程序存儲(chǔ)器時(shí),/EA 必須外部臵低。如果/EA為高時(shí),將

20、執(zhí)行部程序,除非程序計(jì)數(shù)器包含大雨片F(xiàn)LASH 的地址。該引腳在對(duì) FLASH 變成時(shí)接 5V/12V 編程電壓(V PP )。如果位 1 已編程,/EA 在復(fù)位時(shí)有部鎖存。 XTAL1:晶體1,反相振蕩放大器和部時(shí)鐘發(fā)生電路輸入。 XTAL2:晶體2,反相振蕩放大器輸出。 注:為了避免上電時(shí)的“l(fā)atch-up”效應(yīng),任意管腳(Vpp除外)上的電壓任何時(shí)候都不能高于Vcc+0.5V,低于Vss-0.5V 6 。3.2 44 鍵盤簡介3.2.144 鍵盤原理圖原理圖如2-2 所示:圖3.2.1-1 鍵盤原理圖3.2.2 44 鍵盤工作原理列線通過電阻接正電源,并將行線所接的單片機(jī) I/O 口作

21、為輸出端,而列線農(nóng)業(yè)大學(xué)學(xué)士學(xué)位論文 10 所接的 I/O 口則作為輸入。當(dāng)按鍵沒有按下時(shí),所有列的輸出端都是高電平,代表沒有鍵按下。行線輸出時(shí)低電平,一旦有鍵按下時(shí),則輸入線就會(huì)被拉低,這樣通過讀入輸入線的狀態(tài)就可以得知是否有鍵按下了。 常用的鍵識(shí)別方法:行掃描法、線翻轉(zhuǎn)法。 行掃描法:將全部行線 Y0-Y3(行)臵低電平,然后檢測(cè)列的狀態(tài)。只要有一列的電平為低,則表示按鍵中有鍵被按下,而且閉合的鍵位于低電平與 4 根行線相交叉的 4 個(gè)按鍵之中。若所有列線均為高電平,則鍵盤中沒有鍵按下。判斷閉合鍵所在的位臵在確定有按鍵按下以后,就可以進(jìn)入確定具體閉合鍵的過程。其方法是:依次將行線臵低電平,

22、即在臵某根行線為低電平時(shí),其線為高電平。在確定某根行線位臵為低電平后,再將行檢測(cè)各列的電平狀態(tài)。若為低,則該列線與臵為低電平的行線交叉處的按鍵就是閉合的按鍵。 線反轉(zhuǎn)法:鍵盤接的前4 個(gè)I/O 口為行接線,后4 個(gè)為列接線。這樣的接法就構(gòu)成了一個(gè)坐標(biāo),每一個(gè)鍵都對(duì)應(yīng)這一個(gè)行的位臵和一個(gè)列的位臵。例如我們說左上角的那個(gè)所對(duì)應(yīng)第1 行和第4 列,即單片機(jī)P10 和P17 兩個(gè)I/O 口。鍵盤的組成是用的微動(dòng)開關(guān),微動(dòng)開關(guān)的特性是當(dāng)有鍵按下時(shí)開關(guān)的兩個(gè)引腳閉合導(dǎo)通。無按鍵時(shí)兩個(gè)引腳是斷開的狀態(tài)。這樣當(dāng)我們按下圖 1 中左上角的鍵時(shí) P10 和P17 在物理上是導(dǎo)通了,而其它的I/O 口(P11P16

23、)都處于獨(dú)立的狀態(tài)。我們只要讓單片機(jī)發(fā)現(xiàn)哪兩個(gè)I/O口是導(dǎo)通的我們就可以知道是哪一個(gè)鍵被按下了。這里我們用的一種方法是先將4 個(gè)行線的I/O 口臵為“0”(低電平),將列線的 I/O 口臵為“1”(高電平)。這樣當(dāng)有鍵按下時(shí)某一行的 I/O 口就和某一列中的I/O 口導(dǎo)通了,因?yàn)樾芯€的口都是“0”(低電平)所以和行線導(dǎo)通的列線也將會(huì)變成“0”,而其余的列線因?yàn)殚_始時(shí)是“1”又沒和其它的行線導(dǎo)通,所以依然是“1”。這樣我們就可以找出了我們的按鍵所在的列了(因?yàn)榱芯€中只有導(dǎo)通的列線變?yōu)榱恕?”,任何電平與低電平相導(dǎo)通都屬于短路,短路的線將會(huì)是低電平)。其實(shí),所謂的“行”、“列”是我們?nèi)藶橐?guī)定的,如

24、果試著把列看成行,將行看成列是一樣的。 這里我們規(guī)定P10-P13 為行,P14-P17 為列?,F(xiàn)在我們知道了我們按下的鍵所在的列了,只要再知道它所在的行的話,我們就可以確定它的位臵了。這時(shí)我們將4 個(gè)行線的I/O 口臵為“1”(高電平),將列線的I/O 口臵為“0”(低電平),這是和最初的臵式相反。被按著的那個(gè)按鍵還是導(dǎo)通的,還是屬于短路,所以在被臵“1”的行線中將會(huì)有一個(gè)變成了“0”,這樣我們就確定了按鍵在行中的位臵。 本設(shè)計(jì)采用了行掃描法 5 。3.2.3 鍵值與功能表3.2.3-1 鍵值與功能3.3 SLE4442 功能介紹3.3.1 概述SLE4442 是德國西門子(SIMENS)公

25、司設(shè)計(jì)的邏輯加密存儲(chǔ)卡,它具有2K 位的存儲(chǔ)容量和完全獨(dú)立的可編程代碼存儲(chǔ)器(PSC)。部電壓提升電路保證了芯片能夠以單+5V 電壓供電,較大的存儲(chǔ)容量能夠滿足通常應(yīng)用領(lǐng)域的各種需要。因此是目前國應(yīng)用較多的一種 IC 卡芯片。芯片采用多存儲(chǔ)器結(jié)構(gòu),2 線連接協(xié)議(串行接口滿足ISO7816 同步傳送協(xié)議),NMOS 工藝技術(shù),每字節(jié)的擦除/寫入編程時(shí)間為 2.5ms。存儲(chǔ)器具有至少 10000 次的擦寫周期,數(shù)據(jù)保持時(shí)間至少10 年.3.3.2 芯片引腳圖3.3.2-1 芯片引腳3.3.3引腳的定義和功能表3.3.3-1 引腳的定義和功能3.3.4芯片功能SLE4442 IC 卡主要包括三個(gè)存

26、儲(chǔ)器 : 256x8 位 EEPROM 型主存儲(chǔ)器。地址031 為保護(hù)數(shù)據(jù)區(qū),該區(qū)數(shù)據(jù)讀出不受限制,寫入受保護(hù)存儲(chǔ)部數(shù)據(jù)狀態(tài)的限制。當(dāng)保護(hù)存儲(chǔ)器中第 N 位 (N=031)為 1 時(shí),對(duì)應(yīng)主存儲(chǔ)器中第 N 個(gè)字節(jié)允許進(jìn)行擦除和寫入操作。地址32255 后244 字節(jié)為應(yīng)用數(shù)據(jù)區(qū),數(shù)據(jù)讀出不受限制,擦除和寫入受加密存儲(chǔ)器數(shù)據(jù)校驗(yàn)結(jié)果的影響。這種加密校驗(yàn)的控制是對(duì)整個(gè)主存儲(chǔ)器實(shí)施的(即包括保護(hù)數(shù)據(jù)區(qū)和應(yīng)用數(shù)據(jù)區(qū)) 32 x1 位PROM 型保護(hù)存儲(chǔ)器。一次性編程以保護(hù)主存儲(chǔ)器保護(hù)數(shù)據(jù)區(qū),防止一些固定的標(biāo)識(shí)參數(shù)被改動(dòng)。保護(hù)存儲(chǔ)器同樣受加密存儲(chǔ)器數(shù)據(jù)校驗(yàn)結(jié)果的影響。 4x8 位EEPROM 型加密存儲(chǔ)

27、器。第0 字節(jié)為密碼輸入錯(cuò)誤計(jì)數(shù)器(EC)。 EC 的有效位是低三位,芯片初始化時(shí)設(shè)臵成“111”。 這一字節(jié)是可讀的。EC 的 1,2,3 字節(jié)為參照字存儲(chǔ)區(qū),這3 個(gè)字節(jié)的容作為一個(gè)整體被稱為可編程加密代碼(PSC)。其讀出,寫入和擦除均受自身“比較”操作結(jié)果的控制 。芯片部的邏輯結(jié)構(gòu)圖3.3.4-1芯片部的邏輯結(jié)構(gòu)3.3.5 傳送協(xié)議 復(fù)位和復(fù)位響應(yīng)圖3.3.5-1復(fù)位和復(fù)位響應(yīng)復(fù)位和復(fù)位響應(yīng)是根據(jù) ISO7816-3 標(biāo)準(zhǔn)來進(jìn)行的,在操作期間的任意時(shí)候都可以復(fù)位。開始,地址計(jì)數(shù)器隨一個(gè)時(shí)鐘脈沖而被設(shè)臵為零,當(dāng) RST 線從高狀態(tài)(H)臵到低狀態(tài)(L)時(shí),第一個(gè)數(shù)據(jù)位(LSB)的容被送到

28、 I/O 上,若連農(nóng)業(yè)大學(xué)學(xué)士學(xué)位論文 14 續(xù)輸入 32 個(gè)時(shí)鐘脈沖,主存儲(chǔ)器中的前四個(gè)字節(jié)地址單元中的容被讀出。在第33 個(gè)始終脈沖的下降沿,I/O 線被臵成高狀態(tài)而關(guān)閉。 命令模式 復(fù)位響應(yīng)以后,芯片等待著命令每條命令都以一個(gè)“啟動(dòng)狀態(tài)”開始。整個(gè)命令包括3 個(gè)字節(jié)。隨后經(jīng)更著一個(gè)附加脈沖并用一個(gè)“停止?fàn)顟B(tài)”來結(jié)束操作。 啟動(dòng)狀態(tài):在CLK 為高狀態(tài)(H 狀態(tài))期間,I/O 顯得下降沿為啟動(dòng)狀態(tài)。 停止?fàn)顟B(tài):在CLK 為高狀態(tài) (H 狀態(tài))期間,I/O 顯得上升沿為停止?fàn)顟B(tài)。 在接受一個(gè)命令后,有兩種可能的模式:輸出數(shù)據(jù)模式和處理數(shù)據(jù)模式。圖3.3.5-2命令模式的時(shí)序關(guān)系輸出數(shù)據(jù)模式這

29、種模式是將IC 卡芯片中的數(shù)據(jù)傳送個(gè)外部設(shè)備接口(IFD)的一種操作。在第一個(gè) CLK 脈沖的下降沿之后,I/O 線上的第一位數(shù)據(jù)變?yōu)橛行АkS后每增加一個(gè)時(shí)鐘脈沖,芯片部的一位數(shù)據(jù)被送到 I/O 線上。當(dāng)說需要的最后一個(gè)數(shù)據(jù)送出以后,需要在附加一個(gè)時(shí)鐘脈沖來把I/O 臵成高狀態(tài),以便接受新的命令。在輸出數(shù)據(jù)期間,任何“啟動(dòng)狀態(tài)“和”停止?fàn)顟B(tài)“均被屏蔽掉 。圖3.3.5-3 輸出數(shù)據(jù)模式的時(shí)序關(guān)系3.3.6 芯片的復(fù)位方式外部復(fù)位:SLE4442 時(shí)基于同步復(fù)位響應(yīng)的傳輸協(xié)議,芯片的復(fù)位如前述。 外電復(fù)位:在把造作電壓接到V CC 段之后,芯片部進(jìn)行復(fù)位操作。I/O 線被臵為高狀態(tài),必須在對(duì)任意

30、地址進(jìn)行讀操作或做個(gè)復(fù)位響應(yīng)造作之后才可以進(jìn)行數(shù)據(jù)交換。 終止:在 CLK 為低狀態(tài)期間,如果 RST 臵為高狀態(tài),則任何操作均無效。I/O 線被鎖定到高狀態(tài)。需要一個(gè)最小維持時(shí)間tres=5Us 之后,芯片才能接受新的復(fù)位,終止?fàn)顟B(tài)的時(shí)序關(guān)系如下圖2-9 所示。終止?fàn)顟B(tài)之后,新片有準(zhǔn)備下一個(gè)操作。圖3.3.6-1終止?fàn)顟B(tài)的時(shí)序關(guān)系3.4 24C256 簡介3.4.1 概述CAT24WC02是一個(gè)32K串行的CMOS EPROM, CATALYST公司的先進(jìn)的CMOS 技術(shù)實(shí)質(zhì)是減少了器件的功耗,CAT24WC256有一個(gè)16字節(jié)頁寫緩沖器,該器件通過IC總線接口進(jìn)行操作,有一個(gè)專門的寫保護(hù)功

31、能。3.4.2 管腳配置圖3.4.2-1 管腳配置3.4.3管腳描述SCL:串行時(shí)鐘CAT24WC256串行時(shí)鐘輸入管腳用于產(chǎn)生器件所有數(shù)據(jù)發(fā)送或接收的時(shí)鐘,這是一個(gè)輸入管腳。SDA:串行數(shù)據(jù)/地址CAT24WC256雙向串行數(shù)據(jù)/地址管腳用于器件所有數(shù)據(jù)的發(fā)送和接收。SDA是一個(gè)開漏輸出管腳,可與其它開漏輸出或集電極開路輸出進(jìn)行線或(wire-OR).AO、A1、A2:器件地址輸入端這些輸入腳用于多個(gè)器件級(jí)聯(lián)時(shí)設(shè)置器件地址,當(dāng)這些腳懸空時(shí)默認(rèn)值為0.當(dāng)使用24WC256時(shí)最大可級(jí)聯(lián)8個(gè)器件,如果只有一個(gè)24WC256被總線尋址,這三個(gè)地址輸入腳(A0 A1 A2)可懸空或連接到Vss。 WP

32、:寫保護(hù)如果WP管腳連接到Vcc,所有的容都被寫保護(hù)(只能讀),當(dāng)WP管腳連接到Vss或懸空,允許器件進(jìn)行正常的讀/寫操作。3.4.4 功能描述CAT24WC256支持IC中心數(shù)據(jù)傳送協(xié)議,IC總線協(xié)議規(guī)定,任何將數(shù)據(jù)傳送到總線的器件作為發(fā)送器,任何從總線接收數(shù)據(jù)的器件為接收器,數(shù)據(jù)傳送時(shí)由產(chǎn)生串行時(shí)鐘和所有起始停止信號(hào)的主器件控制的,主器件和從器件都可以作為發(fā)送器或接收器,但由主器件控制傳送數(shù)據(jù)(發(fā)送或接收)的模式,通過器件地址輸入端AO、A1和A2可以實(shí)現(xiàn)做多連接8個(gè)24WC256器件。4 MAX813L功能介紹4.1 MAX813L引腳介紹MAX813L屬于美國MAXIM公司推出的微處理

33、器/單片機(jī)系統(tǒng)監(jiān)控電路MAX703-709/813L系列。MAX813L具有上電復(fù)位?!翱撮T狗”定時(shí)輸出,掉電電壓監(jiān)測(cè)復(fù)位和手動(dòng)復(fù)位四大功能,而且價(jià)格低,可靠性高,它有8個(gè)引腳,雙列直插式或貼片式封裝,+5V供電,其部引腳如圖所示,圖4.1-1 MAX813L部結(jié)構(gòu)與引腳WDI主要是作為“看門狗”計(jì)數(shù)器觸發(fā)用的,觸發(fā)“看門狗”的方法是在WDI上加一個(gè)正脈沖。在1.6秒若CPU不觸發(fā)復(fù)位“看門狗”定時(shí)器,則WDO將輸出低電平,復(fù)位電路分為手工復(fù)位和上電復(fù)位。上電復(fù)位時(shí),只有電壓低于4.65V,復(fù)位信號(hào)RESET就有效,當(dāng)電源電壓超過4.65V時(shí)RESET信號(hào)仍將繼續(xù)保持200ms左右,以保證CP

34、U復(fù)位可靠,手動(dòng)復(fù)位時(shí),MR接地時(shí)間不小于140ms(為了保證能有效地消除機(jī)械開關(guān)抖動(dòng)的影響),則可產(chǎn)生一個(gè)手動(dòng)復(fù)位過程,即在復(fù)位端產(chǎn)生200ms的有效復(fù)位信號(hào)”(高電平有效),若將/WDO與/MR連接,則可組成上電復(fù)位與“看門狗”復(fù)位電路。圖4.1-2MAX813L與單片機(jī)的連接上圖為MAX813L與MCS51單片機(jī)的基本連接電路,本設(shè)計(jì)采用的也是這種連接方式,只是將WDI與P0.0連接,它能實(shí)現(xiàn)上電、手動(dòng)復(fù)位和程序運(yùn)行監(jiān)視復(fù)位三種功能,一旦因干擾發(fā)生程序飛逸和死機(jī),WDI在1.6ms得不到正脈沖,WDO由高電平變?yōu)榈碗娖?,在RESET上發(fā)出一個(gè)正脈沖的復(fù)位信號(hào),單片機(jī)復(fù)位,同時(shí),“看門狗”

35、從“0”開始記數(shù),繼續(xù)監(jiān)視程序運(yùn)行。4.2 MAX813L的主要功能上電、掉電以與降壓情況下具有RESET輸出。獨(dú)立的“看門狗”電路,“看門狗”定時(shí)時(shí)間為1.6s。1.25V門限檢測(cè)器,用于低壓報(bào)警,還可監(jiān)視+5V以外的電源電壓。具有手動(dòng)復(fù)位輸入端。5 DS1302介紹5.1 特性實(shí)時(shí)時(shí)鐘,可對(duì)秒、分、時(shí)、日、周、月以與帶閏年補(bǔ)償?shù)哪赀M(jìn)行記數(shù)。用于高速數(shù)據(jù)暫存的318RAM。最少引腳的串行I/O。2.5-5.5V滿度工作圍還有2.0-5.5V滿度工作圍可供選用。2.5V時(shí)耗電小于300nA。用語時(shí)鐘或RAM數(shù)據(jù)讀/寫的單字節(jié)或多字節(jié)(脈沖方式)數(shù)據(jù)傳送。8引腳DIP或可選的用于表面安裝的8引腳

36、SOIC封裝。簡單的3線接口。TTL兼容(Vcc=5V)可選溫度圍-40度至+85度5.2 引腳排列圖5.2-1 引腳圖5.3 工作原理串行時(shí)鐘芯片的主要組成部分為:移位寄存器、控制邏輯、振蕩器、實(shí)時(shí)時(shí)鐘以與RAM。為了初始化任何的數(shù)據(jù)傳送,把RST置為高電平且把提供地址和命令信息的8位裝入到移位寄存器。數(shù)據(jù)在SCLK的上升沿串行輸入。無論是讀周期還是寫周期發(fā)生,也無論傳送方式是單字節(jié)傳送還是多字節(jié)傳送,開始8位指定40個(gè)字節(jié)中的哪個(gè)將被訪問,在開始8個(gè)時(shí)鐘周期把命令裝入移位寄存器之后,另外的時(shí)鐘在讀操作時(shí)輸出數(shù)據(jù),在寫操作時(shí)輸入數(shù)據(jù)。時(shí)鐘脈沖的個(gè)數(shù)在單字節(jié)方式下為8加8,在多字節(jié)方式下為8加

37、最大可達(dá)248的輸。5.4 時(shí)序圖讀數(shù)據(jù)傳送圖5.4-1 讀數(shù)據(jù)傳送寫數(shù)據(jù)傳送圖5.4-2 寫數(shù)據(jù)傳送6 顯示利用單片機(jī)的串行接口連接的靜態(tài)顯示,數(shù)據(jù)通過串行口串行輸出送到74HC164,而74HC164通過移位將數(shù)據(jù)并行輸出驅(qū)動(dòng)七段LED數(shù)碼管顯示。74HC164引腳表特征:典型的操作頻率:50兆赫茲典型的增殖延遲:19ns工作電壓圍:2-6V低電平輸入電流:最大值1uA低電平時(shí)允許通過電流:最大值80uA74HC164可實(shí)現(xiàn)串行輸入,并行輸出。其中A、B為串行數(shù)據(jù)輸入端,2個(gè)引腳按邏輯與運(yùn)算規(guī)律輸入信號(hào),一個(gè)輸入信號(hào)時(shí)可以并接。CLK為時(shí)鐘輸入端,可連接到串行口的TXD端。每一個(gè)時(shí)鐘信號(hào)的

38、上升沿加到CLK端時(shí),移位寄存器移一位,8個(gè)時(shí)鐘脈沖過后,8位二進(jìn)制數(shù)全部移入74HC164中。CLR為復(fù)位端,當(dāng)CLR=0時(shí),移位寄存器各位歸0,只有當(dāng)R=1時(shí),時(shí)鐘脈沖才能起作用。QAQH并行輸出端分別接LED顯示器的ag、dp各端對(duì)應(yīng)的引腳上,再來一個(gè)脈沖,第一個(gè)脈沖就會(huì)從最高位移出。下面來看74HC164和LED數(shù)碼管的具體連接電路。圖6-1 74HC164與數(shù)碼管連接圖7 系統(tǒng)調(diào)試按照電路圖將各器件焊接到實(shí)驗(yàn)板上,在焊接過程中難免會(huì)出現(xiàn)短路或斷路的現(xiàn)象,這就需要對(duì)焊接完的硬件電路進(jìn)行調(diào)試。首先,用焊接完的實(shí)物和電路圖進(jìn)行對(duì)照,找出是否有遺漏或者接錯(cuò)的地方,如有發(fā)現(xiàn)與時(shí)更正。其次,用萬

39、用表檢查電路中是否有斷路和短路的現(xiàn)象,并檢查所有的電源線是否導(dǎo)通,所有的地線是否導(dǎo)通。再次,將電路分成多個(gè)小模塊,并且編輯一些相應(yīng)的調(diào)試小程序,來檢測(cè)它們是否正確。最后,接通電源,用萬用表檢測(cè)各部分電路的電壓和電流是否正常。8 結(jié)論 智能IC卡考勤機(jī)在實(shí)際的生活中很常見,由于我知識(shí)和經(jīng)驗(yàn)的不足,我所設(shè)計(jì)的智能IC卡考勤機(jī)油很多不完美的地方,旦通過這次畢業(yè)設(shè)計(jì),我從設(shè)計(jì)中學(xué)到了很多東西。 設(shè)計(jì)采用了DS1302作為時(shí)鐘芯片,DS1302可通過外加電池,即使在掉電的情況下也能正常準(zhǔn)確無誤的工作,保證了IC卡考勤機(jī)的可靠性。幾乎所有的單片機(jī)設(shè)計(jì)中都需要復(fù)位電路,本設(shè)計(jì)采用了MAX813L作為“看門狗

40、”電路,避免了由于各種干擾使單片機(jī)無常工作的現(xiàn)象,可實(shí)現(xiàn)上電,手動(dòng),運(yùn)行監(jiān)控的功能。 智能IC卡考勤機(jī)所用7段數(shù)碼管,不能顯示漢字,只能用數(shù)字表示職工正常上班,遲到,早退,曠工現(xiàn)象。 通過此設(shè)計(jì),使我鞏固了單片機(jī)的基礎(chǔ)知識(shí),提高了自己的動(dòng)手能力和系統(tǒng)設(shè)計(jì)思維。參考文獻(xiàn):1高超單片機(jī)實(shí)用技術(shù)清華大學(xué).2剛,林凌,王炎新概念單片機(jī)教程大學(xué).3文濤單片機(jī)語言C51典型應(yīng)用設(shè)計(jì)人民郵電.4文博,文濤單片機(jī)語言C51典型應(yīng)用設(shè)計(jì)航空大學(xué).5何立文MCS-52單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)航天大學(xué).6全利,遲榮強(qiáng)單片機(jī)原理與接口技術(shù)高等教育.7周立功單片機(jī)實(shí)驗(yàn)與實(shí)踐航空航天.8華MCS-51單片機(jī)實(shí)用接口技術(shù)航空航天

41、大學(xué).9胡漢才單片機(jī)原理與其接口技術(shù)清華大學(xué).10剛51系列單片機(jī)系統(tǒng)設(shè)計(jì)與應(yīng)用技巧航空航天大學(xué).附錄1系統(tǒng)硬件電路圖附錄2 資源分配表附錄3 程序RST BIT P1.2IO BIT P1.0CLK BIT P1.1VariabalReadbuf EQU 30HWritebuf EQU 40H EC EQU 50HPSWD EQU 54HBytenum EQU 57HStartadr EQU 58HIdetify1 EQU 0A2HIdetify2 EQU 13HIdetify3 EQU 10HIdetify4 EQU 91HSCL BIT P1.3SDA BIT P1.4DATA_1 EQU 20HDATA_2 EQU 21HMAN EQU 22HLADDES EQU 23HALLDL EQU 6DHKEYWORD EQU 28HSECOND EQU 70HSHI EQU 18HCHIDAOBZW EQU 24HORG 0HLJMP MANORG 13HLJM

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論