📄 ic24c64.lst
字号:
A51 MACRO ASSEMBLER IC24C64 12/12/2005 16:58:38 PAGE 1
MACRO ASSEMBLER A51 V7.03
OBJECT MODULE PLACED IN IC24C64.OBJ
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE IC24C64.ASM SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
1 ;SCL_IC bit P1.0 ;24c512时钟口线 //这是我的片选信号P23()
2 ;SDA_IC bit P1.2 ;24c512数据口线 //这是我的片选信号P22()
3 ;WP_IC bit P1.5 ;24c512数据口线 //这是我的片选信号P22()
4
5 ;AA0 bit P1.3
6 ;AA1 bit P1.1
7 ;AA2 bit P1.4
8
0090 9 SCL_IC bit P1.0 ;24c512时钟口线 //这是我的片选信号P23()
0091 10 SDA_IC bit P1.1
11
12
13 ;AA2 bit P1.2 ;24c512数据口线 //这是我的片选信号P22()
14 ;WP_IC bit P1.1 ;24c512数据口线 //这是我的片选信号P22()
15 ;AA0 bit P1.3
16
17
0060 18 index1 equ 60h
0061 19 addrlo1 equ 61h
0062 20 addrhi1 equ 62h
0063 21 kount1 equ 63h ;24c512占用RAM 地址60---63h
22 DDDDDCODE1 SEGMENT CODE UNIT ;程序段
23
24 ;*********************************************************
25 ;H_ADDR IN R7;L_ADDR IN R5; BYTE NUMBER IN R3
26 ;*********************************************************
27 ;24C512写程序
28 ;要写的数据r3个防在RAM oxd0 开始;
29 ;写入24C512的r7_r5开始的地址
30 PUBLIC _IIC_WRITE_ONEBYTE1
---- 31 RSEG DDDDDCODE1
0000 32 _IIC_WRITE_ONEBYTE1:
0000 78D0 33 mov r0,#0d0h
0002 7CA0 34 mov r4,#0a0h
0004 8B63 35 mov kount1,r3
0006 8860 36 mov INDEX1,r0
0008 8D61 37 mov addrlo1,r5
000A 8F62 38 mov addrhi1,r7 ;0020,40,8
39 ; SETB WP_IC
40 ; SETB AA0
41
42 ; SETB AA2
000C 120000 F 43 call write_block1
000F 22 44 ret
45 ;24C512读程序
46 ;从24C512 的r7_r5地址读出r3个数据放在oxd0;
47 PUBLIC _IIC_READ_ONEBYTE1 ;入口地址
---- 48 RSEG DDDDDCODE1
0010 49 _IIC_READ_ONEBYTE1:
0010 78D0 50 mov r0,#0d0H
0012 7CA0 51 mov r4,#0a0h
0014 8D61 52 mov addrlo1,r5 ;0020 READ
0016 8F62 53 mov addrhi1,r7
0018 8B63 54 mov kount1,r3
001A 8860 55 mov INDEX1 ,r0
56 ; SETB WP_IC
57 ; SETB AA0
58 ; SETB AA2
A51 MACRO ASSEMBLER IC24C64 12/12/2005 16:58:38 PAGE 2
001C 120000 F 59 call verify_block_fill1
001F 22 60 ret
61 ;以下为读写模块;请不要改变
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -