📄 dbgu.lst
字号:
\ 00000002 0221 MOV R1,#+0x2
\ 00000004 0248 LDR R0,??Init_DBGU_CLK_0 ;; 0xfffffc00
\ 00000006 ........ _BLF AT91F_PMC_EnablePeriphClock,AT91F_PMC_EnablePeriphClock??rT
48 }
\ 0000000A 01BC POP {R0}
\ 0000000C 0047 BX R0 ;; return
\ 0000000E C046 NOP
\ ??Init_DBGU_CLK_0:
\ 00000010 00FCFFFF DC32 0xfffffc00
49
\ In segment CODE, align 4, keep-with-next
50 void Init_DBGU_BGR(unsigned short baud)
51 {
52 AT91PS_DBGU pDbgu = AT91C_BASE_DBGU ;
\ Init_DBGU_BGR:
\ 00000000 .... LDR R1,??DataTable5 ;; 0xfffff200
53
54 pDbgu->DBGU_BRGR = (unsigned short)baud;
\ 00000002 0862 STR R0,[R1, #+0x20]
55 }
\ 00000004 7047 BX LR ;; return
56
\ In segment CODE, align 4, keep-with-next
57 void DBGU_TX_Enable(void)
58 {
59 AT91PS_DBGU pDbgu = AT91C_BASE_DBGU ;
\ DBGU_TX_Enable:
\ 00000000 .... LDR R0,??DataTable5 ;; 0xfffff200
60
61 pDbgu->DBGU_CR = 0x00000040;
\ 00000002 4021 MOV R1,#+0x40
\ 00000004 0160 STR R1,[R0, #+0]
62 }
\ 00000006 7047 BX LR ;; return
63
\ In segment CODE, align 4, keep-with-next
64 void DBGU_RX_Enable(void)
65 {
66 AT91PS_DBGU pDbgu = AT91C_BASE_DBGU ;
\ DBGU_RX_Enable:
\ 00000000 .... LDR R0,??DataTable5 ;; 0xfffff200
67
68 pDbgu->DBGU_CR = 0x00000010;
\ 00000002 1021 MOV R1,#+0x10
\ 00000004 0160 STR R1,[R0, #+0]
69 }
\ 00000006 7047 BX LR ;; return
70
\ In segment CODE, align 4, keep-with-next
71 void DBGU_RX_TX_RST_DIS(void)
72 {
73 AT91PS_DBGU pDbgu = AT91C_BASE_DBGU ;
\ DBGU_RX_TX_RST_DIS:
\ 00000000 .... LDR R0,??DataTable5 ;; 0xfffff200
74 pDbgu->DBGU_CR = 0x000000AC;
\ 00000002 AC21 MOV R1,#+0xAC
\ 00000004 0160 STR R1,[R0, #+0]
75 }
\ 00000006 7047 BX LR ;; return
76
\ In segment CODE, align 4, keep-with-next
77 void DBGU_Parity_Cfg(unsigned int par)
78 {
79 AT91PS_DBGU pDbgu = AT91C_BASE_DBGU ;
\ DBGU_Parity_Cfg:
\ 00000000 .... LDR R1,??DataTable5 ;; 0xfffff200
80
81 pDbgu->DBGU_MR = par << 9;
\ 00000002 4002 LSL R0,R0,#+0x9
\ 00000004 4860 STR R0,[R1, #+0x4]
82 }
\ 00000006 7047 BX LR ;; return
83
84
\ In segment CODE, align 4, keep-with-next
85 void Init_DBGU(void)
86 {
\ Init_DBGU:
\ 00000000 00B5 PUSH {LR}
87 AT91F_DBGU_CfgPIO();
\ 00000002 ........ _BLF AT91F_DBGU_CfgPIO,AT91F_DBGU_CfgPIO??rT
88 DBGU_RX_TX_RST_DIS();
\ 00000006 ........ BL DBGU_RX_TX_RST_DIS
89 Init_DBGU_BGR(26); //26 <=> 115kBd
\ 0000000A 1A20 MOV R0,#+0x1A
\ 0000000C ........ BL Init_DBGU_BGR
90 DBGU_Parity_Cfg(4);
\ 00000010 0420 MOV R0,#+0x4
\ 00000012 ........ BL DBGU_Parity_Cfg
91 DBGU_TX_Enable();
\ 00000016 ........ BL DBGU_TX_Enable
92 DBGU_RX_Enable();
\ 0000001A ........ BL DBGU_RX_Enable
93 }
\ 0000001E 01BC POP {R0}
\ 00000020 0047 BX R0 ;; return
\ In segment CODE, align 4, keep-with-next
\ ??DataTable5:
\ 00000000 00F2FFFF DC32 0xfffff200
94
95
Maximum stack usage in bytes:
Function CSTACK
-------- ------
AT91F_DBGU_CfgPIO 4
AT91F_DBGU_Printk 4
AT91F_PIO_CfgPeriph 0
AT91F_PMC_EnablePeriphClock 0
DBGU_Parity_Cfg 0
DBGU_RX_Enable 0
DBGU_RX_TX_RST_DIS 0
DBGU_TX_Enable 0
Init_DBGU 4
Init_DBGU_BGR 0
Init_DBGU_CLK 4
Segment part sizes:
Function/Label Bytes
-------------- -----
AT91F_PIO_CfgPeriph 10
AT91F_PMC_EnablePeriphClock 4
AT91F_DBGU_CfgPIO 24
AT91F_DBGU_Printk 46
Init_DBGU_CLK 20
Init_DBGU_BGR 6
DBGU_TX_Enable 8
DBGU_RX_Enable 8
DBGU_RX_TX_RST_DIS 8
DBGU_Parity_Cfg 8
Init_DBGU 34
??DataTable5 4
Others 88
268 bytes in segment CODE
142 bytes of CODE memory (+ 126 bytes shared)
Errors: none
Warnings: none
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -