update lpc2148 bsp

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1148 bbd45198-f89e-11dd-88c7-29a3b14d5316
This commit is contained in:
wuyangyong 2010-11-29 18:20:11 +00:00
parent e583f2031b
commit 1e5518ee84
7 changed files with 320 additions and 86 deletions

15
bsp/lpc2148/SConscript Normal file
View File

@ -0,0 +1,15 @@
import rtconfig
Import('RTT_ROOT')
from building import *
src_bsp = ['application.c', 'startup.c', 'board.c']
src_drv = []
src = src_bsp + src_drv
CPPPATH = [RTT_ROOT + '/bsp/lpc2148']
CPPDEFINES = []
group = DefineGroup('Startup', src, depend = [''], CPPPATH = CPPPATH, CPPDEFINES = CPPDEFINES)
Return('group')

28
bsp/lpc2148/SConstruct Normal file
View File

@ -0,0 +1,28 @@
import os
import sys
import rtconfig
RTT_ROOT = os.path.normpath(os.getcwd() + '/../..')
sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')]
from building import *
TARGET = 'rtthread-lpc2148.' + rtconfig.TARGET_EXT
env = Environment(tools = ['mingw'],
AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS,
CC = rtconfig.CC, CCFLAGS = rtconfig.CFLAGS,
AR = rtconfig.AR, ARFLAGS = '-rc',
LINK = rtconfig.LINK, LINKFLAGS = rtconfig.LFLAGS)
env.PrependENVPath('PATH', rtconfig.EXEC_PATH)
Export('RTT_ROOT')
Export('rtconfig')
# prepare building environment
objs = PrepareBuilding(env, RTT_ROOT)
# build program
env.Program(TARGET, objs)
# end building
EndBuilding(TARGET)

View File

@ -10,65 +10,68 @@
CppX (*.cpp) CppX (*.cpp)
DaveTm { 0,0,0,0,0,0,0,0 } DaveTm { 0,0,0,0,0,0,0,0 }
Target (RT-Thread-LPC2148), 0x0004 // Tools: 'ARM-ADS' Target (RT-thread_LPC2148), 0x0004 // Tools: 'ARM-ADS'
GRPOPT 1,(Startup),1,0,0 GRPOPT 1,(Startup),0,0,0
GRPOPT 2,(Kernel),0,0,0 GRPOPT 2,(Kernel),0,0,0
GRPOPT 3,(LPC214x),0,0,0 GRPOPT 3,(LPC214X),0,0,0
GRPOPT 4,(finsh),0,0,0 GRPOPT 4,(finsh),0,0,0
OPTFFF 1,1,1,637534208,0,119,136,0,<.\application.c><application.c> { 44,0,0,0,0,0,0,0,1,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,110,0,0,0,145,0,0,0,100,4,0,0,240,1,0,0 } OPTFFF 1,1,1,0,0,0,0,0,<.\application.c><application.c>
OPTFFF 1,2,1,0,0,0,0,0,<.\board.c><board.c> OPTFFF 1,2,1,2,0,130,133,0,<.\startup.c><startup.c> { 44,0,0,0,2,0,0,0,3,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,0,0,0,0,0,0,0,0,117,3,0,0,254,0,0,0 }
OPTFFF 1,3,1,33554434,0,2,18,0,<.\startup.c><startup.c> { 44,0,0,0,2,0,0,0,3,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,44,0,0,0,58,0,0,0,46,4,0,0,112,1,0,0 } OPTFFF 1,3,1,0,0,0,0,0,<.\board.c><board.c>
OPTFFF 1,4,5,0,0,0,0,0,<.\rtconfig.h><rtconfig.h> OPTFFF 2,4,1,0,0,0,0,0,<..\..\src\clock.c><clock.c>
OPTFFF 2,5,1,0,0,0,0,0,<..\..\src\clock.c><clock.c> OPTFFF 2,5,1,0,0,0,0,0,<..\..\src\device.c><device.c>
OPTFFF 2,6,1,150994944,0,0,0,0,<..\..\src\device.c><device.c> OPTFFF 2,6,1,0,0,0,0,0,<..\..\src\idle.c><idle.c>
OPTFFF 2,7,1,0,0,0,0,0,<..\..\src\ipc.c><ipc.c> OPTFFF 2,7,1,0,0,0,0,0,<..\..\src\ipc.c><ipc.c>
OPTFFF 2,8,1,0,0,0,0,0,<..\..\src\mempool.c><mempool.c> OPTFFF 2,8,1,0,0,0,0,0,<..\..\src\irq.c><irq.c>
OPTFFF 2,9,1,0,0,0,0,0,<..\..\src\object.c><object.c> OPTFFF 2,9,1,0,0,0,0,0,<..\..\src\kservice.c><kservice.c>
OPTFFF 2,10,1,0,0,0,0,0,<..\..\src\timer.c><timer.c> OPTFFF 2,10,1,0,0,0,0,0,<..\..\src\mem.c><mem.c>
OPTFFF 2,11,1,553648128,0,0,0,0,<..\..\src\idle.c><idle.c> OPTFFF 2,11,1,0,0,0,0,0,<..\..\src\mempool.c><mempool.c>
OPTFFF 2,12,1,0,0,0,0,0,<..\..\src\irq.c><irq.c> OPTFFF 2,12,1,0,0,0,0,0,<..\..\src\module.c><module.c>
OPTFFF 2,13,1,0,0,0,0,0,<..\..\src\mem.c><mem.c> OPTFFF 2,13,1,0,0,0,0,0,<..\..\src\object.c><object.c>
OPTFFF 2,14,1,0,0,0,0,0,<..\..\src\scheduler.c><scheduler.c> OPTFFF 2,14,1,0,0,0,0,0,<..\..\src\rtm.c><rtm.c>
OPTFFF 2,15,1,0,0,0,0,0,<..\..\src\slab.c><slab.c> OPTFFF 2,15,1,0,0,0,0,0,<..\..\src\scheduler.c><scheduler.c>
OPTFFF 2,16,1,0,0,0,0,0,<..\..\src\thread.c><thread.c> OPTFFF 2,16,1,0,0,0,0,0,<..\..\src\slab.c><slab.c>
OPTFFF 2,17,1,0,0,0,0,0,<..\..\src\kservice.c><kservice.c> OPTFFF 2,17,1,0,0,0,0,0,<..\..\src\thread.c><thread.c>
OPTFFF 3,18,1,0,0,0,0,0,<..\..\libcpu\arm\lpc214x\serial.c><serial.c> OPTFFF 2,18,1,0,0,0,0,0,<..\..\src\timer.c><timer.c>
OPTFFF 3,19,1,0,0,0,0,0,<..\..\libcpu\arm\lpc214x\interrupt.c><interrupt.c> OPTFFF 3,19,1,0,0,0,0,0,<..\..\libcpu\arm\lpc214x\cpu.c><cpu.c>
OPTFFF 3,20,1,0,0,0,0,0,<..\..\libcpu\arm\lpc214x\cpu.c><cpu.c> OPTFFF 3,20,1,0,0,0,0,0,<..\..\libcpu\arm\lpc214x\interrupt.c><interrupt.c>
OPTFFF 3,21,1,0,0,0,0,0,<..\..\libcpu\arm\lpc214x\trap.c><trap.c> OPTFFF 3,21,1,486539264,0,339,343,0,<..\..\libcpu\arm\lpc214x\serial.c><serial.c> { 44,0,0,0,0,0,0,0,1,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,66,0,0,0,87,0,0,0,9,4,0,0,83,1,0,0 }
OPTFFF 3,22,1,0,0,0,0,0,<..\..\libcpu\arm\lpc214x\stack.c><stack.c> OPTFFF 3,22,1,0,0,0,0,0,<..\..\libcpu\arm\lpc214x\stack.c><stack.c>
OPTFFF 3,23,2,0,0,0,0,0,<..\..\libcpu\arm\lpc214x\start_rvds.s><start_rvds.s> OPTFFF 3,23,1,0,0,0,0,0,<..\..\libcpu\arm\lpc214x\trap.c><trap.c>
OPTFFF 3,24,2,0,0,0,0,0,<..\..\libcpu\arm\lpc214x\context_rvds.s><context_rvds.s> OPTFFF 3,24,2,285212672,0,0,0,0,<..\..\libcpu\arm\lpc214x\context_rvds.S><context_rvds.S>
OPTFFF 4,25,1,0,0,0,0,0,<..\..\finsh\finsh_compiler.c><finsh_compiler.c> OPTFFF 3,25,2,0,0,0,0,0,<..\..\libcpu\arm\lpc214x\start_rvds.S><start_rvds.S>
OPTFFF 4,26,1,0,0,0,0,0,<..\..\finsh\finsh_error.c><finsh_error.c> OPTFFF 3,26,1,0,0,0,0,0,<..\..\libcpu\arm\common\backtrace.c><backtrace.c>
OPTFFF 4,27,1,0,0,0,0,0,<..\..\finsh\finsh_heap.c><finsh_heap.c> OPTFFF 3,27,1,0,0,0,0,0,<..\..\libcpu\arm\common\div0.c><div0.c>
OPTFFF 4,28,1,0,0,0,0,0,<..\..\finsh\finsh_init.c><finsh_init.c> OPTFFF 3,28,1,234881024,0,0,0,0,<..\..\libcpu\arm\common\showmem.c><showmem.c>
OPTFFF 4,29,1,0,0,0,0,0,<..\..\finsh\finsh_node.c><finsh_node.c> OPTFFF 4,29,1,0,0,0,0,0,<..\..\components\finsh\cmd.c><cmd.c>
OPTFFF 4,30,1,0,0,0,0,0,<..\..\finsh\finsh_ops.c><finsh_ops.c> OPTFFF 4,30,1,0,0,0,0,0,<..\..\components\finsh\finsh_compiler.c><finsh_compiler.c>
OPTFFF 4,31,1,0,0,0,0,0,<..\..\finsh\finsh_token.c><finsh_token.c> OPTFFF 4,31,1,0,0,0,0,0,<..\..\components\finsh\finsh_error.c><finsh_error.c>
OPTFFF 4,32,1,0,0,0,0,0,<..\..\finsh\finsh_var.c><finsh_var.c> OPTFFF 4,32,1,0,0,0,0,0,<..\..\components\finsh\finsh_heap.c><finsh_heap.c>
OPTFFF 4,33,1,0,0,0,0,0,<..\..\finsh\finsh_vm.c><finsh_vm.c> OPTFFF 4,33,1,0,0,0,0,0,<..\..\components\finsh\finsh_init.c><finsh_init.c>
OPTFFF 4,34,1,0,0,0,0,0,<..\..\finsh\shell.c><shell.c> OPTFFF 4,34,1,0,0,0,0,0,<..\..\components\finsh\finsh_node.c><finsh_node.c>
OPTFFF 4,35,1,0,0,0,0,0,<..\..\finsh\symbol.c><symbol.c> OPTFFF 4,35,1,0,0,0,0,0,<..\..\components\finsh\finsh_ops.c><finsh_ops.c>
OPTFFF 4,36,1,0,0,0,0,0,<..\..\finsh\cmd.c><cmd.c> OPTFFF 4,36,1,0,0,0,0,0,<..\..\components\finsh\finsh_parser.c><finsh_parser.c>
OPTFFF 4,37,1,0,0,0,0,0,<..\..\finsh\finsh_parser.c><finsh_parser.c> OPTFFF 4,37,1,0,0,0,0,0,<..\..\components\finsh\finsh_token.c><finsh_token.c>
OPTFFF 4,38,1,0,0,0,0,0,<..\..\components\finsh\finsh_var.c><finsh_var.c>
OPTFFF 4,39,1,0,0,0,0,0,<..\..\components\finsh\finsh_vm.c><finsh_vm.c>
OPTFFF 4,40,1,0,0,0,0,0,<..\..\components\finsh\shell.c><shell.c>
OPTFFF 4,41,1,0,0,0,0,0,<..\..\components\finsh\symbol.c><symbol.c>
ExtF <E:\work\mcu\rt-thread\rt-thread\trunk\components\finsh\shell.h> 43,43,0,{ 44,0,0,0,0,0,0,0,1,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,44,0,0,0,58,0,0,0,247,3,0,0,55,1,0,0 }
TARGOPT 1, (RT-Thread-LPC2148) TARGOPT 1, (RT-thread_LPC2148)
ADSCLK=12000000 ADSCLK=12000000
OPTTT 1,1,1,0 OPTTT 0,1,1,0
OPTHX 1,65535,0,0,0 OPTHX 1,65535,0,0,0
OPTLX 79,66,8,<.\objs\> OPTLX 79,66,8,<.\obj\>
OPTOX 16 OPTOX 16
OPTLT 1,1,1,0,1,1,0,1,0,0,0,0 OPTLT 1,1,1,0,1,1,0,1,0,0,0,0
OPTXL 1,1,1,1,1,1,1,0,0 OPTXL 1,1,1,1,1,1,1,0,0
OPTFL 1,0,1 OPTFL 1,0,1
OPTAX 0 OPTAX 0
OPTDL (SARM.DLL)(-cLPC2100)(DARMP.DLL)(-pLPC2148)(SARM.DLL)()(TARMP.DLL)(-pLPC2148) OPTDL (SARM.DLL)(-cLPC2100)(DARMP.DLL)(-pLPC2148)(SARM.DLL)()(TARMP.DLL)(-pLPC2148)
OPTDBG 48125,6,()()()()()()()()()() (Segger\JLTAgdi.dll)()()() OPTDBG 48125,0,()()()()()()()()()() (BIN\UL2ARM.DLL)()()()
OPTKEY 0,(DLGDARM)((134=-1,-1,-1,-1,0)(135=-1,-1,-1,-1,0)(153=-1,-1,-1,-1,0)(154=-1,-1,-1,-1,0)(108=-1,-1,-1,-1,0)(106=-1,-1,-1,-1,0)(105=-1,-1,-1,-1,0)(145=-1,-1,-1,-1,0)(147=-1,-1,-1,-1,0)(80=-1,-1,-1,-1,0)(104=-1,-1,-1,-1,0)(100=-1,-1,-1,-1,0)(101=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(113=556,103,931,655,0)(112=-1,-1,-1,-1,0)(137=-1,-1,-1,-1,0)(138=-1,-1,-1,-1,0)(117=-1,-1,-1,-1,0)(146=-1,-1,-1,-1,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(114=-1,-1,-1,-1,0)(141=-1,-1,-1,-1,0)(142=-1,-1,-1,-1,0)(143=-1,-1,-1,-1,0)(144=-1,-1,-1,-1,0)(115=-1,-1,-1,-1,0)(116=-1,-1,-1,-1,0))
OPTKEY 0,(ARMDBGFLAGS)(-T5F)
OPTDF 0x90 OPTDF 0x90
OPTLE <> OPTLE <>
OPTLC <> OPTLC <>

View File

@ -1,53 +1,59 @@
### uVision2 Project, (C) Keil Software ### uVision2 Project, (C) Keil Software
### Do not modify ! ### Do not modify !
Target (RT-Thread-LPC2148), 0x0004 // Tools: 'ARM-ADS' Target (RT-thread_LPC2148), 0x0004 // Tools: 'ARM-ADS'
Group (Startup) Group (Startup)
Group (Kernel) Group (Kernel)
Group (LPC214x) Group (LPC214X)
Group (finsh) Group (finsh)
File 1,1,<.\application.c><application.c> File 1,1,<.\application.c><application.c>
File 1,1,<.\board.c><board.c>
File 1,1,<.\startup.c><startup.c> File 1,1,<.\startup.c><startup.c>
File 1,5,<.\rtconfig.h><rtconfig.h> File 1,1,<.\board.c><board.c>
File 2,1,<..\..\src\clock.c><clock.c> File 2,1,<..\..\src\clock.c><clock.c>
File 2,1,<..\..\src\device.c><device.c> File 2,1,<..\..\src\device.c><device.c>
File 2,1,<..\..\src\ipc.c><ipc.c>
File 2,1,<..\..\src\mempool.c><mempool.c>
File 2,1,<..\..\src\object.c><object.c>
File 2,1,<..\..\src\timer.c><timer.c>
File 2,1,<..\..\src\idle.c><idle.c> File 2,1,<..\..\src\idle.c><idle.c>
File 2,1,<..\..\src\ipc.c><ipc.c>
File 2,1,<..\..\src\irq.c><irq.c> File 2,1,<..\..\src\irq.c><irq.c>
File 2,1,<..\..\src\kservice.c><kservice.c>
File 2,1,<..\..\src\mem.c><mem.c> File 2,1,<..\..\src\mem.c><mem.c>
File 2,1,<..\..\src\mempool.c><mempool.c>
File 2,1,<..\..\src\module.c><module.c>
File 2,1,<..\..\src\object.c><object.c>
File 2,1,<..\..\src\rtm.c><rtm.c>
File 2,1,<..\..\src\scheduler.c><scheduler.c> File 2,1,<..\..\src\scheduler.c><scheduler.c>
File 2,1,<..\..\src\slab.c><slab.c> File 2,1,<..\..\src\slab.c><slab.c>
File 2,1,<..\..\src\thread.c><thread.c> File 2,1,<..\..\src\thread.c><thread.c>
File 2,1,<..\..\src\kservice.c><kservice.c> File 2,1,<..\..\src\timer.c><timer.c>
File 3,1,<..\..\libcpu\arm\lpc214x\serial.c><serial.c>
File 3,1,<..\..\libcpu\arm\lpc214x\interrupt.c><interrupt.c>
File 3,1,<..\..\libcpu\arm\lpc214x\cpu.c><cpu.c> File 3,1,<..\..\libcpu\arm\lpc214x\cpu.c><cpu.c>
File 3,1,<..\..\libcpu\arm\lpc214x\trap.c><trap.c> File 3,1,<..\..\libcpu\arm\lpc214x\interrupt.c><interrupt.c>
File 3,1,<..\..\libcpu\arm\lpc214x\serial.c><serial.c>
File 3,1,<..\..\libcpu\arm\lpc214x\stack.c><stack.c> File 3,1,<..\..\libcpu\arm\lpc214x\stack.c><stack.c>
File 3,2,<..\..\libcpu\arm\lpc214x\start_rvds.s><start_rvds.s> File 3,1,<..\..\libcpu\arm\lpc214x\trap.c><trap.c>
File 3,2,<..\..\libcpu\arm\lpc214x\context_rvds.s><context_rvds.s> File 3,2,<..\..\libcpu\arm\lpc214x\context_rvds.S><context_rvds.S>
File 4,1,<..\..\finsh\finsh_compiler.c><finsh_compiler.c> File 3,2,<..\..\libcpu\arm\lpc214x\start_rvds.S><start_rvds.S>
File 4,1,<..\..\finsh\finsh_error.c><finsh_error.c> File 3,1,<..\..\libcpu\arm\common\backtrace.c><backtrace.c>
File 4,1,<..\..\finsh\finsh_heap.c><finsh_heap.c> File 3,1,<..\..\libcpu\arm\common\div0.c><div0.c>
File 4,1,<..\..\finsh\finsh_init.c><finsh_init.c> File 3,1,<..\..\libcpu\arm\common\showmem.c><showmem.c>
File 4,1,<..\..\finsh\finsh_node.c><finsh_node.c> File 4,1,<..\..\components\finsh\cmd.c><cmd.c>
File 4,1,<..\..\finsh\finsh_ops.c><finsh_ops.c> File 4,1,<..\..\components\finsh\finsh_compiler.c><finsh_compiler.c>
File 4,1,<..\..\finsh\finsh_token.c><finsh_token.c> File 4,1,<..\..\components\finsh\finsh_error.c><finsh_error.c>
File 4,1,<..\..\finsh\finsh_var.c><finsh_var.c> File 4,1,<..\..\components\finsh\finsh_heap.c><finsh_heap.c>
File 4,1,<..\..\finsh\finsh_vm.c><finsh_vm.c> File 4,1,<..\..\components\finsh\finsh_init.c><finsh_init.c>
File 4,1,<..\..\finsh\shell.c><shell.c> File 4,1,<..\..\components\finsh\finsh_node.c><finsh_node.c>
File 4,1,<..\..\finsh\symbol.c><symbol.c> File 4,1,<..\..\components\finsh\finsh_ops.c><finsh_ops.c>
File 4,1,<..\..\finsh\cmd.c><cmd.c> File 4,1,<..\..\components\finsh\finsh_parser.c><finsh_parser.c>
File 4,1,<..\..\finsh\finsh_parser.c><finsh_parser.c> File 4,1,<..\..\components\finsh\finsh_token.c><finsh_token.c>
File 4,1,<..\..\components\finsh\finsh_var.c><finsh_var.c>
File 4,1,<..\..\components\finsh\finsh_vm.c><finsh_vm.c>
File 4,1,<..\..\components\finsh\shell.c><shell.c>
File 4,1,<..\..\components\finsh\symbol.c><symbol.c>
Options 1,0,0 // Target 'RT-Thread-LPC2148'
Options 1,0,0 // Target 'RT-thread_LPC2148'
Device (LPC2148) Device (LPC2148)
Vendor (NXP (founded by Philips)) Vendor (NXP (founded by Philips))
Cpu (IRAM(0x40000000-0x40007FFF) IROM(0-0x7FFFF) CLOCK(12000000) CPUTYPE(ARM7TDMI)) Cpu (IRAM(0x40000000-0x40007FFF) IROM(0-0x7FFFF) CLOCK(12000000) CPUTYPE(ARM7TDMI))
@ -69,17 +75,17 @@ Options 1,0,0 // Target 'RT-Thread-LPC2148'
EnvBin () EnvBin ()
EnvInc () EnvInc ()
EnvLib () EnvLib ()
EnvReg (ÿPhilips\) EnvReg (Philips\)
OrgReg (ÿPhilips\) OrgReg (Philips\)
TgStat=16 TgStat=16
OutDir (.\objs\) OutDir (.\obj\)
OutName (rtthread-lpc2148) OutName (RT-thread_LPC2148)
GenApp=1 GenApp=1
GenLib=0 GenLib=0
GenHex=0 GenHex=0
Debug=1 Debug=1
Browse=1 Browse=1
LstDir (.\objs\) LstDir (.\obj\)
HexSel=1 HexSel=1
MG32K=0 MG32K=0
TGMORE=0 TGMORE=0
@ -94,18 +100,18 @@ Options 1,0,0 // Target 'RT-Thread-LPC2148'
ADSFLGA { 243,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } ADSFLGA { 243,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }
ACPUTYP (ARM7TDMI) ACPUTYP (ARM7TDMI)
RVDEV () RVDEV ()
ADSTFLGA { 0,12,0,2,99,0,1,66,0,0,0,0,0,0,0,0,0,0,0,0 } ADSTFLGA { 0,12,0,2,99,0,0,66,0,0,0,0,0,0,0,0,0,0,0,0 }
OCMADSOCM { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } OCMADSOCM { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }
OCMADSIRAM { 0,0,0,0,64,0,128,0,0 } OCMADSIRAM { 0,0,0,0,64,0,128,0,0 }
OCMADSIROM { 1,0,0,0,0,0,0,8,0 } OCMADSIROM { 1,0,0,0,0,0,0,8,0 }
OCMADSXRAM { 0,0,0,0,0,0,0,0,0 } OCMADSXRAM { 0,0,0,0,0,0,0,0,0 }
OCR_RVCT { 1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,8,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,128,0,0,0,0,0,0,0,0,0,0,0 } OCR_RVCT { 1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,8,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,128,0,0,0,0,0,0,0,0,0,0,0 }
RV_STAVEC () RV_STAVEC ()
ADSCCFLG { 5,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } ADSCCFLG { 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }
ADSCMISC () ADSCMISC ()
ADSCDEFN () ADSCDEFN ()
ADSCUDEF () ADSCUDEF ()
ADSCINCD (.;..\..\include;..\..\libcpu\arm\lpc214x;..\..\finsh;..\..\net\lwip\src;..\..\net\lwip\src\include;..\..\net\lwip\src\arch\include;..\..\net\lwip\src\include\ipv4;..\..\filesystem\dfs;..\..\filesystem\dfs\include;..\..\filesystem\dfs\filesystems\efsl\src\include;..\..\filesystem\dfs\filesystems\efsl\src\base\include;..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\include) ADSCINCD (..\..\include;..\..\libcpu\arm\lpc214x;..\..\libcpu\arm\common;..\..\components\finsh;.)
ADSASFLG { 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } ADSASFLG { 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }
ADSAMISC () ADSAMISC ()
ADSADEFN () ADSADEFN ()
@ -123,16 +129,16 @@ Options 1,0,0 // Target 'RT-Thread-LPC2148'
ADSLDFG { 17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } ADSLDFG { 17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }
ADSLDTA (0x00000000) ADSLDTA (0x00000000)
ADSLDDA (0x40000000) ADSLDDA (0x40000000)
ADSLDSC (.\rtthread-lpc2148.sct) ADSLDSC ()
ADSLDIB () ADSLDIB ()
ADSLDIC () ADSLDIC ()
ADSLDMC (--keep __fsym_* --keep __vsym_*) ADSLDMC ( --keep __fsym_* --keep __vsym_*)
ADSLDIF () ADSLDIF ()
ADSLDDW () ADSLDDW ()
OPTDL (SARM.DLL)(-cLPC2100)(DARMP.DLL)(-pLPC2148)(SARM.DLL)()(TARMP.DLL)(-pLPC2148) OPTDL (SARM.DLL)(-cLPC2100)(DARMP.DLL)(-pLPC2148)(SARM.DLL)()(TARMP.DLL)(-pLPC2148)
OPTDBG 48125,6,()()()()()()()()()() (Segger\JLTAgdi.dll)()()() OPTDBG 48125,0,()()()()()()()()()() (BIN\UL2ARM.DLL)()()()
FLASH1 { 2,0,0,0,1,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0 } FLASH1 { 1,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0 }
FLASH2 (BIN\UL2ARM.DLL) FLASH2 ()
FLASH3 ("LPC210x_ISP.EXE" ("#H" ^X $D COM1: 38400 1)) FLASH3 ("LPC210x_ISP.EXE" ("#H" ^X $D COM1: 38400 1))
FLASH4 () FLASH4 ()
EndOpt EndOpt

84
bsp/lpc2148/rtconfig.py Normal file
View File

@ -0,0 +1,84 @@
# toolchains options
ARCH='arm'
CPU='lpc214x'
CROSS_TOOL='keil'
if CROSS_TOOL == 'gcc':
PLATFORM = 'gcc'
EXEC_PATH = 'D:/SourceryGCC/bin'
elif CROSS_TOOL == 'keil':
PLATFORM = 'armcc'
EXEC_PATH = 'G:\Keil_MDK_380'
BUILD = 'debug'
if PLATFORM == 'gcc':
# toolchains
PREFIX = 'arm-none-eabi-'
CC = PREFIX + 'gcc'
AS = PREFIX + 'gcc'
AR = PREFIX + 'ar'
LINK = PREFIX + 'gcc'
TARGET_EXT = 'axf'
SIZE = PREFIX + 'size'
OBJDUMP = PREFIX + 'objdump'
OBJCPY = PREFIX + 'objcopy'
DEVICE = ' -mcpu=arm7tdmi-s -mthumb'
CFLAGS = DEVICE + ' -DRT_USING_MINILIBC'
AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp'
LFLAGS = DEVICE + ' -Wl,--gc-sections,-Map=rtthread-lpc2148.map,-cref,-u,Reset_Handler -T lpc2148_rom.ld'
CPATH = ''
LPATH = ''
if BUILD == 'debug':
CFLAGS += ' -O0 -gdwarf-2'
AFLAGS += ' -gdwarf-2'
else:
CFLAGS += ' -O2'
POST_ACTION = OBJCPY + ' -O binary $TARGET rtthread.bin\n' + SIZE + ' $TARGET \n'
elif PLATFORM == 'armcc':
# toolchains
CC = 'armcc'
AS = 'armasm'
AR = 'armar'
LINK = 'armlink'
TARGET_EXT = 'axf'
DEVICE = ' --device DARMSTM'
CFLAGS = DEVICE + ' --apcs=interwork'
AFLAGS = DEVICE
LFLAGS = DEVICE + ' --info sizes --info totals --info unused --info veneers --list rtthread-lpc2148.map --scatter lpc2148_rom.sct'
CFLAGS += ' -I' + EXEC_PATH + '/ARM/RV31/INC'
LFLAGS += ' --libpath ' + EXEC_PATH + '/ARM/RV31/LIB'
EXEC_PATH += '/arm/bin40/'
if BUILD == 'debug':
CFLAGS += ' -g -O0'
AFLAGS += ' -g'
else:
CFLAGS += ' -O2'
POST_ACTION = 'fromelf --bin $TARGET --output rtthread.bin \nfromelf -z $TARGET'
elif PLATFORM == 'iar':
# toolchains
CC = 'iccarm'
AS = 'iasmarm'
AR = 'iarchive'
LINK = 'ilinkarm'
TARGET_EXT = 'out'
DEVICE = ' --cpu DARMSTM --thumb'
CFLAGS = ''
AFLAGS = ''
LFLAGS = ' --config lpc214x_flash.icf'
EXEC_PATH += '/arm/bin/'
POST_ACTION = ''

98
bsp/lpc2148/template.Uv2 Normal file
View File

@ -0,0 +1,98 @@
### uVision2 Project, (C) Keil Software
### Do not modify !
Target (RT-thread_LPC2148), 0x0004 // Tools: 'ARM-ADS'
Options 1,0,0 // Target 'RT-thread_LPC2148'
Device (LPC2148)
Vendor (NXP (founded by Philips))
Cpu (IRAM(0x40000000-0x40007FFF) IROM(0-0x7FFFF) CLOCK(12000000) CPUTYPE(ARM7TDMI))
FlashUt (LPC210x_ISP.EXE ("#H" ^X $D COM1: 38400 1))
StupF ("STARTUP\Philips\Startup.s" ("Philips LPC2100 Startup Code"))
FlashDR (UL2ARM(-U268761108 -O7 -C0 -FO15 -FD40000000 -FC800 -FN1 -FF0LPC_IAP2_512 -FS00 -FL07D000))
DevID (3880)
Rgf (LPC214X.H)
Mem ()
C ()
A ()
RL ()
OH ()
DBC_IFX ()
DBC_CMS ()
DBC_AMS ()
DBC_LMS ()
UseEnv=0
EnvBin ()
EnvInc ()
EnvLib ()
EnvReg (Philips\)
OrgReg (Philips\)
TgStat=16
OutDir (.\obj\)
OutName (RT-thread_LPC2148)
GenApp=1
GenLib=0
GenHex=0
Debug=1
Browse=1
LstDir (.\obj\)
HexSel=1
MG32K=0
TGMORE=0
RunUsr 0 0 <>
RunUsr 1 0 <>
BrunUsr 0 0 <>
BrunUsr 1 0 <>
CrunUsr 0 0 <>
CrunUsr 1 0 <>
SVCSID <>
GLFLAGS=1790
ADSFLGA { 243,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }
ACPUTYP (ARM7TDMI)
RVDEV ()
ADSTFLGA { 0,12,0,2,99,0,0,66,0,0,0,0,0,0,0,0,0,0,0,0 }
OCMADSOCM { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }
OCMADSIRAM { 0,0,0,0,64,0,128,0,0 }
OCMADSIROM { 1,0,0,0,0,0,0,8,0 }
OCMADSXRAM { 0,0,0,0,0,0,0,0,0 }
OCR_RVCT { 1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,8,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,128,0,0,0,0,0,0,0,0,0,0,0 }
RV_STAVEC ()
ADSCCFLG { 5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }
ADSCMISC ()
ADSCDEFN ()
ADSCUDEF ()
ADSCINCD ()
ADSASFLG { 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }
ADSAMISC ()
ADSADEFN ()
ADSAUDEF ()
ADSAINCD ()
PropFld { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }
IncBld=1
AlwaysBuild=0
GenAsm=0
AsmAsm=0
PublicsOnly=0
StopCode=3
CustArgs ()
LibMods ()
ADSLDFG { 17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }
ADSLDTA (0x00000000)
ADSLDDA (0x40000000)
ADSLDSC ()
ADSLDIB ()
ADSLDIC ()
ADSLDMC ()
ADSLDIF ()
ADSLDDW ()
OPTDL (SARM.DLL)(-cLPC2100)(DARMP.DLL)(-pLPC2148)(SARM.DLL)()(TARMP.DLL)(-pLPC2148)
OPTDBG 48125,0,()()()()()()()()()() (BIN\UL2ARM.DLL)()()()
FLASH1 { 1,0,0,0,0,0,0,0,255,255,255,255,0,0,0,0,0,0,0,0 }
FLASH2 ()
FLASH3 ("LPC210x_ISP.EXE" ("#H" ^X $D COM1: 38400 1))
FLASH4 ()
EndOpt

View File

@ -340,7 +340,7 @@ void rt_hw_serial_init(void)
lpc_serial->parent.read = rt_serial_read; lpc_serial->parent.read = rt_serial_read;
lpc_serial->parent.write = rt_serial_write; lpc_serial->parent.write = rt_serial_write;
lpc_serial->parent.control = rt_serial_control; lpc_serial->parent.control = rt_serial_control;
lpc_serial->parent.private = RT_NULL; lpc_serial->parent.user_data = RT_NULL;
rt_device_register(&lpc_serial->parent, rt_device_register(&lpc_serial->parent,
"uart1", RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX); "uart1", RT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX);