📄 ram.dis
字号:
/* INPUT NOTES : */
/* RETURN NOTES : None */
/* WARNING : None */
/*************************************************************************/
uint8_t push_dpb_data(DP_BUF_tag* pt,uint8_t data)
{
40000310: 94 21 ff e0 stwu r1,-32(r1)
40000314: 93 e1 00 1c stw r31,28(r1)
40000318: 7c 3f 0b 78 mr r31,r1
4000031c: 90 7f 00 08 stw r3,8(r31)
40000320: 7c 80 23 78 mr r0,r4
40000324: 98 1f 00 0c stb r0,12(r31)
..\src\FESC_src\/FESC_5554_general.c:84
EnterCritical();
40000328: 7c 00 01 46 wrteei 0
..\src\FESC_src\/FESC_5554_general.c:86
if (pt->n < pt->len) /* buffer full? */
4000032c: 81 3f 00 08 lwz r9,8(r31)
40000330: 81 7f 00 08 lwz r11,8(r31)
40000334: 81 29 00 00 lwz r9,0(r9)
40000338: 80 0b 00 0c lwz r0,12(r11)
4000033c: 7f 89 00 40 cmplw cr7,r9,r0
40000340: 40 9c 00 7c bge- cr7,400003bc <push_dpb_data+0xac>
..\src\FESC_src\/FESC_5554_general.c:87
{ *(pt->addr + pt->in_n) = data; /* Put character into buffer */
40000344: 81 7f 00 08 lwz r11,8(r31)
40000348: 81 3f 00 08 lwz r9,8(r31)
4000034c: 81 29 00 04 lwz r9,4(r9)
40000350: 80 0b 00 10 lwz r0,16(r11)
40000354: 7d 29 02 14 add r9,r9,r0
40000358: 88 1f 00 0c lbz r0,12(r31)
4000035c: 98 09 00 00 stb r0,0(r9)
..\src\FESC_src\/FESC_5554_general.c:88
pt->n++; /* No, increment character count */
40000360: 81 7f 00 08 lwz r11,8(r31)
40000364: 81 3f 00 08 lwz r9,8(r31)
40000368: 81 29 00 00 lwz r9,0(r9)
4000036c: 38 09 00 01 addi r0,r9,1
40000370: 90 0b 00 00 stw r0,0(r11)
..\src\FESC_src\/FESC_5554_general.c:90
/* the n and data must be coherenct */
ExitCritical();
40000374: 7c 00 81 46 wrteei 1
..\src\FESC_src\/FESC_5554_general.c:91
pt->in_n++;
40000378: 81 7f 00 08 lwz r11,8(r31)
4000037c: 81 3f 00 08 lwz r9,8(r31)
40000380: 81 29 00 04 lwz r9,4(r9)
40000384: 38 09 00 01 addi r0,r9,1
40000388: 90 0b 00 04 stw r0,4(r11)
..\src\FESC_src\/FESC_5554_general.c:92
if (pt->in_n == pt->len)
4000038c: 81 3f 00 08 lwz r9,8(r31)
40000390: 81 7f 00 08 lwz r11,8(r31)
40000394: 81 29 00 04 lwz r9,4(r9)
40000398: 80 0b 00 0c lwz r0,12(r11)
4000039c: 7f 89 00 00 cmpw cr7,r9,r0
400003a0: 40 9e 00 10 bne- cr7,400003b0 <push_dpb_data+0xa0>
..\src\FESC_src\/FESC_5554_general.c:93
pt->in_n = 0;
400003a4: 81 3f 00 08 lwz r9,8(r31)
400003a8: 38 00 00 00 li r0,0
400003ac: 90 09 00 04 stw r0,4(r9)
..\src\FESC_src\/FESC_5554_general.c:94
return(DP_BUF_SBP_RTSTUS_OK);
400003b0: 38 00 00 01 li r0,1
400003b4: 90 1f 00 10 stw r0,16(r31)
400003b8: 48 00 00 10 b 400003c8 <push_dpb_data+0xb8>
..\src\FESC_src\/FESC_5554_general.c:97
}
else
{ ExitCritical();
400003bc: 7c 00 81 46 wrteei 1
..\src\FESC_src\/FESC_5554_general.c:98
return(DP_BUF_FULL);
400003c0: 38 00 00 11 li r0,17
400003c4: 90 1f 00 10 stw r0,16(r31)
..\src\FESC_src\/FESC_5554_general.c:100
}
}
400003c8: 80 7f 00 10 lwz r3,16(r31)
400003cc: 81 61 00 00 lwz r11,0(r1)
400003d0: 83 eb ff fc lwz r31,-4(r11)
400003d4: 7d 61 5b 78 mr r1,r11
400003d8: 4e 80 00 20 blr
400003dc <push_dpb_block>:
push_dpb_block():
..\src\FESC_src\/FESC_5554_general.c:103
uint8_t push_dpb_block(DP_BUF_tag* pt,uint8_t* buf,uint8_t len)
{ uint8_t i;
400003dc: 94 21 ff d0 stwu r1,-48(r1)
400003e0: 93 e1 00 2c stw r31,44(r1)
400003e4: 7c 3f 0b 78 mr r31,r1
400003e8: 90 7f 00 08 stw r3,8(r31)
400003ec: 90 9f 00 0c stw r4,12(r31)
400003f0: 7c a0 2b 78 mr r0,r5
400003f4: 98 1f 00 10 stb r0,16(r31)
..\src\FESC_src\/FESC_5554_general.c:106
uint8_t* addr;
addr = (pt->addr + pt->in_n);
400003f8: 81 3f 00 08 lwz r9,8(r31)
400003fc: 81 7f 00 08 lwz r11,8(r31)
40000400: 81 29 00 10 lwz r9,16(r9)
40000404: 80 0b 00 04 lwz r0,4(r11)
40000408: 7c 09 02 14 add r0,r9,r0
4000040c: 90 1f 00 14 stw r0,20(r31)
..\src\FESC_src\/FESC_5554_general.c:107
EnterCritical();
40000410: 7c 00 01 46 wrteei 0
..\src\FESC_src\/FESC_5554_general.c:108
if ((pt->n+len) < pt->len) /* buffer full? */
40000414: 81 7f 00 08 lwz r11,8(r31)
40000418: 88 1f 00 10 lbz r0,16(r31)
4000041c: 54 09 06 3e clrlwi r9,r0,24
40000420: 80 0b 00 00 lwz r0,0(r11)
40000424: 7d 69 02 14 add r11,r9,r0
40000428: 81 3f 00 08 lwz r9,8(r31)
4000042c: 80 09 00 0c lwz r0,12(r9)
40000430: 7f 8b 00 40 cmplw cr7,r11,r0
40000434: 40 9c 00 d8 bge- cr7,4000050c <push_dpb_block+0x130>
..\src\FESC_src\/FESC_5554_general.c:109
{ pt->n += len;
40000438: 81 5f 00 08 lwz r10,8(r31)
4000043c: 81 7f 00 08 lwz r11,8(r31)
40000440: 88 1f 00 10 lbz r0,16(r31)
40000444: 54 09 06 3e clrlwi r9,r0,24
40000448: 80 0b 00 00 lwz r0,0(r11)
4000044c: 7c 00 4a 14 add r0,r0,r9
40000450: 90 0a 00 00 stw r0,0(r10)
..\src\FESC_src\/FESC_5554_general.c:110
for(i=0;i<len;i++) *(addr+i) = *(buf+i); /* Put character into buffer */
40000454: 38 00 00 00 li r0,0
40000458: 98 1f 00 11 stb r0,17(r31)
4000045c: 88 1f 00 11 lbz r0,17(r31)
40000460: 54 09 06 3e clrlwi r9,r0,24
40000464: 88 1f 00 10 lbz r0,16(r31)
40000468: 54 00 06 3e clrlwi r0,r0,24
4000046c: 7f 89 00 40 cmplw cr7,r9,r0
40000470: 40 9c 00 3c bge- cr7,400004ac <push_dpb_block+0xd0>
40000474: 88 1f 00 11 lbz r0,17(r31)
40000478: 54 09 06 3e clrlwi r9,r0,24
4000047c: 80 1f 00 14 lwz r0,20(r31)
40000480: 7d 69 02 14 add r11,r9,r0
40000484: 88 1f 00 11 lbz r0,17(r31)
40000488: 54 09 06 3e clrlwi r9,r0,24
4000048c: 80 1f 00 0c lwz r0,12(r31)
40000490: 7d 29 02 14 add r9,r9,r0
40000494: 88 09 00 00 lbz r0,0(r9)
40000498: 98 0b 00 00 stb r0,0(r11)
4000049c: 89 3f 00 11 lbz r9,17(r31)
400004a0: 38 09 00 01 addi r0,r9,1
400004a4: 98 1f 00 11 stb r0,17(r31)
400004a8: 4b ff ff b4 b 4000045c <push_dpb_block+0x80>
..\src\FESC_src\/FESC_5554_general.c:112
/* the n and data must be coherenct */
ExitCritical();
400004ac: 7c 00 81 46 wrteei 1
..\src\FESC_src\/FESC_5554_general.c:113
pt->in_n+=len;
400004b0: 81 5f 00 08 lwz r10,8(r31)
400004b4: 81 7f 00 08 lwz r11,8(r31)
400004b8: 88 1f 00 10 lbz r0,16(r31)
400004bc: 54 09 06 3e clrlwi r9,r0,24
400004c0: 80 0b 00 04 lwz r0,4(r11)
400004c4: 7c 00 4a 14 add r0,r0,r9
400004c8: 90 0a 00 04 stw r0,4(r10)
..\src\FESC_src\/FESC_5554_general.c:114
if (pt->in_n >= pt->len)
400004cc: 81 3f 00 08 lwz r9,8(r31)
400004d0: 81 7f 00 08 lwz r11,8(r31)
400004d4: 81 29 00 04 lwz r9,4(r9)
400004d8: 80 0b 00 0c lwz r0,12(r11)
400004dc: 7f 89 00 40 cmplw cr7,r9,r0
400004e0: 41 9c 00 20 blt- cr7,40000500 <push_dpb_block+0x124>
..\src\FESC_src\/FESC_5554_general.c:115
pt->in_n -= pt->len;
400004e4: 81 5f 00 08 lwz r10,8(r31)
400004e8: 81 3f 00 08 lwz r9,8(r31)
400004ec: 81 7f 00 08 lwz r11,8(r31)
400004f0: 81 29 00 04 lwz r9,4(r9)
400004f4: 80 0b 00 0c lwz r0,12(r11)
400004f8: 7c 00 48 50 subf r0,r0,r9
400004fc: 90 0a 00 04 stw r0,4(r10)
..\src\FESC_src\/FESC_5554_general.c:116
return(DP_BUF_SBP_RTSTUS_OK);
40000500: 38 00 00 01 li r0,1
40000504: 90 1f 00 18 stw r0,24(r31)
40000508: 48 00 00 10 b 40000518 <push_dpb_block+0x13c>
..\src\FESC_src\/FESC_5554_general.c:119
}
else
{ ExitCritical();
4000050c: 7c 00 81 46 wrteei 1
..\src\FESC_src\/FESC_5554_general.c:120
return(DP_BUF_FULL);
40000510: 38 00 00 11 li r0,17
40000514: 90 1f 00 18 stw r0,24(r31)
..\src\FESC_src\/FESC_5554_general.c:122
}
}
40000518: 80 7f 00 18 lwz r3,24(r31)
4000051c: 81 61 00 00 lwz r11,0(r1)
40000520: 83 eb ff fc lwz r31,-4(r11)
40000524: 7d 61 5b 78 mr r1,r11
40000528: 4e 80 00 20 blr
4000052c <pop_dpb_data>:
pop_dpb_data():
..\src\FESC_src\/FESC_5554_general.c:131
/*************************************************************************/
/* FUNCTION : pop 1 data from ring buf */
/* PURPOSE : */
/* INPUT NOTES : */
/* RETURN NOTES : None */
/* WARNING : None */
/*************************************************************************/
uint8_t pop_dpb_data(DP_BUF_tag* pt,uint8_t* data)
{
4000052c: 94 21 ff e0 stwu r1,-32(r1)
40000530: 93 e1 00 1c stw r31,28(r1)
40000534: 7c 3f 0b 78 mr r31,r1
40000538: 90 7f 00 08 stw r3,8(r31)
4000053c: 90 9f 00 0c stw r4,12(r31)
..\src\FESC_src\/FESC_5554_general.c:132
EnterCritical();
40000540: 7c 00 01 46 wrteei 0
..\src\FESC_src\/FESC_5554_general.c:133
if (pt->n >0) /* buffer empty? */
40000544: 81 3f 00 08 lwz r9,8(r31)
40000548: 80 09 00 00 lwz r0,0(r9)
4000054c: 2f 80 00 00 cmpwi cr7,r0,0
40000550: 41 9e 00 80 beq- cr7,400005d0 <pop_dpb_data+0xa4>
..\src\FESC_src\/FESC_5554_general.c:134
{ pt->n--; /* No, increment character count */
40000554: 81 7f 00 08 lwz r11,8(r31)
40000558: 81 3f 00 08 lwz r9,8(r31)
4000055c: 81 29 00 00 lwz r9,0(r9)
40000560: 38 09 ff ff addi r0,r9,-1
40000564: 90 0b 00 00 stw r0,0(r11)
..\src\FESC_src\/FESC_5554_general.c:135
*data = *(pt->addr + pt->out_n); /* Put character into buffer */
40000568: 81 5f 00 0c lwz r10,12(r31)
4000056c: 81 7f 00 08 lwz r11,8(r31)
40000570: 81 3f 00 08 lwz r9,8(r31)
40000574: 81 29 00 08 lwz r9,8(r9)
40000578: 80 0b 00 10 lwz r0,16(r11)
4000057c: 7d 29 02 14 add r9,r9,r0
40000580: 88 09 00 00 lbz r0,0(r9)
40000584: 98 0a 00 00 stb r0,0(r10)
..\src\FESC_src\/FESC_5554_general.c:136
ExitCritical();
40000588: 7c 00 81 46 wrteei 1
..\src\FESC_src\/FESC_5554_general.c:137
pt->out_n++;
4000058c: 81 7f 00 08 lwz r11,8(r31)
40000590: 81 3f 00 08 lwz r9,8(r31)
40000594: 81 29 00 08 lwz r9,8(r9)
40000598: 38 09 00 01 addi r0,r9,1
4000059c: 90 0b 00 08 stw r0,8(r11)
..\src\FESC_src\/FESC_5554_general.c:138
if (pt->out_n == pt->len) pt->out_n = 0;
400005a0: 81 3f 00 08 lwz r9,8(r31)
400005a4: 81 7f 00 08 lwz r11,8(r31)
400005a8: 81 29 00 08 lwz r9,8(r9)
400005ac: 80 0b 00 0c lwz r0,12(r11)
400005b0: 7f 89 00 00 cmpw cr7,r9,r0
400005b4: 40 9e 00 10 bne- cr7,400005c4 <pop_dpb_data+0x98>
400005b8: 81 3f 00 08 lwz r9,8(r31)
400005bc: 38 00 00 00 li r0,0
400005c0: 90 09 00 08 stw r0,8(r9)
..\src\FESC_src\/FESC_5554_general.c:139
return(DP_BUF_SBP_RTSTUS_OK);
400005c4: 38 00 00 01 li r0,1
400005c8: 90 1f 00 10 stw r0,16(r31)
400005cc: 48 00 00 10 b 400005dc <pop_dpb_data+0xb0>
..\src\FESC_src\/FESC_5554_general.c:142
}
else
{ ExitCritical();
400005d0: 7c 00 81 46 wrteei 1
..\src\FESC_src\/FESC_5554_general.c:143
return( DP_BUF_EMPTY);
400005d4: 38 00 00 12 li r0,18
400005d8: 90 1f 00 10 stw r0,16(r31)
..\src\FESC_src\/FESC_5554_general.c:145
}
}
400005dc: 80 7f 00 10 lwz r3,16(r31)
400005e0: 81 61 00 00 lwz r11,0(r1)
400005e4: 83 eb ff fc lwz r31,-4(r11)
400005e8: 7d 61 5b 78 mr r1,r11
400005ec: 4e 80 00 20 blr
400005f0 <init_ESCI>:
init_ESCI():
..\src\FESC_src\/FESC_5554_ESCI.c:6
/* ESCI */
/*================================================*/
/**************************************************************************/
void init_ESCI()
{
400005f0: 94 21 ff f0 stwu r1,-16(r1)
400005f4: 7c 08 02 a6 mflr r0
400005f8: 93 e1 00 0c stw r31,12(r1)
400005fc: 90 01 00 14 stw r0,20(r1)
40000600: 7c 3f 0b 78 mr r31,r1
..\src\FESC_src\/FESC_5554_ESCI.c:11
//ESCI_A.CR1.R = 0x01A1000C; //19200@128MHz
//ESCI_A.CR1.R = 0x0341000C; //9600@128MHz
//ESCI_A.CR1.R = 0x0187000C; //19200@120MHz
//ESCI_A.CR1.R = 0x030D000C; //9600@120MHz
ESCI_A.CR1.R = 0x0041000C; //115200@120MHz
40000604: 3d 20 ff fb lis r9,-5
40000608: 3c 00 00 41 lis r0,65
4000060c: 60 00 00 0c ori r0,r0,12
40000610: 90 09 00 00 stw r0,0(r9)
..\src\FESC_src\/FESC_5554_ESCI.c:13
pad_func_config(PIN_TXD_A_GPIO89,PRIMARY_FUNCTION); //SCI
40000614: 38 60 00 59 li r3,89
40000618: 38 80 0c 00 li r4,3072
4000061c: 4b ff f9 e5 bl 40000000 <PEFILL>
..\src\FESC_src\/FESC_5554_ESCI.c:14
pad_func_config(PIN_RXD_A_GPIO90,PRIMARY_FUNCTION); //SCI
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -