interleave disassambly 显示不是很完整的,下面才是真正的汇编码
I2C_FlagStatus [0xe92d000f] stmfd r13!,{r0-r3} 400087b8 [0xe92d4008] stmfd r13!,{r3,r14} 400087bc [0xe1a02001] mov r2,r1 400087c0 [0xe3520001] cmp r2,#1 400087c4 [0xe59d1010] ldr r1,[r13,#0x10] 400087c8 [0x1a000007] bne 0x400087ec ; (I2C_FlagStatus + 0x38) 400087cc [0xe5d02000] ldrb r2,[r0,#0] 400087d0 [0xe5d03004] ldrb r3,[r0,#4] 400087d4 [0xe5d00008] ldrb r0,[r0,#8] 400087d8 [0xe1830400] orr r0,r3,r0,lsl #8 400087dc [0xe3c00cc0] bic r0,r0,#0xc000 400087e0 [0xe1800702] orr r0,r0,r2,lsl #14 400087e4 [0xe0000001] and r0,r0,r1 400087e8 [0xea000006] b 0x40008808 ; (I2C_FlagStatus + 0x54) 400087ec [0xe28d0014] add r0,r13,#0x14 400087f0 [0xe58d0000] str r0,[r13,#0] 400087f4 [0xe59d2000] ldr r2,[r13,#0] 400087f8 [0xe59d0014] ldr r0,[r13,#0x14] 400087fc [0xe2822004] add r2,r2,#4 40008800 [0xe58d2000] str r2,[r13,#0] 40008804 [0xe0000001] and r0,r0,r1 40008808 [0xe3500000] cmp r0,#0 4000880c [0x0a000002] beq 0x4000881c ; (I2C_FlagStatus + 0x68) 40008810 [0xe3a00001] mov r0,#1 40008814 [0xe28dd004] add r13,r13,#4 40008818 [0xe49df014] ldr pc,[r13],#0x14 4000881c [0xe3a00000] mov r0,#0 40008820 [0xeafffffb] b 0x40008814 ; (I2C_FlagStatus + 0x60) |