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

📄 24c01a.lis

📁 AVR 24c02 f
💻 LIS
字号:
                        .module _24C01A.c
                        .area text(rom, con, rel)
 0000                   .dbfile D:\24C01A/I2C.h
 0000                   .dbfunc e I2C_Init _I2C_Init fV
                        .even
 0000           _I2C_Init::
 0000                   .dbline -1
 0000                   .dbline 85
 0000           ; 
 0000           ; #include <iom16v.h>
 0000           ; #include <macros.h>
 0000           ; #include "I2C.h"
 0000           ; 
 0000           ; void delay_1ms(void)                 //1ms延时函数
 0000           ; {
 0000           ;    unsigned int i;
 0000           ;    for (i=0;i<1140;i++);
 0000           ; }
 0000           ; 
 0000           ; void main()
 0000           ; {
 0000           ; unsigned char temp1[8]={18,17,16,15,14,13,12,11};
 0000           ; unsigned char temp2[8]={0};
 0000           ; unsigned char temp3[6]={0};
 0000           ; unsigned char i=0,*p;
 0000           ; 
 0000           ; I2C_Init();
 0000           ; 
 0000           ; I2C_Write_(0xa0,0,temp1,8);//一次写入8个字节
 0000           ;   delay_1ms();
 0000           ;   delay_1ms();
 0000           ; 
 0000           ; I2C_Read_(0xa0,0,temp2,8);//一次读取8个字节
 0000           ; 
 0000           ; for(i=10;i<16;i++)        //循环6次,写入6个字节
 0000           ; {
 0000           ;   I2C_Write(0xa0,i,temp1[i-10]);
 0000           ;   delay_1ms();                         //延时不可缺少
 0000           ;   //delay_1ms();
 0000           ; }
 0000           ; 
 0000           ; p=temp3;
 0000           ; for(i=10;i<16;i++)             //循环6次,读取6个字节至temp3
 0000           ; {I2C_Read(0xa0,i,p++);
 0000           ; //delay_1ms();
 0000           ;   //delay_1ms();
 0000           ;   }
 0000           ; 
 0000           ; while(1);
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000           ; }
 0000                   .dbline 86
 0000           ; }
 0000 8FE0              ldi R24,15
 0002 80B9              out 0x0,R24
 0004                   .dbline -2
 0004           L1:
 0004                   .dbline 0 ; func end
 0004 0895              ret
 0006                   .dbend
 0006                   .dbfunc e I2C_WaitINT _I2C_WaitINT fc
 0006           ;              i -> R16,R17
                        .even
 0006           _I2C_WaitINT::
 0006                   .dbline -1
 0006                   .dbline 98
 0006           ; }
 0006           ; }
 0006           ; }
 0006           ; }
 0006           ; }
 0006           ; }
 0006           ; }
 0006           ; }
 0006           ; }
 0006           ; }
 0006           ; }
 0006           ; }
 0006                   .dbline 99
 0006           ; }
 0006 02E3              ldi R16,50
 0008 10E0              ldi R17,0
 000A 08C0              xjmp L4
 000C           L3:
 000C                   .dbline 101
 000C                   .dbline 101
 000C C801              movw R24,R16
 000E 0197              sbiw R24,1
 0010 8C01              movw R16,R24
 0012 0030              cpi R16,0
 0014 0107              cpc R16,R17
 0016 11F4              brne L6
 0018           X0:
 0018                   .dbline 101
 0018 0027              clr R16
 001A 04C0              xjmp L2
 001C           L6:
 001C                   .dbline 101
 001C           L4:
 001C                   .dbline 100
 001C           ; }
 001C 26B6              in R2,0x36
 001E 27FE              sbrs R2,7
 0020 F5CF              rjmp L3
 0022                   .dbline 102
 0022           ; }
 0022           ; }
 0022 01E0              ldi R16,1
 0024                   .dbline -2
 0024           L2:
 0024                   .dbline 0 ; func end
 0024 0895              ret
 0026                   .dbsym r i 16 i
 0026                   .dbend
 0026                   .dbfunc e I2C_SendByte _I2C_SendByte fV
 0026           ;              x -> R16
                        .even
 0026           _I2C_SendByte::
 0026                   .dbline -1
 0026                   .dbline 113
 0026           ; }
 0026           ; }
 0026           ; }
 0026           ; }
 0026           ; }
 0026           ; }
 0026           ; }
 0026           ; }
 0026           ; }
 0026           ; }
 0026           ; }
 0026                   .dbline 114
 0026           ; }
 0026 03B9              out 0x3,R16
 0028                   .dbline 115
 0028           ; }
 0028 84E8              ldi R24,132
 002A 86BF              out 0x36,R24
 002C                   .dbline -2
 002C           L8:
 002C                   .dbline 0 ; func end
 002C 0895              ret
 002E                   .dbsym r x 16 c
 002E                   .dbend
 002E                   .dbfunc e I2C_Start _I2C_Start fc
                        .even
 002E           _I2C_Start::
 002E                   .dbline -1
 002E                   .dbline 126
 002E           ; }
 002E           ; }
 002E           ; }
 002E           ; }
 002E           ; }
 002E           ; }
 002E           ; }
 002E           ; }
 002E           ; }
 002E           ; }
 002E           ; }
 002E                   .dbline 127
 002E           ; }
 002E 84EA              ldi R24,164
 0030 86BF              out 0x36,R24
 0032                   .dbline 128
 0032           ; }
 0032 E9DF              xcall _I2C_WaitINT
 0034 0023              tst R16
 0036 11F4              brne L10
 0038                   .dbline 128
 0038 0027              clr R16
 003A 07C0              xjmp L9
 003C           L10:
 003C                   .dbline 129
 003C           ; }
 003C 81B1              in R24,0x1
 003E 887F              andi R24,248
 0040 8830              cpi R24,8
 0042 11F0              breq L12
 0044                   .dbline 130
 0044           ; }
 0044 0027              clr R16
 0046 01C0              xjmp L9
 0048           L12:
 0048                   .dbline 131
 0048           ; }
 0048 01E0              ldi R16,1
 004A                   .dbline -2
 004A           L9:
 004A                   .dbline 0 ; func end
 004A 0895              ret
 004C                   .dbend
 004C                   .dbfunc e I2C_Restart _I2C_Restart fc
                        .even
 004C           _I2C_Restart::
 004C                   .dbline -1
 004C                   .dbline 142
 004C           ; }
 004C           ; }
 004C           ; }
 004C           ; }
 004C           ; }
 004C           ; }
 004C           ; }
 004C           ; }
 004C           ; }
 004C           ; }
 004C           ; }
 004C                   .dbline 143
 004C           ; }
 004C 84EA              ldi R24,164
 004E 86BF              out 0x36,R24
 0050                   .dbline 144
 0050           ; }
 0050 DADF              xcall _I2C_WaitINT
 0052 0023              tst R16
 0054 11F4              brne L15
 0056                   .dbline 144
 0056 0027              clr R16
 0058 07C0              xjmp L14
 005A           L15:
 005A                   .dbline 145
 005A           ; }
 005A 81B1              in R24,0x1
 005C 887F              andi R24,248
 005E 8031              cpi R24,16
 0060 11F0              breq L17
 0062                   .dbline 146
 0062           ; }
 0062 0027              clr R16
 0064 01C0              xjmp L14
 0066           L17:
 0066                   .dbline 147
 0066           ; }
 0066 01E0              ldi R16,1
 0068                   .dbline -2
 0068           L14:
 0068                   .dbline 0 ; func end
 0068 0895              ret
 006A                   .dbend
 006A                   .dbfunc e I2C_SendWrDAdr _I2C_SendWrDAdr fc
 006A           ;         wrDAdr -> R20
                        .even
 006A           _I2C_SendWrDAdr::
 006A 0E940000          xcall push_gset1
 006E 402F              mov R20,R16
 0070                   .dbline -1
 0070                   .dbline 158
 0070           ; }
 0070           ; }
 0070           ; }
 0070           ; }
 0070           ; }
 0070           ; }
 0070           ; }
 0070           ; }
 0070           ; }
 0070           ; }
 0070           ; }
 0070                   .dbline 159
 0070           ; }
 0070 042F              mov R16,R20
 0072 D9DF              xcall _I2C_SendByte
 0074                   .dbline 160
 0074           ; }
 0074 C8DF              xcall _I2C_WaitINT
 0076 0023              tst R16
 0078 11F4              brne L20
 007A                   .dbline 160
 007A 0027              clr R16
 007C 07C0              xjmp L19
 007E           L20:
 007E                   .dbline 161
 007E           ; }
 007E 81B1              in R24,0x1
 0080 887F              andi R24,248
 0082 8831              cpi R24,24
 0084 11F0              breq L22
 0086                   .dbline 162
 0086           ; }
 0086 0027              clr R16
 0088 01C0              xjmp L19
 008A           L22:
 008A                   .dbline 163
 008A           ; }
 008A 01E0              ldi R16,1
 008C                   .dbline -2
 008C           L19:
 008C 0E940000          xcall pop_gset1
 0090                   .dbline 0 ; func end
 0090 0895              ret
 0092                   .dbsym r wrDAdr 20 c
 0092                   .dbend
 0092                   .dbfunc e I2C_SendWrDAdr_ _I2C_SendWrDAdr_ fc
 0092           ;         wrDAdr -> R20,R21
                        .even
 0092           _I2C_SendWrDAdr_::
 0092 0E940000          xcall push_gset1
 0096 A801              movw R20,R16
 0098                   .dbline -1
 0098                   .dbline 174
 0098           ; 

⌨️ 快捷键说明

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