?? uart.lst
字號(hào):
ARM Macro Assembler Page 1
1 00000000 ;*******************************************************
*****************
2 00000000 ; *
3 00000000 ; * Title :swi.s
4 00000000 ; *
5 00000000 ; * Summary :SoftwareInterrupt
6 00000000 ; *
7 00000000 ; * Author :xhl
8 00000000 ; *
9 00000000 ; * Date :2008-06-30
10 00000000 ; *
11 00000000 ; * Copyright (c) Pioneer Corporation
12 00000000 ; *
13 00000000 ;*******************************************************
******************/
14 00000000 101F5000
UART_BASE
EQU UART3_BASE_ADDR
15 00000000
16 00000000 GET sfr.inc
1 00000000 ;*$Id: sfr.inc,v 1.1 2008/03/06 04:34:25 xuhongliang Exp
$ */
2 00000000 ;*******************************************************
*****************
3 00000000 ; *
4 00000000 ; * Title :sfr.inc
5 00000000 ; *
6 00000000 ; * Summary :sfr
7 00000000 ; *
8 00000000 ; * Author :xhl
9 00000000 ; *
10 00000000 ; * Date :2008-03-04
11 00000000 ; *
12 00000000 ; * Copyright (c) Pioneer Corporation
13 00000000 ; *
14 00000000 ;*******************************************************
******************/
15 00000000 ;SMC configuration registers
16 00000000 10100000
SMC_DBWCR
EQU 0x10100000
17 00000000 10100004
SMC_EDWCR
EQU 0x10100004
18 00000000 10100008
SMC_WSCR
EQU 0x10100008
19 00000000
20 00000000 10100010
SMC_TAREA
EQU 0x10100010
21 00000000 10100014
SMC_TACSR
EQU 0x10100014
22 00000000 10100018
SMC_TCOSR
EQU 0x10100018
23 00000000 1010001C
SMC_TCOHR
ARM Macro Assembler Page 2
EQU 0x1010001C
24 00000000
25 00000000
26 00000000 ;Decoder(HOSTIF)
27 00000000 ;SYSTEM
28 00000000 ;VIDEO
29 00000000 101C0240
VIDEO_SDR_INDEX
EQU 0x101c0240
30 00000000 101C0244
VIDEO_SDRAM_MODE
EQU 0x101c0244
31 00000000 101C0248
VIDEO_SDCLK_MODE
EQU 0x101c0248
32 00000000 101C024C
VIDEO_SDDQSO_MODE
EQU 0x101c024c
33 00000000 101C0250
VIDEO_SDDQSEN_MODE
EQU 0x101c0250
34 00000000 101C0254
VIDEO_SDDQI_MODE
EQU 0x101c0254
35 00000000 101C0258
VIDEO_PON_SEQ
EQU 0x101c0258
36 00000000 101C025C
VIDEO_REF_SET
EQU 0x101c025c
37 00000000
38 00000000
39 00000000 101C02C0
VIDEO_RESET
EQU 0x101c02c0
40 00000000
41 00000000 ;APB CORE
42 00000000 ;System controller
43 00000000
44 00000000 101E0000
APB_SCCTRL
EQU 0x101e0000
45 00000000 101E0004
APB_SCSYSSTAT
EQU 0x101e0004
46 00000000 101E0008
APB_SCIMCTRL
EQU 0x101e0008
47 00000000 101E000C
APB_SCIMSTAT
EQU 0x101e000C
48 00000000 101E0014
APB_SCPLLCTRL
EQU 0x101e0014
49 00000000 101E0018
APB_SCPLLFCTRL
EQU 0x101e0018
50 00000000 101E001C
APB_SCPERCTRL0
ARM Macro Assembler Page 3
EQU 0x101e001C
51 00000000 101E0020
APB_SCPERCTRL1
EQU 0x101e0020
52 00000000 101E0024
APB_SCPEREN
EQU 0x101e0024
53 00000000 101E0028
APB_SCPERDIS
EQU 0x101e0028
54 00000000 101E002C
APB_SCPERCLKEN
EQU 0x101e002C
55 00000000 101E0030
APB_SCPERSTAT
EQU 0x101e0030
56 00000000
57 00000000 101E0100
APB_MCIINS
EQU 0x101e0100
58 00000000 101E0104
APB_MCIINSE
EQU 0x101e0104
59 00000000 101E0108
APB_MCIINSS
EQU 0x101e0108
60 00000000 101E010C
APB_MCIIC
EQU 0x101e010C
61 00000000 101E0110
APB_MCIWP
EQU 0x101e0110
62 00000000 101E0114
APB_MCIWEN
EQU 0x101e0114
63 00000000 101E0118
APB_MCICLKEN
EQU 0x101e0118
64 00000000
65 00000000 101E0180
APB_CLR_HOSTIF
EQU 0x101e0180
66 00000000
67 00000000 ;Uart Base address
68 00000000 101F2000
UART0_BASE_ADDR
EQU 0x101f2000
69 00000000 101F3000
UART1_BASE_ADDR
EQU 0x101f3000
70 00000000 101F4000
UART2_BASE_ADDR
EQU 0x101f4000
71 00000000 101F5000
UART3_BASE_ADDR
EQU 0x101f5000
72 00000000
73 00000000 00000000
UARTDR EQU 0x00
ARM Macro Assembler Page 4
74 00000000 00000004
UARTRSR_ECR
EQU 0x04
75 00000000 00000018
UARTFR EQU 0x18
76 00000000 00000020
UARTILPR
EQU 0x20
77 00000000 00000024
UARTIBRD
EQU 0x24
78 00000000 00000028
UARTFBRD
EQU 0x28
79 00000000 0000002C
UARTLCR_H
EQU 0x2c
80 00000000 00000030
UARTCR EQU 0x30
81 00000000 00000034
UARTIFLS
EQU 0x34
82 00000000 00000038
UARTIMSC
EQU 0x38
83 00000000 0000003C
UARTRIS EQU 0x3c
84 00000000 00000040
UARTMIS EQU 0x40
85 00000000 00000044
UARTICR EQU 0x44
86 00000000 00000048
UARTDMACR
EQU 0x48
87 00000000
88 00000000
89 00000000 END
17 00000000
18 00000000 EXPORT tgetc
19 00000000 EXPORT vgetc
20 00000000 EXPORT vputc
21 00000000 EXPORT vputstr
22 00000000 EXPORT vputnstr
23 00000000 EXPORT InitUart
24 00000000
25 00000000 PRESERVE8
26 00000000 CODE32
27 00000000
28 00000000 AREA UART,CODE,READONLY
29 00000000
30 00000000 ;*******************************************************
**********
31 00000000 ;*
32 00000000 ;* Function Name
33 00000000 ;* void InitUart(void)
34 00000000 ;* Inputs
35 00000000 ;* None
36 00000000 ;* Outputs
37 00000000 ;* None
ARM Macro Assembler Page 5
38 00000000 ;* Return Codes
39 00000000 ;* None
40 00000000 ;* Description
41 00000000 ;* This funtion is initial the uart
42 00000000 ;* Date:
43 00000000 ;* 2008-06-11
44 00000000 ;*******************************************************
**********/
45 00000000 InitUart
46 00000000 E3A00007 mov r0, #&07
47 00000004 E59F1110 ldr r1, =UART_BASE + UARTIBRD
48 00000008 E5810000 str r0, [r1,#0]
49 0000000C E3A00015 mov r0, #&15 ;07
50 00000010 E59F1108 ldr r1, =UART_BASE + UARTFBRD
51 00000014 E5810000 str r0, [r1,#0]
52 00000018 E3A00070 mov r0, #&70
53 0000001C E59F1100 ldr r1, =UART_BASE + UARTLCR_H
54 00000020 E5810000 str r0, [r1,#0]
55 00000024 E3A00012 mov r0, #&12
56 00000028 E59F10F8 ldr r1, =UART_BASE + UARTIFLS
57 0000002C E5810000 str r0, [r1,#0]
58 00000030 E3A00000 mov r0, #&00
59 00000034 E59F10F0 ldr r1, =UART_BASE + UARTIMSC
60 00000038 E5810000 str r0, [r1,#0]
61 0000003C E59F00EC ldr r0, =&FFFF
62 00000040 E59F10EC ldr r1, =UART_BASE + UARTICR
63 00000044 E5810000 str r0, [r1,#0]
64 00000048 fifo
65 00000048 E59F10E8 ldr r1, =UART_BASE + UARTFR
66 0000004C E5911000 ldr r1, [r1,#0]
67 00000050 E3110010 tst r1, #&10
68 00000054 059F00E0 ldreq r0, =UART_BASE + UARTDR
69 00000058 05900000 ldreq r0, [r0,#0]
70 0000005C 0AFFFFF9 beq fifo
71 00000060
72 00000060 E59F00D8 ldr r0, =&b01
73 00000064 E59F10D8 ldr r1, =UART_BASE + UARTCR
74 00000068 E5810000 str r0, [r1,#0]
75 0000006C E1A0F00E mov pc, lr
76 00000070
77 00000070 ;*******************************************************
**********
78 00000070 ;*
79 00000070 ;* Function Name
80 00000070 ;* int tgetc(unsigned long)
81 00000070 ;* Inputs
82 00000070 ;* None
83 00000070 ;* Outputs
84 00000070 ;* None
85 00000070 ;* Return Codes
86 00000070 ;* char: get the char
87 00000070 ;* Description
88 00000070 ;* This funtion get a char from uart
89 00000070 ;* Date:
90 00000070 ;* 2008-06-11
91 00000070 ;*******************************************************
ARM Macro Assembler Page 6
**********/
92 00000070 tgetc
93 00000070 tnochar
94 00000070 E3500000 cmp r0, #0
95 00000074 03E00000 moveq r0, #-1
96 00000078 01A0F00E moveq pc, lr
97 0000007C E2400001 sub r0, r0, #1
98 00000080 E59F10B0 ldr r1, =UART_BASE + UARTFR
99 00000084 E5911000 ldr r1, [r1,#0]
100 00000088 E3110010 tst r1, #&10
101 0000008C 1AFFFFF7 bne tnochar
102 00000090 E59F00A4 ldr r0, =UART_BASE + UARTDR
103 00000094 E5900000 ldr r0, [r0,#0]
104 00000098 E20000FF and r0, r0, #&000000ff
;the return char
105 0000009C E1A0F00E mov pc, lr
106 000000A0
107 000000A0 ;*******************************************************
**********
108 000000A0 ;*
109 000000A0 ;* Function Name
110 000000A0 ;* char getc(void)
111 000000A0 ;* Inputs
112 000000A0 ;* None
113 000000A0 ;* Outputs
114 000000A0 ;* None
115 000000A0 ;* Return Codes
116 000000A0 ;* char: get the char
117 000000A0 ;* Description
118 000000A0 ;* This funtion get a char from uart
119 000000A0 ;* Date:
120 000000A0 ;* 2008-06-11
121 000000A0 ;*******************************************************
**********/
122 000000A0 vgetc
123 000000A0 nochar
124 000000A0 E59F0090 ldr r0, =UART_BASE + UARTFR
125 000000A4 E5900000 ldr r0, [r0,#0]
126 000000A8 E3100010 tst r0, #&10
127 000000AC 1AFFFFFB bne nochar
128 000000B0 E59F0084 ldr r0, =UART_BASE + UARTDR
129 000000B4 E5900000 ldr r0, [r0,#0]
130 000000B8 E20000FF and r0, r0, #&000000ff
;the return char
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -