⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 untitled document.htm

📁 内附IC读卡器设计方案,该设计使用89C52和MCM200,里面有详细的设计过程及程序代码,相信有一定IC卡经验
💻 HTM
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0065)http://www.flyring.com.cn/chinese/UploadFiles/200442161427904.htm -->
<HTML><HEAD><TITLE>Untitled Document</TITLE>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<META content="MSHTML 5.00.2920.0" name=GENERATOR></HEAD>
<BODY background="" bgColor=#ffffff text=#000000>
<DIV align=center>
<P><FONT color=#0000ff><B>关于非接触式IC智能(射频)卡及其读写设备内核技术的研究与应用开发(连载12) <BR><BR>作者: 
上海华东磁记录电子公司 张敏 <BR></B></FONT></P>
<TABLE border=1 borderColor=#ff9900 width="80%">
  <TBODY>
  <TR>
    <TD align=left height=4343 vAlign=top>
      <P><BR>;----------------- the 1st sector 
      --------------------<BR>COMPARE_04:    CJNE 
      A,#04H,COMPARE_05<BR>         lcall sector_01_common</P>
      <P>         MOV 78h,#04h          ;READ'S Sect. NO.<BR>         lcall 
      read_x_block<BR>         ljmp read_x_block_exit</P>
      <P>COMPARE_05:    CJNE A,#05H,COMPARE_06<BR>         lcall 
      sector_01_common</P>
      <P>         MOV 78h,#05h          ;READ'S Sect. NO.<BR>         lcall 
      read_x_block<BR>         ljmp read_x_block_exit</P>
      <P>COMPARE_06:    CJNE A,#06H,COMPARE_07<BR>         lcall 
      sector_01_common</P>
      <P>         MOV 78h,#06h          ;READ'S Sect. NO.<BR>         lcall 
      read_x_block<BR>         ljmp read_x_block_exit</P>
      <P>COMPARE_07:    CJNE A,#07H,COMPARE_08<BR>         lcall 
      sector_01_common</P>
      <P>         MOV 78h,#07h          ;READ'S Sect. NO.<BR>         lcall 
      read_x_block<BR>         ljmp read_x_block_exit<BR>;----------------- the 
      2nd sector --------------------<BR>COMPARE_08:        <BR>         CJNE 
      A,#08H,COMPARE_09<BR>         lcall sector_02_common</P>
      <P>         MOV 78h,#08h          ;READ'S Sect. NO.         
      <BR>         lcall 
      read_x_block<BR>         ljmp read_x_block_exit<BR>COMPARE_09:          
      <BR>         CJNE A,#09H,COMPARE_0A<BR>         lcall 
      sector_02_common<BR>         MOV 78h,#09h          ;READ'S Sect. 
      NO.<BR>         lcall read_x_block<BR>         ljmp read_x_block_exit</P>
      <P>COMPARE_0A:    CJNE A,#10H,COMPARE_0B<BR>         lcall 
      sector_02_common<BR>         MOV 78h,#0ah          ;READ'S Sect. 
      NO.<BR>         lcall 
      read_x_block<BR>         ljmp read_x_block_exit<BR>COMPARE_0B:    CJNE 
      A,#11H,COMPARE_0C<BR>         lcall sector_02_common<BR>         MOV 
      78h,#0bh          ;READ'S Sect. NO.<BR>         lcall 
      read_x_block<BR>         ljmp read_x_block_exit<BR>;-----------------the 
      3rd sector -------------------<BR>COMPARE_0C:    CJNE 
      A,#12H,COMPARE_0D<BR>         lcall sector_03_common</P>
      <P>         MOV 78h,#0ch          ;READ'S Sect. NO.<BR>         lcall 
      read_x_block<BR>         ljmp read_x_block_exit</P>
      <P>COMPARE_0D:    CJNE A,#13H,COMPARE_0E<BR>         lcall 
      sector_03_common<BR>         MOV 78h,#0dh          ;READ'S Sect. 
      NO.<BR>         lcall 
      read_x_block<BR>         ljmp read_x_block_exit<BR>COMPARE_0E:    CJNE 
      A,#14H,COMPARE_0F<BR>         lcall sector_03_common<BR>         MOV 
      78h,#0eh          ;READ'S Sect. NO.<BR>         lcall 
      read_x_block<BR>         ljmp read_x_block_exit<BR>COMPARE_0F:    CJNE 
      A,#15H,COMPARE_10<BR>         lcall sector_03_common<BR>         MOV 
      78h,#0fh          ;READ'S Sect. NO.<BR>         lcall 
      read_x_block<BR>         ljmp read_x_block_exit<BR>;---------------- the 
      4th sector------------------------<BR>COMPARE_10:    CJNE 
      A,#16H,COMPARE_11<BR>         lcall sector_04_common<BR>         MOV 
      78h,#10h          ;READ'S Sect. NO.<BR>         lcall 
      read_x_block<BR>         ljmp read_x_block_exit</P>
      <P>(省略COMPARE_11 至COMPARE_3E 之程序,基本同上)</P>
      <P>COMPARE_3f:   CJNE A,#63H,read_x_block_exit<BR>         lcall 
      sector_15_common</P>
      <P>         MOV 78h,#3fh          ;READ'S Sect. NO.<BR>         lcall 
      read_x_block<BR>         ljmp read_x_block_exit<BR>;------------------------ 
      end of 0--63 block setup ----------------------</P>
      <P>;---------------- exit 
      ------------------------<BR>read_x_block_exit:<BR>    ret 
      <BR>;--------------------------------</P>
      <P>;------------------------ DISP_BUF_right_MOVE 
      -------------------------------<BR>DISP_BUF_right_MOVE:<BR>    MOV 
      32H,33H<BR>    MOV 33H,34H<BR>    MOV 34H,35H<BR>    MOV 
      35H,37H<BR>    MOV 37H,38H<BR>    MOV 38H,39H<BR>    MOV 39H,3AH</P>
      <P>    RET</P>
      <P><BR>;--------------------- 
      read_x_block--------------------------<BR>read_x_block:<BR>    setb 
      p2.5        ;MCM ON (-RST=1)<BR>    clr p2.4        ;MCM ON (-CS=0)</P>
      <P>    MOV R2,#01H      ;SELECT REQUEST_STD<BR>    ;MOV 
      R2,#00H      <BR>    lcall request      ;request<BR>    lcall 
      display<BR>    lcall h_display<BR>    lcall d500ms<BR>    clr 
      p2.6<BR>    lcall init_disp_buf<BR>    lcall display<BR>    lcall 
      h_display</P>
      <P>    lcall anticollision   ;anticollision<BR>    lcall 
      display<BR>    lcall h_display<BR>    lcall d500ms<BR>    clr 
      p2.6<BR>    lcall init_disp_buf<BR>    lcall display<BR>    lcall 
      h_display</P>
      <P>    lcall select      ;select<BR>    lcall display<BR>    lcall 
      h_display<BR>    lcall d500ms<BR>    clr p2.6<BR>    lcall 
      init_disp_buf<BR>    lcall display<BR>    lcall h_display</P>
      <P>    lcall load_key    ;load_key<BR>    lcall display<BR>    lcall 
      h_display<BR>    lcall d500ms<BR>    lcall d500ms<BR>    clr 
      p2.6<BR>    lcall init_disp_buf<BR>    lcall display<BR>    lcall 
      h_display<BR>    mov 7eh,79h      ;sel keyset0<BR>    mov 7dh,7ah      
      ;<BR>    mov 7ch,#60h     ;auth_1a instr. code<BR>    lcall 
      authentication  ;authentication<BR>    lcall display<BR>    lcall 
      h_display<BR>    lcall d500ms<BR>    lcall d500ms<BR>    clr 
      p2.6<BR>    lcall init_disp_buf<BR>    lcall display<BR>    lcall 
      h_display</P>
      <P>    mov 7dh ,#50h      ;the address for storing reading_data<BR>    mov 
      7ch,78h       ;read sector &amp; block <BR>    lcall 
      read       ;read<BR>    lcall display<BR>    lcall h_display<BR>    lcall 
      d500ms<BR>    lcall d500ms<BR>    clr p2.6<BR>    lcall 
      init_disp_buf<BR>    lcall display<BR>    lcall h_display</P>
      <P>    lcall halt       ;halt<BR>    lcall display<BR>    lcall 
      h_display<BR>    lcall d500ms<BR>    clr p2.6<BR>    lcall 
      init_disp_buf<BR>    lcall display<BR>    lcall h_display<BR>     
      <BR>    lcall disp_rd_blk    ;display the reading_value<BR>    lcall 
      clear_disp_rd_blk_in_cpu<BR>    clr p2.6<BR>    MOV 
      A,#80H   ;SOFTWARE_RESET MCM<BR>    MOV R0,#01H<BR>    MOVX 
      @R0,A<BR>    LCALL D500MS<BR>    ret <BR>;---------------------end 
      of “read_x_block” ----------------------</P>
      <P><BR>;-----------------------------------------------------<BR>sector_01_common:<BR>         MOV 
      7fh,#0AaH         <BR>         MOV 7eh,#00H         <BR>         MOV 
      7dh,#01h         <BR>         MOV 7ch,#47H         <BR>         MOV 
      79h,#80H         <BR>         MOV 7ah, #81h         <BR>         MOV 7bh, 
      #60H         <BR>        
      ret<BR>;-----------------------------------------------------<BR>sector_02_common:<BR>         MOV 
      7fh,#0AbH         <BR>         MOV 7eh,#00H         <BR>         MOV 
      7dh,#02h         <BR>         MOV 7ch,#60H         <BR>         MOV 
      79h,#80H         <BR>         MOV 7ah, #82h         <BR>         MOV 7bh, 
      #60H         <BR>        
      ret<BR>;----------------------------------------------------<BR>(省略sector_03_common 
      至sector_14_common 
      之程序,基本同上)<BR>;----------------------------------------------------<BR>sector_15_common:<BR>         MOV 
      7fh,#0AaH        <BR>         MOV 7eh,#00H         <BR>         MOV 
      7dh,#0fh         <BR>         MOV 7ch,#60H         <BR>         MOV 
      79h,#80H         <BR>         MOV 7ah, #8fh         <BR>         MOV 7bh, 
      #60H        <BR>        
      ret<BR>;----------------------------------------------------<BR>;end of 
      this program.<BR>  END<BR>;====================== End of This Program 
      =========================</P>
      <P>结 束 语</P>
      <P>  智能IC卡片及其读写设备之技术正处于成熟/发展其间,只要我们中国自己的微电子技术再提高一步,相信我国将能实现真正意义上的“金卡工程”,因为实现这一工程的软件和硬件完全可以“自给自足”, 
      金融,邮电,公交等国家主干行业将能抵御外国“侵略”,不依赖进口。笔者相信在国内ICC界同行的共同努力下,在国家金卡工程办公室领导小组的正确领导下,我国的国民经济将在得益于“金卡工程”的前提下,高速增长。<BR>(全文完)</P>
      <P><BR><BR>来源: 《金卡工程》2001.1 <BR></P>
      <P><BR><BR></P>
      <P align=right></P>
      <P align=right></P>
      <P align=right></P>
      <P align=right><A href="file:///E|/index/index.htm">返回首页</A> 
  </P></TD></TR></TBODY></TABLE><B></B></DIV></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -