The official mbed C/C SDK provides the software platform and libraries to build your applications.
Fork of mbed by
(01.May.2014) started sales! http://www.switch-science.com/catalog/1717/
(13.March.2014) updated to 0.5.0
This is a pin conversion PCB from mbed 1768/11U24 to arduino UNO.
- So if you have both mbed and arduino shields, I guess you would be happy with such a conversion board :)
Photos
- Board photo vvv
- Schematic photo vvv
- Functionality photo vvv
Latest eagle files
PCB >> /media/uploads/k4zuki/mbedshield050.brd
SCH >> /media/uploads/k4zuki/mbedshield050.sch
BIG changes from previous version
- Ethernet RJ45 connector is removed.
- http://mbed.org/components/Seeed-Ethernet-Shield-V20/ is the biggest hint to use Ethernet!
MostALL of components can be bought at Akizuki http://akizukidenshi.com/- But sorry, they do not send parts to abroad
- Pinout is changed!
| arduino | 0.4.0 | 0.5.0 |
|---|---|---|
| D4 | p12 | p21 |
| D5 | p11 | p22 |
| MOSI_ | none | p11 |
| MISO_ | none | p12 |
| SCK_ | none | p13 |
This design has bug(s)
- I2C functional pin differs between 1768 and 11U24.
Fixed bugs here
- MiniUSB cable cannot be connected on mbed if you solder high-height electrolytic capacitor on C3.
- http://akizukidenshi.com/catalog/g/gP-05002/ is the solution to make this 100% AKIZUKI parts!
- the 6-pin ISP port is not inprimented in version 0.4.0
it will be fixed in later version 0.4.1/0.4.2/0.5.0This has beenfixed
I am doing some porting to use existing arduino shields but it may faster if you do it by yourself...
you can use arduino PinName "A0-A5,D0-D13" plus backside SPI port for easier porting.
To do this you have to edit PinName enum in
- "mbed/TARGET_LPC1768/PinNames.h" or
- "mbed/TARGET_LPC11U24/PinNames.h" as per your target mbed.
here is the actual list: This list includes define switch to switch pin assignment
part_of_PinNames.h
USBTX = P0_2,
USBRX = P0_3,
//from here mbeDshield mod
D0=p27,
D1=p28,
D2=p14,
D3=p13,
#ifdef MBEDSHIELD_050
MOSI_=p11,
MISO_=p12,
SCK_=p13,
D4=p21,
D5=p22,
#else
D4=p12,
D5=p11,
#endif
D6=p23,
D7=p24,
D8=p25,
D9=p26,
D10=p8,
D11=p5,
D12=p6,
D13=p7,
A0=p15,
A1=p16,
A2=p17,
A3=p18,
A4=p19,
A5=p20,
SDA=p9,
SCL=p10,
//mbeDshield mod ends here
// Not connected
NC = (int)0xFFFFFFFF
Revision 30:3991a86798e3, committed 2012-01-04
- Comitter:
- emilmont
- Date:
- Wed Jan 04 16:29:47 2012 +0000
- Parent:
- 29:078e4b97a13e
- Child:
- 31:a7ef757f598c
- Commit message:
- Add latest ARM GCC toolchain build
Changed in this revision
Binary file LPC11U24/ARM/capi.ar has changed
Binary file LPC11U24/ARM/cmsis_nvic.o has changed
Binary file LPC11U24/ARM/core_cm0.o has changed
Binary file LPC11U24/ARM/mbed.ar has changed
Binary file LPC11U24/ARM/sys.o has changed
Binary file LPC11U24/ARM/system_LPC11Uxx.o has changed
--- a/LPC11U24/GCC_ARM/LPC11U24.ld Fri Dec 09 12:10:12 2011 +0000
+++ b/LPC11U24/GCC_ARM/LPC11U24.ld Wed Jan 04 16:29:47 2012 +0000
@@ -77,9 +77,9 @@
} > FLASH
__exidx_end = .;
- _etext = .;
+ __etext = .;
- .data : AT (_etext)
+ .data : AT (__etext)
{
__data_start__ = .;
*(vtable)
@@ -88,22 +88,22 @@
. = ALIGN(4);
/* preinit data */
PROVIDE (__preinit_array_start = .);
- *(.preinit_array)
+ KEEP(*(.preinit_array))
PROVIDE (__preinit_array_end = .);
. = ALIGN(4);
/* init data */
PROVIDE (__init_array_start = .);
- *(SORT(.init_array.*))
- *(.init_array)
+ KEEP(*(SORT(.init_array.*)))
+ KEEP(*(.init_array))
PROVIDE (__init_array_end = .);
. = ALIGN(4);
/* finit data */
PROVIDE (__fini_array_start = .);
- *(SORT(.fini_array.*))
- *(.fini_array)
+ KEEP(*(SORT(.fini_array.*)))
+ KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .);
. = ALIGN(4);
Binary file LPC11U24/GCC_ARM/cmsis_nvic.o has changed
Binary file LPC11U24/GCC_ARM/core_cm0.o has changed
Binary file LPC11U24/GCC_ARM/libcapi.a has changed
Binary file LPC11U24/GCC_ARM/libmbed.a has changed
Binary file LPC11U24/GCC_ARM/startup_LPC11xx.o has changed
Binary file LPC11U24/GCC_ARM/system_LPC11Uxx.o has changed
Binary file LPC11U24/GCC_CR/libcapi.a has changed
Binary file LPC11U24/GCC_CR/libmbed.a has changed
Binary file LPC11U24/GCC_CS/libcapi.a has changed
Binary file LPC11U24/GCC_CS/libmbed.a has changed
Binary file LPC11U24/uARM/capi.ar has changed
Binary file LPC11U24/uARM/cmsis_nvic.o has changed
Binary file LPC11U24/uARM/core_cm0.o has changed
Binary file LPC11U24/uARM/mbed.ar has changed
Binary file LPC11U24/uARM/sys.o has changed
Binary file LPC11U24/uARM/system_LPC11Uxx.o has changed
Binary file LPC1768/ARM/capi.ar has changed
Binary file LPC1768/ARM/cmsis_nvic.o has changed
Binary file LPC1768/ARM/core_cm3.o has changed
Binary file LPC1768/ARM/mbed.ar has changed
Binary file LPC1768/ARM/sys.o has changed
Binary file LPC1768/ARM/system_LPC17xx.o has changed
--- a/LPC1768/GCC_ARM/LPC1768.ld Fri Dec 09 12:10:12 2011 +0000
+++ b/LPC1768/GCC_ARM/LPC1768.ld Wed Jan 04 16:29:47 2012 +0000
@@ -80,9 +80,9 @@
} > FLASH
__exidx_end = .;
- _etext = .;
+ __etext = .;
- .data : AT (_etext)
+ .data : AT (__etext)
{
__data_start__ = .;
*(vtable)
@@ -91,22 +91,22 @@
. = ALIGN(4);
/* preinit data */
PROVIDE (__preinit_array_start = .);
- *(.preinit_array)
+ KEEP(*(.preinit_array))
PROVIDE (__preinit_array_end = .);
. = ALIGN(4);
/* init data */
PROVIDE (__init_array_start = .);
- *(SORT(.init_array.*))
- *(.init_array)
+ KEEP(*(SORT(.init_array.*)))
+ KEEP(*(.init_array))
PROVIDE (__init_array_end = .);
. = ALIGN(4);
/* finit data */
PROVIDE (__fini_array_start = .);
- *(SORT(.fini_array.*))
- *(.fini_array)
+ KEEP(*(SORT(.fini_array.*)))
+ KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .);
. = ALIGN(4);
Binary file LPC1768/GCC_ARM/cmsis_nvic.o has changed
Binary file LPC1768/GCC_ARM/core_cm3.o has changed
Binary file LPC1768/GCC_ARM/libcapi.a has changed
Binary file LPC1768/GCC_ARM/libmbed.a has changed
Binary file LPC1768/GCC_ARM/startup_LPC17xx.o has changed
Binary file LPC1768/GCC_ARM/system_LPC17xx.o has changed
Binary file LPC1768/GCC_CR/libcapi.a has changed
Binary file LPC1768/GCC_CR/libmbed.a has changed
Binary file LPC1768/GCC_CR/system_LPC17xx.o has changed
Binary file LPC1768/GCC_CS/libcapi.a has changed
Binary file LPC1768/GCC_CS/libmbed.a has changed
Binary file LPC1768/GCC_CS/system_LPC17xx.o has changed
Binary file LPC1768/uARM/capi.ar has changed
Binary file LPC1768/uARM/cmsis_nvic.o has changed
Binary file LPC1768/uARM/core_cm3.o has changed
Binary file LPC1768/uARM/mbed.ar has changed
Binary file LPC1768/uARM/sys.o has changed
Binary file LPC1768/uARM/system_LPC17xx.o has changed
Binary file LPC2368/ARM/capi.ar has changed
Binary file LPC2368/ARM/cmsis_nvic.o has changed
Binary file LPC2368/ARM/core_arm7.o has changed
Binary file LPC2368/ARM/mbed.ar has changed
Binary file LPC2368/ARM/sys.o has changed
Binary file LPC2368/ARM/system_LPC23xx.o has changed
Binary file LPC2368/ARM/vector_realmonitor.o has changed
Binary file LPC2368/GCC_ARM/cmsis_nvic.o has changed
Binary file LPC2368/GCC_ARM/core_arm7.o has changed
Binary file LPC2368/GCC_ARM/libcapi.a has changed
Binary file LPC2368/GCC_ARM/libmbed.a has changed
Binary file LPC2368/GCC_ARM/system_LPC23xx.o has changed
Binary file LPC2368/GCC_ARM/vector_realmonitor.o has changed
Binary file LPC2368/GCC_CR/libcapi.a has changed
Binary file LPC2368/GCC_CR/libmbed.a has changed
Binary file LPC2368/GCC_CS/libcapi.a has changed
Binary file LPC2368/GCC_CS/libmbed.a has changed
Binary file LPC2368/uARM/capi.ar has changed
Binary file LPC2368/uARM/cmsis_nvic.o has changed
Binary file LPC2368/uARM/core_arm7.o has changed
Binary file LPC2368/uARM/mbed.ar has changed
Binary file LPC2368/uARM/sys.o has changed
Binary file LPC2368/uARM/system_LPC23xx.o has changed
Binary file LPC2368/uARM/vector_realmonitor.o has changed
--- a/SPIHalfDuplex.h Fri Dec 09 12:10:12 2011 +0000
+++ b/SPIHalfDuplex.h Wed Jan 04 16:29:47 2012 +0000
@@ -7,7 +7,7 @@
#include "device.h"
-#if DEVICE_SPIHALFDUPLEX
+#if DEVICE_SPI
#include "SPI.h"
@@ -104,7 +104,6 @@
void slave_format(int sbits);
protected:
-
PinName _mosi;
PinName _miso;
int _sbits;
--- a/SerialHalfDuplex.h Fri Dec 09 12:10:12 2011 +0000 +++ b/SerialHalfDuplex.h Wed Jan 04 16:29:47 2012 +0000 @@ -7,7 +7,7 @@ #include "device.h" -#if DEVICE_SERIALHALFDUPLEX +#if DEVICE_SERIAL #include "Serial.h" #include "PinNames.h"
--- a/device.h Fri Dec 09 12:10:12 2011 +0000 +++ b/device.h Wed Jan 04 16:29:47 2012 +0000 @@ -14,13 +14,11 @@ #define DEVICE_ANALOGOUT 1 #define DEVICE_SERIAL 1 -#define DEVICE_SERIALHALFDUPLEX 1 #define DEVICE_I2C 1 #define DEVICE_I2CSLAVE 1 #define DEVICE_SPI 1 -#define DEVICE_SPIHALFDUPLEX 1 #define DEVICE_SPISLAVE 1 #define DEVICE_CAN 1 @@ -43,14 +41,12 @@ #define DEVICE_ANALOGOUT 0 #define DEVICE_SERIAL 1 -#define DEVICE_SERIALHALFDUPLEX 0 #define DEVICE_I2C 1 -#define DEVICE_I2CSLAVE 0 +#define DEVICE_I2CSLAVE 1 #define DEVICE_SPI 1 -#define DEVICE_SPIHALFDUPLEX 0 -#define DEVICE_SPISLAVE 0 +#define DEVICE_SPISLAVE 1 #define DEVICE_CAN 0
