📄 untitled document.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0065)http://www.flyring.com.cn/chinese/UploadFiles/200442161315429.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智能(射频)卡及其读写设备内核技术的研究与应用开发(连载11) <BR><BR>作者:
上海华东磁记录电子公司 张敏 <BR></B></FONT></P>
<TABLE border=1 borderColor=#ff9900 width="80%">
<TBODY>
<TR>
<TD align=left height=3858 vAlign=top>
<P><BR>;---------------------SEND THE 1st line 0
-----------------------<BR>kb_look_pad:<BR> ;ACALL
INIT_DISP_BUF<BR> MOV R7,#20H<BR> LCALL D500US</P>
<P> MOV A,#11111110B<BR> ;CLR P1.0 ;SEND THE 1st line
0<BR> mov p1,a<BR> CLR P2.0 ;enable kb func.</P>
<P> setb c ;set : c=1<BR> mov c,p1.4 ;if 1 pressed,
then p1.4=0,then c=0<BR> jnc kb_1_find<BR> mov c,p1.5 ;if 2
pressed, then p1.5=0,then c=0<BR> jnc kb_2_find<BR> mov
c,p1.6 ;if 3 pressed, then p1.6=0,then c=0<BR> jnc
kb_3_find<BR> mov c,p1.7 ;if 2nd pressed, then p1.7=0,then
c=0<BR> jnc kb_2nd_find</P>
<P> clr c<BR>;---------------------SEND THE 2nd line 0
-----------------------<BR> MOV A,#11111101B<BR> ;CLR
P1.1 ;SEND THE 2nd line 0<BR> mov p1,a<BR> CLR
P2.0 ;enable kb func.</P>
<P> setb c ;set : c=1<BR> mov c,p1.4 ;if 4 pressed,
then p1.4=0,then c=0<BR> jnc kb_4_find<BR> mov c,p1.5 ;if 5
pressed, then p1.5=0,then c=0<BR> jnc kb_5_find <BR> mov
c,p1.6 ;if 6 pressed, then p1.6=0,then c=0<BR> jnc
kb_6_find <BR> mov c,p1.7 ;if READ pressed, then p1.7=0,then
c=0<BR> jnc kb_read_find</P>
<P> clr c<BR><BR>;---------------------SEND THE 4th line 0
-----------------------<BR> MOV A,#11110111B<BR> ;CLR
P1.0 ;SEND THE 4th line 0<BR> mov p1,a<BR> CLR
P2.0 ;enable kb func.</P>
<P> setb c ;set : c=1<BR> mov c,p1.4 ;if . pressed,
then p1.4=0,then c=0<BR> jnc kb_dot_find<BR> mov c,p1.5 ;if 0
pressed, then p1.5=0,then c=0<BR> jnc kb_0_find<BR> mov
c,p1.6 ;if REQUEST pressed, then p1.6=0,then c=0<BR> jnc
kb_request_find<BR> mov c,p1.7 ;if EXEC pressed, then p1.7=0,then
c=0<BR> jnc kb_exec_find</P>
<P> clr c<BR> <BR>
RET<BR>;----------------------------------------------------------------<BR>kb_dot_find:ljmp
kb_dot_find_1 ;relay for instr.”jnc”<BR>kb_0_find: ljmp
kb_0_find_1<BR>kb_request_find:ljmp kb_request_find_1<BR>kb_exec_find:
ljmp kb_exec_find_1<BR>kb_2nd_find:ljmp kb_2nd_find_1<BR>kb_read_find:ljmp
kb_read_find_1<BR>kb_write_find:ljmp kb_write_find_1</P>
<P>kb_1_find:ljmp kb_1_find_1<BR>kb_2_find:ljmp
kb_2_find_1<BR>kb_3_find:ljmp kb_3_find_1<BR>kb_4_find:ljmp
kb_4_find_1<BR>kb_5_find:ljmp kb_5_find_1<BR>kb_6_find:ljmp
kb_6_find_1<BR>kb_7_find:ljmp kb_7_find_1<BR>kb_8_find:ljmp
kb_8_find_1<BR>kb_9_find:ljmp kb_9_find_1<BR>;-------------------------
kb_x_find, process--------------------<BR>kb_1_find_1:<BR> LCALL
DISP_BUF_right_MOVE<BR> MOV
3AH,#01H<BR> ret<BR>;--------------------------------<BR>kb_2_find_1:
<BR> LCALL DISP_BUF_right_MOVE<BR> MOV 3AH,#02h<BR> ret
<BR>;--------------------------------<BR>kb_3_find_1: <BR> LCALL
DISP_BUF_right_MOVE<BR> MOV 3AH,#03h<BR> ret
<BR>;--------------------------------<BR>kb_2nd_find_1: ;clear the
current 8_LED display_value with “00”<BR> LCALL
INIT_DISP_BUF<BR> ;ACALL DISPLAY<BR> ;ACALL H_DISPLAY<BR> ;LCALL
DISP_BUF_right_MOVE<BR> ;MOV 3AH,#0ah<BR> ret
<BR>;--------------------------------<BR>kb_4_find_1:<BR> LCALL
DISP_BUF_right_MOVE<BR> MOV 3AH,#04h<BR> ret
<BR>;--------------------------------<BR>kb_5_find_1: <BR> LCALL
DISP_BUF_right_MOVE<BR> MOV 3AH,#05h<BR> ret
<BR>;--------------------------------<BR>kb_6_find_1: <BR> LCALL
DISP_BUF_right_MOVE<BR> MOV
3AH,#06h<BR> ret<BR>;--------------------------------<BR>kb_7_find_1:<BR> LCALL
DISP_BUF_right_MOVE<BR> MOV 3AH,#07h<BR> ret
<BR>;--------------------------------<BR>kb_8_find_1: <BR> LCALL
DISP_BUF_right_MOVE<BR> MOV 3AH,#08h<BR> ret
<BR>;--------------------------------<BR>kb_9_find_1: <BR> LCALL
DISP_BUF_right_MOVE<BR> MOV 3AH,#09h<BR> ret
<BR>;--------------------------------<BR>kb_0_find_1: <BR> LCALL
DISP_BUF_right_MOVE<BR> MOV
3AH,#00h<BR> ret<BR>;--------------------------------<BR>kb_write_find_1: <BR> ret
<BR>;--------------------------------<BR>kb_dot_find_1:<BR> MOV
3AH,#03h<BR> mov 39h,#01h<BR> ret
<BR>;--------------------------------<BR>kb_request_find_1: <BR> MOV
3AH,#05h<BR> mov 39h,#01h<BR> ret
<BR>;--------------------------------<BR>kb_exec_find_1: <BR> MOV
3AH,#06h<BR> mov 39h,#01h<BR> ljmp kb_all_exit<BR> ret
<BR>;--------------------------------<BR>kb_read_find_1: <BR> MOV
a,39H<BR> ANL A,#00001111B<BR> SWAP A<BR> MOV R1,A<BR> mov
A,3Ah<BR> ANL A,#00001111B<BR> ADD A,R1</P>
<P>;------------ NOW COMPARE THE EXACT BLOCK NUMBER
------------<BR>;----------------- the 00h sector
--------------------<BR>COMPARE_00:<BR> CJNE
A,#00H,COMPARE_01<BR> lcall
sector_00_common<BR> <BR> MOV 78h,#00h ;READ'S
Sect. NO.<BR> lcall
read_x_block<BR> ljmp read_x_block_exit</P>
<P>COMPARE_01:<BR> CJNE A,#01H,COMPARE_02<BR> lcall
sector_00_common</P>
<P> MOV 78h,#01h ;READ'S Sect. NO.<BR> lcall
read_x_block<BR> ljmp read_x_block_exit</P>
<P>COMPARE_02:<BR> CJNE A,#02H,COMPARE_03<BR> lcall
sector_00_common<BR> <BR> MOV 78h,#02h ;READ'S
Sect. NO.<BR> lcall
read_x_block<BR> ljmp read_x_block_exit</P>
<P>COMPARE_03: CJNE A,#03H,COMPARE_04<BR> lcall
sector_00_common</P>
<P> MOV 78h,#03h ;READ'S Sect. NO.<BR> lcall
read_x_block<BR> ljmp read_x_block_exit</P>
<P>(待续)</P>
<P><BR><BR><BR>来源: 《金卡工程》2000.12 <BR><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 + -