基于單片機的IC卡讀寫_第1頁
基于單片機的IC卡讀寫_第2頁
基于單片機的IC卡讀寫_第3頁
基于單片機的IC卡讀寫_第4頁
基于單片機的IC卡讀寫_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、基于單片機的IC卡讀寫基于單片機的IC卡讀寫基于單片機的IC卡讀寫基于單片機的IC卡讀寫系統(tǒng)實驗?zāi)康模簩W(xué)會并掌握可keil軟件的使用;學(xué)會并掌握protues軟件的使用;實現(xiàn)基于單片機的IC卡讀寫;經(jīng)過實驗堅固單片機有關(guān)知識和查驗自己著手能力實驗要求:掌握單片機有關(guān)知識,利用單片機控制和射頻模塊組合來讀寫IC卡,并實現(xiàn)軟硬件的仿真模擬。lC卡讀卡器以MCS-51系列單片機作為核心構(gòu)成,主要用于家庭和機構(gòu)門鎖的開關(guān),擁有安全堅固的特色,在鑒識,刪除,增添,自動開鎖時,用于對IC卡進(jìn)行讀寫操作。實驗設(shè)施和儀器:1.89c51單片機最小系統(tǒng)射頻模塊RC522,智能IC卡以及其余附帶電路實驗內(nèi)容:本次

2、實驗設(shè)計是由小組五個成員共同達(dá)成基于單片機的成實物搭建和撰寫實驗報告。方案一:實驗步驟:1.利用protues畫電路圖,電路圖如圖1所示:圖1:方案一電路圖IC卡讀寫系統(tǒng)并完2.模擬刷卡后顯示,如圖二:3.依據(jù)電路圖編寫圖2:方案一實現(xiàn)圖C語言代碼:代碼以下:#includereg52.h#includemain.h#includemfrc522.h#include#includeLCD1602.h#includeDS1302.h#defineucharunsignedchar#defineuintunsignedintsbitSpeak=P27;/sbitRED=P34;/sbitGREEN

3、=P33;/sbitRelay=P32;/sbitKEY1=P13;/sbitKEY2=P14;/sbitKEY3=P15;/sbitKEY4=P16;/sbitKEY5=P17;/sbitKEY=P26;/蜂鳴器紅色指示燈綠色指示燈繼電器小時加按鍵小時減按鍵分鐘加按鍵分鐘減按鍵增添刪除卡開門unsignedcharidataRevBuffer30;unsignedcharCard_Num;voidiccardcode();系統(tǒng)初始化voidInitializeSystem()/IC卡初始化PcdReset();/IC卡初始化PcdAntennaOff();/IC卡初始化PcdAntennaO

4、n();/IC卡初始化M500PcdConfigISOType(A);/IC卡初始化unsignedcharidataUID4,Temp4;/讀取卡號數(shù)組unsignedcharTable3;/顯示數(shù)組unsignedcharNum;unsignedCount,Countf,Count1,Count2,Count3,Count4,Count5,C_flag;/卡序號charvoidAuto_Reader(void)/自動尋卡if(PcdRequest(0 x52,Temp)=0)/找到卡if(PcdAnticoll(UID)=0)Speak=0;delay_10ms(20);Speak=1;/

5、蜂鳴器提示Table0=UID0/100+0 x30;/卡號顯示Table1=UID0/10%10+0 x30;/卡號顯示Table2=UID0%10+0 x30;/卡號顯示LCD1602_Disp_ZF(0 x80+0 x40,Num:,16);/卡號顯示LCD1602_Disp_ZF(0 x84+0 x40,Table,3);Count=UID0;/判斷卡是否是有效/卡號顯示if(Count=Count1)|(Count=Count2)|(Count=Count3)|(Count=Count4)|(Count=Count5)LCD1602_Disp_ZF(0 x88+0 x40,Welco

6、me,7);/卡有效GREEN=0;Relay=0;delay_10ms(200);Relay=1;GREEN=1;/綠燈亮,翻開繼電器C_flag=1;elseLCD1602_Disp_ZF(0 x88+0 x40,Error,7);/卡無效RED=0;delay_10ms(500);RED=1;/紅燈亮C_flag=2;delay_10ms(200);LCD1602_Disp_ZF(0 x80+0 x40,PleaseSwipecard,16);/顯示初始界面ucharDS1302_Table7=0;/讀取時間值voidDisplay_LCD2(ucharDis_Hour,ucharDis

7、_Min,ucharDis_Sec)/顯示時間值ucharDis_Table8=11:22:33;Dis_Table0=Dis_Hour/10+0 x30;Dis_Table1=Dis_Hour%10+0 x30;Dis_Table3=Dis_Min/10+0 x30;Dis_Table4=Dis_Min%10+0 x30;Dis_Table6=Dis_Sec/10+0 x30;Dis_Table7=Dis_Sec%10+0 x30;LCD1602_Disp_ZF(0 x85,Dis_Table,8);/顯示時間值voidRun_DS1302(void)ucharsec,min,hour,da

8、y,month,week,year;v_W1302(0 x8f,0);sec=bcdtodec(uc_R1302(0 x81);/讀出DS1302中的秒v_W1302(0 x8f,0);min=bcdtodec(uc_R1302(0 x83);/讀出DS1302中的分v_W1302(0 x8f,0);hour=bcdtodec(uc_R1302(0 x85);/讀出DS1302中的小時v_W1302(0 x8f,0);day=bcdtodec(uc_R1302(0 x87);/讀出DS1302中的日v_W1302(0 x8f,0);month=bcdtodec(uc_R1302(0 x89);

9、/讀出DS1302中的月v_W1302(0 x8f,0);week=bcdtodec(uc_R1302(0 x8b);/讀出DS1302中的禮拜v_W1302(0 x8f,0);year=bcdtodec(uc_R1302(0 x8d);/讀出DS1302中的年DS1302_Table0=year;DS1302_Table1=month;DS1302_Table2=day;DS1302_Table3=week;DS1302_Table4=hour;DS1302_Table5=min;DS1302_Table6=sec;Display_LCD2(DS1302_Table4,DS1302_Tabl

10、e5,DS1302_Table6);/顯示時間值voidmain(void)InitializeSystem();LCD1602_init();/Money_1=x24c02_read(0X01);/x24c02_write(0X03,Money_3);LCD1602_Disp_ZF(0 x80,Time:,5);/0123456789abcdefLCD1602_Disp_ZF(0 x80+0 x40,PleaseSwipecard,16);/LCD1602_Disp_ZF(0 x80+0 x40,Num:,4);/ISP_ERASE(0 x2c00);/注意:字節(jié)編程時必然要先要擦除整個扇區(qū)

11、/for(i=0;i0)states-;elsestates=0;if(key=13)if(+states3)states=3;ctrl_process();#include#include#defineucharunsignedchar#defineuintunsignedint#defineLCD_dataP0/數(shù)據(jù)口sbitLCD_RS=P22;/存放器選擇輸入sbitLCD_RW=P21;/液晶讀/寫控制sbitLCD_EN=P20;/液晶使能控ucharcodedis0=IC卡讀寫系統(tǒng);ucharcodedis1=1.IC卡輸入;ucharcodedis2=2.密碼輸入:8位;uch

12、arcodedis3=3.IC卡登記;ucharcodedis4=4.密碼設(shè)置:8位;ucharcodedis5=成功;ucharcodedis6=失敗;ucharcodedis7=桂林電子科技大學(xué);ucharcodedis8=控制工程;ucharcodedis9=接口實驗;ucharcodedis10=MADEBY:司亞;voiddelay(intms)/延時xmswhile(ms-)uchari;for(i=0;i250;i+)_nop_();_nop_();_nop_();_nop_();voiddelayNOP()/延時4us_nop_();_nop_();_nop_();_nop_(

13、);bitlcd_busy()bitresult;LCD_RS=0;LCD_RW=1;LCD_EN=1;delayNOP();result=(bit)(LCD_data&0 x80);LCD_EN=0;return(result);voidwrite_cmd(ucharcmd)unsignedintK=20000;while(lcd_busy()&K-);/預(yù)防沒插LCD時候停在這LCD_RS=0;LCD_RW=0;LCD_EN=0;_nop_();_nop_();LCD_data=cmd;delayNOP();LCD_EN=1;delayNOP();LCD_EN=0;voidlcd_wdat

14、(uchardat)unsignedintK=20000;while(lcd_busy()&K-);LCD_RS=1;LCD_RW=0;LCD_EN=0;LCD_data=dat;delayNOP();LCD_EN=1;delayNOP();LCD_EN=0;voidlcd_init()write_cmd(0 x36);delay(5);write_cmd(0 x30);delay(5);write_cmd(0 x0C);delay(5);write_cmd(0 x01);delay(5);voidlcd_pos(ucharX,ucharY)ucharpos;if(X=0)X=0 x80;el

15、seif(X=1)X=0 x90;elseif(X=2)X=0 x88;elseif(X=3)X=0 x98;pos=X+Y;write_cmd(pos);voiddisplay_all()uchari;lcd_pos(0,0);/第一行顯示數(shù)字09i=0;while(dis0i!=0)lcd_wdat(dis0i);/顯示字母i+;lcd_pos(1,0);/第二行顯示字母i=0;while(dis1i!=0)lcd_wdat(dis1i);/顯示字母i+;lcd_pos(2,0);/第三行顯示文字i=0;while(dis2i!=0)lcd_wdat(dis2i);i+;lcd_pos(3

16、,0);/第四行顯示廣工無線電社i=0;while(dis3i!=0)lcd_wdat(dis3i);i+;voiddisplay(uchara,ucharb,ucharc)uchari;lcd_pos(a,b);i=0;switch(c)case0:while(dis0i!=0)lcd_wdat(dis0i);i+;break;case1:while(dis1i!=0)lcd_wdat(dis1i);i+;break;case2:while(dis2i!=0)lcd_wdat(dis2i);i+;break;case3:while(dis3i!=0)lcd_wdat(dis3i);i+;br

17、eak;case4:while(dis4i!=0)lcd_wdat(dis4i);i+;break;case5:while(dis5i!=0)lcd_wdat(dis5i);i+;break;case6:while(dis6i!=0)lcd_wdat(dis6i);i+;case7:while(dis7i!=0)lcd_wdat(dis7i);i+;case8:while(dis8i!=0)lcd_wdat(dis8i);i+;case9:while(dis9i!=0)lcd_wdat(dis9i);i+;case10:while(dis10i!=0)lcd_wdat(dis10i);i+;d

18、efault:break;break;break;break;break;break;voiddisplay2(uchara,ucharb,uchar*p,ucharnum)uchari;lcd_pos(a,b);for(i=0;inum;i+)lcd_wdat(pi);voiddisplay_clear_line(uchara)uchari;lcd_pos(a,0);for(i=0;i16;i+)lcd_wdat();實物考證結(jié)果如圖7所示:圖7:實物考證結(jié)果實物考證可以實現(xiàn)IC卡的讀寫加密,使用LCD12864中文字幕可以更方便讀守信息,對實物考證程序進(jìn)行了稍微的改正,第一次買的射頻模塊是壞的浪費了太多時間。換了新板子,最后能達(dá)到要求。心得意會:經(jīng)過本次的實驗,小構(gòu)成員都發(fā)現(xiàn)自己的知識面仍是特其余

溫馨提示

  • 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

提交評論