##// END OF EJS Templates
IIC library for lpc17xx started
jeandet -
r6:9626d775d625 default
parent child
Show More
@@ -0,0 +1,17
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4 include $(LIBUC)/rules/common/rules.mk
5
6 all:subdir
7 make -C bsp
8 make -C examples
9 make -C lib
10 @echo Code compiled
11
12 clean:
13 make clean -C bsp
14 make clean -C examples
15 make clean -C lib
16 @echo Code compiled
17
@@ -0,0 +1,13
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4 include $(LIBUC)/rules/common/rules.mk
5
6 all:subdir
7 make -C src
8 @echo Code compiled
9
10 clean:
11 make clean -C src
12 @echo Code compiled
13
1 NO CONTENT: new file 100644, binary diff hidden
1 NO CONTENT: new file 100644, binary diff hidden
1 NO CONTENT: new file 100644, binary diff hidden
@@ -0,0 +1,3
1 TEMPLATE = dir
2 SUBDIRS += src
3
@@ -0,0 +1,88
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22 #ifndef BSP_H
23 #define BSP_H
24 #include "LPC17xx.h"
25 #include <uart.h>
26 #include <iic.h>
27
28
29 extern uartDev* UART0;
30 extern uartDev* UART1;
31 extern uartDev* UART2;
32 extern uartDev* UART3;
33
34 extern i2cDev* IIC0;
35 extern i2cDev* IIC1;
36 extern i2cDev* IIC2;
37
38 extern float VREF0;
39
40 #define pll0useInternal 0
41 #define pll0useMainOsc 1
42 #define pll0useRTC 2
43
44
45 #define pll0setClksrc(src) if((unsigned int)(src)<3) LPC_SC->CLKSRCSEL=(src)
46 #define pll0getClksrc (LPC_SC->CLKSRCSEL & 3)
47
48 #define LEDS_ON LPC_GPIO2->FIOSET = 255
49
50 #define LED1_ON LPC_GPIO2->FIOSET = (1<<0)
51 #define LED2_ON LPC_GPIO2->FIOSET = (1<<1)
52 #define LED3_ON LPC_GPIO2->FIOSET = (1<<2)
53 #define LED4_ON LPC_GPIO2->FIOSET = (1<<3)
54 #define LED5_ON LPC_GPIO2->FIOSET = (1<<4)
55 #define LED6_ON LPC_GPIO2->FIOSET = (1<<5)
56 #define LED7_ON LPC_GPIO2->FIOSET = (1<<6)
57 #define LED8_ON LPC_GPIO2->FIOSET = (1<<7)
58
59 #define LEDS_OFF LPC_GPIO2->FIOCLR = ~(255)
60
61 #define LED1_OFF LPC_GPIO2->FIOCLR = (1<<0)
62 #define LED2_OFF LPC_GPIO2->FIOCLR = (1<<1)
63 #define LED3_OFF LPC_GPIO2->FIOCLR = (1<<2)
64 #define LED4_OFF LPC_GPIO2->FIOCLR = (1<<3)
65 #define LED5_OFF LPC_GPIO2->FIOCLR = (1<<4)
66 #define LED6_OFF LPC_GPIO2->FIOCLR = (1<<5)
67 #define LED7_OFF LPC_GPIO2->FIOCLR = (1<<6)
68 #define LED8_OFF LPC_GPIO2->FIOCLR = (1<<7)
69
70 extern int bsp_init();
71
72 extern void bsp_GPIO_init();
73 extern void bsp_uart_init();
74 extern void bsp_iic_init();
75 extern void consoleputc(char);
76 extern char consolegetc();
77
78 #endif
79
80
81
82
83
84
85
86
87
88
1 NO CONTENT: new file 100644
@@ -0,0 +1,71
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22 #ifndef BSP_H
23 #define BSP_H
24 #include "LPC17xx.h"
25 #include <uart.h>
26
27 extern uartDev* UART0;
28 extern uartDev* UART1;
29 extern uartDev* UART2;
30 extern uartDev* UART3;
31
32 #define VREF0 (float)3.3
33
34 #define pll0useInternal 0
35 #define pll0useMainOsc 1
36 #define pll0useRTC 2
37
38
39 #define pll0setClksrc(src) if((unsigned int)(src)<3) LPC_SC->CLKSRCSEL=(src)
40 #define pll0getClksrc (LPC_SC->CLKSRCSEL & 3)
41
42
43 #define LED1_ON LPC_GPIO1->FIOPIN |= (1<<18)
44 #define LED2_ON LPC_GPIO1->FIOPIN |= (1<<20)
45 #define LED3_ON LPC_GPIO1->FIOPIN |= (1<<21)
46 #define LED4_ON LPC_GPIO1->FIOPIN |= (1<<23)
47
48 #define LED1_OFF LPC_GPIO1->FIOPIN &= ~(1<<18)
49 #define LED2_OFF LPC_GPIO1->FIOPIN &= ~(1<<20)
50 #define LED3_OFF LPC_GPIO1->FIOPIN &= ~(1<<21)
51 #define LED4_OFF LPC_GPIO1->FIOPIN &= ~(1<<23)
52
53
54 extern int bsp_init();
55
56 extern void bsp_GPIO_init();
57 extern void bsp_uart_init();
58 extern void consoleputc(char);
59 extern char consolegetc();
60
61 #endif
62
63
64
65
66
67
68
69
70
71
@@ -0,0 +1,19
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4
5 HEADERSINSTALLPATH = $(LIBUC_BSP_INC_DIR)/LandTiger
6 HEADERS += bsp.h
7 LIBSOURCES += bsp.c
8 OBJECTFILES = $(LIBSOURCES:.c=.o)
9 ARCH = $(LIBUC)/rules/lpc17XX-arm-noabi-gcc
10 TARGET=libbsp
11 LIBUC_INCLUDES=$(LIBUC_INC_DIR_UART) $(LIBUC_INC_DIR_IIC) $(LIBUC_INC_DIR_CORE)
12 LIBUC_LIBRARIES=$(LIBUC_LIBS_DIR_UART) $(LIBUC_LIBS_UART) $(LIBUC_LIBS_DIR_IIC) $(LIBUC_LIBS_IIC) $(LIBUC_LIBS_DIR_CORE) $(LIBUC_LIBS_CORE)
13 TARGETINSTALLPATH=$(LIBUC_BSP_BIN_DIR)/LandTiger
14 HEADERSINSTALLPATH=$(LIBUC_BSP_INC_DIR)/LandTiger
15 BSP=generic
16 include $(ARCH)/rules.mk
17
18 all:lib
19 @echo Code compiled
@@ -0,0 +1,100
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22 #include "bsp.h"
23 #include "core.h"
24
25
26 unsigned int OSC0 =12000000;
27 unsigned int INTOSC =4000000;
28 unsigned int RTCOSC =32768;
29 unsigned int currentCpuFreq=0;
30 float VREF0 =(float)3.3;
31 uartDev* UART0=(uartDev*)0;
32 uartDev* UART1=(uartDev*)0;
33 uartDev* UART2=(uartDev*)0;
34 uartDev* UART3=(uartDev*)0;
35
36 i2cDev* IIC0=(i2cDev*)0;
37 i2cDev* IIC1=(i2cDev*)0;
38 i2cDev* IIC2=(i2cDev*)0;
39
40 int bsp_init()
41 {
42 bsp_GPIO_init();
43 coresetCpuFreq(20000000);
44 currentCpuFreq=coregetCpuFreq();
45 coresetCpuFreq(60000000);
46 currentCpuFreq=coregetCpuFreq();
47 bsp_uart_init();
48 bsp_iic_init();
49 return 0;
50 }
51
52 void bsp_GPIO_init()
53 {
54 LPC_SC->PCONP |= ( 1 << 15 ); // power up GPIO
55 LPC_GPIO2->FIODIR |=255;
56 LEDS_OFF;
57 }
58
59 void bsp_uart_init()
60 {
61 LPC_SC->PCONP |= ( 1 << 24 ); // power up UART3
62 LPC_SC->PCONP |= ( 1 << 4 ); // power up UART1
63 LPC_PINCON->PINSEL0 |= (1<<4);
64 LPC_PINCON->PINSEL0 &= ~(1<<5);
65 LPC_PINCON->PINSEL0 |= (1<<6);
66 LPC_PINCON->PINSEL0 &= ~(1<<7);
67 LPC_PINCON->PINSEL0 |= (1<<20);
68 LPC_PINCON->PINSEL0 &= ~(1<<21);
69 LPC_PINCON->PINSEL0 |= (1<<22);
70 LPC_PINCON->PINSEL0 &= ~(1<<23);
71 UART0= uartopen(0);
72 uartsetup(UART0,38400,8,1,uartNoParity);
73 UART2= uartopen(2);
74 uartsetup(UART2,38400,8,1,uartNoParity);
75 }
76
77 void bsp_iic_init()
78 {
79 LPC_SC->PCONP |= ( 1 << 7 ); // power up IIC0
80 LPC_PINCON->PINSEL1 |= (1<<22);
81 LPC_PINCON->PINSEL1 &= ~(1<<23);
82 LPC_PINCON->PINSEL1 |= (1<<24);
83 LPC_PINCON->PINSEL1 &= ~(1<<25);
84 IIC0 = i2copen(0);
85 i2csetdatarate(IIC0,100000);
86 }
87
88 void consoleputc(char c)
89 {
90 uartputc(UART0,c);
91 }
92
93
94 char consolegetc()
95 {
96 return uartgetc(UART0);
97 }
98
99
100
@@ -0,0 +1,20
1 bsp.o: bsp.c bsp.h /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h \
2 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h \
3 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h \
4 /opt/libuc2/lib/includes/lpc17XX/UART/uart.h \
5 /opt/libuc2/lib/includes/lpc17XX/IIC/iic.h \
6 /opt/libuc2/lib/includes/lpc17XX/CORE/core.h
7
8 bsp.h:
9
10 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h:
11
12 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h:
13
14 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h:
15
16 /opt/libuc2/lib/includes/lpc17XX/UART/uart.h:
17
18 /opt/libuc2/lib/includes/lpc17XX/IIC/iic.h:
19
20 /opt/libuc2/lib/includes/lpc17XX/CORE/core.h:
@@ -0,0 +1,88
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22 #ifndef BSP_H
23 #define BSP_H
24 #include "LPC17xx.h"
25 #include <uart.h>
26 #include <iic.h>
27
28
29 extern uartDev* UART0;
30 extern uartDev* UART1;
31 extern uartDev* UART2;
32 extern uartDev* UART3;
33
34 extern i2cDev* IIC0;
35 extern i2cDev* IIC1;
36 extern i2cDev* IIC2;
37
38 extern float VREF0;
39
40 #define pll0useInternal 0
41 #define pll0useMainOsc 1
42 #define pll0useRTC 2
43
44
45 #define pll0setClksrc(src) if((unsigned int)(src)<3) LPC_SC->CLKSRCSEL=(src)
46 #define pll0getClksrc (LPC_SC->CLKSRCSEL & 3)
47
48 #define LEDS_ON LPC_GPIO2->FIOSET = 255
49
50 #define LED1_ON LPC_GPIO2->FIOSET = (1<<0)
51 #define LED2_ON LPC_GPIO2->FIOSET = (1<<1)
52 #define LED3_ON LPC_GPIO2->FIOSET = (1<<2)
53 #define LED4_ON LPC_GPIO2->FIOSET = (1<<3)
54 #define LED5_ON LPC_GPIO2->FIOSET = (1<<4)
55 #define LED6_ON LPC_GPIO2->FIOSET = (1<<5)
56 #define LED7_ON LPC_GPIO2->FIOSET = (1<<6)
57 #define LED8_ON LPC_GPIO2->FIOSET = (1<<7)
58
59 #define LEDS_OFF LPC_GPIO2->FIOCLR = ~(255)
60
61 #define LED1_OFF LPC_GPIO2->FIOCLR = (1<<0)
62 #define LED2_OFF LPC_GPIO2->FIOCLR = (1<<1)
63 #define LED3_OFF LPC_GPIO2->FIOCLR = (1<<2)
64 #define LED4_OFF LPC_GPIO2->FIOCLR = (1<<3)
65 #define LED5_OFF LPC_GPIO2->FIOCLR = (1<<4)
66 #define LED6_OFF LPC_GPIO2->FIOCLR = (1<<5)
67 #define LED7_OFF LPC_GPIO2->FIOCLR = (1<<6)
68 #define LED8_OFF LPC_GPIO2->FIOCLR = (1<<7)
69
70 extern int bsp_init();
71
72 extern void bsp_GPIO_init();
73 extern void bsp_uart_init();
74 extern void bsp_iic_init();
75 extern void consoleputc(char);
76 extern char consolegetc();
77
78 #endif
79
80
81
82
83
84
85
86
87
88
@@ -0,0 +1,12
1 TEMPLATE = lib
2 ARCH = lpc17XX-arm-noabi-gcc
3 TARGET = libbsp
4 TARGETINSTALLPATH = $(LIBUC_BSP_BIN_DIR)/LandTiger
5 HEADERSINSTALLPATH = $(LIBUC_BSP_INC_DIR)/LandTiger
6
7 LIBS += UART IIC CORE
8
9 SOURCES += bsp.c
10
11
12 HEADERS += bsp.h
@@ -0,0 +1,17
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4 include $(LIBUC)/rules/common/rules.mk
5
6 all:subdir
7 make -C generic
8 make -C LandTiger
9 make -C mbed
10 @echo Code compiled
11
12 clean:
13 make clean -C generic
14 make clean -C LandTiger
15 make clean -C mbed
16 @echo Code compiled
17
@@ -0,0 +1,4
1 TEMPLATE = dir
2 SUBDIRS += generic \
3 LandTiger \
4 mbed
@@ -0,0 +1,19
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4
5 HEADERSINSTALLPATH = $(LIBUC_BSP_INC_DIR)/generic
6 HEADERS += bsp.h
7 LIBSOURCES += bsp.c
8 OBJECTFILES = $(LIBSOURCES:.c=.o)
9 ARCH = $(LIBUC)/rules/lpc17XX-arm-noabi-gcc
10 TARGET=libbsp
11 LIBUC_INCLUDES=
12 LIBUC_LIBRARIES=
13 TARGETINSTALLPATH=$(LIBUC_BSP_BIN_DIR)/generic
14 HEADERSINSTALLPATH=$(LIBUC_BSP_INC_DIR)/generic
15 BSP=generic
16 include $(ARCH)/rules.mk
17
18 all:lib
19 @echo Code compiled
1 NO CONTENT: new file 100644
@@ -0,0 +1,1
1 bsp.o: bsp.c
1 NO CONTENT: new file 100644
@@ -0,0 +1,12
1 TEMPLATE = lib
2 ARCH = lpc17XX-arm-noabi-gcc
3 TARGET = libbsp
4 TARGETINSTALLPATH = $(LIBUC_BSP_BIN_DIR)/generic
5 HEADERSINSTALLPATH = $(LIBUC_BSP_INC_DIR)/generic
6
7 LIBS +=
8
9 SOURCES += bsp.c
10
11
12 HEADERS += bsp.h
@@ -0,0 +1,19
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4
5 HEADERSINSTALLPATH = $(LIBUC_BSP_INC_DIR)/mbed
6 HEADERS += bsp.h
7 LIBSOURCES += bsp.c
8 OBJECTFILES = $(LIBSOURCES:.c=.o)
9 ARCH = $(LIBUC)/rules/lpc17XX-arm-noabi-gcc
10 TARGET=libbsp
11 LIBUC_INCLUDES=$(LIBUC_INC_DIR_UART) $(LIBUC_INC_DIR_CORE)
12 LIBUC_LIBRARIES=$(LIBUC_LIBS_DIR_UART) $(LIBUC_LIBS_UART) $(LIBUC_LIBS_DIR_CORE) $(LIBUC_LIBS_CORE)
13 TARGETINSTALLPATH=$(LIBUC_BSP_BIN_DIR)/mbed
14 HEADERSINSTALLPATH=$(LIBUC_BSP_INC_DIR)/mbed
15 BSP=generic
16 include $(ARCH)/rules.mk
17
18 all:lib
19 @echo Code compiled
@@ -0,0 +1,88
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22 #include "bsp.h"
23 #include "core.h"
24
25
26 unsigned int OSC0 =12000000;
27 unsigned int INTOSC =4000000;
28 unsigned int RTCOSC =32768;
29 unsigned int currentCpuFreq=0;
30 uartDev* UART0=(uartDev*)0;
31 uartDev* UART1=(uartDev*)0;
32 uartDev* UART2=(uartDev*)0;
33 uartDev* UART3=(uartDev*)0;
34
35
36 int bsp_init()
37 {
38 bsp_GPIO_init();
39 coresetCpuFreq(40000000);
40 currentCpuFreq=coregetCpuFreq();
41 coresetCpuFreq(80000000);
42 currentCpuFreq=coregetCpuFreq();
43 bsp_uart_init();
44 return 0;
45 }
46
47 void bsp_GPIO_init()
48 {
49 LPC_SC->PCONP |= ( 1 << 15 ); // power up GPIO
50 LPC_GPIO1->FIODIR |= (1<<18)+(1<<20)+(1<<21)+(1<<23); // puts P1.18 20 21 23 into output mode.
51 LED1_OFF;
52 LED2_OFF;
53 LED3_OFF;
54 LED4_OFF;
55 }
56
57 void bsp_uart_init()
58 {
59 LPC_SC->PCONP |= ( 1 << 25 ); // power up UART3
60 LPC_SC->PCONP |= ( 1 << 4 ); // power up UART1
61 LPC_PINCON->PINSEL0 |= (1<<1);
62 LPC_PINCON->PINSEL0 &= ~(1<<0);
63 LPC_PINCON->PINSEL0 |= (1<<3);
64 LPC_PINCON->PINSEL0 &= ~(1<<2);
65 LPC_PINCON->PINSEL0 |= (1<<30);
66 LPC_PINCON->PINSEL0 &= ~(1<<31);
67 LPC_PINCON->PINSEL1 |= (1<<0);
68 LPC_PINCON->PINSEL1 &= ~(1<<1);
69 UART3= uartopen(3);
70 uartsetup(UART3,9600,8,1,uartNoParity);
71 UART1= uartopen(1);
72 uartsetup(UART1,38400,8,1,uartNoParity);
73 }
74
75
76 void consoleputc(char c)
77 {
78 uartputc(UART1,c);
79 }
80
81
82 char consolegetc()
83 {
84 return uartgetc(UART1);
85 }
86
87
88
@@ -0,0 +1,17
1 bsp.o: bsp.c bsp.h /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h \
2 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h \
3 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h \
4 /opt/libuc2/lib/includes/lpc17XX/UART/uart.h \
5 /opt/libuc2/lib/includes/lpc17XX/CORE/core.h
6
7 bsp.h:
8
9 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h:
10
11 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h:
12
13 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h:
14
15 /opt/libuc2/lib/includes/lpc17XX/UART/uart.h:
16
17 /opt/libuc2/lib/includes/lpc17XX/CORE/core.h:
@@ -0,0 +1,71
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22 #ifndef BSP_H
23 #define BSP_H
24 #include "LPC17xx.h"
25 #include <uart.h>
26
27 extern uartDev* UART0;
28 extern uartDev* UART1;
29 extern uartDev* UART2;
30 extern uartDev* UART3;
31
32 #define VREF0 (float)3.3
33
34 #define pll0useInternal 0
35 #define pll0useMainOsc 1
36 #define pll0useRTC 2
37
38
39 #define pll0setClksrc(src) if((unsigned int)(src)<3) LPC_SC->CLKSRCSEL=(src)
40 #define pll0getClksrc (LPC_SC->CLKSRCSEL & 3)
41
42
43 #define LED1_ON LPC_GPIO1->FIOPIN |= (1<<18)
44 #define LED2_ON LPC_GPIO1->FIOPIN |= (1<<20)
45 #define LED3_ON LPC_GPIO1->FIOPIN |= (1<<21)
46 #define LED4_ON LPC_GPIO1->FIOPIN |= (1<<23)
47
48 #define LED1_OFF LPC_GPIO1->FIOPIN &= ~(1<<18)
49 #define LED2_OFF LPC_GPIO1->FIOPIN &= ~(1<<20)
50 #define LED3_OFF LPC_GPIO1->FIOPIN &= ~(1<<21)
51 #define LED4_OFF LPC_GPIO1->FIOPIN &= ~(1<<23)
52
53
54 extern int bsp_init();
55
56 extern void bsp_GPIO_init();
57 extern void bsp_uart_init();
58 extern void consoleputc(char);
59 extern char consolegetc();
60
61 #endif
62
63
64
65
66
67
68
69
70
71
@@ -0,0 +1,12
1 TEMPLATE = lib
2 ARCH = lpc17XX-arm-noabi-gcc
3 TARGET = libbsp
4 TARGETINSTALLPATH = $(LIBUC_BSP_BIN_DIR)/mbed
5 HEADERSINSTALLPATH = $(LIBUC_BSP_INC_DIR)/mbed
6
7 LIBS += UART CORE
8
9 SOURCES += bsp.c
10
11
12 HEADERS += bsp.h
@@ -0,0 +1,19
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4 include $(LIBUC)/rules/common/rules.mk
5
6 all:subdir
7 make -C lpc1768_led_blink
8 make -C lpc1768_led_blink_Clk_api
9 make -C lpc1768_uart
10 make -C lpc1768_uart_LandTiger
11 @echo Code compiled
12
13 clean:
14 make clean -C lpc1768_led_blink
15 make clean -C lpc1768_led_blink_Clk_api
16 make clean -C lpc1768_uart
17 make clean -C lpc1768_uart_LandTiger
18 @echo Code compiled
19
@@ -0,0 +1,6
1 TEMPLATE = dir
2 SUBDIRS += lpc1768_led_blink\
3 lpc1768_led_blink_Clk_api \
4 lpc1768_uart \
5 lpc1768_uart_LandTiger
6
@@ -0,0 +1,19
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4
5 HEADERS +=
6 APPSOURCES += main.c
7 OBJECTFILES = $(APPSOURCES:.c=.o)
8 ARCH = $(LIBUC)/rules/lpc17XX-arm-noabi-gcc
9 TARGET=lpc1768_iic
10 LIBUC_INCLUDES=$(LIBUC_INC_DIR_UART) $(LIBUC_INC_DIR_IIC) $(LIBUC_INC_DIR_CORE) $(LIBUC_INC_DIR_UCSTRINGS)
11 LIBUC_LIBRARIES=$(LIBUC_LIBS_DIR_UART) $(LIBUC_LIBS_UART) $(LIBUC_LIBS_DIR_IIC) $(LIBUC_LIBS_IIC) $(LIBUC_LIBS_DIR_CORE) $(LIBUC_LIBS_CORE) $(LIBUC_LIBS_DIR_UCSTRINGS) $(LIBUC_LIBS_UCSTRINGS)
12 TARGETINSTALLPATH=
13 HEADERSINSTALLPATH=
14 BSP=LandTiger
15 include $(ARCH)/rules.mk
16
17 all:bin
18 @echo Code compiled
19
1 NO CONTENT: new file 100755, binary diff hidden
@@ -0,0 +1,134
1
2 lpc1768_iic.elf: file format elf32-littlearm
3 lpc1768_iic.elf
4 architecture: arm, flags 0x00000112:
5 EXEC_P, HAS_SYMS, D_PAGED
6 start address 0x00000000
7
8 Program Header:
9 LOAD off 0x00008000 vaddr 0x00000000 paddr 0x00000000 align 2**15
10 filesz 0x000011e0 memsz 0x000011e0 flags r-x
11 LOAD off 0x00010000 vaddr 0x10000000 paddr 0x000011e0 align 2**15
12 filesz 0x0000000c memsz 0x0000001c flags rw-
13 LOAD off 0x0001001c vaddr 0x1000001c paddr 0x000011ec align 2**15
14 filesz 0x00000000 memsz 0x00000804 flags rw-
15 private flags = 5000000: [Version5 EABI]
16
17 Sections:
18 Idx Name Size VMA LMA File off Algn
19 0 .text 000011e0 00000000 00000000 00008000 2**2
20 CONTENTS, ALLOC, LOAD, READONLY, CODE
21 1 .data 0000000c 10000000 000011e0 00010000 2**2
22 CONTENTS, ALLOC, LOAD, DATA
23 2 .bss 00000010 1000000c 000011ec 0001000c 2**2
24 ALLOC
25 3 .stackarea 00000804 1000001c 000011ec 0001001c 2**2
26 ALLOC
27 4 .comment 0000002a 00000000 00000000 0001000c 2**0
28 CONTENTS, READONLY
29 5 .ARM.attributes 00000031 00000000 00000000 00010036 2**0
30 CONTENTS, READONLY
31 SYMBOL TABLE:
32 00000000 l d .text 00000000 .text
33 10000000 l d .data 00000000 .data
34 1000000c l d .bss 00000000 .bss
35 1000001c l d .stackarea 00000000 .stackarea
36 00000000 l d .comment 00000000 .comment
37 00000000 l d .ARM.attributes 00000000 .ARM.attributes
38 00000000 l df *ABS* 00000000 startup_LPC17xx.c
39 00000000 l df *ABS* 00000000 main.c
40 00001194 l O .text 00000002 C.1.5890
41 00000000 l df *ABS* 00000000 system_LPC17xx.c
42 00000000 l df *ABS* 00000000 bsp.c
43 00000000 l df *ABS* 00000000 uart.c
44 000011a4 l O .text 00000010 CSWTCH.5
45 000011b4 l O .text 00000009 C.0.5884
46 000011c0 l O .text 00000004 C.2.5915
47 00000000 l df *ABS* 00000000 iic.c
48 000011c4 l O .text 00000004 C.3.5941
49 000011c8 l O .text 0000000c CSWTCH.8
50 00000000 l df *ABS* 00000000 core.c
51 00000000 l df *ABS* 00000000 libucstrings.c
52 00000310 w F .text 00000002 TIMER2_IRQHandler
53 00000310 w F .text 00000002 DebugMon_Handler
54 00000310 w F .text 00000002 RIT_IRQHandler
55 00000980 g F .text 00000014 i2copen
56 00000b40 g F .text 00000084 coregetCpuFreq
57 00000310 w F .text 00000002 I2C0_IRQHandler
58 00000000 w *UND* 00000000 HardFault_Handler
59 00000310 w F .text 00000002 SysTick_Handler
60 00000310 w F .text 00000002 PWM1_IRQHandler
61 10000014 g O .bss 00000004 IIC0
62 000011e0 g *ABS* 00000000 _sidata
63 00000310 w F .text 00000002 PendSV_Handler
64 00000000 w *UND* 00000000 NMI_Handler
65 00000310 w F .text 00000002 I2C1_IRQHandler
66 00000310 w F .text 00000002 EINT2_IRQHandler
67 00000310 w F .text 00000002 UART1_IRQHandler
68 00000310 w F .text 00000002 EINT3_IRQHandler
69 000011e0 g .data 00000000 _etext
70 1000000c g .bss 00000000 _sbss
71 10000004 g O .data 00000004 INTOSC
72 000004a4 g F .text 000000a0 bsp_init
73 00000310 w F .text 00000002 TIMER3_IRQHandler
74 00000310 w F .text 00000002 UART0_IRQHandler
75 00000bc4 g F .text 000005ce libucprintf
76 000007a0 g F .text 0000003c uartsetup
77 1000000c g O .bss 00000004 UART2
78 00000310 w F .text 00000002 UsageFault_Handler
79 10000000 g .data 00000000 _sdata
80 10000008 g O .data 00000004 RTCOSC
81 00000310 w F .text 00000002 PLL0_IRQHandler
82 00000310 w F .text 00000002 CAN_IRQHandler
83 00000310 w F .text 00000002 PLL1_IRQHandler
84 00000310 w F .text 00000002 SSP0_IRQHandler
85 10000000 g O .data 00000004 OSC0
86 00000620 g F .text 00000180 uartsetbaudrate
87 00000310 w F .text 00000002 I2S_IRQHandler
88 00000310 w F .text 00000002 I2C2_IRQHandler
89 00000310 w F .text 00000002 RTC_IRQHandler
90 1000001c g .bss 00000000 _ebss
91 00000310 w F .text 00000002 TIMER0_IRQHandler
92 000001a4 w F .text 0000016c Reset_Handler
93 00000310 w F .text 00000002 SPI_IRQHandler
94 00000310 w F .text 00000002 EINT1_IRQHandler
95 00000310 w F .text 00000002 TIMER1_IRQHandler
96 00000310 w F .text 00000002 UART2_IRQHandler
97 00000310 g F .text 00000002 Default_Handler
98 00000310 w F .text 00000002 ADC_IRQHandler
99 00000560 g F .text 000000c0 uartsetpclkfactor
100 00000310 w F .text 00000002 SSP1_IRQHandler
101 10000000 g .data 00000000 _efastcode
102 00000310 w F .text 00000002 USB_IRQHandler
103 00000310 w F .text 00000002 BOD_IRQHandler
104 00000310 w F .text 00000002 MemManage_Handler
105 000000c4 g F .text 000000e0 main
106 000003fc g F .text 000000a8 bsp_uart_init
107 10000020 g O .stackarea 00000800 pulStack
108 00000310 w F .text 00000002 WDT_IRQHandler
109 00000310 w F .text 00000002 SVC_Handler
110 00000314 g F .text 000000e8 SystemInit
111 00000310 w F .text 00000002 QEI_IRQHandler
112 10000020 g .stackarea 00000000 _sstack
113 00000310 w F .text 00000002 EINT0_IRQHandler
114 000011e0 g .data 00000000 _sifastcode
115 10000018 g O .bss 00000004 UART0
116 00000554 g F .text 0000000c uartputc
117 000007f0 g F .text 0000018e i2cwrite2
118 10000000 g .data 00000000 _sfastcode
119 10000820 g .stackarea 00000000 _estack
120 1000000c g .data 00000000 _edata
121 10000820 g .stackarea 00000000 _end
122 000007dc g F .text 00000014 uartopen
123 00000544 g F .text 00000010 consoleputc
124 00000994 g F .text 0000008c i2csetdatarate
125 00000000 g O .text 000000c4 g_pfnVectors
126 00000310 w F .text 00000002 DMA_IRQHandler
127 00000310 w F .text 00000002 BusFault_Handler
128 00000310 w F .text 00000002 UART3_IRQHandler
129 00000310 w F .text 00000002 MCPWM_IRQHandler
130 10000010 g O .bss 00000004 currentCpuFreq
131 00000310 w F .text 00000002 ENET_IRQHandler
132 00000a20 g F .text 00000120 coresetCpuFreq
133
134
@@ -0,0 +1,288
1 :1000000020080010A5010000000000000000000012
2 :1000100011030000110300001103000000000000A4
3 :1000200000000000000000000000000011030000BC
4 :100030001103000000000000110300001103000084
5 :100040001103000011030000110300001103000060
6 :100050001103000011030000110300001103000050
7 :100060001103000011030000110300001103000040
8 :100070001103000011030000110300001103000030
9 :100080001103000011030000110300001103000020
10 :100090001103000011030000110300001103000010
11 :1000A0001103000011030000110300001103000000
12 :1000B00011030000110300001103000011030000F0
13 :1000C000110300002DE9F04186B000F0EBF92F4A52
14 :1000D0004FF41641106800F0A3FA2D48022103885E
15 :1000E0002C4F2D4D2D4C0491ADF8143000260DF100
16 :1000F0001408DDF810E03868A021002204ABCDF828
17 :1001000004E0CDF8008000F073FB01230222EB61D4
18 :10011000AA6104230822EB61AA6110232022EB616B
19 :10012000AA6140238022EB6131461D48AA6100F09C
20 :1001300049FD00200390039B711CA34205DC039B37
21 :100140005A1C03920398A042F9DD01230222AB61FD
22 :10015000EA6104230822AB61EA6110232022AB612B
23 :10016000EA6140238022AB610D48EA6100F02AFD7C
24 :100170000020039003990236A142BADC039A501C76
25 :1001800003900399A142F9DDB3E700BF1800001006
26 :10019000941100001400001040C00920FFFF0F0060
27 :1001A00098110000684620F007018D46F1B500F077
28 :1001B000B1F84F484F49884235D04F4CA14232D216
29 :1001C000024652F8046B0B46CD4343F8046B6519A5
30 :1001D000A342C5F3810526D29DB1012D0BD0022D7E
31 :1001E00005D0156800F108021D6001F1080352F8FE
32 :1001F000040B43F8040B52F8041B43F8041BA342FE
33 :1002000011D296465EF8047B5668D568DEF8040085
34 :100210009C464CF8047B5E60CCF80400DD60103333
35 :100220001032A342EDD335483549884234D0354C9D
36 :10023000A14231D2024652F8046B0B46CD4343F83B
37 :10024000046B6519A342C5F3810525D29DB1012D2B
38 :100250000BD0022D05D0156800F108021D6001F1D8
39 :10026000080352F8040B43F8040B52F8041B43F83C
40 :10027000041BA34210D294465CF8047B5668D568F0
41 :10028000DCF80400194641F8047B5E604860DD60DC
42 :1002900010331032A342EED31B491C48814221D2B5
43 :1002A00000220B46CC4343F8042B04198342C4F3C9
44 :1002B000810417D264B1012C06D0022C1CBF1A6035
45 :1002C00001F1080343F8042B43F8042B834209D2BD
46 :1002D0009E464EF8042B5A60CEF80420DA601033A4
47 :1002E0008342F5D3FFF7EEFEBDE8F1408546704747
48 :1002F000E0110000000000100C000010E0110000F0
49 :1003000000000010000000100C0000101C00001085
50 :10031000FEE700BF3649202330B4C1F8A031D1F840
51 :10032000A001334A10F0400FF9D0324D0124AA2029
52 :1003300055230321C2F80411C2F80C411146C2F83A
53 :100340008450C2F88C00C2F88C30C2F88040C2F8E9
54 :100350008C00C2F88C30D1F88830254A13F0806FB9
55 :10036000F9D00321AA245520C2F88010C2F88C408D
56 :100370001146C2F88C00D1F888301D4A13F0407F36
57 :10038000F9D02324C2F8A440AA2055230124C2F89E
58 :10039000AC001146C2F8AC30C2F8A040C2F8AC00C4
59 :1003A000C2F8AC30D1F8A830114A13F4806FF9D0FC
60 :1003B0000321AA235520C2F8A010C2F8AC30114680
61 :1003C000C2F8AC00D1F8A800094A10F4407FF9D077
62 :1003D0000949002043F23A03C2F8A801C2F8AC016F
63 :1003E000C2F8C410C2F8C801136030BC704700BF27
64 :1003F00000C00F4063000500DE87280430B5254D9E
65 :10040000254BD5F8C41083B041F08074C5F8C440C2
66 :10041000D5F8C420002042F01001C5F8C4101A68B5
67 :10042000044642F010051D60196821F020021A6090
68 :100430001D6845F0400119601A6822F080051D60B2
69 :10044000196841F480121A601D6825F400111960C2
70 :100450001A6842F480051D601968104D21F40002ED
71 :100460001A6000F0BBF90822012328604FF41641FE
72 :10047000009400F095F9022000F0B0F9084D4FF417
73 :100480001641286008220123009400F089F903B086
74 :1004900030BD00BF00C00F4000C002401800001077
75 :1004A0000C00001038B51F4C1F49D4F8C4301F4849
76 :1004B00043F40045C4F8C4500A686FF0FF0542F0E9
77 :1004C000FF030B60CD6100F0ABFA00F039FB184D73
78 :1004D0002860184800F0A4FA00F032FB2860FFF70B
79 :1004E0008DFFD4F8C420144942F08000C4F8C40041
80 :1004F0004B68002043F480024A604B6823F40002FA
81 :100500004A604B6843F080724A604B6823F0007287
82 :100510004A6000F035FA094B0949186000F03AFAD0
83 :10052000002038BD00C00F4040C00920002D31011F
84 :10053000100000100087930300C002401400001058
85 :10054000A0860100024B0146186800F003B800BF06
86 :1005500018000010436913F0200FFBD001607047B2
87 :1005600030B42A4A84B00DF1040C04460D46284BE1
88 :1005700007CAACE803009C428CF8002029D018DDA3
89 :10058000244B9C421BD003F580418C4214D104A91A
90 :100590004D19214B15F80C0CD3F8AC11820442EA2A
91 :1005A0000101C3F8AC11D3F8AC010240C3F8AC218F
92 :1005B00002E01A4884421ED004B030BC70470DF1EE
93 :1005C000100C6544144B15F80C2CD3F8AC11120424
94 :1005D000E5E704A94D19104B15F80C0CD3F8A81138
95 :1005E000020242EA0101C3F8A811D3F8A8010240AF
96 :1005F000C3F8A821E0E70DF1100C6544064B15F88F
97 :100600000C2CD3F8A8119201EBE700BFB411000045
98 :10061000000001400080094000C00F4000C00040C1
99 :100620002DE9F047044682B00F46002853D000F071
100 :1006300087FA554E554B804630689C42019000F039
101 :100640009C804BDD524B9C425DD003F5804294422E
102 :100650005FD0002302A800EB030E1EF804CC3F017C
103 :10066000B8FBFCF3BB422BD2D6F80090474DDFF825
104 :1006700020A1AC42CDF8049067D050DC454B9C42A1
105 :1006800035D000230DF1080E0EEB030C1CF8041CF2
106 :10069000012920D049082046FFF762FF3268AC42AA
107 :1006A00001925ED046DC3B48844226D0002302A95A
108 :1006B00001EB030E1EF804CCB8FBFCF3BB42D8D30D
109 :1006C000E268B3FBF7F342F08001E1602360E06889
110 :1006D00020F08002E26002B0BDE8F0872D498C4234
111 :1006E000B7D12D48D0F8A831C3F38113B2E72A4817
112 :1006F000D0F8A821C2F38113C4E7274AD2F8A81181
113 :10070000C1F38113D3E72448D0F8AC31C3F30143DC
114 :10071000A0E7214AD2F8AC11C1F381439AE75445CE
115 :1007200019D01E498C42ACD11B49D1F8AC31C3F36E
116 :100730008143A7E754451AD0184B9C42B6D1164BBB
117 :10074000D3F8AC01C0F38143B1E71349D1F8A83124
118 :10075000C3F3012396E71048D0F8AC21C2F301435C
119 :1007600090E70D4BD3F8A801C0F301239FE70A4A95
120 :10077000D2F8AC11C1F3014399E7074AD2F8A811A6
121 :10078000C1F3012366E700BFC01100000000014073
122 :100790000080094000C0004000C00F4000C0094078
123 :1007A00030B4092A9DF808400ED8013BDDB2053A65
124 :1007B000012D0ED90023072C0ED900259C18641991
125 :1007C000C46030BCFFF72CBF013BDDB20322012D1A
126 :1007D000F0D89B00072CF0D8E500EFE703289ABF7C
127 :1007E000024B53F820000020704700BFA411000006
128 :1007F0002DE9F00F099D0446282728684900A761C4
129 :100800000027089EC9B202302F606768F82FFCD11C
130 :10081000202727604FF0040C4FF008094FF0000A22
131 :100820004FF02808002840F39B80276817F0080F36
132 :10083000FBD06768083F302FF7D80FF2080B5BF842
133 :1008400027F000BF3B0900002B0800002B08000028
134 :100850002B0800002B0800002B0800002B080000CC
135 :100860002B0800004B0900002B0800002B0800009B
136 :100870002B0800002B0800002B0800002B080000AC
137 :100880002B080000230900002B0800002B080000A3
138 :100890002B0800002B0800002B0800002B0800008C
139 :1008A0002B080000610900002B0800002B08000045
140 :1008B0002B0800002B0800002B0800002B0800006C
141 :1008C0002B080000090900002B0800002B0800007D
142 :1008D0002B0800002B0800002B0800002B0800004C
143 :1008E0002B080000610900002B0800002B08000005
144 :1008F0002B0800002B0800002B0800002B0800002C
145 :100900002B080000610900001F68A160012FC4F8D6
146 :1009100000C0C4F818902BDD013F12F8011B1F60C6
147 :1009200080E71F68A160012FC4F800A0C4F81890E8
148 :10093000F2DC013816F8011B74E7A160C4F800C0AE
149 :10094000C4F8188012F8011B6CE71F68A160013F12
150 :10095000C4F800C0C4F8188012F8011B1F6061E7DA
151 :100960001422082322600020A361BDE8F00F704725
152 :10097000296801380131296016F8011B52E700BFD0
153 :1009800002289ABF024B53F820000020704700BF96
154 :10099000C811000030B5044683B00D4618B300F00E
155 :1009A000CFF81B490B6801931A4B9C4224D003F5E6
156 :1009B0008822944226D0184B9C4216D0002302AACB
157 :1009C000D11811F804CC6C23B0FBFCFEBEFBF5F58E
158 :1009D0006D08032D98BF042540222820A3612561BE
159 :1009E00065612260A06103B030BD03F5602CDCF8C6
160 :1009F000A831C3F38133E2E7084AD2F8AC11C1F35E
161 :100A00008113DCE70549D1F8AC31C3F30153D6E7D4
162 :100A1000C411000000C0054000C0014000C00F40EC
163 :100A2000F0B4404D3F4CD5F80C31D4F80C1113F014
164 :100A3000030F08BF3C4B3B4E01F003070CBF1A6885
165 :100A400042F21072D6F80C51012F08BF374F05F053
166 :100A5000030308BF3A68022B08BF354B314908BF72
167 :100A60001A68344BB3FBF0F4601EC1F80401500067
168 :100A7000012218E0B4FBF0F1CF1F0132B7F5FC7F83
169 :100A8000144622D9B5FBF0F1CD1F0132B5F5FC7F3C
170 :100A90001BD9B6FBF0F1CD1FA21CB5F5FC7F14D914
171 :100AA000E21C212A3BD02349234F244E5C18B3FB80
172 :100AB000F0F1DD199E19CF1F03F18E4303F5060CEB
173 :100AC000B7F5FC7F0CF50C43D4D8541E154B22040B
174 :100AD00001398918AA2455200122C3F88410C3F8CB
175 :100AE0008C401946C3F88C00C3F88020C3F88C40B2
176 :100AF000C3F88C00D1F888000A4A10F0806FF9D052
177 :100B00000321AA205523C2F88010C2F88C00114698
178 :100B1000C2F88C30D1F8882012F0407FFAD0F0BCB7
179 :100B2000704700BF00C00F4004000010000000101C
180 :100B30000800001000A3E1110046C32300E9A4351A
181 :100B40001C4A30B4D2F88450D2F88440D2F8041150
182 :100B5000D2F80C3113F0030F04BF174B1868154B74
183 :100B6000D3F80C2102F0030C124ABCF1010FD2F8A9
184 :100B70000C2108BF114B02F0030C08BF1868BCF130
185 :100B8000020F04BF0E4B18680A4BD3F8802012F0F6
186 :100B9000020F0CD0AA04930C5A1C5300C4F3074450
187 :100BA0004A1C00FB03F004FB0221B0FBF1F030BC57
188 :100BB000704700BF00C00F4004000010000000108C
189 :100BC000080000100FB42DE9F04784B00CAB53F8C7
190 :100BD000045BDFF8FC803D4F00240393287840B18C
191 :100BE00025280CD00135FFF7ADFC2878013400280A
192 :100BF000F6D1204604B0BDE8F04704B070476878ED
193 :100C0000013525285DD02538532855D8DFE810F068
194 :100C10009C025400540054005400540054005400EA
195 :100C20005400540054005400540054005400540024
196 :100C30005400540054005400540054005400540014
197 :100C40005400540054005400540054005400540004
198 :100C500054005400540054005400540054005400F4
199 :100C600054005400540054005400540054005400E4
200 :100C70005400540054005C015400540054005400CB
201 :100C800054005400540054005400540054016200B5
202 :100C900054005400540054005400540054005400B4
203 :100CA00054005400540054005400540054005400A4
204 :100CB000540054005400FB0103980135021D0392B7
205 :100CC0008CE7FFF73FFC0135013487E7676666660E
206 :100CD000D4110000039BEC46D3F8009098E807007D
207 :100CE000ACE803000020043381456E4603938CF882
208 :100CF00000208DF80900C0F22C82B9F1000F40F3FA
209 :100D0000D98087FB09204FEAE971C1EBA00303EB0F
210 :100D1000830EA9EB4E0A0AF130098DF80090002BE2
211 :100D200000F0208287FB03C9DA17C2EBA90202EBAD
212 :100D3000820CA3EB4C0330338DF80130002A00F015
213 :100D40000E8287FB023ED017C0EBAE0303EB830A93
214 :100D5000A2EB4A0130318DF80210002B00F0048222
215 :100D600087FB03C9DA17C2EBA90202EB820CA3EBE3
216 :100D70004C0330338DF80330002A00F0FB8187FBF1
217 :100D8000023ED017C0EBAE0303EB830AA2EB4A018D
218 :100D900030318DF80410002B00F0E98187FB03C986
219 :100DA000DA17C2EBA90202EB820CA3EB4C0330333F
220 :100DB0008DF80530002A00F0E08187FB023ED01755
221 :100DC000C0EBAE0303EB830AA2EB4A0130318DF88E
222 :100DD0000610002B00F0D78187FB03C9DA17C2EB9E
223 :100DE000A90202EB820CA3EB4C0330338DF80730E1
224 :100DF000002A00F0C58187FB023ED017C0EBAE038E
225 :100E000003EB830AA2EB4A0130318DF80810002B66
226 :100E100000F0BC8187FB03C9D817C0EBA90202EB25
227 :100E2000820CA3EB4C0330338DF809304FF0090AE4
228 :100E300016F80A00FFF786FBBAF1000F0AF0030369
229 :100E40000AF1FF3936DDD3B1012B0DD0022B05D0CD
230 :100E500016F80900FFF776FB09F1FF3916F80900CB
231 :100E6000FFF770FB09F1FF3916F8090009F1FF39A6
232 :100E7000FFF768FB09F1010CBCF1000F1ADD16F851
233 :100E8000090009F1FF3AFFF75DFB16F80A00A9F126
234 :100E9000020AFFF757FB16F80A00FFF753FBA9F108
235 :100EA0000303F05CA9F10409FFF74CFB09F1010110
236 :100EB0000029E4DC013591E6039A0135111D107813
237 :100EC0000391FFF73FFB89E603996E460A68081D08
238 :100ED00002F00F03092B88BF0733039098E8030043
239 :100EE00086E80300111101F00F003033092888BF94
240 :100EF00007300A118DF8003002F00F033030092B53
241 :100F000088BF073311118DF8010001F00F00092887
242 :100F100088BF0730091101F00F023030092A88BF5D
243 :100F2000073203F130090B118DF8030003F00F00B5
244 :100F3000092888BF07301B1102F1300C03F00F02A3
245 :100F4000092A00F1300188BF0732C3F303103032A1
246 :100F5000092888BF073030308DF802908DF804C022
247 :100F60008DF805108DF806208DF80700082300E0A5
248 :100F70004B4603F1FF3916F809003028F8D0002B52
249 :100F800098DDFFF7DFFAB9F1000F09F0030309F16B
250 :100F9000FF3A8FDDD3B1012B0DD0022B05D016F80F
251 :100FA0000A00FFF7CFFA0AF1FF3A16F80A00FFF736
252 :100FB000C9FA0AF1FF3A16F80A000AF1FF3AFFF7F8
253 :100FC000C1FA0AF1010100297FF774AF16F80A008F
254 :100FD0000AF1FF39FFF7B6FA16F80900AAF102097B
255 :100FE000FFF7B0FA16F80900FFF7ACFAAAF103030D
256 :100FF000F05CAAF1040AFFF7A5FA0AF1010CBCF1B2
257 :10100000000FE3DC56E703996E460A68081D02F0FC
258 :101010000F03092B88BF2733039098E8030086E865
259 :101020000300111101F00F003033092888BF273069
260 :101030000A118DF8003002F00F033030092B88BF01
261 :10104000273311118DF8010001F00F00092888BF26
262 :101050002730091101F00F023030092A88BF2732EA
263 :1010600003F1300C0B118DF8030003F00F00092879
264 :1010700088BF27301B1102F1300903F00F02092A43
265 :1010800088BF27328DF802C000F1300CC3F3031083
266 :101090003032092888BF273030308DF804908DF821
267 :1010A00005C08DF806208DF80700082300E04B46A8
268 :1010B00003F1FF3916F809003028F8D0002B7FF72C
269 :1010C000F9AEFFF73FFAB9F1000F09F0030309F198
270 :1010D000FF3A7FF7EFAED3B1012B0DD0022B05D035
271 :1010E00016F80A00FFF72EFA0AF1FF3A16F80A007E
272 :1010F000FFF728FA0AF1FF3A16F80A000AF1FF3A58
273 :10110000FFF720FA0AF10103002B7FF7D3AE16F8A0
274 :101110000A000AF1FF39FFF715FA16F80900AAF1DB
275 :101120000209FFF70FFA16F80900FFF70BFAAAF108
276 :101130000303F05CAAF1040AFFF704FA0AF1010CB8
277 :10114000BCF1000FE3DCB5E625200135FFF7FAF925
278 :1011500044E52D20C9F10009FFF7F4F9CDE54FF082
279 :10116000010A65E69A4663E64FF0020A60E64FF030
280 :10117000040A5DE64FF0030A5AE64FF0050A57E607
281 :101180004FF0070A54E64FF0060A51E64FF0080AFE
282 :101190004EE600BF010500007465737420256420CD
283 :1011A0000A0D000000C0004000000140008009401E
284 :1011B00000C009400101020200000000030000001D
285 :1011C000040102080401020800C0014000C00540FB
286 :1011D00000000A40202020202020202000000000C5
287 :0C11E000001BB70000093D00008000006B
288 :00000001FF
@@ -0,0 +1,464
1 Archive member included because of file (symbol)
2
3 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
4 main.o (bsp_init)
5 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
6 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o) (uartputc)
7 /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
8 main.o (i2cwrite2)
9 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
10 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o) (coresetCpuFreq)
11 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
12 main.o (libucprintf)
13
14 Discarded input sections
15
16 .text 0x00000000 0x0 main.o
17 .data 0x00000000 0x0 main.o
18 .bss 0x00000000 0x0 main.o
19 .text 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
20 .data 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
21 .bss 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
22 .text 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
23 .data 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
24 .bss 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
25 .text.__get_PSP
26 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
27 .text.__set_PSP
28 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
29 .text.__get_MSP
30 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
31 .text.__set_MSP
32 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
33 .text.__get_BASEPRI
34 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
35 .text.__set_BASEPRI
36 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
37 .text.__get_PRIMASK
38 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
39 .text.__set_PRIMASK
40 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
41 .text.__get_FAULTMASK
42 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
43 .text.__set_FAULTMASK
44 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
45 .text.__get_CONTROL
46 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
47 .text.__set_CONTROL
48 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
49 .text.__REV 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
50 .text.__REV16 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
51 .text.__REVSH 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
52 .text.__RBIT 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
53 .text.__LDREXB
54 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
55 .text.__LDREXH
56 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
57 .text.__LDREXW
58 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
59 .text.__STREXB
60 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
61 .text.__STREXH
62 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
63 .text.__STREXW
64 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
65 .text 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
66 .data 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
67 .bss 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
68 .text.SystemCoreClockUpdate
69 0x00000000 0xcc /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
70 .data.SystemCoreClock
71 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
72 .text 0x00000000 0x0 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
73 .data 0x00000000 0x0 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
74 .bss 0x00000000 0x0 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
75 .text.bsp_GPIO_init
76 0x00000000 0x28 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
77 .text.bsp_iic_init
78 0x00000000 0x58 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
79 .text.consolegetc
80 0x00000000 0xc /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
81 .bss.UART3 0x00000000 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
82 .bss.UART1 0x00000000 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
83 .data.VREF0 0x00000000 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
84 .bss.IIC1 0x00000000 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
85 .bss.IIC2 0x00000000 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
86 .text 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
87 .data 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
88 .bss 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
89 .text.uartgetc
90 0x00000000 0x10 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
91 .text.uartputs
92 0x00000000 0x18 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
93 .text.uartgets
94 0x00000000 0x20 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
95 .text.uartoff 0x00000000 0x50 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
96 .text.uarton 0x00000000 0x50 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
97 .text.uartgetpclkfactor
98 0x00000000 0x78 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
99 .text 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
100 .data 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
101 .bss 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
102 .text.i2cwrite
103 0x00000000 0x164 /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
104 .text.i2cread 0x00000000 0x8c /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
105 .text.i2csetup
106 0x00000000 0x14 /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
107 .text.i2cenable
108 0x00000000 0x8 /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
109 .text.i2cdisable
110 0x00000000 0x8 /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
111 .text.i2cgetpclkfactor
112 0x00000000 0x64 /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
113 .text.i2csetpclkfactor
114 0x00000000 0xa0 /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
115 .rodata.C.1.5916
116 0x00000000 0xc /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
117 .text 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
118 .data 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
119 .bss 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
120 .text 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
121 .data 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
122 .bss 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
123 .text.clearch 0x00000000 0x24 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
124 .text.printhexfromint
125 0x00000000 0x140 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
126 .text.printdecfromint
127 0x00000000 0x1e0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
128 .text.int2hex 0x00000000 0xd8 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
129 .text.scanintfromhex
130 0x00000000 0x27c /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
131 .text.scanintfromdec
132 0x00000000 0x188 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
133 .text.libucscanf
134 0x00000000 0x250 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
135 .rodata.str1.4
136 0x00000000 0x50 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
137
138 Memory Configuration
139
140 Name Origin Length Attributes
141 IROM 0x00000000 0x00080000 xr
142 IRAM0 0x10000000 0x00008000 xrw
143 IRAM1 0x2007c000 0x00004000 xrw
144 IRAM2 0x20080000 0x00004000 xrw
145 *default* 0x00000000 0xffffffff
146
147 Linker script and memory map
148
149
150 .text 0x00000000 0x11e0
151 *(.isr_vector .isr_vector.*)
152 .isr_vector 0x00000000 0xc4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
153 0x00000000 g_pfnVectors
154 *(.text .text.*)
155 .text.main 0x000000c4 0xe0 main.o
156 0x000000c4 main
157 .text.Reset_Handler
158 0x000001a4 0x16c /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
159 0x000001a4 Reset_Handler
160 .text.Default_Handler
161 0x00000310 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
162 0x00000310 TIMER2_IRQHandler
163 0x00000310 DebugMon_Handler
164 0x00000310 RIT_IRQHandler
165 0x00000310 I2C0_IRQHandler
166 0x00000310 SysTick_Handler
167 0x00000310 PWM1_IRQHandler
168 0x00000310 PendSV_Handler
169 0x00000310 I2C1_IRQHandler
170 0x00000310 EINT2_IRQHandler
171 0x00000310 UART1_IRQHandler
172 0x00000310 EINT3_IRQHandler
173 0x00000310 TIMER3_IRQHandler
174 0x00000310 UART0_IRQHandler
175 0x00000310 UsageFault_Handler
176 0x00000310 PLL0_IRQHandler
177 0x00000310 CAN_IRQHandler
178 0x00000310 PLL1_IRQHandler
179 0x00000310 SSP0_IRQHandler
180 0x00000310 I2S_IRQHandler
181 0x00000310 I2C2_IRQHandler
182 0x00000310 RTC_IRQHandler
183 0x00000310 TIMER0_IRQHandler
184 0x00000310 SPI_IRQHandler
185 0x00000310 EINT1_IRQHandler
186 0x00000310 TIMER1_IRQHandler
187 0x00000310 UART2_IRQHandler
188 0x00000310 Default_Handler
189 0x00000310 ADC_IRQHandler
190 0x00000310 SSP1_IRQHandler
191 0x00000310 USB_IRQHandler
192 0x00000310 BOD_IRQHandler
193 0x00000310 MemManage_Handler
194 0x00000310 WDT_IRQHandler
195 0x00000310 SVC_Handler
196 0x00000310 QEI_IRQHandler
197 0x00000310 EINT0_IRQHandler
198 0x00000310 DMA_IRQHandler
199 0x00000310 BusFault_Handler
200 0x00000310 UART3_IRQHandler
201 0x00000310 MCPWM_IRQHandler
202 0x00000310 ENET_IRQHandler
203 .text.SystemInit
204 0x00000314 0xe8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
205 0x00000314 SystemInit
206 .text.bsp_uart_init
207 0x000003fc 0xa8 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
208 0x000003fc bsp_uart_init
209 .text.bsp_init
210 0x000004a4 0xa0 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
211 0x000004a4 bsp_init
212 .text.consoleputc
213 0x00000544 0x10 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
214 0x00000544 consoleputc
215 .text.uartputc
216 0x00000554 0xc /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
217 0x00000554 uartputc
218 .text.uartsetpclkfactor
219 0x00000560 0xc0 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
220 0x00000560 uartsetpclkfactor
221 .text.uartsetbaudrate
222 0x00000620 0x180 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
223 0x00000620 uartsetbaudrate
224 .text.uartsetup
225 0x000007a0 0x3c /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
226 0x000007a0 uartsetup
227 .text.uartopen
228 0x000007dc 0x14 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
229 0x000007dc uartopen
230 .text.i2cwrite2
231 0x000007f0 0x190 /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
232 0x000007f0 i2cwrite2
233 .text.i2copen 0x00000980 0x14 /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
234 0x00000980 i2copen
235 .text.i2csetdatarate
236 0x00000994 0x8c /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
237 0x00000994 i2csetdatarate
238 .text.coresetCpuFreq
239 0x00000a20 0x120 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
240 0x00000a20 coresetCpuFreq
241 .text.coregetCpuFreq
242 0x00000b40 0x84 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
243 0x00000b40 coregetCpuFreq
244 .text.libucprintf
245 0x00000bc4 0x5d0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
246 0x00000bc4 libucprintf
247 *(.gnu.linkonce.t.*)
248 *(.glue_7)
249 .glue_7 0x00000000 0x0 linker stubs
250 *(.glue_7t)
251 .glue_7t 0x00000000 0x0 linker stubs
252 *(.gcc_except_table)
253 *(.rodata .rodata*)
254 .rodata.C.1.5890
255 0x00001194 0x4 main.o
256 .rodata.str1.4
257 0x00001198 0xc main.o
258 .rodata.CSWTCH.5
259 0x000011a4 0x10 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
260 .rodata.C.0.5884
261 0x000011b4 0xc /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
262 .rodata.C.2.5915
263 0x000011c0 0x4 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
264 .rodata.C.3.5941
265 0x000011c4 0x4 /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
266 .rodata.CSWTCH.8
267 0x000011c8 0xc /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
268 .rodata 0x000011d4 0xc /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
269 *(.gnu.linkonce.r.*)
270
271 .vfp11_veneer 0x000011e0 0x0
272 .vfp11_veneer 0x00000000 0x0 linker stubs
273
274 .v4_bx 0x000011e0 0x0
275 .v4_bx 0x00000000 0x0 linker stubs
276
277 .ctors 0x000011e0 0x0
278 0x000011e0 . = ALIGN (0x4)
279 0x000011e0 PROVIDE (__ctors_start, .)
280 *(SORT(.ctors.*))
281 *(.ctors)
282 0x000011e0 PROVIDE (__ctors_end, .)
283
284 .dtors 0x000011e0 0x0
285 0x000011e0 . = ALIGN (0x4)
286 0x000011e0 PROVIDE (__dtors_start, .)
287 *(SORT(.dtors.*))
288 *(.dtors)
289 0x000011e0 PROVIDE (__dtors_end, .)
290 0x000011e0 . = ALIGN (0x4)
291 0x000011e0 _etext = .
292 0x000011e0 _sifastcode = .
293
294 .fastcode 0x10000000 0x0 load address 0x000011e0
295 0x10000000 . = ALIGN (0x4)
296 0x10000000 _sfastcode = .
297 *(.glue_7t)
298 *(.glue_7)
299 *(.fastcode)
300 0x10000000 . = ALIGN (0x4)
301 0x10000000 _efastcode = .
302 0x10000000 _sidata = .
303
304 .usb_ram
305 *.o(USB_RAM)
306
307 .data 0x10000000 0xc load address 0x000011e0
308 0x000011e0 _sidata = LOADADDR (.data)
309 0x10000000 . = ALIGN (0x4)
310 0x10000000 _sdata = .
311 *(vtable vtable.*)
312 *(.data .data.*)
313 .data.OSC0 0x10000000 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
314 0x10000000 OSC0
315 .data.INTOSC 0x10000004 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
316 0x10000004 INTOSC
317 .data.RTCOSC 0x10000008 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
318 0x10000008 RTCOSC
319 *(.gnu.linkonce.d*)
320 0x1000000c . = ALIGN (0x4)
321 0x1000000c _edata = .
322
323 .bss 0x1000000c 0x10 load address 0x000011ec
324 0x1000000c . = ALIGN (0x4)
325 0x1000000c _sbss = .
326 *(.bss .bss.*)
327 .bss.UART2 0x1000000c 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
328 0x1000000c UART2
329 .bss.currentCpuFreq
330 0x10000010 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
331 0x10000010 currentCpuFreq
332 .bss.IIC0 0x10000014 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
333 0x10000014 IIC0
334 .bss.UART0 0x10000018 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
335 0x10000018 UART0
336 *(.gnu.linkonce.b*)
337 *(COMMON)
338 0x1000001c . = ALIGN (0x4)
339 0x1000001c _ebss = .
340
341 .stackarea 0x1000001c 0x804 load address 0x000011ec
342 0x10000020 . = ALIGN (0x8)
343 *fill* 0x1000001c 0x4 00
344 0x10000020 _sstack = .
345 *(.stackarea .stackarea.*)
346 .stackarea 0x10000020 0x800 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
347 0x10000020 pulStack
348 0x10000820 . = ALIGN (0x8)
349 0x10000820 _estack = .
350 0x10000820 . = ALIGN (0x4)
351 0x10000820 _end = .
352 0x10000820 PROVIDE (end, .)
353
354 .stab
355 *(.stab)
356
357 .stabstr
358 *(.stabstr)
359
360 .stab.excl
361 *(.stab.excl)
362
363 .stab.exclstr
364 *(.stab.exclstr)
365
366 .stab.index
367 *(.stab.index)
368
369 .stab.indexstr
370 *(.stab.indexstr)
371
372 .debug
373 *(.debug)
374
375 .line
376 *(.line)
377
378 .debug_srcinfo
379 *(.debug_srcinfo)
380
381 .debug_sfnames
382 *(.debug_sfnames)
383
384 .debug_aranges
385 *(.debug_aranges)
386
387 .debug_pubnames
388 *(.debug_pubnames)
389
390 .debug_info
391 *(.debug_info .gnu.linkonce.wi.*)
392
393 .debug_abbrev
394 *(.debug_abbrev)
395
396 .debug_line
397 *(.debug_line)
398
399 .debug_frame
400 *(.debug_frame)
401
402 .debug_str
403 *(.debug_str)
404
405 .debug_loc
406 *(.debug_loc)
407
408 .debug_macinfo
409 *(.debug_macinfo)
410
411 .debug_weaknames
412 *(.debug_weaknames)
413
414 .debug_funcnames
415 *(.debug_funcnames)
416
417 .debug_typenames
418 *(.debug_typenames)
419
420 .debug_varnames
421 *(.debug_varnames)
422 LOAD main.o
423 LOAD /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
424 LOAD /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
425 LOAD /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
426 LOAD /opt/libuc2/bsp/bin/LandTiger/libbsp.a
427 LOAD /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a
428 LOAD /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a
429 LOAD /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a
430 LOAD /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a
431 OUTPUT(lpc1768_iic.elf elf32-littlearm)
432
433 .comment 0x00000000 0x2a
434 .comment 0x00000000 0x2a main.o
435 0x2b (size before relaxing)
436 .comment 0x00000000 0x2b /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
437 .comment 0x00000000 0x2b /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
438 .comment 0x00000000 0x2b /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
439 .comment 0x00000000 0x2b /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
440 .comment 0x00000000 0x2b /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
441 .comment 0x00000000 0x2b /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
442 .comment 0x00000000 0x2b /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
443 .comment 0x00000000 0x2b /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
444
445 .ARM.attributes
446 0x00000000 0x31
447 .ARM.attributes
448 0x00000000 0x31 main.o
449 .ARM.attributes
450 0x00000031 0x31 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
451 .ARM.attributes
452 0x00000062 0x31 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
453 .ARM.attributes
454 0x00000093 0x31 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
455 .ARM.attributes
456 0x000000c4 0x31 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
457 .ARM.attributes
458 0x000000f5 0x31 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
459 .ARM.attributes
460 0x00000126 0x31 /opt/libuc2/lib/bin/lpc17XX/IIC/libiic.a(iic.o)
461 .ARM.attributes
462 0x00000157 0x31 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
463 .ARM.attributes
464 0x00000188 0x31 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
@@ -0,0 +1,12
1 TEMPLATE = app
2 ARCH = lpc17XX-arm-noabi-gcc
3 TARGET = lpc1768_iic
4 BSP = LandTiger
5
6 LIBS += UART IIC CORE UCSTRINGS
7
8 SOURCES += main.c
9
10
11 HEADERS +=
12
@@ -0,0 +1,68
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22
23 #include "LPC17xx.h"
24 #include "bsp.h"
25 #include "core.h"
26 #include "uart.h"
27 #include "libucstrings.h"
28 #define __delay(t) for(volatile int i=0;i<t;i++);
29
30
31 int main (void)
32 {
33 bsp_init();
34 uartsetbaudrate(UART0,38400);
35 int i = 0;
36 int cnt = 2;
37 char data[]={1,5};
38 while(1)
39 {
40
41 i2cwrite2(IIC0,0xA0,0,&cnt,data,cnt);
42 LED1_OFF;
43 LED2_ON;
44 LED3_OFF;
45 LED4_ON;
46 LED5_OFF;
47 LED6_ON;
48 LED7_OFF;
49 LED8_ON;
50 //uartputs(UART2,"Hello World\n\r");
51 libucprintf("test %d \n\r",i++);
52 __delay(1024*1024);
53 LED1_ON;
54 LED2_OFF;
55 LED3_ON;
56 LED4_OFF;
57 LED5_ON;
58 LED6_OFF;
59 LED7_ON;
60 LED8_OFF;
61 //uartputs(UART0,"Hello World\n\r");
62 libucprintf("test %d \n\r",i++);
63 __delay(1024*1024);
64 }
65 return 0;
66
67 }
68
@@ -0,0 +1,24
1 main.o: main.c /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h \
2 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h \
3 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h \
4 /opt/libuc2/bsp/includes/LandTiger/bsp.h \
5 /opt/libuc2/lib/includes/lpc17XX/UART/uart.h \
6 /opt/libuc2/lib/includes/lpc17XX/IIC/iic.h \
7 /opt/libuc2/lib/includes/lpc17XX/CORE/core.h \
8 /opt/libuc2/lib/includes/lpc17XX/STRINGS/libucstrings.h
9
10 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h:
11
12 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h:
13
14 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h:
15
16 /opt/libuc2/bsp/includes/LandTiger/bsp.h:
17
18 /opt/libuc2/lib/includes/lpc17XX/UART/uart.h:
19
20 /opt/libuc2/lib/includes/lpc17XX/IIC/iic.h:
21
22 /opt/libuc2/lib/includes/lpc17XX/CORE/core.h:
23
24 /opt/libuc2/lib/includes/lpc17XX/STRINGS/libucstrings.h:
@@ -0,0 +1,19
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4
5 HEADERS +=
6 APPSOURCES += main.c
7 OBJECTFILES = $(APPSOURCES:.c=.o)
8 ARCH = $(LIBUC)/rules/lpc17XX-arm-noabi-gcc
9 TARGET=lpc1768_led_blink
10 LIBUC_INCLUDES=$(LIBUC_INC_DIR_UART)
11 LIBUC_LIBRARIES=$(LIBUC_LIBS_DIR_UART) $(LIBUC_LIBS_UART)
12 TARGETINSTALLPATH=
13 HEADERSINSTALLPATH=
14 BSP=mbed
15 include $(ARCH)/rules.mk
16
17 all:bin
18 @echo Code compiled
19
1 NO CONTENT: new file 100755, binary diff hidden
@@ -0,0 +1,100
1
2 lpc1768_led_blink.elf: file format elf32-littlearm
3 lpc1768_led_blink.elf
4 architecture: arm, flags 0x00000112:
5 EXEC_P, HAS_SYMS, D_PAGED
6 start address 0x00000000
7
8 Program Header:
9 LOAD off 0x00008000 vaddr 0x00000000 paddr 0x00000000 align 2**15
10 filesz 0x00000388 memsz 0x00000388 flags r-x
11 LOAD off 0x00010000 vaddr 0x10000000 paddr 0x00000388 align 2**15
12 filesz 0x00000000 memsz 0x00000004 flags rw-
13 LOAD off 0x00010004 vaddr 0x10000004 paddr 0x00000388 align 2**15
14 filesz 0x00000000 memsz 0x00000804 flags rw-
15 private flags = 5000000: [Version5 EABI]
16
17 Sections:
18 Idx Name Size VMA LMA File off Algn
19 0 .text 00000388 00000000 00000000 00008000 2**2
20 CONTENTS, ALLOC, LOAD, READONLY, CODE
21 1 .bss 00000004 10000000 00000388 00010000 2**2
22 ALLOC
23 2 .stackarea 00000804 10000004 00000388 00010004 2**2
24 ALLOC
25 3 .comment 0000002a 00000000 00000000 00008388 2**0
26 CONTENTS, READONLY
27 4 .ARM.attributes 00000031 00000000 00000000 000083b2 2**0
28 CONTENTS, READONLY
29 SYMBOL TABLE:
30 00000000 l d .text 00000000 .text
31 10000000 l d .bss 00000000 .bss
32 10000004 l d .stackarea 00000000 .stackarea
33 00000000 l d .comment 00000000 .comment
34 00000000 l d .ARM.attributes 00000000 .ARM.attributes
35 00000000 l df *ABS* 00000000 startup_LPC17xx.c
36 00000000 l df *ABS* 00000000 main.c
37 00000000 l df *ABS* 00000000 system_LPC17xx.c
38 0000029c w F .text 00000002 TIMER2_IRQHandler
39 0000029c w F .text 00000002 DebugMon_Handler
40 0000029c w F .text 00000002 RIT_IRQHandler
41 0000029c w F .text 00000002 I2C0_IRQHandler
42 00000000 w *UND* 00000000 HardFault_Handler
43 0000029c w F .text 00000002 SysTick_Handler
44 0000029c w F .text 00000002 PWM1_IRQHandler
45 00000388 g *ABS* 00000000 _sidata
46 0000029c w F .text 00000002 PendSV_Handler
47 00000000 w *UND* 00000000 NMI_Handler
48 0000029c w F .text 00000002 I2C1_IRQHandler
49 0000029c w F .text 00000002 EINT2_IRQHandler
50 0000029c w F .text 00000002 UART1_IRQHandler
51 0000029c w F .text 00000002 EINT3_IRQHandler
52 00000388 g .text 00000000 _etext
53 10000000 g .bss 00000000 _sbss
54 0000029c w F .text 00000002 TIMER3_IRQHandler
55 0000029c w F .text 00000002 UART0_IRQHandler
56 0000029c w F .text 00000002 UsageFault_Handler
57 10000000 g .text 00000000 _sdata
58 0000029c w F .text 00000002 PLL0_IRQHandler
59 0000029c w F .text 00000002 CAN_IRQHandler
60 0000029c w F .text 00000002 PLL1_IRQHandler
61 10000000 g O .bss 00000004 temp
62 0000029c w F .text 00000002 SSP0_IRQHandler
63 0000029c w F .text 00000002 I2S_IRQHandler
64 0000029c w F .text 00000002 I2C2_IRQHandler
65 0000029c w F .text 00000002 RTC_IRQHandler
66 10000004 g .bss 00000000 _ebss
67 0000029c w F .text 00000002 TIMER0_IRQHandler
68 00000130 w F .text 0000016c Reset_Handler
69 0000029c w F .text 00000002 SPI_IRQHandler
70 0000029c w F .text 00000002 EINT1_IRQHandler
71 0000029c w F .text 00000002 TIMER1_IRQHandler
72 0000029c w F .text 00000002 UART2_IRQHandler
73 0000029c g F .text 00000002 Default_Handler
74 0000029c w F .text 00000002 ADC_IRQHandler
75 0000029c w F .text 00000002 SSP1_IRQHandler
76 10000000 g .text 00000000 _efastcode
77 0000029c w F .text 00000002 USB_IRQHandler
78 0000029c w F .text 00000002 BOD_IRQHandler
79 0000029c w F .text 00000002 MemManage_Handler
80 000000c4 g F .text 0000006c main
81 10000008 g O .stackarea 00000800 pulStack
82 0000029c w F .text 00000002 WDT_IRQHandler
83 0000029c w F .text 00000002 SVC_Handler
84 000002a0 g F .text 000000e8 SystemInit
85 0000029c w F .text 00000002 QEI_IRQHandler
86 10000008 g .stackarea 00000000 _sstack
87 0000029c w F .text 00000002 EINT0_IRQHandler
88 00000388 g .text 00000000 _sifastcode
89 10000000 g .text 00000000 _sfastcode
90 10000808 g .stackarea 00000000 _estack
91 10000000 g .text 00000000 _edata
92 10000808 g .stackarea 00000000 _end
93 00000000 g O .text 000000c4 g_pfnVectors
94 0000029c w F .text 00000002 DMA_IRQHandler
95 0000029c w F .text 00000002 BusFault_Handler
96 0000029c w F .text 00000002 UART3_IRQHandler
97 0000029c w F .text 00000002 MCPWM_IRQHandler
98 0000029c w F .text 00000002 ENET_IRQHandler
99
100
@@ -0,0 +1,58
1 :10000000080800103101000000000000000000009E
2 :100010009D0200009D0200009D0200000000000003
3 :100020000000000000000000000000009D02000031
4 :100030009D020000000000009D0200009D020000E3
5 :100040009D0200009D0200009D0200009D02000034
6 :100050009D0200009D0200009D0200009D02000024
7 :100060009D0200009D0200009D0200009D02000014
8 :100070009D0200009D0200009D0200009D02000004
9 :100080009D0200009D0200009D0200009D020000F4
10 :100090009D0200009D0200009D0200009D020000E4
11 :1000A0009D0200009D0200009D0200009D020000D4
12 :1000B0009D0200009D0200009D0200009D020000C4
13 :1000C0009D02000030B4174D174AD5F8C410174BE5
14 :1000D00041F40044C5F8C4401068154640F480213E
15 :1000E00011606C69002244F4802068611A60511C20
16 :1000F000D01C941C0432B2F1807F19601C6018601F
17 :10010000F4D16C69002224F4802068611A60511CCB
18 :10011000D01C941C0432B2F1807F19601C601860FE
19 :10012000F4D1DEE700C00F4020C00920000000101D
20 :10013000684620F007018D46F1B500F0B1F84F4850
21 :100140004F49884235D04F4CA14232D2024652F834
22 :10015000046B0B46CD4343F8046B6519A342C5F30A
23 :10016000810526D29DB1012D0BD0022D05D0156839
24 :1001700000F108021D6001F1080352F8040B43F876
25 :10018000040B52F8041B43F8041BA34211D29646F9
26 :100190005EF8047B5668D568DEF804009C464CF88F
27 :1001A000047B5E60CCF80400DD6010331032A342A3
28 :1001B000EDD335483549884234D0354CA14231D24F
29 :1001C000024652F8046B0B46CD4343F8046B6519A5
30 :1001D000A342C5F3810525D29DB1012D0BD0022D7F
31 :1001E00005D0156800F108021D6001F1080352F8FE
32 :1001F000040B43F8040B52F8041B43F8041BA342FE
33 :1002000010D294465CF8047B5668D568DCF804008C
34 :10021000194641F8047B5E604860DD60103310329F
35 :10022000A342EED31B491C48814221D200220B4637
36 :10023000CC4343F8042B04198342C4F3810417D23E
37 :1002400064B1012C06D0022C1CBF1A6001F1080316
38 :1002500043F8042B43F8042B834209D29E464EF800
39 :10026000042B5A60CEF80420DA6010338342F5D3B1
40 :10027000FFF728FFBDE8F14085467047880300007E
41 :1002800000000010000000108803000000000010B3
42 :10029000000000100000001004000010FEE700BF86
43 :1002A0003649202330B4C1F8A031D1F8A001334A37
44 :1002B00010F0400FF9D0324D0124AA20552303211C
45 :1002C000C2F80411C2F80C411146C2F88450C2F8B9
46 :1002D0008C00C2F88C30C2F88040C2F88C00C2F8A2
47 :1002E0008C30D1F88830254A13F0806FF9D0032183
48 :1002F000AA245520C2F88010C2F88C401146C2F8DA
49 :100300008C00D1F888301D4A13F0407FF9D02324A7
50 :10031000C2F8A440AA2055230124C2F8AC0011461B
51 :10032000C2F8AC30C2F8A040C2F8AC00C2F8AC30A1
52 :10033000D1F8A830114A13F4806FF9D00321AA2311
53 :100340005520C2F8A010C2F8AC301146C2F8AC007B
54 :10035000D1F8A800094A10F4407FF9D009490020DB
55 :1003600043F23A03C2F8A801C2F8AC01C2F8C410C3
56 :10037000C2F8C801136030BC704700BF00C00F4016
57 :0803800063000500DE8728047C
58 :00000001FF
@@ -0,0 +1,306
1
2 Allocating common symbols
3 Common symbol size file
4
5 temp 0x4 main.o
6
7 Discarded input sections
8
9 .text 0x00000000 0x0 main.o
10 .data 0x00000000 0x0 main.o
11 .bss 0x00000000 0x0 main.o
12 .text._delay 0x00000000 0x4c main.o
13 .text 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
14 .data 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
15 .bss 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
16 .text 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
17 .data 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
18 .bss 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
19 .text.__get_PSP
20 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
21 .text.__set_PSP
22 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
23 .text.__get_MSP
24 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
25 .text.__set_MSP
26 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
27 .text.__get_BASEPRI
28 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
29 .text.__set_BASEPRI
30 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
31 .text.__get_PRIMASK
32 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
33 .text.__set_PRIMASK
34 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
35 .text.__get_FAULTMASK
36 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
37 .text.__set_FAULTMASK
38 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
39 .text.__get_CONTROL
40 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
41 .text.__set_CONTROL
42 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
43 .text.__REV 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
44 .text.__REV16 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
45 .text.__REVSH 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
46 .text.__RBIT 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
47 .text.__LDREXB
48 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
49 .text.__LDREXH
50 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
51 .text.__LDREXW
52 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
53 .text.__STREXB
54 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
55 .text.__STREXH
56 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
57 .text.__STREXW
58 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
59 .text 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
60 .data 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
61 .bss 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
62 .text.SystemCoreClockUpdate
63 0x00000000 0xcc /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
64 .data.SystemCoreClock
65 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
66
67 Memory Configuration
68
69 Name Origin Length Attributes
70 IROM 0x00000000 0x00080000 xr
71 IRAM0 0x10000000 0x00008000 xrw
72 IRAM1 0x2007c000 0x00004000 xrw
73 IRAM2 0x20080000 0x00004000 xrw
74 *default* 0x00000000 0xffffffff
75
76 Linker script and memory map
77
78
79 .text 0x00000000 0x388
80 *(.isr_vector .isr_vector.*)
81 .isr_vector 0x00000000 0xc4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
82 0x00000000 g_pfnVectors
83 *(.text .text.*)
84 .text.main 0x000000c4 0x6c main.o
85 0x000000c4 main
86 .text.Reset_Handler
87 0x00000130 0x16c /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
88 0x00000130 Reset_Handler
89 .text.Default_Handler
90 0x0000029c 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
91 0x0000029c TIMER2_IRQHandler
92 0x0000029c DebugMon_Handler
93 0x0000029c RIT_IRQHandler
94 0x0000029c I2C0_IRQHandler
95 0x0000029c SysTick_Handler
96 0x0000029c PWM1_IRQHandler
97 0x0000029c PendSV_Handler
98 0x0000029c I2C1_IRQHandler
99 0x0000029c EINT2_IRQHandler
100 0x0000029c UART1_IRQHandler
101 0x0000029c EINT3_IRQHandler
102 0x0000029c TIMER3_IRQHandler
103 0x0000029c UART0_IRQHandler
104 0x0000029c UsageFault_Handler
105 0x0000029c PLL0_IRQHandler
106 0x0000029c CAN_IRQHandler
107 0x0000029c PLL1_IRQHandler
108 0x0000029c SSP0_IRQHandler
109 0x0000029c I2S_IRQHandler
110 0x0000029c I2C2_IRQHandler
111 0x0000029c RTC_IRQHandler
112 0x0000029c TIMER0_IRQHandler
113 0x0000029c SPI_IRQHandler
114 0x0000029c EINT1_IRQHandler
115 0x0000029c TIMER1_IRQHandler
116 0x0000029c UART2_IRQHandler
117 0x0000029c Default_Handler
118 0x0000029c ADC_IRQHandler
119 0x0000029c SSP1_IRQHandler
120 0x0000029c USB_IRQHandler
121 0x0000029c BOD_IRQHandler
122 0x0000029c MemManage_Handler
123 0x0000029c WDT_IRQHandler
124 0x0000029c SVC_Handler
125 0x0000029c QEI_IRQHandler
126 0x0000029c EINT0_IRQHandler
127 0x0000029c DMA_IRQHandler
128 0x0000029c BusFault_Handler
129 0x0000029c UART3_IRQHandler
130 0x0000029c MCPWM_IRQHandler
131 0x0000029c ENET_IRQHandler
132 .text.SystemInit
133 0x000002a0 0xe8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
134 0x000002a0 SystemInit
135 *(.gnu.linkonce.t.*)
136 *(.glue_7)
137 .glue_7 0x00000000 0x0 linker stubs
138 *(.glue_7t)
139 .glue_7t 0x00000000 0x0 linker stubs
140 *(.gcc_except_table)
141 *(.rodata .rodata*)
142 *(.gnu.linkonce.r.*)
143
144 .vfp11_veneer 0x00000388 0x0
145 .vfp11_veneer 0x00000000 0x0 linker stubs
146
147 .v4_bx 0x00000388 0x0
148 .v4_bx 0x00000000 0x0 linker stubs
149
150 .ctors 0x00000388 0x0
151 0x00000388 . = ALIGN (0x4)
152 0x00000388 PROVIDE (__ctors_start, .)
153 *(SORT(.ctors.*))
154 *(.ctors)
155 0x00000388 PROVIDE (__ctors_end, .)
156
157 .dtors 0x00000388 0x0
158 0x00000388 . = ALIGN (0x4)
159 0x00000388 PROVIDE (__dtors_start, .)
160 *(SORT(.dtors.*))
161 *(.dtors)
162 0x00000388 PROVIDE (__dtors_end, .)
163 0x00000388 . = ALIGN (0x4)
164 0x00000388 _etext = .
165 0x00000388 _sifastcode = .
166
167 .fastcode 0x10000000 0x0 load address 0x00000388
168 0x10000000 . = ALIGN (0x4)
169 0x10000000 _sfastcode = .
170 *(.glue_7t)
171 *(.glue_7)
172 *(.fastcode)
173 0x10000000 . = ALIGN (0x4)
174 0x10000000 _efastcode = .
175 0x10000000 _sidata = .
176
177 .usb_ram
178 *.o(USB_RAM)
179
180 .data 0x10000000 0x0 load address 0x00000388
181 0x00000388 _sidata = LOADADDR (.data)
182 0x10000000 . = ALIGN (0x4)
183 0x10000000 _sdata = .
184 *(vtable vtable.*)
185 *(.data .data.*)
186 *(.gnu.linkonce.d*)
187 0x10000000 . = ALIGN (0x4)
188 0x10000000 _edata = .
189
190 .bss 0x10000000 0x4 load address 0x00000388
191 0x10000000 . = ALIGN (0x4)
192 0x10000000 _sbss = .
193 *(.bss .bss.*)
194 *(.gnu.linkonce.b*)
195 *(COMMON)
196 COMMON 0x10000000 0x4 main.o
197 0x10000000 temp
198 0x10000004 . = ALIGN (0x4)
199 0x10000004 _ebss = .
200
201 .stackarea 0x10000004 0x804 load address 0x00000388
202 0x10000008 . = ALIGN (0x8)
203 *fill* 0x10000004 0x4 00
204 0x10000008 _sstack = .
205 *(.stackarea .stackarea.*)
206 .stackarea 0x10000008 0x800 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
207 0x10000008 pulStack
208 0x10000808 . = ALIGN (0x8)
209 0x10000808 _estack = .
210 0x10000808 . = ALIGN (0x4)
211 0x10000808 _end = .
212 0x10000808 PROVIDE (end, .)
213
214 .stab
215 *(.stab)
216
217 .stabstr
218 *(.stabstr)
219
220 .stab.excl
221 *(.stab.excl)
222
223 .stab.exclstr
224 *(.stab.exclstr)
225
226 .stab.index
227 *(.stab.index)
228
229 .stab.indexstr
230 *(.stab.indexstr)
231
232 .debug
233 *(.debug)
234
235 .line
236 *(.line)
237
238 .debug_srcinfo
239 *(.debug_srcinfo)
240
241 .debug_sfnames
242 *(.debug_sfnames)
243
244 .debug_aranges
245 *(.debug_aranges)
246
247 .debug_pubnames
248 *(.debug_pubnames)
249
250 .debug_info
251 *(.debug_info .gnu.linkonce.wi.*)
252
253 .debug_abbrev
254 *(.debug_abbrev)
255
256 .debug_line
257 *(.debug_line)
258
259 .debug_frame
260 *(.debug_frame)
261
262 .debug_str
263 *(.debug_str)
264
265 .debug_loc
266 *(.debug_loc)
267
268 .debug_macinfo
269 *(.debug_macinfo)
270
271 .debug_weaknames
272 *(.debug_weaknames)
273
274 .debug_funcnames
275 *(.debug_funcnames)
276
277 .debug_typenames
278 *(.debug_typenames)
279
280 .debug_varnames
281 *(.debug_varnames)
282 LOAD main.o
283 LOAD /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
284 LOAD /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
285 LOAD /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
286 LOAD /opt/libuc2/bsp/bin/mbed/libbsp.a
287 LOAD /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a
288 OUTPUT(lpc1768_led_blink.elf elf32-littlearm)
289
290 .comment 0x00000000 0x2a
291 .comment 0x00000000 0x2a main.o
292 0x2b (size before relaxing)
293 .comment 0x00000000 0x2b /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
294 .comment 0x00000000 0x2b /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
295 .comment 0x00000000 0x2b /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
296
297 .ARM.attributes
298 0x00000000 0x31
299 .ARM.attributes
300 0x00000000 0x31 main.o
301 .ARM.attributes
302 0x00000031 0x31 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
303 .ARM.attributes
304 0x00000062 0x31 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
305 .ARM.attributes
306 0x00000093 0x31 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
@@ -0,0 +1,12
1 TEMPLATE = app
2 ARCH = lpc17XX-arm-noabi-gcc
3 TARGET = lpc1768_led_blink
4 BSP = mbed
5
6 LIBS += UART
7
8 SOURCES += main.c
9
10
11 HEADERS +=
12
@@ -0,0 +1,32
1 /* THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED
2 * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
3 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
4 * THE AUTHORS SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR
5 * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER. USE IT AT YOUR OWN RISK */
6
7 #include "LPC17xx.h"
8
9 volatile uint32_t temp;
10
11 void _delay(uint32_t del);
12
13 int main (void)
14 {
15 LPC_SC->PCONP |= ( 1 << 15 ); // power up GPIO
16 LPC_GPIO1->FIODIR |= (1<<18); // puts P1.29 into output mode.
17 while(1)
18 {
19 LPC_GPIO1->FIOPIN |= (1<<18); // make P1.29 high
20 _delay( 1 << 24 );
21 LPC_GPIO1->FIOPIN &= ~(1<<18); // make P1.29 low
22 _delay( 1 << 24 );
23 }
24 return 0;
25
26 }
27 void _delay(uint32_t del)
28 {
29 uint32_t i;
30 for(i=0;i<del;i++)
31 temp = i;
32 }
@@ -0,0 +1,9
1 main.o: main.c /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h \
2 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h \
3 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h
4
5 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h:
6
7 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h:
8
9 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h:
@@ -0,0 +1,19
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4
5 HEADERS +=
6 APPSOURCES += main.c
7 OBJECTFILES = $(APPSOURCES:.c=.o)
8 ARCH = $(LIBUC)/rules/lpc17XX-arm-noabi-gcc
9 TARGET=lpc1768_uart
10 LIBUC_INCLUDES=$(LIBUC_INC_DIR_UART) $(LIBUC_INC_DIR_CORE) $(LIBUC_INC_DIR_UCSTRINGS)
11 LIBUC_LIBRARIES=$(LIBUC_LIBS_DIR_UART) $(LIBUC_LIBS_UART) $(LIBUC_LIBS_DIR_CORE) $(LIBUC_LIBS_CORE) $(LIBUC_LIBS_DIR_UCSTRINGS) $(LIBUC_LIBS_UCSTRINGS)
12 TARGETINSTALLPATH=
13 HEADERSINSTALLPATH=
14 BSP=mbed
15 include $(ARCH)/rules.mk
16
17 all:bin
18 @echo Code compiled
19
1 NO CONTENT: new file 100755, binary diff hidden
@@ -0,0 +1,127
1
2 lpc1768_uart.elf: file format elf32-littlearm
3 lpc1768_uart.elf
4 architecture: arm, flags 0x00000112:
5 EXEC_P, HAS_SYMS, D_PAGED
6 start address 0x00000000
7
8 Program Header:
9 LOAD off 0x00008000 vaddr 0x00000000 paddr 0x00000000 align 2**15
10 filesz 0x00000f34 memsz 0x00000f34 flags r-x
11 LOAD off 0x00010000 vaddr 0x10000000 paddr 0x00000f34 align 2**15
12 filesz 0x0000000c memsz 0x00000018 flags rw-
13 LOAD off 0x00010018 vaddr 0x10000018 paddr 0x00000f40 align 2**15
14 filesz 0x00000000 memsz 0x00000800 flags rw-
15 private flags = 5000000: [Version5 EABI]
16
17 Sections:
18 Idx Name Size VMA LMA File off Algn
19 0 .text 00000f34 00000000 00000000 00008000 2**2
20 CONTENTS, ALLOC, LOAD, READONLY, CODE
21 1 .data 0000000c 10000000 00000f34 00010000 2**2
22 CONTENTS, ALLOC, LOAD, DATA
23 2 .bss 0000000c 1000000c 00000f40 0001000c 2**2
24 ALLOC
25 3 .stackarea 00000800 10000018 00000f40 00010018 2**2
26 ALLOC
27 4 .comment 0000002a 00000000 00000000 0001000c 2**0
28 CONTENTS, READONLY
29 5 .ARM.attributes 00000031 00000000 00000000 00010036 2**0
30 CONTENTS, READONLY
31 SYMBOL TABLE:
32 00000000 l d .text 00000000 .text
33 10000000 l d .data 00000000 .data
34 1000000c l d .bss 00000000 .bss
35 10000018 l d .stackarea 00000000 .stackarea
36 00000000 l d .comment 00000000 .comment
37 00000000 l d .ARM.attributes 00000000 .ARM.attributes
38 00000000 l df *ABS* 00000000 startup_LPC17xx.c
39 00000000 l df *ABS* 00000000 main.c
40 00000000 l df *ABS* 00000000 system_LPC17xx.c
41 00000000 l df *ABS* 00000000 bsp.c
42 00000000 l df *ABS* 00000000 uart.c
43 00000f08 l O .text 00000010 CSWTCH.5
44 00000f18 l O .text 00000009 C.0.5885
45 00000f24 l O .text 00000004 C.2.5916
46 00000000 l df *ABS* 00000000 core.c
47 00000000 l df *ABS* 00000000 libucstrings.c
48 10000014 g O .bss 00000004 UART1
49 000002b0 w F .text 00000002 TIMER2_IRQHandler
50 000002b0 w F .text 00000002 DebugMon_Handler
51 000002b0 w F .text 00000002 RIT_IRQHandler
52 00000898 g F .text 00000084 coregetCpuFreq
53 000002b0 w F .text 00000002 I2C0_IRQHandler
54 00000000 w *UND* 00000000 HardFault_Handler
55 000002b0 w F .text 00000002 SysTick_Handler
56 000002b0 w F .text 00000002 PWM1_IRQHandler
57 00000f34 g *ABS* 00000000 _sidata
58 000002b0 w F .text 00000002 PendSV_Handler
59 00000000 w *UND* 00000000 NMI_Handler
60 000002b0 w F .text 00000002 I2C1_IRQHandler
61 000002b0 w F .text 00000002 EINT2_IRQHandler
62 000002b0 w F .text 00000002 UART1_IRQHandler
63 000002b0 w F .text 00000002 EINT3_IRQHandler
64 00000f34 g .data 00000000 _etext
65 1000000c g .bss 00000000 _sbss
66 000004d0 g F .text 00000018 uartputs
67 10000004 g O .data 00000004 INTOSC
68 00000444 g F .text 00000070 bsp_init
69 000002b0 w F .text 00000002 TIMER3_IRQHandler
70 000002b0 w F .text 00000002 UART0_IRQHandler
71 0000091c g F .text 000005ce libucprintf
72 00000728 g F .text 0000003c uartsetup
73 000002b0 w F .text 00000002 UsageFault_Handler
74 10000000 g .data 00000000 _sdata
75 10000008 g O .data 00000004 RTCOSC
76 000002b0 w F .text 00000002 PLL0_IRQHandler
77 000002b0 w F .text 00000002 CAN_IRQHandler
78 000002b0 w F .text 00000002 PLL1_IRQHandler
79 000002b0 w F .text 00000002 SSP0_IRQHandler
80 10000000 g O .data 00000004 OSC0
81 1000000c g O .bss 00000004 UART3
82 000005a8 g F .text 00000180 uartsetbaudrate
83 000002b0 w F .text 00000002 I2S_IRQHandler
84 000002b0 w F .text 00000002 I2C2_IRQHandler
85 000002b0 w F .text 00000002 RTC_IRQHandler
86 10000018 g .bss 00000000 _ebss
87 000002b0 w F .text 00000002 TIMER0_IRQHandler
88 00000144 w F .text 0000016c Reset_Handler
89 000002b0 w F .text 00000002 SPI_IRQHandler
90 000002b0 w F .text 00000002 EINT1_IRQHandler
91 000002b0 w F .text 00000002 TIMER1_IRQHandler
92 000002b0 w F .text 00000002 UART2_IRQHandler
93 000002b0 g F .text 00000002 Default_Handler
94 000002b0 w F .text 00000002 ADC_IRQHandler
95 000004e8 g F .text 000000c0 uartsetpclkfactor
96 000002b0 w F .text 00000002 SSP1_IRQHandler
97 10000000 g .data 00000000 _efastcode
98 000002b0 w F .text 00000002 USB_IRQHandler
99 000002b0 w F .text 00000002 BOD_IRQHandler
100 000002b0 w F .text 00000002 MemManage_Handler
101 000000c4 g F .text 00000080 main
102 0000039c g F .text 000000a8 bsp_uart_init
103 10000018 g O .stackarea 00000800 pulStack
104 000002b0 w F .text 00000002 WDT_IRQHandler
105 000002b0 w F .text 00000002 SVC_Handler
106 000002b4 g F .text 000000e8 SystemInit
107 000002b0 w F .text 00000002 QEI_IRQHandler
108 10000018 g .stackarea 00000000 _sstack
109 000002b0 w F .text 00000002 EINT0_IRQHandler
110 00000f34 g .data 00000000 _sifastcode
111 000004c4 g F .text 0000000c uartputc
112 10000000 g .data 00000000 _sfastcode
113 10000818 g .stackarea 00000000 _estack
114 1000000c g .data 00000000 _edata
115 10000818 g .stackarea 00000000 _end
116 00000764 g F .text 00000014 uartopen
117 000004b4 g F .text 00000010 consoleputc
118 00000000 g O .text 000000c4 g_pfnVectors
119 000002b0 w F .text 00000002 DMA_IRQHandler
120 000002b0 w F .text 00000002 BusFault_Handler
121 000002b0 w F .text 00000002 UART3_IRQHandler
122 000002b0 w F .text 00000002 MCPWM_IRQHandler
123 10000010 g O .bss 00000004 currentCpuFreq
124 000002b0 w F .text 00000002 ENET_IRQHandler
125 00000778 g F .text 00000120 coresetCpuFreq
126
127
@@ -0,0 +1,246
1 :10000000180800104501000000000000000000007A
2 :10001000B1020000B1020000B102000000000000C7
3 :10002000000000000000000000000000B10200001D
4 :10003000B102000000000000B1020000B1020000A7
5 :10004000B1020000B1020000B1020000B1020000E4
6 :10005000B1020000B1020000B1020000B1020000D4
7 :10006000B1020000B1020000B1020000B1020000C4
8 :10007000B1020000B1020000B1020000B1020000B4
9 :10008000B1020000B1020000B1020000B1020000A4
10 :10009000B1020000B1020000B1020000B102000094
11 :1000A000B1020000B1020000B1020000B102000084
12 :1000B000B1020000B1020000B1020000B102000074
13 :1000C000B1020000F0B51A4F83B000F0BBF93868F8
14 :1000D0004FF4E13100F068FA164D174C00266969BB
15 :1000E000386841F480226A61144900F0F1F9002077
16 :1000F0000190019BA34205DC019A501C0190019BD9
17 :10010000A342F9DD69690E4821F480226A61314613
18 :1001100000F004FC0023019301990136A142DEDCCA
19 :10012000019A531C01930198A042F9DDD7E700BF63
20 :100130000C00001020C00920FFFF0F00EC0E000093
21 :10014000FC0E0000684620F007018D46F1B500F076
22 :10015000B1F84F484F49884235D04F4CA14232D276
23 :10016000024652F8046B0B46CD4343F8046B651905
24 :10017000A342C5F3810526D29DB1012D0BD0022DDE
25 :1001800005D0156800F108021D6001F1080352F85E
26 :10019000040B43F8040B52F8041B43F8041BA3425E
27 :1001A00011D296465EF8047B5668D568DEF80400E6
28 :1001B0009C464CF8047B5E60CCF80400DD60103394
29 :1001C0001032A342EDD335483549884234D0354CFE
30 :1001D000A14231D2024652F8046B0B46CD4343F89C
31 :1001E000046B6519A342C5F3810525D29DB1012D8C
32 :1001F0000BD0022D05D0156800F108021D6001F139
33 :10020000080352F8040B43F8040B52F8041B43F89C
34 :10021000041BA34210D294465CF8047B5668D56850
35 :10022000DCF80400194641F8047B5E604860DD603C
36 :1002300010331032A342EED31B491C48814221D215
37 :1002400000220B46CC4343F8042B04198342C4F329
38 :10025000810417D264B1012C06D0022C1CBF1A6095
39 :1002600001F1080343F8042B43F8042B834209D21D
40 :100270009E464EF8042B5A60CEF80420DA60103304
41 :100280008342F5D3FFF71EFFBDE8F1408546704776
42 :10029000340F0000000000100C000010340F0000AC
43 :1002A00000000010000000100C00001018000010EA
44 :1002B000FEE700BF3649202330B4C1F8A031D1F8A1
45 :1002C000A001334A10F0400FF9D0324D0124AA208A
46 :1002D00055230321C2F80411C2F80C411146C2F89B
47 :1002E0008450C2F88C00C2F88C30C2F88040C2F84A
48 :1002F0008C00C2F88C30D1F88830254A13F0806F1A
49 :10030000F9D00321AA245520C2F88010C2F88C40ED
50 :100310001146C2F88C00D1F888301D4A13F0407F96
51 :10032000F9D02324C2F8A440AA2055230124C2F8FE
52 :10033000AC001146C2F8AC30C2F8A040C2F8AC0024
53 :10034000C2F8AC30D1F8A830114A13F4806FF9D05C
54 :100350000321AA235520C2F8A010C2F8AC301146E0
55 :10036000C2F8AC00D1F8A800094A10F4407FF9D0D7
56 :100370000949002043F23A03C2F8A801C2F8AC01CF
57 :10038000C2F8C410C2F8C801136030BC704700BF87
58 :1003900000C00F4063000500DE87280430B5254DFE
59 :1003A000254BD5F8C41083B041F00074C5F8C440A3
60 :1003B000D5F8C420032042F01001C5F8C4101A6813
61 :1003C000002442F002051D60196821F001021A6044
62 :1003D0001D6845F0080119601A6822F004051D60C7
63 :1003E000196841F080421A601D6825F000411960CB
64 :1003F0005A6842F001055D605968104D21F0020213
65 :100400005A6000F0AFF90822012328604FF416511A
66 :10041000009400F089F9012000F0A4F9084D4FF490
67 :100420001641286008220123009400F07DF903B0F2
68 :1004300030BD00BF00C00F4000C002400C000010E3
69 :1004400014000010164A10B5D2F8C410154B41F430
70 :100450000044C2F8C4401968134841F434021A60D9
71 :100460005969124C21F480225A61596921F4801291
72 :100470005A61596921F400125A61596921F4000244
73 :100480005A6100F079F900F007FA2060084800F09E
74 :1004900073F900F001FA2060FFF780FF002010BD23
75 :1004A00000C00F4020C00920005A62021000001056
76 :1004B00000B4C404024B0146186800F003B800BF42
77 :1004C00014000010436913F0200FFBD00160704747
78 :1004D0000B7843B1426912F0200FFBD0036011F892
79 :1004E000013F002BF6D1704730B42A4A84B00DF199
80 :1004F000040C04460D46284B07CAACE803009C4296
81 :100500008CF8002029D018DD244B9C421BD003F529
82 :1005100080418C4214D104A94D19214B15F80C0CC3
83 :10052000D3F8AC11820442EA0101C3F8AC11D3F84C
84 :10053000AC010240C3F8AC2102E01A4884421ED04C
85 :1005400004B030BC70470DF1100C6544144B15F825
86 :100550000C2CD3F8AC111204E5E704A94D19104B8B
87 :1005600015F80C0CD3F8A811020242EA0101C3F8F5
88 :10057000A811D3F8A8010240C3F8A821E0E70DF1C3
89 :10058000100C6544064B15F80C2CD3F8A8119201F9
90 :10059000EBE700BF180F0000000001400080094099
91 :1005A00000C00F4000C000402DE9F047044682B073
92 :1005B0000F46002853D000F06FF9554E554B80463A
93 :1005C00030689C42019000F09C804BDD524B9C4275
94 :1005D0005DD003F5804294425FD0002302A800EB77
95 :1005E000030E1EF804CC3F01B8FBFCF3BB422BD238
96 :1005F000D6F80090474DDFF820A1AC42CDF804902A
97 :1006000067D050DC454B9C4235D000230DF1080EDD
98 :100610000EEB030C1CF8041C012920D049082046CD
99 :10062000FFF762FF3268AC4201925ED046DC3B4885
100 :10063000844226D0002302A901EB030E1EF804CC4D
101 :10064000B8FBFCF3BB42D8D3E268B3FBF7F342F04C
102 :100650008001E1602360E06820F08002E26002B087
103 :10066000BDE8F0872D498C42B7D12D48D0F8A8318C
104 :10067000C3F38113B2E72A48D0F8A821C2F381134B
105 :10068000C4E7274AD2F8A811C1F38113D3E724485D
106 :10069000D0F8AC31C3F30143A0E7214AD2F8AC1142
107 :1006A000C1F381439AE7544519D01E498C42ACD11D
108 :1006B0001B49D1F8AC31C3F38143A7E754451AD0A5
109 :1006C000184B9C42B6D1164BD3F8AC01C0F3814312
110 :1006D000B1E71349D1F8A831C3F3012396E71048D5
111 :1006E000D0F8AC21C2F3014390E70D4BD3F8A80139
112 :1006F000C0F301239FE70A4AD2F8AC11C1F30143CA
113 :1007000099E7074AD2F8A811C1F3012366E700BFB1
114 :10071000240F0000000001400080094000C000409C
115 :1007200000C00F4000C0094030B4092A9DF80840BD
116 :100730000ED8013BDDB2053A012D0ED90023072C5E
117 :100740000ED900259C186419C46030BCFFF72CBF7B
118 :10075000013BDDB20322012DF0D89B00072CF0D81D
119 :10076000E500EFE703289ABF024B53F82000002072
120 :10077000704700BF080F0000F0B4404D3F4CD5F863
121 :100780000C31D4F80C1113F0030F08BF3C4B3B4E57
122 :1007900001F003070CBF1A6842F21072D6F80C5130
123 :1007A000012F08BF374F05F0030308BF3A68022B3B
124 :1007B00008BF354B314908BF1A68344BB3FBF0F41E
125 :1007C000601EC1F804015000012218E0B4FBF0F1F2
126 :1007D000CF1F0132B7F5FC7F144622D9B5FBF0F1EB
127 :1007E000CD1F0132B5F5FC7F1BD9B6FBF0F1CD1F53
128 :1007F000A21CB5F5FC7F14D9E21C212A3BD0234969
129 :10080000234F244E5C18B3FBF0F1DD199E19CF1F66
130 :1008100003F18E4303F5060CB7F5FC7F0CF50C4392
131 :10082000D4D8541E154B220401398918AA24552006
132 :100830000122C3F88410C3F88C401946C3F88C0019
133 :10084000C3F88020C3F88C40C3F88C00D1F888002E
134 :100850000A4A10F0806FF9D00321AA205523C2F86C
135 :100860008010C2F88C001146C2F88C30D1F8882074
136 :1008700012F0407FFAD0F0BC704700BF00C00F40BC
137 :1008800004000010000000100800001000A3E11197
138 :100890000046C32300E9A4351C4A30B4D2F8845082
139 :1008A000D2F88440D2F80411D2F80C3113F0030FBF
140 :1008B00004BF174B1868154BD3F80C2102F0030C3A
141 :1008C000124ABCF1010FD2F80C2108BF114B02F003
142 :1008D000030C08BF1868BCF1020F04BF0E4B186868
143 :1008E0000A4BD3F8802012F0020F0CD0AA04930C0C
144 :1008F0005A1C5300C4F307444A1C00FB03F004FBDA
145 :100900000221B0FBF1F030BC704700BF00C00F40C7
146 :100910000400001000000010080000100FB42DE9C2
147 :10092000F04784B00CAB53F8045BDFF8FC803D4F1C
148 :1009300000240393287840B125280CD00135FFF717
149 :10094000B9FD287801340028F6D1204604B0BDE86E
150 :10095000F04704B070476878013525285DD0253808
151 :10096000532855D8DFE810F09C025400540054007E
152 :1009700054005400540054005400540054005400D7
153 :1009800054005400540054005400540054005400C7
154 :1009900054005400540054005400540054005400B7
155 :1009A00054005400540054005400540054005400A7
156 :1009B0005400540054005400540054005400540097
157 :1009C00054005400540054005400540054005C017E
158 :1009D0005400540054005400540054005400540077
159 :1009E0005400540054016200540054005400540058
160 :1009F0005400540054005400540054005400540057
161 :100A00005400540054005400540054005400FB019E
162 :100A100003980135021D03928CE7FFF74BFD01356A
163 :100A2000013487E767666666280F0000039BEC4683
164 :100A3000D3F8009098E80700ACE8030000200433E6
165 :100A400081456E4603938CF800208DF80900C0F2B2
166 :100A50002C82B9F1000F40F3D98087FB09204FEABF
167 :100A6000E971C1EBA00303EB830EA9EB4E0A0AF177
168 :100A700030098DF80090002B00F0208287FB03C91D
169 :100A8000DA17C2EBA90202EB820CA3EB4C03303362
170 :100A90008DF80130002A00F00E8287FB023ED0174D
171 :100AA000C0EBAE0303EB830AA2EB4A0130318DF8B1
172 :100AB0000210002B00F0048287FB03C9DA17C2EB97
173 :100AC000A90202EB820CA3EB4C0330338DF8033008
174 :100AD000002A00F0FB8187FB023ED017C0EBAE037B
175 :100AE00003EB830AA2EB4A0130318DF80410002B8E
176 :100AF00000F0E98187FB03C9DA17C2EBA90202EB18
177 :100B0000820CA3EB4C0330338DF80530002A00F043
178 :100B1000E08187FB023ED017C0EBAE0303EB830AF4
179 :100B2000A2EB4A0130318DF80610002B00F0D7817E
180 :100B300087FB03C9DA17C2EBA90202EB820CA3EB15
181 :100B40004C0330338DF80730002A00F0C58187FB55
182 :100B5000023ED017C0EBAE0303EB830AA2EB4A01BF
183 :100B600030318DF80810002B00F0BC8187FB03C9E1
184 :100B7000D817C0EBA90202EB820CA3EB4C03303375
185 :100B80008DF809304FF0090A16F80A00FFF792FCB9
186 :100B9000BAF1000F0AF003030AF1FF3936DDD3B1D1
187 :100BA000012B0DD0022B05D016F80900FFF782FCAF
188 :100BB00009F1FF3916F80900FFF77CFC09F1FF394C
189 :100BC00016F8090009F1FF39FFF774FC09F1010C6F
190 :100BD000BCF1000F1ADD16F8090009F1FF3AFFF722
191 :100BE00069FC16F80A00A9F1020AFFF763FC16F87F
192 :100BF0000A00FFF75FFCA9F10303F05CA9F1040907
193 :100C0000FFF758FC09F101010029E4DC013591E608
194 :100C1000039A0135111D10780391FFF74BFC89E60B
195 :100C200003996E460A68081D02F00F03092B88BF5E
196 :100C30000733039098E8030086E80300111101F0E0
197 :100C40000F003033092888BF07300A118DF80030B3
198 :100C500002F00F033030092B88BF073311118DF8D4
199 :100C6000010001F00F00092888BF0730091101F0C9
200 :100C70000F023030092A88BF073203F130090B1107
201 :100C80008DF8030003F00F00092888BF07301B11FF
202 :100C900002F1300C03F00F02092A00F1300188BF85
203 :100CA0000732C3F303103032092888BF07303030D1
204 :100CB0008DF802908DF804C08DF805108DF806208F
205 :100CC0008DF80700082300E04B4603F1FF3916F8C2
206 :100CD00009003028F8D0002B98DDFFF7EBFBB9F1C5
207 :100CE000000F09F0030309F1FF3A8FDDD3B1012BA7
208 :100CF0000DD0022B05D016F80A00FFF7DBFB0AF136
209 :100D0000FF3A16F80A00FFF7D5FB0AF1FF3A16F88A
210 :100D10000A000AF1FF3AFFF7CDFB0AF101010029B1
211 :100D20007FF774AF16F80A000AF1FF39FFF7C2FB2C
212 :100D300016F80900AAF10209FFF7BCFB16F8090032
213 :100D4000FFF7B8FBAAF10303F05CAAF1040AFFF76E
214 :100D5000B1FB0AF1010CBCF1000FE3DC56E703998B
215 :100D60006E460A68081D02F00F03092B88BF27335F
216 :100D7000039098E8030086E80300111101F00F00CA
217 :100D80003033092888BF27300A118DF8003002F06F
218 :100D90000F033030092B88BF273311118DF8010064
219 :100DA00001F00F00092888BF2730091101F00F0258
220 :100DB0003030092A88BF273203F1300C0B118DF82F
221 :100DC000030003F00F00092888BF27301B1102F130
222 :100DD000300903F00F02092A88BF27328DF802C0BC
223 :100DE00000F1300CC3F303103032092888BF2730DC
224 :100DF00030308DF804908DF805C08DF806208DF800
225 :100E00000700082300E04B4603F1FF3916F80900FC
226 :100E10003028F8D0002B7FF7F9AEFFF74BFBB9F184
227 :100E2000000F09F0030309F1FF3A7FF7EFAED3B1EA
228 :100E3000012B0DD0022B05D016F80A00FFF73AFB64
229 :100E40000AF1FF3A16F80A00FFF734FB0AF1FF3AFD
230 :100E500016F80A000AF1FF3AFFF72CFB0AF101032A
231 :100E6000002B7FF7D3AE16F80A000AF1FF39FFF71F
232 :100E700021FB16F80900AAF10209FFF71BFB16F87F
233 :100E80000900FFF717FBAAF10303F05CAAF1040ABB
234 :100E9000FFF710FB0AF1010CBCF1000FE3DCB5E633
235 :100EA00025200135FFF706FB44E52D20C9F1000997
236 :100EB000FFF700FBCDE54FF0010A65E69A4663E6D1
237 :100EC0004FF0020A60E64FF0040A5DE64FF0030AB5
238 :100ED0005AE64FF0050A57E64FF0070A54E64FF07E
239 :100EE000060A51E64FF0080A4EE600BF48656C6CF2
240 :100EF0006F20576F726C640A0D0000007465737484
241 :100F0000202564200A0D000000C0004000000140C0
242 :100F10000080094000C009400101020200000000F9
243 :100F200003000000040102082020202020202020AF
244 :040F300000000000BD
245 :0C0F3400001BB70000093D000080000019
246 :00000001FF
@@ -0,0 +1,419
1 Archive member included because of file (symbol)
2
3 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
4 main.o (bsp_init)
5 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
6 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o) (uartputc)
7 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
8 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o) (coresetCpuFreq)
9 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
10 main.o (libucprintf)
11
12 Discarded input sections
13
14 .text 0x00000000 0x0 main.o
15 .data 0x00000000 0x0 main.o
16 .bss 0x00000000 0x0 main.o
17 .text 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
18 .data 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
19 .bss 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
20 .text 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
21 .data 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
22 .bss 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
23 .text.__get_PSP
24 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
25 .text.__set_PSP
26 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
27 .text.__get_MSP
28 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
29 .text.__set_MSP
30 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
31 .text.__get_BASEPRI
32 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
33 .text.__set_BASEPRI
34 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
35 .text.__get_PRIMASK
36 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
37 .text.__set_PRIMASK
38 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
39 .text.__get_FAULTMASK
40 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
41 .text.__set_FAULTMASK
42 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
43 .text.__get_CONTROL
44 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
45 .text.__set_CONTROL
46 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
47 .text.__REV 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
48 .text.__REV16 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
49 .text.__REVSH 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
50 .text.__RBIT 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
51 .text.__LDREXB
52 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
53 .text.__LDREXH
54 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
55 .text.__LDREXW
56 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
57 .text.__STREXB
58 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
59 .text.__STREXH
60 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
61 .text.__STREXW
62 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
63 .text 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
64 .data 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
65 .bss 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
66 .text.SystemCoreClockUpdate
67 0x00000000 0xcc /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
68 .data.SystemCoreClock
69 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
70 .text 0x00000000 0x0 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
71 .data 0x00000000 0x0 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
72 .bss 0x00000000 0x0 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
73 .text.bsp_GPIO_init
74 0x00000000 0x44 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
75 .text.consolegetc
76 0x00000000 0xc /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
77 .bss.UART2 0x00000000 0x4 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
78 .bss.UART0 0x00000000 0x4 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
79 .text 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
80 .data 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
81 .bss 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
82 .text.uartgetc
83 0x00000000 0x10 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
84 .text.uartgets
85 0x00000000 0x20 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
86 .text.uartoff 0x00000000 0x50 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
87 .text.uarton 0x00000000 0x50 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
88 .text.uartgetpclkfactor
89 0x00000000 0x78 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
90 .text 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
91 .data 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
92 .bss 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
93 .text 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
94 .data 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
95 .bss 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
96 .text.clearch 0x00000000 0x24 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
97 .text.printhexfromint
98 0x00000000 0x140 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
99 .text.printdecfromint
100 0x00000000 0x1e0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
101 .text.int2hex 0x00000000 0xd8 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
102 .text.scanintfromhex
103 0x00000000 0x27c /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
104 .text.scanintfromdec
105 0x00000000 0x188 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
106 .text.libucscanf
107 0x00000000 0x250 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
108 .rodata.str1.4
109 0x00000000 0x50 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
110
111 Memory Configuration
112
113 Name Origin Length Attributes
114 IROM 0x00000000 0x00080000 xr
115 IRAM0 0x10000000 0x00008000 xrw
116 IRAM1 0x2007c000 0x00004000 xrw
117 IRAM2 0x20080000 0x00004000 xrw
118 *default* 0x00000000 0xffffffff
119
120 Linker script and memory map
121
122
123 .text 0x00000000 0xf34
124 *(.isr_vector .isr_vector.*)
125 .isr_vector 0x00000000 0xc4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
126 0x00000000 g_pfnVectors
127 *(.text .text.*)
128 .text.main 0x000000c4 0x80 main.o
129 0x000000c4 main
130 .text.Reset_Handler
131 0x00000144 0x16c /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
132 0x00000144 Reset_Handler
133 .text.Default_Handler
134 0x000002b0 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
135 0x000002b0 TIMER2_IRQHandler
136 0x000002b0 DebugMon_Handler
137 0x000002b0 RIT_IRQHandler
138 0x000002b0 I2C0_IRQHandler
139 0x000002b0 SysTick_Handler
140 0x000002b0 PWM1_IRQHandler
141 0x000002b0 PendSV_Handler
142 0x000002b0 I2C1_IRQHandler
143 0x000002b0 EINT2_IRQHandler
144 0x000002b0 UART1_IRQHandler
145 0x000002b0 EINT3_IRQHandler
146 0x000002b0 TIMER3_IRQHandler
147 0x000002b0 UART0_IRQHandler
148 0x000002b0 UsageFault_Handler
149 0x000002b0 PLL0_IRQHandler
150 0x000002b0 CAN_IRQHandler
151 0x000002b0 PLL1_IRQHandler
152 0x000002b0 SSP0_IRQHandler
153 0x000002b0 I2S_IRQHandler
154 0x000002b0 I2C2_IRQHandler
155 0x000002b0 RTC_IRQHandler
156 0x000002b0 TIMER0_IRQHandler
157 0x000002b0 SPI_IRQHandler
158 0x000002b0 EINT1_IRQHandler
159 0x000002b0 TIMER1_IRQHandler
160 0x000002b0 UART2_IRQHandler
161 0x000002b0 Default_Handler
162 0x000002b0 ADC_IRQHandler
163 0x000002b0 SSP1_IRQHandler
164 0x000002b0 USB_IRQHandler
165 0x000002b0 BOD_IRQHandler
166 0x000002b0 MemManage_Handler
167 0x000002b0 WDT_IRQHandler
168 0x000002b0 SVC_Handler
169 0x000002b0 QEI_IRQHandler
170 0x000002b0 EINT0_IRQHandler
171 0x000002b0 DMA_IRQHandler
172 0x000002b0 BusFault_Handler
173 0x000002b0 UART3_IRQHandler
174 0x000002b0 MCPWM_IRQHandler
175 0x000002b0 ENET_IRQHandler
176 .text.SystemInit
177 0x000002b4 0xe8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
178 0x000002b4 SystemInit
179 .text.bsp_uart_init
180 0x0000039c 0xa8 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
181 0x0000039c bsp_uart_init
182 .text.bsp_init
183 0x00000444 0x70 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
184 0x00000444 bsp_init
185 .text.consoleputc
186 0x000004b4 0x10 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
187 0x000004b4 consoleputc
188 .text.uartputc
189 0x000004c4 0xc /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
190 0x000004c4 uartputc
191 .text.uartputs
192 0x000004d0 0x18 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
193 0x000004d0 uartputs
194 .text.uartsetpclkfactor
195 0x000004e8 0xc0 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
196 0x000004e8 uartsetpclkfactor
197 .text.uartsetbaudrate
198 0x000005a8 0x180 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
199 0x000005a8 uartsetbaudrate
200 .text.uartsetup
201 0x00000728 0x3c /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
202 0x00000728 uartsetup
203 .text.uartopen
204 0x00000764 0x14 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
205 0x00000764 uartopen
206 .text.coresetCpuFreq
207 0x00000778 0x120 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
208 0x00000778 coresetCpuFreq
209 .text.coregetCpuFreq
210 0x00000898 0x84 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
211 0x00000898 coregetCpuFreq
212 .text.libucprintf
213 0x0000091c 0x5d0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
214 0x0000091c libucprintf
215 *(.gnu.linkonce.t.*)
216 *(.glue_7)
217 .glue_7 0x00000000 0x0 linker stubs
218 *(.glue_7t)
219 .glue_7t 0x00000000 0x0 linker stubs
220 *(.gcc_except_table)
221 *(.rodata .rodata*)
222 .rodata.str1.4
223 0x00000eec 0x1c main.o
224 .rodata.CSWTCH.5
225 0x00000f08 0x10 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
226 .rodata.C.0.5885
227 0x00000f18 0xc /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
228 .rodata.C.2.5916
229 0x00000f24 0x4 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
230 .rodata 0x00000f28 0xc /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
231 *(.gnu.linkonce.r.*)
232
233 .vfp11_veneer 0x00000f34 0x0
234 .vfp11_veneer 0x00000000 0x0 linker stubs
235
236 .v4_bx 0x00000f34 0x0
237 .v4_bx 0x00000000 0x0 linker stubs
238
239 .ctors 0x00000f34 0x0
240 0x00000f34 . = ALIGN (0x4)
241 0x00000f34 PROVIDE (__ctors_start, .)
242 *(SORT(.ctors.*))
243 *(.ctors)
244 0x00000f34 PROVIDE (__ctors_end, .)
245
246 .dtors 0x00000f34 0x0
247 0x00000f34 . = ALIGN (0x4)
248 0x00000f34 PROVIDE (__dtors_start, .)
249 *(SORT(.dtors.*))
250 *(.dtors)
251 0x00000f34 PROVIDE (__dtors_end, .)
252 0x00000f34 . = ALIGN (0x4)
253 0x00000f34 _etext = .
254 0x00000f34 _sifastcode = .
255
256 .fastcode 0x10000000 0x0 load address 0x00000f34
257 0x10000000 . = ALIGN (0x4)
258 0x10000000 _sfastcode = .
259 *(.glue_7t)
260 *(.glue_7)
261 *(.fastcode)
262 0x10000000 . = ALIGN (0x4)
263 0x10000000 _efastcode = .
264 0x10000000 _sidata = .
265
266 .usb_ram
267 *.o(USB_RAM)
268
269 .data 0x10000000 0xc load address 0x00000f34
270 0x00000f34 _sidata = LOADADDR (.data)
271 0x10000000 . = ALIGN (0x4)
272 0x10000000 _sdata = .
273 *(vtable vtable.*)
274 *(.data .data.*)
275 .data.OSC0 0x10000000 0x4 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
276 0x10000000 OSC0
277 .data.INTOSC 0x10000004 0x4 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
278 0x10000004 INTOSC
279 .data.RTCOSC 0x10000008 0x4 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
280 0x10000008 RTCOSC
281 *(.gnu.linkonce.d*)
282 0x1000000c . = ALIGN (0x4)
283 0x1000000c _edata = .
284
285 .bss 0x1000000c 0xc load address 0x00000f40
286 0x1000000c . = ALIGN (0x4)
287 0x1000000c _sbss = .
288 *(.bss .bss.*)
289 .bss.UART3 0x1000000c 0x4 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
290 0x1000000c UART3
291 .bss.currentCpuFreq
292 0x10000010 0x4 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
293 0x10000010 currentCpuFreq
294 .bss.UART1 0x10000014 0x4 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
295 0x10000014 UART1
296 *(.gnu.linkonce.b*)
297 *(COMMON)
298 0x10000018 . = ALIGN (0x4)
299 0x10000018 _ebss = .
300
301 .stackarea 0x10000018 0x800 load address 0x00000f40
302 0x10000018 . = ALIGN (0x8)
303 0x10000018 _sstack = .
304 *(.stackarea .stackarea.*)
305 .stackarea 0x10000018 0x800 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
306 0x10000018 pulStack
307 0x10000818 . = ALIGN (0x8)
308 0x10000818 _estack = .
309 0x10000818 . = ALIGN (0x4)
310 0x10000818 _end = .
311 0x10000818 PROVIDE (end, .)
312
313 .stab
314 *(.stab)
315
316 .stabstr
317 *(.stabstr)
318
319 .stab.excl
320 *(.stab.excl)
321
322 .stab.exclstr
323 *(.stab.exclstr)
324
325 .stab.index
326 *(.stab.index)
327
328 .stab.indexstr
329 *(.stab.indexstr)
330
331 .debug
332 *(.debug)
333
334 .line
335 *(.line)
336
337 .debug_srcinfo
338 *(.debug_srcinfo)
339
340 .debug_sfnames
341 *(.debug_sfnames)
342
343 .debug_aranges
344 *(.debug_aranges)
345
346 .debug_pubnames
347 *(.debug_pubnames)
348
349 .debug_info
350 *(.debug_info .gnu.linkonce.wi.*)
351
352 .debug_abbrev
353 *(.debug_abbrev)
354
355 .debug_line
356 *(.debug_line)
357
358 .debug_frame
359 *(.debug_frame)
360
361 .debug_str
362 *(.debug_str)
363
364 .debug_loc
365 *(.debug_loc)
366
367 .debug_macinfo
368 *(.debug_macinfo)
369
370 .debug_weaknames
371 *(.debug_weaknames)
372
373 .debug_funcnames
374 *(.debug_funcnames)
375
376 .debug_typenames
377 *(.debug_typenames)
378
379 .debug_varnames
380 *(.debug_varnames)
381 LOAD main.o
382 LOAD /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
383 LOAD /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
384 LOAD /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
385 LOAD /opt/libuc2/bsp/bin/mbed/libbsp.a
386 LOAD /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a
387 LOAD /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a
388 LOAD /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a
389 OUTPUT(lpc1768_uart.elf elf32-littlearm)
390
391 .comment 0x00000000 0x2a
392 .comment 0x00000000 0x2a main.o
393 0x2b (size before relaxing)
394 .comment 0x00000000 0x2b /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
395 .comment 0x00000000 0x2b /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
396 .comment 0x00000000 0x2b /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
397 .comment 0x00000000 0x2b /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
398 .comment 0x00000000 0x2b /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
399 .comment 0x00000000 0x2b /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
400 .comment 0x00000000 0x2b /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
401
402 .ARM.attributes
403 0x00000000 0x31
404 .ARM.attributes
405 0x00000000 0x31 main.o
406 .ARM.attributes
407 0x00000031 0x31 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
408 .ARM.attributes
409 0x00000062 0x31 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
410 .ARM.attributes
411 0x00000093 0x31 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
412 .ARM.attributes
413 0x000000c4 0x31 /opt/libuc2/bsp/bin/mbed/libbsp.a(bsp.o)
414 .ARM.attributes
415 0x000000f5 0x31 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
416 .ARM.attributes
417 0x00000126 0x31 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
418 .ARM.attributes
419 0x00000157 0x31 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
@@ -0,0 +1,12
1 TEMPLATE = app
2 ARCH = lpc17XX-arm-noabi-gcc
3 TARGET = lpc1768_uart
4 BSP = mbed
5
6 LIBS += UART CORE UCSTRINGS
7
8 SOURCES += main.c
9
10
11 HEADERS +=
12
@@ -0,0 +1,49
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22
23 #include "LPC17xx.h"
24 #include "bsp.h"
25 #include "core.h"
26 #include "uart.h"
27 #include "libucstrings.h"
28 #define __delay(t) for(volatile int i=0;i<t;i++);
29
30
31 int main (void)
32 {
33 bsp_init();
34 uartsetbaudrate(UART3,115200);
35 int i = 0;
36 while(1)
37 {
38 LED1_ON;
39 uartputs(UART3,"Hello World\n\r");
40 __delay(1024*1024);
41 LED1_OFF;
42 //uartputs(UART1,"Hello World\n\r");
43 libucprintf("test %d \n\r",i++);
44 __delay(1024*1024);
45 }
46 return 0;
47
48 }
49
@@ -0,0 +1,21
1 main.o: main.c /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h \
2 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h \
3 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h \
4 /opt/libuc2/bsp/includes/mbed/bsp.h \
5 /opt/libuc2/lib/includes/lpc17XX/UART/uart.h \
6 /opt/libuc2/lib/includes/lpc17XX/CORE/core.h \
7 /opt/libuc2/lib/includes/lpc17XX/STRINGS/libucstrings.h
8
9 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h:
10
11 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h:
12
13 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h:
14
15 /opt/libuc2/bsp/includes/mbed/bsp.h:
16
17 /opt/libuc2/lib/includes/lpc17XX/UART/uart.h:
18
19 /opt/libuc2/lib/includes/lpc17XX/CORE/core.h:
20
21 /opt/libuc2/lib/includes/lpc17XX/STRINGS/libucstrings.h:
@@ -0,0 +1,19
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4
5 HEADERS +=
6 APPSOURCES += main.c
7 OBJECTFILES = $(APPSOURCES:.c=.o)
8 ARCH = $(LIBUC)/rules/lpc17XX-arm-noabi-gcc
9 TARGET=lpc1768_uart
10 LIBUC_INCLUDES=$(LIBUC_INC_DIR_UART) $(LIBUC_INC_DIR_CORE) $(LIBUC_INC_DIR_UCSTRINGS)
11 LIBUC_LIBRARIES=$(LIBUC_LIBS_DIR_UART) $(LIBUC_LIBS_UART) $(LIBUC_LIBS_DIR_CORE) $(LIBUC_LIBS_CORE) $(LIBUC_LIBS_DIR_UCSTRINGS) $(LIBUC_LIBS_UCSTRINGS)
12 TARGETINSTALLPATH=
13 HEADERSINSTALLPATH=
14 BSP=LandTiger
15 include $(ARCH)/rules.mk
16
17 all:bin
18 @echo Code compiled
19
1 NO CONTENT: new file 100755, binary diff hidden
@@ -0,0 +1,126
1
2 lpc1768_uart.elf: file format elf32-littlearm
3 lpc1768_uart.elf
4 architecture: arm, flags 0x00000112:
5 EXEC_P, HAS_SYMS, D_PAGED
6 start address 0x00000000
7
8 Program Header:
9 LOAD off 0x00008000 vaddr 0x00000000 paddr 0x00000000 align 2**15
10 filesz 0x00000f24 memsz 0x00000f24 flags r-x
11 LOAD off 0x00010000 vaddr 0x10000000 paddr 0x00000f24 align 2**15
12 filesz 0x0000000c memsz 0x00000018 flags rw-
13 LOAD off 0x00010018 vaddr 0x10000018 paddr 0x00000f30 align 2**15
14 filesz 0x00000000 memsz 0x00000800 flags rw-
15 private flags = 5000000: [Version5 EABI]
16
17 Sections:
18 Idx Name Size VMA LMA File off Algn
19 0 .text 00000f24 00000000 00000000 00008000 2**2
20 CONTENTS, ALLOC, LOAD, READONLY, CODE
21 1 .data 0000000c 10000000 00000f24 00010000 2**2
22 CONTENTS, ALLOC, LOAD, DATA
23 2 .bss 0000000c 1000000c 00000f30 0001000c 2**2
24 ALLOC
25 3 .stackarea 00000800 10000018 00000f30 00010018 2**2
26 ALLOC
27 4 .comment 0000002a 00000000 00000000 0001000c 2**0
28 CONTENTS, READONLY
29 5 .ARM.attributes 00000031 00000000 00000000 00010036 2**0
30 CONTENTS, READONLY
31 SYMBOL TABLE:
32 00000000 l d .text 00000000 .text
33 10000000 l d .data 00000000 .data
34 1000000c l d .bss 00000000 .bss
35 10000018 l d .stackarea 00000000 .stackarea
36 00000000 l d .comment 00000000 .comment
37 00000000 l d .ARM.attributes 00000000 .ARM.attributes
38 00000000 l df *ABS* 00000000 startup_LPC17xx.c
39 00000000 l df *ABS* 00000000 main.c
40 00000000 l df *ABS* 00000000 system_LPC17xx.c
41 00000000 l df *ABS* 00000000 bsp.c
42 00000000 l df *ABS* 00000000 uart.c
43 00000ef8 l O .text 00000010 CSWTCH.5
44 00000f08 l O .text 00000009 C.0.5885
45 00000f14 l O .text 00000004 C.2.5916
46 00000000 l df *ABS* 00000000 core.c
47 00000000 l df *ABS* 00000000 libucstrings.c
48 000002e0 w F .text 00000002 TIMER2_IRQHandler
49 000002e0 w F .text 00000002 DebugMon_Handler
50 000002e0 w F .text 00000002 RIT_IRQHandler
51 00000898 g F .text 00000084 coregetCpuFreq
52 000002e0 w F .text 00000002 I2C0_IRQHandler
53 00000000 w *UND* 00000000 HardFault_Handler
54 000002e0 w F .text 00000002 SysTick_Handler
55 000002e0 w F .text 00000002 PWM1_IRQHandler
56 00000f24 g *ABS* 00000000 _sidata
57 000002e0 w F .text 00000002 PendSV_Handler
58 00000000 w *UND* 00000000 NMI_Handler
59 000002e0 w F .text 00000002 I2C1_IRQHandler
60 000002e0 w F .text 00000002 EINT2_IRQHandler
61 000002e0 w F .text 00000002 UART1_IRQHandler
62 000002e0 w F .text 00000002 EINT3_IRQHandler
63 00000f24 g .data 00000000 _etext
64 1000000c g .bss 00000000 _sbss
65 10000004 g O .data 00000004 INTOSC
66 00000474 g F .text 00000058 bsp_init
67 000002e0 w F .text 00000002 TIMER3_IRQHandler
68 000002e0 w F .text 00000002 UART0_IRQHandler
69 0000091c g F .text 000005ce libucprintf
70 00000728 g F .text 0000003c uartsetup
71 1000000c g O .bss 00000004 UART2
72 000002e0 w F .text 00000002 UsageFault_Handler
73 10000000 g .data 00000000 _sdata
74 10000008 g O .data 00000004 RTCOSC
75 000002e0 w F .text 00000002 PLL0_IRQHandler
76 000002e0 w F .text 00000002 CAN_IRQHandler
77 000002e0 w F .text 00000002 PLL1_IRQHandler
78 000002e0 w F .text 00000002 SSP0_IRQHandler
79 10000000 g O .data 00000004 OSC0
80 000005a8 g F .text 00000180 uartsetbaudrate
81 000002e0 w F .text 00000002 I2S_IRQHandler
82 000002e0 w F .text 00000002 I2C2_IRQHandler
83 000002e0 w F .text 00000002 RTC_IRQHandler
84 10000018 g .bss 00000000 _ebss
85 000002e0 w F .text 00000002 TIMER0_IRQHandler
86 00000174 w F .text 0000016c Reset_Handler
87 000002e0 w F .text 00000002 SPI_IRQHandler
88 000002e0 w F .text 00000002 EINT1_IRQHandler
89 000002e0 w F .text 00000002 TIMER1_IRQHandler
90 000002e0 w F .text 00000002 UART2_IRQHandler
91 000002e0 g F .text 00000002 Default_Handler
92 000002e0 w F .text 00000002 ADC_IRQHandler
93 000004e8 g F .text 000000c0 uartsetpclkfactor
94 000002e0 w F .text 00000002 SSP1_IRQHandler
95 10000000 g .data 00000000 _efastcode
96 000002e0 w F .text 00000002 USB_IRQHandler
97 000002e0 w F .text 00000002 BOD_IRQHandler
98 000002e0 w F .text 00000002 MemManage_Handler
99 000000c4 g F .text 000000b0 main
100 000003cc g F .text 000000a8 bsp_uart_init
101 10000018 g O .stackarea 00000800 pulStack
102 000002e0 w F .text 00000002 WDT_IRQHandler
103 000002e0 w F .text 00000002 SVC_Handler
104 000002e4 g F .text 000000e8 SystemInit
105 000002e0 w F .text 00000002 QEI_IRQHandler
106 10000018 g .stackarea 00000000 _sstack
107 000002e0 w F .text 00000002 EINT0_IRQHandler
108 00000f24 g .data 00000000 _sifastcode
109 10000014 g O .bss 00000004 UART0
110 000004dc g F .text 0000000c uartputc
111 10000000 g .data 00000000 _sfastcode
112 10000818 g .stackarea 00000000 _estack
113 1000000c g .data 00000000 _edata
114 10000818 g .stackarea 00000000 _end
115 00000764 g F .text 00000014 uartopen
116 000004cc g F .text 00000010 consoleputc
117 00000000 g O .text 000000c4 g_pfnVectors
118 000002e0 w F .text 00000002 DMA_IRQHandler
119 000002e0 w F .text 00000002 BusFault_Handler
120 000002e0 w F .text 00000002 UART3_IRQHandler
121 000002e0 w F .text 00000002 MCPWM_IRQHandler
122 10000010 g O .bss 00000004 currentCpuFreq
123 000002e0 w F .text 00000002 ENET_IRQHandler
124 00000778 g F .text 00000120 coresetCpuFreq
125
126
@@ -0,0 +1,245
1 :10000000180800107501000000000000000000004A
2 :10001000E1020000E1020000E10200000000000037
3 :10002000000000000000000000000000E1020000ED
4 :10003000E102000000000000E1020000E102000017
5 :10004000E1020000E1020000E1020000E102000024
6 :10005000E1020000E1020000E1020000E102000014
7 :10006000E1020000E1020000E1020000E102000004
8 :10007000E1020000E1020000E1020000E1020000F4
9 :10008000E1020000E1020000E1020000E1020000E4
10 :10009000E1020000E1020000E1020000E1020000D4
11 :1000A000E1020000E1020000E1020000E1020000C4
12 :1000B000E1020000E1020000E1020000E1020000B4
13 :1000C000E10200002DE9F04182B000F0D3F9254BA8
14 :1000D0004FF41641186800F067FA0127224D234CAF
15 :1000E0000026B8460222C5F81C800423AA61082213
16 :1000F000EB61AA6110232022EB61AA6140238022D8
17 :100100003146EB611A48AA6100F008FC0021019118
18 :100110000198711CA04205DC019A531C01930198BF
19 :10012000A042F9DD0223AF610422EB610823AA613A
20 :10013000EB6110222023AA61EB6140228023AA6197
21 :100140000B48EB6100F0EAFB0020019001990236B8
22 :10015000A142C7DC019A501C01900199A142F9DD2E
23 :10016000C0E700BF1400001040C00920FFFF0F00CF
24 :10017000EC0E0000684620F007018D46F1B500F056
25 :10018000B1F84F484F49884235D04F4CA14232D246
26 :10019000024652F8046B0B46CD4343F8046B6519D5
27 :1001A000A342C5F3810526D29DB1012D0BD0022DAE
28 :1001B00005D0156800F108021D6001F1080352F82E
29 :1001C000040B43F8040B52F8041B43F8041BA3422E
30 :1001D00011D296465EF8047B5668D568DEF80400B6
31 :1001E0009C464CF8047B5E60CCF80400DD60103364
32 :1001F0001032A342EDD335483549884234D0354CCE
33 :10020000A14231D2024652F8046B0B46CD4343F86B
34 :10021000046B6519A342C5F3810525D29DB1012D5B
35 :100220000BD0022D05D0156800F108021D6001F108
36 :10023000080352F8040B43F8040B52F8041B43F86C
37 :10024000041BA34210D294465CF8047B5668D56820
38 :10025000DCF80400194641F8047B5E604860DD600C
39 :1002600010331032A342EED31B491C48814221D2E5
40 :1002700000220B46CC4343F8042B04198342C4F3F9
41 :10028000810417D264B1012C06D0022C1CBF1A6065
42 :1002900001F1080343F8042B43F8042B834209D2ED
43 :1002A0009E464EF8042B5A60CEF80420DA601033D4
44 :1002B0008342F5D3FFF706FFBDE8F140854670475E
45 :1002C000240F0000000000100C000010240F00009C
46 :1002D00000000010000000100C00001018000010BA
47 :1002E000FEE700BF3649202330B4C1F8A031D1F871
48 :1002F000A001334A10F0400FF9D0324D0124AA205A
49 :1003000055230321C2F80411C2F80C411146C2F86A
50 :100310008450C2F88C00C2F88C30C2F88040C2F819
51 :100320008C00C2F88C30D1F88830254A13F0806FE9
52 :10033000F9D00321AA245520C2F88010C2F88C40BD
53 :100340001146C2F88C00D1F888301D4A13F0407F66
54 :10035000F9D02324C2F8A440AA2055230124C2F8CE
55 :10036000AC001146C2F8AC30C2F8A040C2F8AC00F4
56 :10037000C2F8AC30D1F8A830114A13F4806FF9D02C
57 :100380000321AA235520C2F8A010C2F8AC301146B0
58 :10039000C2F8AC00D1F8A800094A10F4407FF9D0A7
59 :1003A0000949002043F23A03C2F8A801C2F8AC019F
60 :1003B000C2F8C410C2F8C801136030BC704700BF57
61 :1003C00000C00F4063000500DE87280430B5254DCE
62 :1003D000254BD5F8C41083B041F08074C5F8C440F3
63 :1003E000D5F8C420002042F01001C5F8C4101A68E6
64 :1003F000044642F010051D60196821F020021A60C1
65 :100400001D6845F0400119601A6822F080051D60E2
66 :10041000196841F480121A601D6825F400111960F2
67 :100420001A6842F480051D601968104D21F400021D
68 :100430001A6000F097F90822012328604FF4164152
69 :10044000009400F071F9022000F08CF9084D4FF48F
70 :100450001641286008220123009400F065F903B0DA
71 :1004600030BD00BF00C00F4000C0024014000010AB
72 :100470000C000010104A10B5D2F8C4400F4B44F4E1
73 :100480000041C2F8C4101C686FF0FF0244F0FF0185
74 :1004900019600B48DA6100F06FF900F0FDF9094CC2
75 :1004A0002060094800F068F900F0F6F92060FFF7D5
76 :1004B0008DFF002010BD00BF00C00F4040C00920CC
77 :1004C000002D31011000001000879303024B0146FC
78 :1004D000186800F003B800BF14000010436913F05F
79 :1004E000200FFBD00160704730B42A4A84B00DF170
80 :1004F000040C04460D46284B07CAACE803009C4296
81 :100500008CF8002029D018DD244B9C421BD003F529
82 :1005100080418C4214D104A94D19214B15F80C0CC3
83 :10052000D3F8AC11820442EA0101C3F8AC11D3F84C
84 :10053000AC010240C3F8AC2102E01A4884421ED04C
85 :1005400004B030BC70470DF1100C6544144B15F825
86 :100550000C2CD3F8AC111204E5E704A94D19104B8B
87 :1005600015F80C0CD3F8A811020242EA0101C3F8F5
88 :10057000A811D3F8A8010240C3F8A821E0E70DF1C3
89 :10058000100C6544064B15F80C2CD3F8A8119201F9
90 :10059000EBE700BF080F00000000014000800940A9
91 :1005A00000C00F4000C000402DE9F047044682B073
92 :1005B0000F46002853D000F06FF9554E554B80463A
93 :1005C00030689C42019000F09C804BDD524B9C4275
94 :1005D0005DD003F5804294425FD0002302A800EB77
95 :1005E000030E1EF804CC3F01B8FBFCF3BB422BD238
96 :1005F000D6F80090474DDFF820A1AC42CDF804902A
97 :1006000067D050DC454B9C4235D000230DF1080EDD
98 :100610000EEB030C1CF8041C012920D049082046CD
99 :10062000FFF762FF3268AC4201925ED046DC3B4885
100 :10063000844226D0002302A901EB030E1EF804CC4D
101 :10064000B8FBFCF3BB42D8D3E268B3FBF7F342F04C
102 :100650008001E1602360E06820F08002E26002B087
103 :10066000BDE8F0872D498C42B7D12D48D0F8A8318C
104 :10067000C3F38113B2E72A48D0F8A821C2F381134B
105 :10068000C4E7274AD2F8A811C1F38113D3E724485D
106 :10069000D0F8AC31C3F30143A0E7214AD2F8AC1142
107 :1006A000C1F381439AE7544519D01E498C42ACD11D
108 :1006B0001B49D1F8AC31C3F38143A7E754451AD0A5
109 :1006C000184B9C42B6D1164BD3F8AC01C0F3814312
110 :1006D000B1E71349D1F8A831C3F3012396E71048D5
111 :1006E000D0F8AC21C2F3014390E70D4BD3F8A80139
112 :1006F000C0F301239FE70A4AD2F8AC11C1F30143CA
113 :1007000099E7074AD2F8A811C1F3012366E700BFB1
114 :10071000140F0000000001400080094000C00040AC
115 :1007200000C00F4000C0094030B4092A9DF80840BD
116 :100730000ED8013BDDB2053A012D0ED90023072C5E
117 :100740000ED900259C186419C46030BCFFF72CBF7B
118 :10075000013BDDB20322012DF0D89B00072CF0D81D
119 :10076000E500EFE703289ABF024B53F82000002072
120 :10077000704700BFF80E0000F0B4404D3F4CD5F874
121 :100780000C31D4F80C1113F0030F08BF3C4B3B4E57
122 :1007900001F003070CBF1A6842F21072D6F80C5130
123 :1007A000012F08BF374F05F0030308BF3A68022B3B
124 :1007B00008BF354B314908BF1A68344BB3FBF0F41E
125 :1007C000601EC1F804015000012218E0B4FBF0F1F2
126 :1007D000CF1F0132B7F5FC7F144622D9B5FBF0F1EB
127 :1007E000CD1F0132B5F5FC7F1BD9B6FBF0F1CD1F53
128 :1007F000A21CB5F5FC7F14D9E21C212A3BD0234969
129 :10080000234F244E5C18B3FBF0F1DD199E19CF1F66
130 :1008100003F18E4303F5060CB7F5FC7F0CF50C4392
131 :10082000D4D8541E154B220401398918AA24552006
132 :100830000122C3F88410C3F88C401946C3F88C0019
133 :10084000C3F88020C3F88C40C3F88C00D1F888002E
134 :100850000A4A10F0806FF9D00321AA205523C2F86C
135 :100860008010C2F88C001146C2F88C30D1F8882074
136 :1008700012F0407FFAD0F0BC704700BF00C00F40BC
137 :1008800004000010000000100800001000A3E11197
138 :100890000046C32300E9A4351C4A30B4D2F8845082
139 :1008A000D2F88440D2F80411D2F80C3113F0030FBF
140 :1008B00004BF174B1868154BD3F80C2102F0030C3A
141 :1008C000124ABCF1010FD2F80C2108BF114B02F003
142 :1008D000030C08BF1868BCF1020F04BF0E4B186868
143 :1008E0000A4BD3F8802012F0020F0CD0AA04930C0C
144 :1008F0005A1C5300C4F307444A1C00FB03F004FBDA
145 :100900000221B0FBF1F030BC704700BF00C00F40C7
146 :100910000400001000000010080000100FB42DE9C2
147 :10092000F04784B00CAB53F8045BDFF8FC803D4F1C
148 :1009300000240393287840B125280CD00135FFF717
149 :10094000C5FD287801340028F6D1204604B0BDE862
150 :10095000F04704B070476878013525285DD0253808
151 :10096000532855D8DFE810F09C025400540054007E
152 :1009700054005400540054005400540054005400D7
153 :1009800054005400540054005400540054005400C7
154 :1009900054005400540054005400540054005400B7
155 :1009A00054005400540054005400540054005400A7
156 :1009B0005400540054005400540054005400540097
157 :1009C00054005400540054005400540054005C017E
158 :1009D0005400540054005400540054005400540077
159 :1009E0005400540054016200540054005400540058
160 :1009F0005400540054005400540054005400540057
161 :100A00005400540054005400540054005400FB019E
162 :100A100003980135021D03928CE7FFF757FD01355E
163 :100A2000013487E767666666180F0000039BEC4693
164 :100A3000D3F8009098E80700ACE8030000200433E6
165 :100A400081456E4603938CF800208DF80900C0F2B2
166 :100A50002C82B9F1000F40F3D98087FB09204FEABF
167 :100A6000E971C1EBA00303EB830EA9EB4E0A0AF177
168 :100A700030098DF80090002B00F0208287FB03C91D
169 :100A8000DA17C2EBA90202EB820CA3EB4C03303362
170 :100A90008DF80130002A00F00E8287FB023ED0174D
171 :100AA000C0EBAE0303EB830AA2EB4A0130318DF8B1
172 :100AB0000210002B00F0048287FB03C9DA17C2EB97
173 :100AC000A90202EB820CA3EB4C0330338DF8033008
174 :100AD000002A00F0FB8187FB023ED017C0EBAE037B
175 :100AE00003EB830AA2EB4A0130318DF80410002B8E
176 :100AF00000F0E98187FB03C9DA17C2EBA90202EB18
177 :100B0000820CA3EB4C0330338DF80530002A00F043
178 :100B1000E08187FB023ED017C0EBAE0303EB830AF4
179 :100B2000A2EB4A0130318DF80610002B00F0D7817E
180 :100B300087FB03C9DA17C2EBA90202EB820CA3EB15
181 :100B40004C0330338DF80730002A00F0C58187FB55
182 :100B5000023ED017C0EBAE0303EB830AA2EB4A01BF
183 :100B600030318DF80810002B00F0BC8187FB03C9E1
184 :100B7000D817C0EBA90202EB820CA3EB4C03303375
185 :100B80008DF809304FF0090A16F80A00FFF79EFCAD
186 :100B9000BAF1000F0AF003030AF1FF3936DDD3B1D1
187 :100BA000012B0DD0022B05D016F80900FFF78EFCA3
188 :100BB00009F1FF3916F80900FFF788FC09F1FF3940
189 :100BC00016F8090009F1FF39FFF780FC09F1010C63
190 :100BD000BCF1000F1ADD16F8090009F1FF3AFFF722
191 :100BE00075FC16F80A00A9F1020AFFF76FFC16F867
192 :100BF0000A00FFF76BFCA9F10303F05CA9F10409FB
193 :100C0000FFF764FC09F101010029E4DC013591E6FC
194 :100C1000039A0135111D10780391FFF757FC89E6FF
195 :100C200003996E460A68081D02F00F03092B88BF5E
196 :100C30000733039098E8030086E80300111101F0E0
197 :100C40000F003033092888BF07300A118DF80030B3
198 :100C500002F00F033030092B88BF073311118DF8D4
199 :100C6000010001F00F00092888BF0730091101F0C9
200 :100C70000F023030092A88BF073203F130090B1107
201 :100C80008DF8030003F00F00092888BF07301B11FF
202 :100C900002F1300C03F00F02092A00F1300188BF85
203 :100CA0000732C3F303103032092888BF07303030D1
204 :100CB0008DF802908DF804C08DF805108DF806208F
205 :100CC0008DF80700082300E04B4603F1FF3916F8C2
206 :100CD00009003028F8D0002B98DDFFF7F7FBB9F1B9
207 :100CE000000F09F0030309F1FF3A8FDDD3B1012BA7
208 :100CF0000DD0022B05D016F80A00FFF7E7FB0AF12A
209 :100D0000FF3A16F80A00FFF7E1FB0AF1FF3A16F87E
210 :100D10000A000AF1FF3AFFF7D9FB0AF101010029A5
211 :100D20007FF774AF16F80A000AF1FF39FFF7CEFB20
212 :100D300016F80900AAF10209FFF7C8FB16F8090026
213 :100D4000FFF7C4FBAAF10303F05CAAF1040AFFF762
214 :100D5000BDFB0AF1010CBCF1000FE3DC56E703997F
215 :100D60006E460A68081D02F00F03092B88BF27335F
216 :100D7000039098E8030086E80300111101F00F00CA
217 :100D80003033092888BF27300A118DF8003002F06F
218 :100D90000F033030092B88BF273311118DF8010064
219 :100DA00001F00F00092888BF2730091101F00F0258
220 :100DB0003030092A88BF273203F1300C0B118DF82F
221 :100DC000030003F00F00092888BF27301B1102F130
222 :100DD000300903F00F02092A88BF27328DF802C0BC
223 :100DE00000F1300CC3F303103032092888BF2730DC
224 :100DF00030308DF804908DF805C08DF806208DF800
225 :100E00000700082300E04B4603F1FF3916F80900FC
226 :100E10003028F8D0002B7FF7F9AEFFF757FBB9F178
227 :100E2000000F09F0030309F1FF3A7FF7EFAED3B1EA
228 :100E3000012B0DD0022B05D016F80A00FFF746FB58
229 :100E40000AF1FF3A16F80A00FFF740FB0AF1FF3AF1
230 :100E500016F80A000AF1FF3AFFF738FB0AF101031E
231 :100E6000002B7FF7D3AE16F80A000AF1FF39FFF71F
232 :100E70002DFB16F80900AAF10209FFF727FB16F867
233 :100E80000900FFF723FBAAF10303F05CAAF1040AAF
234 :100E9000FFF71CFB0AF1010CBCF1000FE3DCB5E627
235 :100EA00025200135FFF712FB44E52D20C9F100098B
236 :100EB000FFF70CFBCDE54FF0010A65E69A4663E6C5
237 :100EC0004FF0020A60E64FF0040A5DE64FF0030AB5
238 :100ED0005AE64FF0050A57E64FF0070A54E64FF07E
239 :100EE000060A51E64FF0080A4EE600BF74657374B7
240 :100EF000202564200A0D000000C0004000000140D1
241 :100F00000080094000C00940010102020000000009
242 :100F100003000000040102082020202020202020BF
243 :040F200000000000CD
244 :0C0F2400001BB70000093D000080000029
245 :00000001FF
@@ -0,0 +1,418
1 Archive member included because of file (symbol)
2
3 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
4 main.o (bsp_init)
5 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
6 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o) (uartputc)
7 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
8 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o) (coresetCpuFreq)
9 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
10 main.o (libucprintf)
11
12 Discarded input sections
13
14 .text 0x00000000 0x0 main.o
15 .data 0x00000000 0x0 main.o
16 .bss 0x00000000 0x0 main.o
17 .text 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
18 .data 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
19 .bss 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
20 .text 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
21 .data 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
22 .bss 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
23 .text.__get_PSP
24 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
25 .text.__set_PSP
26 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
27 .text.__get_MSP
28 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
29 .text.__set_MSP
30 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
31 .text.__get_BASEPRI
32 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
33 .text.__set_BASEPRI
34 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
35 .text.__get_PRIMASK
36 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
37 .text.__set_PRIMASK
38 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
39 .text.__get_FAULTMASK
40 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
41 .text.__set_FAULTMASK
42 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
43 .text.__get_CONTROL
44 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
45 .text.__set_CONTROL
46 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
47 .text.__REV 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
48 .text.__REV16 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
49 .text.__REVSH 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
50 .text.__RBIT 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
51 .text.__LDREXB
52 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
53 .text.__LDREXH
54 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
55 .text.__LDREXW
56 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
57 .text.__STREXB
58 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
59 .text.__STREXH
60 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
61 .text.__STREXW
62 0x00000000 0x8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
63 .text 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
64 .data 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
65 .bss 0x00000000 0x0 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
66 .text.SystemCoreClockUpdate
67 0x00000000 0xcc /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
68 .data.SystemCoreClock
69 0x00000000 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
70 .text 0x00000000 0x0 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
71 .data 0x00000000 0x0 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
72 .bss 0x00000000 0x0 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
73 .text.bsp_GPIO_init
74 0x00000000 0x28 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
75 .text.consolegetc
76 0x00000000 0xc /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
77 .bss.UART3 0x00000000 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
78 .bss.UART1 0x00000000 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
79 .text 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
80 .data 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
81 .bss 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
82 .text.uartgetc
83 0x00000000 0x10 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
84 .text.uartputs
85 0x00000000 0x18 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
86 .text.uartgets
87 0x00000000 0x20 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
88 .text.uartoff 0x00000000 0x50 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
89 .text.uarton 0x00000000 0x50 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
90 .text.uartgetpclkfactor
91 0x00000000 0x78 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
92 .text 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
93 .data 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
94 .bss 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
95 .text 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
96 .data 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
97 .bss 0x00000000 0x0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
98 .text.clearch 0x00000000 0x24 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
99 .text.printhexfromint
100 0x00000000 0x140 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
101 .text.printdecfromint
102 0x00000000 0x1e0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
103 .text.int2hex 0x00000000 0xd8 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
104 .text.scanintfromhex
105 0x00000000 0x27c /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
106 .text.scanintfromdec
107 0x00000000 0x188 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
108 .text.libucscanf
109 0x00000000 0x250 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
110 .rodata.str1.4
111 0x00000000 0x50 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
112
113 Memory Configuration
114
115 Name Origin Length Attributes
116 IROM 0x00000000 0x00080000 xr
117 IRAM0 0x10000000 0x00008000 xrw
118 IRAM1 0x2007c000 0x00004000 xrw
119 IRAM2 0x20080000 0x00004000 xrw
120 *default* 0x00000000 0xffffffff
121
122 Linker script and memory map
123
124
125 .text 0x00000000 0xf24
126 *(.isr_vector .isr_vector.*)
127 .isr_vector 0x00000000 0xc4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
128 0x00000000 g_pfnVectors
129 *(.text .text.*)
130 .text.main 0x000000c4 0xb0 main.o
131 0x000000c4 main
132 .text.Reset_Handler
133 0x00000174 0x16c /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
134 0x00000174 Reset_Handler
135 .text.Default_Handler
136 0x000002e0 0x4 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
137 0x000002e0 TIMER2_IRQHandler
138 0x000002e0 DebugMon_Handler
139 0x000002e0 RIT_IRQHandler
140 0x000002e0 I2C0_IRQHandler
141 0x000002e0 SysTick_Handler
142 0x000002e0 PWM1_IRQHandler
143 0x000002e0 PendSV_Handler
144 0x000002e0 I2C1_IRQHandler
145 0x000002e0 EINT2_IRQHandler
146 0x000002e0 UART1_IRQHandler
147 0x000002e0 EINT3_IRQHandler
148 0x000002e0 TIMER3_IRQHandler
149 0x000002e0 UART0_IRQHandler
150 0x000002e0 UsageFault_Handler
151 0x000002e0 PLL0_IRQHandler
152 0x000002e0 CAN_IRQHandler
153 0x000002e0 PLL1_IRQHandler
154 0x000002e0 SSP0_IRQHandler
155 0x000002e0 I2S_IRQHandler
156 0x000002e0 I2C2_IRQHandler
157 0x000002e0 RTC_IRQHandler
158 0x000002e0 TIMER0_IRQHandler
159 0x000002e0 SPI_IRQHandler
160 0x000002e0 EINT1_IRQHandler
161 0x000002e0 TIMER1_IRQHandler
162 0x000002e0 UART2_IRQHandler
163 0x000002e0 Default_Handler
164 0x000002e0 ADC_IRQHandler
165 0x000002e0 SSP1_IRQHandler
166 0x000002e0 USB_IRQHandler
167 0x000002e0 BOD_IRQHandler
168 0x000002e0 MemManage_Handler
169 0x000002e0 WDT_IRQHandler
170 0x000002e0 SVC_Handler
171 0x000002e0 QEI_IRQHandler
172 0x000002e0 EINT0_IRQHandler
173 0x000002e0 DMA_IRQHandler
174 0x000002e0 BusFault_Handler
175 0x000002e0 UART3_IRQHandler
176 0x000002e0 MCPWM_IRQHandler
177 0x000002e0 ENET_IRQHandler
178 .text.SystemInit
179 0x000002e4 0xe8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
180 0x000002e4 SystemInit
181 .text.bsp_uart_init
182 0x000003cc 0xa8 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
183 0x000003cc bsp_uart_init
184 .text.bsp_init
185 0x00000474 0x58 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
186 0x00000474 bsp_init
187 .text.consoleputc
188 0x000004cc 0x10 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
189 0x000004cc consoleputc
190 .text.uartputc
191 0x000004dc 0xc /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
192 0x000004dc uartputc
193 .text.uartsetpclkfactor
194 0x000004e8 0xc0 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
195 0x000004e8 uartsetpclkfactor
196 .text.uartsetbaudrate
197 0x000005a8 0x180 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
198 0x000005a8 uartsetbaudrate
199 .text.uartsetup
200 0x00000728 0x3c /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
201 0x00000728 uartsetup
202 .text.uartopen
203 0x00000764 0x14 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
204 0x00000764 uartopen
205 .text.coresetCpuFreq
206 0x00000778 0x120 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
207 0x00000778 coresetCpuFreq
208 .text.coregetCpuFreq
209 0x00000898 0x84 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
210 0x00000898 coregetCpuFreq
211 .text.libucprintf
212 0x0000091c 0x5d0 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
213 0x0000091c libucprintf
214 *(.gnu.linkonce.t.*)
215 *(.glue_7)
216 .glue_7 0x00000000 0x0 linker stubs
217 *(.glue_7t)
218 .glue_7t 0x00000000 0x0 linker stubs
219 *(.gcc_except_table)
220 *(.rodata .rodata*)
221 .rodata.str1.4
222 0x00000eec 0xc main.o
223 .rodata.CSWTCH.5
224 0x00000ef8 0x10 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
225 .rodata.C.0.5885
226 0x00000f08 0xc /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
227 .rodata.C.2.5916
228 0x00000f14 0x4 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
229 .rodata 0x00000f18 0xc /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
230 *(.gnu.linkonce.r.*)
231
232 .vfp11_veneer 0x00000f24 0x0
233 .vfp11_veneer 0x00000000 0x0 linker stubs
234
235 .v4_bx 0x00000f24 0x0
236 .v4_bx 0x00000000 0x0 linker stubs
237
238 .ctors 0x00000f24 0x0
239 0x00000f24 . = ALIGN (0x4)
240 0x00000f24 PROVIDE (__ctors_start, .)
241 *(SORT(.ctors.*))
242 *(.ctors)
243 0x00000f24 PROVIDE (__ctors_end, .)
244
245 .dtors 0x00000f24 0x0
246 0x00000f24 . = ALIGN (0x4)
247 0x00000f24 PROVIDE (__dtors_start, .)
248 *(SORT(.dtors.*))
249 *(.dtors)
250 0x00000f24 PROVIDE (__dtors_end, .)
251 0x00000f24 . = ALIGN (0x4)
252 0x00000f24 _etext = .
253 0x00000f24 _sifastcode = .
254
255 .fastcode 0x10000000 0x0 load address 0x00000f24
256 0x10000000 . = ALIGN (0x4)
257 0x10000000 _sfastcode = .
258 *(.glue_7t)
259 *(.glue_7)
260 *(.fastcode)
261 0x10000000 . = ALIGN (0x4)
262 0x10000000 _efastcode = .
263 0x10000000 _sidata = .
264
265 .usb_ram
266 *.o(USB_RAM)
267
268 .data 0x10000000 0xc load address 0x00000f24
269 0x00000f24 _sidata = LOADADDR (.data)
270 0x10000000 . = ALIGN (0x4)
271 0x10000000 _sdata = .
272 *(vtable vtable.*)
273 *(.data .data.*)
274 .data.OSC0 0x10000000 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
275 0x10000000 OSC0
276 .data.INTOSC 0x10000004 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
277 0x10000004 INTOSC
278 .data.RTCOSC 0x10000008 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
279 0x10000008 RTCOSC
280 *(.gnu.linkonce.d*)
281 0x1000000c . = ALIGN (0x4)
282 0x1000000c _edata = .
283
284 .bss 0x1000000c 0xc load address 0x00000f30
285 0x1000000c . = ALIGN (0x4)
286 0x1000000c _sbss = .
287 *(.bss .bss.*)
288 .bss.UART2 0x1000000c 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
289 0x1000000c UART2
290 .bss.currentCpuFreq
291 0x10000010 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
292 0x10000010 currentCpuFreq
293 .bss.UART0 0x10000014 0x4 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
294 0x10000014 UART0
295 *(.gnu.linkonce.b*)
296 *(COMMON)
297 0x10000018 . = ALIGN (0x4)
298 0x10000018 _ebss = .
299
300 .stackarea 0x10000018 0x800 load address 0x00000f30
301 0x10000018 . = ALIGN (0x8)
302 0x10000018 _sstack = .
303 *(.stackarea .stackarea.*)
304 .stackarea 0x10000018 0x800 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
305 0x10000018 pulStack
306 0x10000818 . = ALIGN (0x8)
307 0x10000818 _estack = .
308 0x10000818 . = ALIGN (0x4)
309 0x10000818 _end = .
310 0x10000818 PROVIDE (end, .)
311
312 .stab
313 *(.stab)
314
315 .stabstr
316 *(.stabstr)
317
318 .stab.excl
319 *(.stab.excl)
320
321 .stab.exclstr
322 *(.stab.exclstr)
323
324 .stab.index
325 *(.stab.index)
326
327 .stab.indexstr
328 *(.stab.indexstr)
329
330 .debug
331 *(.debug)
332
333 .line
334 *(.line)
335
336 .debug_srcinfo
337 *(.debug_srcinfo)
338
339 .debug_sfnames
340 *(.debug_sfnames)
341
342 .debug_aranges
343 *(.debug_aranges)
344
345 .debug_pubnames
346 *(.debug_pubnames)
347
348 .debug_info
349 *(.debug_info .gnu.linkonce.wi.*)
350
351 .debug_abbrev
352 *(.debug_abbrev)
353
354 .debug_line
355 *(.debug_line)
356
357 .debug_frame
358 *(.debug_frame)
359
360 .debug_str
361 *(.debug_str)
362
363 .debug_loc
364 *(.debug_loc)
365
366 .debug_macinfo
367 *(.debug_macinfo)
368
369 .debug_weaknames
370 *(.debug_weaknames)
371
372 .debug_funcnames
373 *(.debug_funcnames)
374
375 .debug_typenames
376 *(.debug_typenames)
377
378 .debug_varnames
379 *(.debug_varnames)
380 LOAD main.o
381 LOAD /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
382 LOAD /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
383 LOAD /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
384 LOAD /opt/libuc2/bsp/bin/LandTiger/libbsp.a
385 LOAD /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a
386 LOAD /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a
387 LOAD /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a
388 OUTPUT(lpc1768_uart.elf elf32-littlearm)
389
390 .comment 0x00000000 0x2a
391 .comment 0x00000000 0x2a main.o
392 0x2b (size before relaxing)
393 .comment 0x00000000 0x2b /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
394 .comment 0x00000000 0x2b /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
395 .comment 0x00000000 0x2b /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
396 .comment 0x00000000 0x2b /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
397 .comment 0x00000000 0x2b /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
398 .comment 0x00000000 0x2b /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
399 .comment 0x00000000 0x2b /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
400
401 .ARM.attributes
402 0x00000000 0x31
403 .ARM.attributes
404 0x00000000 0x31 main.o
405 .ARM.attributes
406 0x00000031 0x31 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/startup_LPC17xx.o
407 .ARM.attributes
408 0x00000062 0x31 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.o
409 .ARM.attributes
410 0x00000093 0x31 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.o
411 .ARM.attributes
412 0x000000c4 0x31 /opt/libuc2/bsp/bin/LandTiger/libbsp.a(bsp.o)
413 .ARM.attributes
414 0x000000f5 0x31 /opt/libuc2/lib/bin/lpc17XX/UART/libuart.a(uart.o)
415 .ARM.attributes
416 0x00000126 0x31 /opt/libuc2/lib/bin/lpc17XX/CORE/libcore.a(core.o)
417 .ARM.attributes
418 0x00000157 0x31 /opt/libuc2/lib/bin/lpc17XX/STRINGS/libucstrings.a(libucstrings.o)
@@ -0,0 +1,12
1 TEMPLATE = app
2 ARCH = lpc17XX-arm-noabi-gcc
3 TARGET = lpc1768_uart
4 BSP = LandTiger
5
6 LIBS += UART CORE UCSTRINGS
7
8 SOURCES += main.c
9
10
11 HEADERS +=
12
@@ -0,0 +1,64
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22
23 #include "LPC17xx.h"
24 #include "bsp.h"
25 #include "core.h"
26 #include "uart.h"
27 #include "libucstrings.h"
28 #define __delay(t) for(volatile int i=0;i<t;i++);
29
30
31 int main (void)
32 {
33 bsp_init();
34 uartsetbaudrate(UART0,38400);
35 int i = 0;
36 while(1)
37 {
38 LED1_OFF;
39 LED2_ON;
40 LED3_OFF;
41 LED4_ON;
42 LED5_OFF;
43 LED6_ON;
44 LED7_OFF;
45 LED8_ON;
46 //uartputs(UART2,"Hello World\n\r");
47 libucprintf("test %d \n\r",i++);
48 __delay(1024*1024);
49 LED1_ON;
50 LED2_OFF;
51 LED3_ON;
52 LED4_OFF;
53 LED5_ON;
54 LED6_OFF;
55 LED7_ON;
56 LED8_OFF;
57 //uartputs(UART0,"Hello World\n\r");
58 libucprintf("test %d \n\r",i++);
59 __delay(1024*1024);
60 }
61 return 0;
62
63 }
64
@@ -0,0 +1,21
1 main.o: main.c /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h \
2 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h \
3 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h \
4 /opt/libuc2/bsp/includes/LandTiger/bsp.h \
5 /opt/libuc2/lib/includes/lpc17XX/UART/uart.h \
6 /opt/libuc2/lib/includes/lpc17XX/CORE/core.h \
7 /opt/libuc2/lib/includes/lpc17XX/STRINGS/libucstrings.h
8
9 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h:
10
11 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h:
12
13 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h:
14
15 /opt/libuc2/bsp/includes/LandTiger/bsp.h:
16
17 /opt/libuc2/lib/includes/lpc17XX/UART/uart.h:
18
19 /opt/libuc2/lib/includes/lpc17XX/CORE/core.h:
20
21 /opt/libuc2/lib/includes/lpc17XX/STRINGS/libucstrings.h:
@@ -0,0 +1,13
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4 include $(LIBUC)/rules/common/rules.mk
5
6 all:subdir
7 make -C src
8 @echo Code compiled
9
10 clean:
11 make clean -C src
12 @echo Code compiled
13
1 NO CONTENT: new file 100644, binary diff hidden
1 NO CONTENT: new file 100644, binary diff hidden
1 NO CONTENT: new file 100644, binary diff hidden
@@ -0,0 +1,48
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22 #include "LPC17xx.h"
23
24
25 #define pll0useInternal 0
26 #define pll0useMainOsc 1
27 #define pll0useRTC 2
28
29
30 #define pll0setClksrc(src) if((unsigned int)(src)<3) LPC_SC->CLKSRCSEL=(src)
31 #define pll0getClksrc (LPC_SC->CLKSRCSEL & 3)
32
33
34 extern void coresetCpuFreq(unsigned int freq);
35 extern unsigned int coregetCpuFreq();
36
37
38
39
40
41
42
43
44
45
46
47
48
@@ -0,0 +1,70
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22 #ifndef IIC_H
23 #define IIC_H
24 #include "LPC17xx.h"
25
26 enum iicctrlvals
27 {
28 i2noerr,
29 i2noack,
30 i2arbloss,
31 i2busy,
32 i2timeout
33 };
34
35 typedef enum iicctrlvals i2ctrl;
36
37 struct lpc17XXi2cRegs
38 {
39 unsigned long I2CONSET;
40 unsigned long I2STAT;
41 unsigned long I2DAT;
42 unsigned long I2ADR;
43 unsigned long I2SCLH;
44 unsigned long I2SCLL;
45 unsigned long I2CONCLR;
46 };
47
48 typedef volatile struct lpc17XXi2cRegs i2cDev;
49
50 extern i2ctrl i2cwrite(i2cDev* dev,char address,char*data,int* cnt);
51 extern i2ctrl i2cwrite2(i2cDev* dev,char address,char*cmd,int* cmdcnt,char*data,int* datcnt);
52 extern i2ctrl i2cread(i2cDev* dev,char address,char*data,int* cnt);
53 extern i2cDev* i2copen(int count);
54 extern void i2cenable(i2cDev* dev);
55 extern void i2cdisable(i2cDev* dev);
56 extern void i2csetup(i2cDev* dev,int clkH,int clkL);
57 extern unsigned char i2cgetpclkfactor(i2cDev* dev);
58 extern void i2csetpclkfactor(i2cDev* dev,unsigned char pclkfactor);
59 extern void i2csetdatarate(i2cDev* dev,unsigned int dataRate);
60
61 #endif
62
63
64
65
66
67
68
69
70
@@ -0,0 +1,28
1 #/*------------------------------------------------------------------------------
2 #-- This file is a part of the libuc, microcontroler library
3 #-- Copyright (C) 2011, Alexis Jeandet
4 #--
5 #-- This program is free software; you can redistribute it and/or modify
6 #-- it under the terms of the GNU General Public License as published by
7 #-- the Free Software Foundation; either version 3 of the License, or
8 #-- (at your option) any later version.
9 #--
10 #-- This program is distributed in the hope that it will be useful,
11 #-- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 #-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 #-- GNU General Public License for more details.
14 #--
15 #-- You should have received a copy of the GNU General Public License
16 #-- along with this program; if not, write to the Free Software
17 #-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 #-------------------------------------------------------------------------------
19 #-- Author : Alexis Jeandet
20 #-- Mail : alexis.jeandet@gmail.com
21 #-------------------------------------------------------------------------------*/
22
23
24
25 void clearstr(char* a);
26 void int2hex(unsigned long a,char*b);
27 int libucprintf(const char*,...);
28 int libucscanf(const char*,...);
@@ -0,0 +1,3
1 TEMPLATE = dir
2 SUBDIRS += src
3
@@ -0,0 +1,13
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4 include $(LIBUC)/rules/common/rules.mk
5
6 all:subdir
7 make -C lpc17XX
8 @echo Code compiled
9
10 clean:
11 make clean -C lpc17XX
12 @echo Code compiled
13
@@ -0,0 +1,5
1 TEMPLATE = dir
2 SUBDIRS += lpc17XX \
3 lpc21XX \
4 LEON3
5
@@ -0,0 +1,19
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4
5 HEADERSINSTALLPATH = $(LIBUC_INC_DIR)/CORE
6 HEADERS += core.h
7 LIBSOURCES += core.c
8 OBJECTFILES = $(LIBSOURCES:.c=.o)
9 ARCH = $(LIBUC)/rules/lpc17XX-arm-noabi-gcc
10 TARGET=libcore
11 LIBUC_INCLUDES=
12 LIBUC_LIBRARIES=
13 TARGETINSTALLPATH=$(LIBUC_LIBS_DIR)/CORE
14 HEADERSINSTALLPATH=$(LIBUC_INC_DIR)/CORE
15 BSP=generic
16 include $(ARCH)/rules.mk
17
18 all:lib
19 @echo Code compiled
@@ -0,0 +1,82
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22 #include "core.h"
23 extern unsigned int OSC0;
24 extern unsigned int INTOSC;
25 extern unsigned int RTCOSC;
26
27 void coresetCpuFreq(unsigned int freq)
28 {
29 unsigned int inputFreq = 10000,PLLFREQ=300000000;
30 unsigned int M0=6,N0=1;
31 if(pll0getClksrc==pll0useInternal)
32 {
33 inputFreq=INTOSC;
34 }
35 if(pll0getClksrc==pll0useMainOsc)
36 {
37 inputFreq=OSC0;
38 }
39 if(pll0getClksrc==pll0useRTC)
40 {
41 inputFreq=RTCOSC;
42 }
43 LPC_SC->CCLKCFG = (PLLFREQ/freq)-1;
44 while(N0<33)
45 {
46 M0=(PLLFREQ*N0)/(2*inputFreq);
47 if((6<M0)&&(M0<512))
48 {
49 LPC_SC->PLL0CFG = (M0-1)+((N0-1)<<16);
50 LPC_SC->PLL0FEED = 0xAA;
51 LPC_SC->PLL0FEED = 0x55;
52 LPC_SC->PLL0CON = 1;
53 LPC_SC->PLL0FEED = 0xAA;
54 LPC_SC->PLL0FEED = 0x55;
55 while (!(LPC_SC->PLL0STAT & (1<<26)));
56 LPC_SC->PLL0CON = 3;
57 LPC_SC->PLL0FEED = 0xAA;
58 LPC_SC->PLL0FEED = 0x55;
59 while (!(LPC_SC->PLL0STAT & ((1<<25) | (1<<24))));
60 break;
61 }
62 N0++;
63 }
64
65 }
66
67
68
69
70 unsigned int coregetCpuFreq()
71 {
72 unsigned int inputFreq;
73 unsigned int M0,N0,CPUDIV;
74 M0 = (LPC_SC->PLL0CFG & 0x3FFF) + 1;
75 N0 = ((LPC_SC->PLL0CFG>>16) & 0xFF) + 1;
76 CPUDIV = LPC_SC->CCLKCFG + 1;
77 if(pll0getClksrc==pll0useInternal){ inputFreq=INTOSC;}
78 if(pll0getClksrc==pll0useMainOsc) {inputFreq=OSC0;}
79 if(pll0getClksrc==pll0useRTC) {inputFreq=RTCOSC;}
80 if((LPC_SC->PLL0CON & 2)==2) {return ((inputFreq*M0*2)/(N0*CPUDIV));}
81 return inputFreq;
82 }
@@ -0,0 +1,11
1 core.o: core.c core.h /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h \
2 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h \
3 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h
4
5 core.h:
6
7 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h:
8
9 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h:
10
11 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h:
@@ -0,0 +1,48
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22 #include "LPC17xx.h"
23
24
25 #define pll0useInternal 0
26 #define pll0useMainOsc 1
27 #define pll0useRTC 2
28
29
30 #define pll0setClksrc(src) if((unsigned int)(src)<3) LPC_SC->CLKSRCSEL=(src)
31 #define pll0getClksrc (LPC_SC->CLKSRCSEL & 3)
32
33
34 extern void coresetCpuFreq(unsigned int freq);
35 extern unsigned int coregetCpuFreq();
36
37
38
39
40
41
42
43
44
45
46
47
48
@@ -0,0 +1,12
1 TEMPLATE = lib
2 ARCH = lpc17XX-arm-noabi-gcc
3 TARGET = libcore
4 TARGETINSTALLPATH = $(LIBUC_LIBS_DIR)/CORE
5 HEADERSINSTALLPATH = $(LIBUC_INC_DIR)/CORE
6
7 LIBS +=
8
9 SOURCES += core.c
10
11
12 HEADERS += core.h
@@ -0,0 +1,19
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4
5 HEADERSINSTALLPATH = $(LIBUC_INC_DIR)/IIC
6 HEADERS += iic.h
7 LIBSOURCES += iic.c
8 OBJECTFILES = $(LIBSOURCES:.c=.o)
9 ARCH = $(LIBUC)/rules/lpc17XX-arm-noabi-gcc
10 TARGET=libiic
11 LIBUC_INCLUDES=$(LIBUC_INC_DIR_CORE)
12 LIBUC_LIBRARIES=$(LIBUC_LIBS_DIR_CORE) $(LIBUC_LIBS_CORE)
13 TARGETINSTALLPATH=$(LIBUC_LIBS_DIR)/IIC
14 HEADERSINSTALLPATH=$(LIBUC_INC_DIR)/IIC
15 BSP=generic
16 include $(ARCH)/rules.mk
17
18 all:lib
19 @echo Code compiled
@@ -0,0 +1,319
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22 #include "iic.h"
23 #include "core.h"
24
25 #define iicputdata(iicdev,W,IICONSET,IICONCLR) (iicdev)->I2DAT = (W);\
26 (iicdev)->I2CONSET = (IICONSET);\
27 (iicdev)->I2CONCLR = (IICONCLR);
28
29 #define iicgetdata(iicdev,W,IICONSET,IICONCLR) (W) = (iicdev)->I2DAT;\
30 (iicdev)->I2CONSET = (IICONSET);\
31 (iicdev)->I2CONCLR = (IICONCLR);
32
33
34
35 i2ctrl i2cwrite2(i2cDev* dev,char address,char*cmd,int* cmdcnt,char*data,int* datcnt)
36 {
37 char iicdat=0;
38 dev->I2CONCLR = 0x28;
39 iicdat = (address<<1) & 0xFE;
40 int count = (*datcnt) + 2;
41 *datcnt = 0;
42 while(dev->I2STAT != 0xF8); //waiting for device to be ready /!\ should add timeout
43 dev->I2CONSET = (1<<5); //initiate transfert
44 while(count>0)
45 {
46 while((dev->I2CONSET & 0x08)!=0x08);
47 switch(dev->I2STAT)
48 {
49 case 0x08:
50 iicputdata(dev,iicdat,(1<<2),0x28);
51 iicdat = *cmd++;
52 break;
53 case 0x10:
54 iicputdata(dev,iicdat,(1<<2),0x28);
55 iicdat = *cmd++;
56 *cmdcnt = (*cmdcnt) - 1;
57 break;
58 case 0x18:
59 iicputdata(dev,iicdat,0,0x08);
60 if((*cmdcnt)>1)
61 {
62 iicdat = *cmd++;
63 *cmdcnt = (*cmdcnt) - 1;
64 }
65 else
66 {
67 count--;
68 iicdat = *data++;
69 }
70 break;
71 case 0x28:
72 iicputdata(dev,iicdat,(1<<2),0x08);
73 if((*cmdcnt)>1)
74 {
75 iicdat = *cmd++;
76 *cmdcnt = (*cmdcnt) - 1;
77 }
78 else
79 {
80 count--;
81 *datcnt = (*datcnt)+1;
82 iicdat = *data++;
83 }
84 break;
85 case 0x20:
86 count = 0;
87 break;
88 case 0x30:
89 count = 0;
90 break;
91 case 0x38:
92 count = 0;
93 break;
94 default:
95 break;
96 }
97
98 }
99 dev->I2CONSET = (1<<4) + (1<<2);
100 dev->I2CONCLR = 1<<3;
101 return i2noerr;
102 }
103
104
105
106 i2ctrl i2cwrite(i2cDev* dev,char address,char*data,int* cnt)
107 {
108 char iicdat=0;
109 dev->I2CONCLR = 0x28;
110 iicdat = (address<<1) & 0xFE;
111 int count = (*cnt) + 1;
112 *cnt = 0;
113 while(dev->I2STAT != 0xF8); //waiting for device to be ready /!\ should add timeout
114 dev->I2CONSET = (1<<5); //initiate transfert
115 while(count>0)
116 {
117 while((dev->I2CONSET & 0x08)!=0x08);
118 switch(dev->I2STAT)
119 {
120 case 0x08:
121 iicputdata(dev,iicdat,(1<<2),0x28);
122 iicdat = *data++;
123 break;
124 case 0x10:
125 iicputdata(dev,iicdat,(1<<2),0x28);
126 iicdat = *data++;
127 break;
128 case 0x18:
129 iicputdata(dev,iicdat,0,0x08);
130 count--;
131 iicdat = *data++;
132 break;
133 case 0x28:
134 iicputdata(dev,iicdat,(1<<2),0x08);
135 *cnt = (*cnt)+1;
136 count--;
137 iicdat = *data++;
138 break;
139 case 0x20:
140 return i2noack;
141 count = 0;
142 break;
143 case 0x30:
144 return i2noack;
145 count = 0;
146 break;
147 case 0x38:
148 return i2arbloss;
149 count = 0;
150 break;
151 default:
152 break;
153 }
154
155 }
156 dev->I2CONSET = (1<<4) + (1<<2);
157 dev->I2CONCLR = 1<<3;
158 return i2noerr;
159 }
160
161
162 i2ctrl i2cread(i2cDev* dev,char address,char*data,int* cnt)
163 {
164 char iicdat=0;
165 dev->I2CONCLR = 0x28;
166 iicdat = (address<<1) + 1;
167 int count = (*cnt) + 1;
168 *cnt = 0;
169 while(dev->I2STAT != 0xF8); //waiting for device to be ready /!\ should add timeout
170 dev->I2CONSET = (1<<5); //initiate transfert
171 while(count>0)
172 {
173 while((dev->I2CONSET & 0x08)!=0x08);
174 switch(dev->I2STAT)
175 {
176 case 0x08:
177 iicputdata(dev,iicdat,(1<<2),0x28);
178 break;
179 case 0x10:
180 iicputdata(dev,iicdat,(1<<2),0x28);
181 break;
182 case 0x40:
183 dev->I2CONSET = (1<<2);
184 dev->I2CONCLR = (1<<3);
185 count--;
186 break;
187 case 0x50:
188 iicgetdata(dev,iicdat,(1<<2),(1<<3));
189 count--;
190 *cnt = (*cnt) + 1;
191 *data++ = iicdat;
192 break;
193 case 0x48:
194 return i2noack;
195 break;
196 case 0x58:
197 count = 0;
198 return i2noack;
199 break;
200 default:
201 break;
202 }
203
204 }
205 dev->I2CONSET = (1<<4) + (1<<2);
206 dev->I2CONCLR = 1<<3;
207 return i2noerr;
208 }
209
210
211 void i2csetup(i2cDev* dev,int clkH,int clkL)
212 {
213 dev->I2CONCLR = 0x6C;
214 dev->I2SCLH = clkH;
215 dev->I2SCLL = clkL;
216 dev->I2CONSET = 1<<6; //enable I2C block
217 dev->I2CONCLR = 0x28;
218 }
219
220
221 void i2cenable(i2cDev* dev)
222 {
223 dev->I2CONSET = 1<<6;
224 }
225
226
227 void i2cdisable(i2cDev* dev)
228 {
229 dev->I2CONCLR = (1<<6);
230 }
231
232
233 i2cDev* i2copen(int count){
234 i2cDev* dev;
235 switch(count)
236 {
237 case 0:
238 dev = (i2cDev*)((unsigned long)LPC_I2C0_BASE);
239 break;
240 case 1:
241 dev = (i2cDev*)((unsigned long)LPC_I2C1_BASE);
242 break;
243 case 2:
244 dev = (i2cDev*)((unsigned long)LPC_I2C2_BASE);
245 break;
246 default:
247 dev = (i2cDev*)0;
248 break;
249 }
250 return dev;
251 }
252
253
254
255 unsigned char i2cgetpclkfactor(i2cDev* dev)
256 {
257 unsigned int clksel=0;
258 const char clkselDec[]={4,1,2,8};
259 switch((int)dev)
260 {
261 case (int)LPC_I2C0_BASE:
262 clksel = (LPC_SC->PCLKSEL0>>14) & 3;
263 break;
264 case (int)LPC_I2C1_BASE:
265 clksel = (LPC_SC->PCLKSEL1>>6) & 3;
266 break;
267 case (int)LPC_I2C2_BASE:
268 clksel = (LPC_SC->PCLKSEL1>>20) & 3;
269 break;
270 default:
271 break;
272 }
273 return clkselDec[clksel];
274 }
275
276
277 void i2csetpclkfactor(i2cDev* dev,unsigned char pclkfactor)
278 {
279 const char clkselDec[]={1,1,2,2,0,0,0,0,3};
280 unsigned int clksel=0;
281 switch((int)dev)
282 {
283 case (int)LPC_I2C0_BASE:
284 LPC_SC->PCLKSEL0 |= clkselDec[pclkfactor]<<14;
285 LPC_SC->PCLKSEL0 &= clkselDec[pclkfactor]<<14;
286 break;
287 case (int)LPC_I2C1_BASE:
288 LPC_SC->PCLKSEL1 |= clkselDec[pclkfactor]<<6;
289 LPC_SC->PCLKSEL1 &= clkselDec[pclkfactor]<<6;
290 break;
291 case (int)LPC_I2C2_BASE:
292 LPC_SC->PCLKSEL1 |= clkselDec[pclkfactor]<<20;
293 LPC_SC->PCLKSEL1 &= clkselDec[pclkfactor]<<20;
294 break;
295 default:
296 break;
297 }
298
299 }
300
301
302 void i2csetdatarate(i2cDev* dev,unsigned int dataRate)
303 {
304 unsigned int pclk = 0;
305 unsigned int cpuclk=0;
306 unsigned int i2csclkl=0;
307 if(dev==0)return;
308 cpuclk = coregetCpuFreq();
309 pclk = cpuclk / i2cgetpclkfactor(dev);
310 i2csclkl = (pclk / dataRate)>>1;
311 if(i2csclkl<4) i2csclkl = 4;
312 i2csetup(dev,i2csclkl,i2csclkl);
313 }
314
315
316
317
318
319
@@ -0,0 +1,14
1 iic.o: iic.c iic.h /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h \
2 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h \
3 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h \
4 /opt/libuc2/lib/includes/lpc17XX/CORE/core.h
5
6 iic.h:
7
8 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/LPC17xx.h:
9
10 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/core_cm3.h:
11
12 /opt/libuc2/rules/lpc17XX-arm-noabi-gcc/system_LPC17xx.h:
13
14 /opt/libuc2/lib/includes/lpc17XX/CORE/core.h:
@@ -0,0 +1,70
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the libuc, microcontroler library
3 -- Copyright (C) 2011, Alexis Jeandet
4 --
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
9 --
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
14 --
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------
19 -- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@gmail.com
21 -------------------------------------------------------------------------------*/
22 #ifndef IIC_H
23 #define IIC_H
24 #include "LPC17xx.h"
25
26 enum iicctrlvals
27 {
28 i2noerr,
29 i2noack,
30 i2arbloss,
31 i2busy,
32 i2timeout
33 };
34
35 typedef enum iicctrlvals i2ctrl;
36
37 struct lpc17XXi2cRegs
38 {
39 unsigned long I2CONSET;
40 unsigned long I2STAT;
41 unsigned long I2DAT;
42 unsigned long I2ADR;
43 unsigned long I2SCLH;
44 unsigned long I2SCLL;
45 unsigned long I2CONCLR;
46 };
47
48 typedef volatile struct lpc17XXi2cRegs i2cDev;
49
50 extern i2ctrl i2cwrite(i2cDev* dev,char address,char*data,int* cnt);
51 extern i2ctrl i2cwrite2(i2cDev* dev,char address,char*cmd,int* cmdcnt,char*data,int* datcnt);
52 extern i2ctrl i2cread(i2cDev* dev,char address,char*data,int* cnt);
53 extern i2cDev* i2copen(int count);
54 extern void i2cenable(i2cDev* dev);
55 extern void i2cdisable(i2cDev* dev);
56 extern void i2csetup(i2cDev* dev,int clkH,int clkL);
57 extern unsigned char i2cgetpclkfactor(i2cDev* dev);
58 extern void i2csetpclkfactor(i2cDev* dev,unsigned char pclkfactor);
59 extern void i2csetdatarate(i2cDev* dev,unsigned int dataRate);
60
61 #endif
62
63
64
65
66
67
68
69
70
@@ -0,0 +1,12
1 TEMPLATE = lib
2 ARCH = lpc17XX-arm-noabi-gcc
3 TARGET = libiic
4 TARGETINSTALLPATH = $(LIBUC_LIBS_DIR)/IIC
5 HEADERSINSTALLPATH = $(LIBUC_INC_DIR)/IIC
6
7 LIBS += CORE
8
9 SOURCES += iic.c
10
11
12 HEADERS += iic.h
@@ -0,0 +1,19
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4 include $(LIBUC)/rules/common/rules.mk
5
6 all:subdir
7 make -C UART
8 make -C IIC
9 make -C CORE
10 make -C STRINGS
11 @echo Code compiled
12
13 clean:
14 make clean -C UART
15 make clean -C IIC
16 make clean -C CORE
17 make clean -C STRINGS
18 @echo Code compiled
19
@@ -0,0 +1,19
1
2 PROJECTDIR = `pwd`
3 LIBUC = /opt/libuc2
4
5 HEADERSINSTALLPATH = $(LIBUC_INC_DIR)/STRINGS
6 HEADERS += libucstrings.h
7 LIBSOURCES += libucstrings.c
8 OBJECTFILES = $(LIBSOURCES:.c=.o)
9 ARCH = $(LIBUC)/rules/lpc17XX-arm-noabi-gcc
10 TARGET=libucstrings
11 LIBUC_INCLUDES=
12 LIBUC_LIBRARIES=
13 TARGETINSTALLPATH=$(LIBUC_LIBS_DIR)/STRINGS
14 HEADERSINSTALLPATH=$(LIBUC_INC_DIR)/STRINGS
15 BSP=generic
16 include $(ARCH)/rules.mk
17
18 all:lib
19 @echo Code compiled
@@ -0,0 +1,318
1 #/*------------------------------------------------------------------------------
2 #-- This file is a part of the libuc, microcontroler library
3 #-- Copyright (C) 2011, Alexis Jeandet
4 #--
5 #-- This program is free software; you can redistribute it and/or modify
6 #-- it under the terms of the GNU General Public License as published by
7 #-- the Free Software Foundation; either version 3 of the License, or
8 #-- (at your option) any later version.
9 #--
10 #-- This program is distributed in the hope that it will be useful,
11 #-- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 #-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 #-- GNU General Public License for more details.
14 #--
15 #-- You should have received a copy of the GNU General Public License
16 #-- along with this program; if not, write to the Free Software
17 #-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 #-------------------------------------------------------------------------------
19 #-- Author : Alexis Jeandet
20 #-- Mail : alexis.jeandet@gmail.com
21 #-------------------------------------------------------------------------------*/
22 #include <stdarg.h>
23 #include "libucstrings.h"
24 extern void consoleputc(char);
25 extern char consolegetc();
26 #define _x_prtconv_(a) printhexfromint((a),39)
27 #define _X_prtconv_(a) printhexfromint((a),7)
28 #define _d_prtconv_(a) printdecfromint((a))
29
30 #define _x_scnconv_() scanintfromhex()
31 #define _d_scnconv_() scanintfromdec()
32
33 void clearch(char* a)
34 {
35 while((*a))
36 *a++=' ';
37 a--;
38 *a='\n';
39 }
40
41
42 int scanintfromdec()
43 {
44 char c[8]=" ";
45 int e=0;
46 int result=0;
47 do
48 {
49 c[e] = consolegetc();
50 consoleputc(c[e]);
51 if(((c[e] & 0xF0) == 0x30))
52 e++;
53 }while( (c[e]!='\n') && (e<8));
54 libucprintf("\n%d number(s) read\n",e);
55 int i=0;
56 while((i<e))
57 {
58 c[i]&=0x0F;
59 result = (result*10) + c[i];
60 libucprintf("iterration %d c[i]=%d result=%d\n",i,c[i],result);
61 i++;
62 }
63 return result;
64 }
65
66
67 int scanintfromhex()
68 {
69 char c[8]=" ";
70 int e=0;
71 int result=0;
72 do
73 {
74 c[e] = consolegetc();
75 consoleputc(c[e]);
76 if(((c[e] & 0xF0) == 0x30)||((c[e]&0xF8)==0x40)||((c[e]&0xF8)==0x60))
77 e++;
78 }while( (c[e]!='\n') && (e<8));
79 int i=0;
80 libucprintf("\n%d number(s) read\n",e);
81 while(i<e)
82 {
83 libucprintf("c[i] = %x\n",c[i]);
84 if((c[i]&0xF8)==0x60)
85 {
86 c[i]-=39;
87 }
88 else
89 {
90 if((c[i]&0xF8)==0x40)
91 {
92 c[i]-=7;
93 }
94 else
95 {
96 c[i]&=0x0F;
97 }
98 }
99 result = result*16 + c[i];
100 i++;
101 }
102 return result;
103 }
104
105 void printhexfromint(int a, int caseoffset)
106 {
107 char c[8]=" ";
108 int e=0;
109 while(e<8)
110 {
111 c[e] = a & 0xF;
112 if(c[e]>9)
113 {
114 c[e] = c[e]+caseoffset;
115 }
116 c[e] = c[e] + 0x30;
117 a=a>>4;
118 e++;
119 }
120 while(c[--e]=='0');
121 e++;
122 while(e-->0)
123 consoleputc(c[e]);
124 }
125
126
127 void printdecfromint(int a)
128 {
129 char c[10]=" ";
130 int e=0;
131 int d=a;
132 if((d & 0x80000000) == 0x80000000)
133 {
134 d ^= -1;
135 d++;
136 consoleputc('-');
137 }
138 while(d>0 && e<10)
139 {
140 c[e++] = 0x30 + (d % 10);
141 d = d / 10;
142 }
143 while(e-->0)
144 consoleputc(c[e]);
145 }
146
147 void int2hex(unsigned long a,char*b)
148 {
149 char*d = b;
150 char c[16]=" ";
151 int e=0;
152 while(e<8)
153 {
154 c[e] = a & 0xF;
155 if(c[e]>9)
156 {
157 c[e] = c[e]+7;
158 }
159 c[e] = c[e] + 0x30;
160 a=a>>4;
161 e++;
162 }
163 for(e=(e-1);e>=0;e--)
164 {
165 *d=c[e];
166 d = d +1;
167 }
168 }
169
170 /// Partialy implemented printf function capable to compute %d,x,X conversions
171 int libucprintf(const char* format,...)
172 {
173 int nout=0;
174 va_list ap;
175 va_start(ap,format);
176 while(*format)
177 {
178 if(*format!='%')
179 {
180 consoleputc(*format++);
181 nout++;
182 }
183 else
184 {
185 format++;
186 if(*format!='%')
187 {
188 switch(*format)
189 {
190 case 'c':
191 consoleputc((char)va_arg(ap,int));
192 format++;
193 break;
194 case 'd':
195 _d_prtconv_(va_arg(ap,int)) ;
196 format++;
197 break;
198 case 'e':
199 va_arg(ap,int);
200 format++;
201 break;
202 case 'E':
203 va_arg(ap,int);
204 format++;
205 break;
206 case 'f':
207 va_arg(ap,int);
208 format++;
209 break;
210 case 's':
211 va_arg(ap,int);
212 format++;
213 break;
214 case 'x':
215 _x_prtconv_(va_arg(ap,int)) ;
216 format++;
217 break;
218 case 'X':
219 _X_prtconv_(va_arg(ap,int)) ;
220 format++;
221 break;
222 case '%':
223 consoleputc(*format++);
224 break;
225 default:
226 va_arg(ap,int);
227 format++;
228 break;
229 }
230 }
231 else
232 {
233 consoleputc(*format++);
234 nout++;
235 }
236 }
237 }
238 va_end(ap);
239 return nout;
240 }
241
242
243 int libucscanf(const char* format,...)
244 {
245 int nin=0;
246 int* value;
247 va_list ap;
248 va_start(ap,format);
249 while(*format)
250 {
251 while(*format!='%')format++;
252 format++;
253 libucprintf("find %%%c\n",*format);
254 switch(*format)
255 {
256 case 'c':
257 va_arg(ap,int*);
258 format++;
259 break;
260 case 'd':
261 value = (int*)va_arg(ap,int*);
262 *value=_d_scnconv_() ;
263 format++;
264 break;
265 case 'e':
266 va_arg(ap,int*);
267 format++;
268 break;
269 case 'E':
270 va_arg(ap,int*);
271 format++;
272 break;
273 case 'f':
274 va_arg(ap,int*);
275 format++;
276 break;
277 case 's':
278 va_arg(ap,int*);
279 format++;
280 break;
281 case 'u':
282 va_arg(ap,int*);
283 format++;
284 break;
285 case 'x':
286 value = (int*)va_arg(ap,int*);
287 *value = _x_scnconv_();
288 format++;
289 break;
290 case 'X':
291 value = (int*)va_arg(ap,int*);
292 *value = _x_scnconv_();
293 format++;
294 break;
295 default:
296 va_arg(ap,int*);
297 format++;
298 break;
299 }
300
301 }
302 va_end(ap);
303 return nin;
304 }
305
306
307
308
309
310
311
312
313
314
315
316
317
318
@@ -0,0 +1,3
1 libucstrings.o: libucstrings.c libucstrings.h
2
3 libucstrings.h:
@@ -0,0 +1,28
1 #/*------------------------------------------------------------------------------
2 #-- This file is a part of the libuc, microcontroler library
3 #-- Copyright (C) 2011, Alexis Jeandet
4 #--
5 #-- This program is free software; you can redistribute it and/or modify
6 #-- it under the terms of the GNU General Public License as published by
7 #-- the Free Software Foundation; either version 3 of the License, or
8 #-- (at your option) any later version.
9 #--
10 #-- This program is distributed in the hope that it will be useful,
11 #-- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 #-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 #-- GNU General Public License for more details.
14 #--
15 #-- You should have received a copy of the GNU General Public License
16 #-- along with this program; if not, write to the Free Software
17 #-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 #-------------------------------------------------------------------------------
19 #-- Author : Alexis Jeandet
20 #-- Mail : alexis.jeandet@gmail.com
21 #-------------------------------------------------------------------------------*/
22
23
24
25 void clearstr(char* a);
26 void int2hex(unsigned long a,char*b);
27 int libucprintf(const char*,...);
28 int libucscanf(const char*,...);
@@ -0,0 +1,12
1 TEMPLATE = lib
2 ARCH = lpc17XX-arm-noabi-gcc
3 TARGET = libucstrings
4 TARGETINSTALLPATH = $(LIBUC_LIBS_DIR)/STRINGS
5 HEADERSINSTALLPATH = $(LIBUC_INC_DIR)/STRINGS
6
7 LIBS +=
8
9 SOURCES += libucstrings.c
10
11
12 HEADERS += libucstrings.h
@@ -0,0 +1,9
1 TEMPLATE = dir
2 SUBDIRS += UART\
3 SPI \
4 ADC \
5 IIC \
6 CORE \
7 STRINGS
8
9
@@ -0,0 +1,5
1 TEMPLATE = dir
2 SUBDIRS += bsp\
3 examples \
4 lib
5
@@ -0,0 +1,5
1 TEMPLATE = dir
2 SUBDIRS += bsp\
3 examples \
4 lib
5
General Comments 0
You need to be logged in to leave comments. Login now