bcostm
f712477c36
[NUCLEO_F103RB] Change AF setting before GPIO setting
2014-01-30 10:13:35 +01:00
bcostm
3ace84aece
[NUCLEO_F030R8] Change AF setting before GPIO setting
2014-01-30 10:13:16 +01:00
bcostm
955223fd2c
[NUCLEO_L152RE] Update std periph driver to V1.3.0
2014-01-30 09:53:14 +01:00
bcostm
6f06f6ecd2
[NUCLEO_L152RE] Correction on I2C gpio configuration + code cleanup
2014-01-30 09:49:51 +01:00
bcostm
740f801bb5
[NUCLEO_F103RB] Correction on I2C gpio configuration
2014-01-30 09:48:57 +01:00
tkuyucu
05d6525285
Pwm timer interrupt priority set to 1.
...
When timer interrupt priority is at 3, the pwm functionality can be
disturbed by an active ble connection.
2014-01-30 09:24:53 +01:00
bcostm
139f4fb16f
[NUCLEO_L152RE] Add SPI api
2014-01-30 07:56:35 +01:00
sg-
28f0cf71b3
Update to macro test in board.c, remove C027.cpp(h), set default IO in mbed_main and fixed copy paste error in MBED_LPC1768 reserved_pins.h
2014-01-29 22:33:41 -06:00
bcostm
3c54df796f
[NUCLEO_F103RB] Minor corrections on I2C master api
2014-01-29 15:17:10 +01:00
Sissors
67972d03af
Replaced tabs by spaces
...
Now Martin is happy :)
2014-01-29 14:43:26 +01:00
sg-
f1fa9a0c25
Added support for C027. Small re-factor to LPC1768 to accommodate this.
2014-01-28 20:44:32 -06:00
Sissors
2c2bf35a77
Refactored KLXX code
...
See description. Everything HAL wise went into KLXX, with target
specific in subfolders. Only interrupt and spi are in target specific
since they are target specific.
Also you cannot set the uart anymore for 9 or 10 databits (the code
supported it to set it like that, but the actually read/write only did
8-bits)
2014-01-28 18:57:07 +01:00
bcostm
015887091d
[NUCLEO_F030R8] Add I2C master api
2014-01-28 16:17:18 +01:00
0xc0170
178f881566
KL05Z/LPC1768 coide tmpl, KL05Z GCC warnings fixed
...
- LPC1768 - coide has issues with CMSIS-DAP debugging, already reported.
Added this template but not enabled yet.
- KL05Z export for coide
- KL05Z - supressed warnings in HAL
2014-01-27 20:37:58 +01:00
Bogdan Marinescu
887fc11980
Merge pull request #151 from bcostm/master
...
[NUCLEO_F030R8] Fix vectors remap in RAM issue and more...
2014-01-27 07:25:03 -08:00
bcostm
6866978792
[NUCLEO_F030R8] Fix vectors remap in RAM issue and more...
...
Improve gpio api, add gpio_irq, add sleep.
2014-01-27 15:53:00 +01:00
Bogdan Marinescu
a31ec9c5f7
Merge pull request #150 from bcostm/master
...
Add NUCLEO_L152RE
2014-01-27 06:22:13 -08:00
bcostm
1ccef1a441
[NUCLEO_L152RE] Improvements of gpio and gpio_irq api
2014-01-27 10:02:15 +01:00
bcostm
d14992dcfd
[NUCLEO_F103RB] Improvement of gpio and gpio_irq api
2014-01-27 09:59:07 +01:00
Chiel de Roest
8b3cdc0067
Remove unnecessary semicolons.
...
Remove unnecessary colon that was placed in all SPI drivers for NXP
targets.
2014-01-24 22:49:09 +01:00
neilt6
8e346fc498
Fixed sleep and disabled semihosting on LPC11U35
...
I created 3 separate device.h headers for the three LPC11UXX targets,
and disabled the features that the LPC11U35 board doesn't have like
Semihosting and LocalFileSystem. I also made the call to
mbed_interface_disconnect() require DEVICE_SEMIHOSTING, which prevents
calls to sleep() from hanging the system on an LPC11U35.
2014-01-24 10:51:48 -07:00
bcostm
4afc4e4a3b
[NUCLEO_F030R8] Add rtc api
2014-01-24 14:52:13 +01:00
bcostm
c9bd30590f
[NUCLEO_L152RE] Add rtc api
2014-01-24 14:51:43 +01:00
bcostm
3adc6b41df
[NUCLEO_F030R8] Add analogin api
2014-01-24 12:17:15 +01:00
bcostm
81482e6d92
[NUCLEO_L152RE] Add gpio_irq api
2014-01-22 18:36:35 +01:00
bcostm
486ebece6b
[NUCLEO_F030R8] Add serial api
2014-01-22 17:59:04 +01:00
bcostm
a5726b883b
[NUCLEO_F030R8] Add gpio, port, ticker api, cmsis files
2014-01-22 17:53:54 +01:00
tkuyucu
689a484d23
Stack and heap initialization is removed from the startup file. This solves the mbed runtime problems with the SoftDevice enabled.
2014-01-22 13:58:30 +01:00
bcostm
e577faef66
[NUCLEO_L152RE] Add analog out api
...
and add macros for GPIOs, change master timer for ticker.
2014-01-22 08:22:01 +01:00
bcostm
e3e5180256
[NUCLEO_F103RB] Cleanup code
...
Add STM_PIN and STM_PORT macros for GPIOs.
2014-01-22 07:48:10 +01:00
bcostm
0af4419c74
Merge branch 'master' of https://github.com/mbedmicro/mbed
2014-01-20 18:09:48 +01:00
bcostm
f27e93cf3f
[NUCLEO_L152RE] Add analog out api
2014-01-20 17:45:35 +01:00
bcostm
23e383be36
[NUCLEO_L152RE] Add pwmout api
2014-01-17 17:14:29 +01:00
bcostm
a2efcd2c92
[NUCLEO_L152RE] analog_in improvement
2014-01-16 13:25:43 +01:00
bcostm
e5b641777a
[NUCLEO_L152RE] Add analogin api
2014-01-16 13:16:35 +01:00
Bogdan Marinescu
8ef99f8562
Merge pull request #145 from Sissors/master
...
Added MCGPLLFLL clock function, squished some 'bugs'
2014-01-14 14:12:48 -08:00
Sissors
153a9ddb49
Added MCGPLLFLL clock function, squished some 'bugs'
...
PWM bug mentioned here:
https://mbed.org/questions/2315/BUG-Exporting-to-ARM-GCC-does-not-work-n/
Fast internal osc prescaler wasn't taken into account at us_ticker
interrupt clock source, now it is.
2014-01-14 22:57:43 +01:00
0xc0170
937430a130
clk freq header file
...
- HAL clock improvement
2014-01-14 17:51:09 +01:00
0xc0170
4e5993e7ee
Merge branch 'master' into dev_k20d5m_testing
2014-01-14 15:47:22 +01:00
bcostm
ffb7f13018
[NUCLEO_F152RE] Correction in pinmap
2014-01-14 10:14:08 +01:00
bcostm
ba5866b35e
[NUCLEO_L152RE] Fix bugs with gpio and serial
2014-01-13 14:20:27 +01:00
Bogdan Marinescu
f1904ba15c
Merge pull request #140 from Sissors/master
...
KL46Z: Added Sleep, LED3 and LED4 definitions, switches
2014-01-13 02:37:11 -08:00
bcostm
cbfdc4e26d
[NUCLEO_L152RE] Cleanup in available ports/pins
2014-01-13 10:27:47 +01:00
bcostm
bef6fdf339
[NUCLEO_F103RB] Code cleanup, correction in pins definition
2014-01-13 09:24:31 +01:00
Sissors
aa0f7a7026
Added clk_freqs.h for clock related functions
...
Serial now also works when PLL/FLL is disabled and extosc is available.
us_ticker tries to divide extosc to 1MHz, otherwise use fast internal
oscillator
2014-01-11 19:10:36 +01:00
Sissors
ebdbf53ba1
Updat PWM prescaler correctly
2014-01-11 09:40:10 +01:00
Sissors
eedce209c5
Removed hardcoded frequencies, replaced by automatically calculated
...
ADC frequency 1.5MHz -> 6MHz (if possible, otherwise it tries as close
to, but less than 6MHz)
pwm tries to get its clock as close as possible to 1MHz, but not lower
than 1MHz
2014-01-10 21:45:26 +01:00
bcostm
7d145c8dc4
[NUCLEO_L152RE] Add first files (gpio, pinmap, us_ticker)
2014-01-10 17:46:18 +01:00
tkuyucu
fdb41b0ccb
serial will choose the nearest lower baudrate if an unsupported value is chosen.
2014-01-10 15:53:43 +01:00
tkuyucu
29560a3195
SPI and I2C will accept unsupported frequencies and match them with the closest available frequency instead of generating an error.
...
Sleep is now implemented (deepsleep will cause nrf to work in System OFF mode).
2014-01-10 14:21:43 +01:00
tkuyucu
c7eabcd977
Interrupt priorities set to low application level (3) in order to ensure no conflict with the SD.
2014-01-09 14:03:20 +01:00
Andreas Rebert
e8b09cbc2d
[LPC4088] Corrected an invalid header file dependecy.
2014-01-09 09:10:10 +01:00
Andreas Rebert
1448b871c1
[LPC4088] Making it possible to reserve stack space by weak function.
2014-01-09 08:52:33 +01:00
Andreas Rebert
3157d5afb2
[LPC4088] Making it possible to reserve stack space by weak function.
2014-01-09 08:51:30 +01:00
Sissors
7df2622a76
SPI clock fix for KL05Z and KL46Z
2014-01-09 07:57:45 +01:00
Andreas Rebert
a1a2fec259
[LPC4088]: Corrected RAM size in linker script (ARM_GCC)
2014-01-09 07:44:15 +01:00
Sissors
ed7954f5ac
Fixed KL25Z SPI clock
...
https://mbed.org/questions/2309/spifrequency-for-KL25Z/
2014-01-08 21:00:40 +01:00
0xc0170
4732796ab4
PWM channels definition update, serial uses external global variable system clock
2014-01-08 17:32:28 +01:00
0xc0170
ffac7e6d6a
PWM - pwmload removed from the objects header file
2014-01-08 12:05:11 +01:00
tkuyucu
694f9c726c
fixes and updates after the mbed unit tests have been carried out.
2014-01-08 11:14:19 +01:00
0xc0170
889952790f
PWM - mux addition
2014-01-08 10:58:51 +01:00
0xc0170
a6e45b7d38
spi - disable rx/tx fifo, write/readable flags change
2014-01-07 20:23:54 +01:00
Sissors
e5f13c047c
Added Sleep, LED3 and LED4 definitions, switches
...
Sleep = KL25Z sleep (verified to work correctly)
LED3 = LED1, LED4 = LED2 (for compatibility, similar to LED3 = LED4 in
KL25Z code)
SW1 and SW3 for the two switches (SW2 is reset switch)
2014-01-07 18:35:41 +01:00
0xc0170
5d95041620
PWM - legacy mode, LOAD use for updating
2014-01-06 18:43:17 +01:00
bcostm
dace8653e6
[NUCLEO_F103RB] Remove HSE re-configuration in sleep code.
2014-01-06 15:07:49 +01:00
bcostm
989c66165c
Merge branch 'master' of https://github.com/mbedmicro/mbed
2014-01-06 11:22:35 +01:00
Bogdan Marinescu
b311c56b44
Merge pull request #138 from ytsuboi/master
...
[LPC812] Add SPISlave function
2013-12-31 07:25:41 -08:00
ytsuboi
4fbf286ee3
[LPC812] change ssp_busy() to check RXOV
2013-12-31 20:24:46 +09:00
0xc0170
aa501c003b
Shared PORT interrupt - check improved
...
- clocks must be enabled and also interrupt detected, otherwise
interrupt handler is not invoked.
2013-12-31 08:34:12 +01:00
0xc0170
a384d1d875
pwm channel 7 correction, enhanced mode
2013-12-30 18:12:01 +01:00
0xc0170
dc19dcbb94
fix - KL46Z cmsis header (v2.2), shared interrupt PORTCD
...
- Ports C and D sharing same interrupt vectors
- KL46Z CMSIS header update
- InterruptIn methods irq_disable/enable comment update
2013-12-30 12:19:24 +01:00
0xc0170
8d7c3da179
i2c clock from global clock value, syntax corrections
2013-12-30 11:39:36 +01:00
ytsuboi
0a11767877
[LPC812] enable SPISlave
2013-12-29 19:18:50 +09:00
0xc0170
ee7c33d055
K20D5M default irq handler
2013-12-26 12:11:32 +01:00
0xc0170
15e246fc9f
Merge branch 'master' into K20D50
2013-12-26 09:05:11 +01:00
0xc0170
63526032d9
K20D5M flash algo for template
2013-12-26 09:03:19 +01:00
0xc0170
78140c4aa1
LPTMR timer - OSCEN set, GCC startup vectors add
2013-12-25 20:02:56 +01:00
Bogdan Marinescu
82aa7b7f2b
Enable RTOS with GCC_CR
...
1. Provide the required __end__ symbol
2. Call software_init_hook() if present, which in turn starts the RTOS
The fix was applied for all targets with a TOOLCHAIN_GCC_CR folder,
but it only works with LPC1768 and LPC4088 because of incomplete or
missing support for GCC_CR and/or the RTOS for the other targets.
Tested by running RTOS_1, RTOS_2 and RTOS_3 with LPC1768 and LPC4088.
2013-12-24 23:13:50 +02:00
0xc0170
b73b57db26
I2C, pullup
2013-12-23 20:56:48 +01:00
0xc0170
c9a029ce6f
Merge branch 'master' into K20D50
2013-12-23 20:01:05 +01:00
0xc0170
366221524a
SPI, RTC, Serial changes
...
- SPI - implementation
- RTC - there's 32.768kHz crystal, use that as a source
- Serial - 10bit transfer
2013-12-23 19:57:10 +01:00
tkuyucu
eb5fd7d6e0
timer overflow sync issue fixed.
2013-12-20 16:37:28 +01:00
Bogdan Marinescu
728084c52f
Merge pull request #134 from Joey-Ye/master
...
Clean up GCC_ARM startup code
2013-12-20 06:53:16 -08:00
Joey Ye
feacef8f3a
Clean up GCC_ARM startup code
2013-12-20 15:08:20 +08:00
Bogdan Marinescu
425e197ba6
Fix missing case in flow control code
2013-12-19 17:59:24 +02:00
tkuyucu
4756fb3a51
timer interrupts implemented correctly. TimeOut and Ticker classes should work.
2013-12-19 15:53:11 +01:00
tkuyucu
f0994c710b
SoftDevice is now enabled by the startup code by calling EnableSoftDevice (defined in system_nRF51822).
2013-12-19 15:09:09 +01:00
Bogdan Marinescu
5f62a399db
Added preliminary printf() support to RawSerial
2013-12-19 15:05:17 +02:00
bcostm
28120ffb19
[NUCLEO_F103RB] Change license text in ALL target files
2013-12-19 11:44:15 +01:00
tkuyucu
76d25ffb25
16-bit timer with sw overflow is used instead of the 32-bit timer.
2013-12-19 10:41:16 +01:00
Bogdan Marinescu
34a43eaa41
Merge branch 'flow_control'
...
Conflicts:
workspace_tools/tests.py
2013-12-19 11:36:45 +02:00
Bogdan Marinescu
bb8ed20a47
LPC1768 flow control fixes
...
- Disable TX buffer, this isn't compatible with the software CTS implementation
- Properly set hardware RTS/CTS pins when possible
- Modified test to use hardware CTS and software RTS
2013-12-19 11:31:23 +02:00
Yihui Xiong
6501b16213
Merge remote-tracking branch 'upstream/master'
2013-12-19 12:38:04 +08:00
Yihui Xiong
a3465b5eac
fix 16bit timer pwm output
2013-12-19 12:31:31 +08:00
Joey Ye
9213137011
Discard \r change as pull request rejected
2013-12-19 09:30:18 +08:00
tkuyucu
3c2258956b
AnalogIn, Interrupts, and I2C are added.
2013-12-18 15:04:16 +01:00
0xc0170
988894e837
Merge branch 'master' into K20D50
2013-12-17 16:13:27 +01:00
bcostm
9702a131d4
Merge branch 'master' of https://github.com/mbedmicro/mbed
2013-12-17 11:10:12 +01:00
Bogdan Marinescu
c560db3233
Merge branch 'KL46_DEV' of git://github.com/sg-/mbed into sg--KL46_DEV
...
Conflicts:
README.md
2013-12-17 12:06:12 +02:00
bcostm
c84b8f9193
[NUCLEO_F103RB] Use HSI/LSI instead of HSE/LSE
...
Due to Nucleo board revision C requirements.
2013-12-17 11:04:28 +01:00
Bogdan Marinescu
572b22395f
Merge pull request #129 from bcostm/master
...
[NUCLEO_F103RB] InterruptIn, Sleep, RTC added
2013-12-17 00:41:36 -08:00
Bogdan Marinescu
2fb9de927c
Merge pull request #127 from 0xc0170/dev_KL05Z_exporters
...
Dev kl05 z exporters
2013-12-17 00:40:49 -08:00
sg-
33ae2fe364
Updates to comments and README.md to add new target links
2013-12-16 18:41:39 -06:00
sg-
4445a11673
Add pulldown support to PinMode enum and fix pullup value to match register definition
2013-12-16 13:05:13 -06:00
bcostm
adce27f269
[NUCLEO_F103RB] Add RTC
2013-12-16 14:33:58 +01:00
bcostm
f8ecc9be46
[NUCLEO_F103RB] Allow ACK polling with I2C (again)
...
Go back to the last modification made by Bogdan.
2013-12-16 10:13:31 +01:00
bcostm
967509de53
[NUCLEO_F103RB] Add sleep
2013-12-16 09:56:00 +01:00
0xc0170
5747a4502d
One section for vectors and flash protection bits. The unused space is filled with 0xff
2013-12-15 23:30:03 +01:00
0xc0170
f7cee14193
KL05Z GCC support, exporters for arm_gcc, uvision
2013-12-15 11:54:44 +01:00
bcostm
956064b4bc
[NUCLEO_F103RB] Add InterruptIn
2013-12-14 18:53:57 +01:00
Bogdan Marinescu
bb3d95e9e5
Merge branch 'master' of github.com:mbedmicro/mbed
2013-12-13 13:37:50 +02:00
Bogdan Marinescu
1ae5a1d340
Added pin definitions for LPC11U35 quick stard board
2013-12-13 13:35:19 +02:00
Bogdan Marinescu
da605b82a5
Merge pull request #126 from bcostm/master
...
[NUCLEO_F103RB] Update PWM IOs used + I2C cleanup
2013-12-13 01:29:29 -08:00
Bogdan Marinescu
a164c6f498
[NUCLEO_F103RB] Allow ACK polling with I2C
2013-12-12 20:00:02 +02:00
bcostm
18136e3f09
[NUCLEO_F103RB] Update PWM IOs used + I2C cleanup
2013-12-12 15:44:21 +01:00
Bogdan Marinescu
bd51e4eb73
Merge pull request #123 from bcostm/master
...
[NUCLEO_F103RB] Add I2C master, code cleanup, ...
2013-12-12 02:34:48 -08:00
Anders Lindvall
0c774294fb
LPC4088 target fixes
...
- changed scatter file to keep all the code in the internal flash
- added tests for SPIFI memory usage
2013-12-12 12:29:00 +02:00
bcostm
2310b4c031
[NUCLEO_F103RB] Code cleanup
2013-12-12 10:35:04 +01:00
bcostm
a129b8f8fa
[NUCLEO_F103RB] Add more generic signal names for the examples.
2013-12-11 18:38:35 +01:00
Bogdan Marinescu
c3d4d3079f
Added DEVICE_SERIAL_FC as an indicator for the flow control implementation
2013-12-11 10:26:18 +02:00
bcostm
37b8acad68
[NUCLEO_F103RB] Code cleanup
2013-12-10 16:46:15 +01:00
0xc0170
5e9e53f934
PWM - changes to start the channel
2013-12-10 15:57:43 +01:00
bcostm
5ebce384b5
[NUCLEO_F103RB] Align startup files with other targets
2013-12-10 11:14:56 +01:00
bcostm
d44996c26c
Merge branch 'master' of https://github.com/mbedmicro/mbed
2013-12-10 10:35:26 +01:00
Bogdan Marinescu
faee2bf073
[NUCLEO_F103RB] Serial interrupt fixes
...
- use TC flag instead of TXE for TX interrupt
- clear interrupt flags to prevent possible interrupt storm
2013-12-09 13:01:39 +02:00
Bogdan Marinescu
2b8e05e002
[NUCLEO_F103RB] Timer fixes
...
- the timer data structures were not properly initialized
- changed slave timer mode to external clock 1 (section 15.3.15 of the manual)
- avoid a possible race condition when concatenating the values of the
two 16-bit timers
2013-12-07 14:26:54 +02:00
tkuyucu
3faaff74ee
PwmOut working.
2013-12-06 15:30:58 +01:00
Joey Ye
b747181e0d
Add \r in retarget
2013-12-06 18:06:11 +08:00
tkuyucu
105c31bcb3
SPISlave works.
2013-12-06 10:01:28 +01:00
tkuyucu
4ba79b77b4
SPISlave works. pwm_out works but needs more work to properly implement 0 pulse and 100% pulse.
2013-12-06 09:59:40 +01:00
Bogdan Marinescu
53cd64775d
Hardware flow control implementation for LPC81X
2013-12-05 17:33:16 +02:00
Bogdan Marinescu
2ac6c4c531
Fixed RTS/CTS bit-banging on LPC1768
2013-12-04 19:46:12 +02:00
Bogdan Marinescu
fbeb52d613
Added RTS/CTS flow control
...
Currently implemented only for LPC1768. On this platform, when hardware
flow control is not directly supported, it will be emulated.
Also added "not_implemented.c" as a placeholder for various HAL functions
that might not be implemented on all platforms (in this particular case,
serial_set_flow_control). These are weak implementations that default to a
"not implemented" error message.
2013-12-04 19:42:11 +02:00
bcostm
0aa8b93e26
NUCLEO_F103RB: Add I2C master api
2013-12-04 11:17:10 +01:00
Bogdan Marinescu
3f82e7fa6f
Use correct scatter file for LPC4088
2013-12-03 11:04:37 +02:00
tkuyucu
685274563e
Port, Buffer, DigitalInOut, and Spi (master) works.
2013-12-02 16:33:08 +01:00
Bogdan Marinescu
49df530ae7
Merge pull request #118 from bcostm/master
...
Add STMicroelectronics NUCLEO_F103RB target
2013-12-02 03:15:58 -08:00
Bogdan Marinescu
6aaa134516
Merge pull request #117 from Sissors/master
...
Added (deep)sleep to KL25Z
2013-12-02 01:55:33 -08:00
bcostm
3bcf77e4f7
NUCLEO_F103RB: minor changes
2013-12-02 09:22:28 +01:00
Sissors
9f89a4d218
Added (deep)sleep to KL25Z
...
Sleep is wait mode
Deepsleep is very low power stop mode
During the interrupt that removes it from deepsleep it will run at low
speed until the PLL is automatically re-enabled after the interrupt.
2013-11-30 19:28:00 +01:00
0xc0170
d8d526f656
Merge branch 'master' into K20D50
2013-11-28 17:24:57 +01:00
Michael Moon
a249e39826
Improved baudrate calculation function.
...
Uses 100% integer math, delivers more accurate results with fewer iterations in less time.
Since it seems most of the NXP chips use identical math, I have also altered the other targets in this commit.
If there are non-NXP chips which use a similar serial block, consider porting to those as well
Comparison:
BAUD DL MUL DIV CPU_CLOCK
------- --- --- --- ----------
new: { 9600, 625, 1, 0, 96000000}, // Actual baud: 9600, error =0.00%, 1 iterations
old: { 9600, 625, 1, 0, 96000000}, // Actual baud: 9600, error =0.00%, 0 iterations
new: { 38400, 125, 4, 1, 96000000}, // Actual baud: 38400, error =0.00%, 8 iterations
old: { 38400, 81, 14, 13, 96000000}, // Actual baud: 38409, error +0.02%, 420 iterations
new: { 57600, 81, 7, 2, 96000000}, // Actual baud: 57613, error +0.02%, 120 iterations
old: { 57600, 54, 14, 13, 96000000}, // Actual baud: 57613, error +0.02%, 315 iterations
new: { 115200, 27, 14, 13, 96000000}, // Actual baud: 115226, error +0.02%, 120 iterations
old: { 115200, 27, 14, 13, 96000000}, // Actual baud: 115226, error +0.02%, 210 iterations
new: { 230400, 23, 15, 2, 96000000}, // Actual baud: 230179, error -0.10%, 120 iterations
old: { 230400, 17, 15, 8, 96000000}, // Actual baud: 230179, error -0.10%, 525 iterations
new: { 250000, 24, 1, 0, 96000000}, // Actual baud: 250000, error =0.00%, 1 iterations
old: { 250000, 24, 1, 0, 96000000}, // Actual baud: 250000, error =0.00%, 0 iterations
new: {1000000, 6, 1, 0, 96000000}, // Actual baud: 1000000, error =0.00%, 1 iterations
old: {1000000, 6, 1, 0, 96000000}, // Actual baud: 1000000, error =0.00%, 0 iterations
new: {2000000, 3, 1, 0, 96000000}, // Actual baud: 2000000, error =0.00%, 1 iterations
old: {2000000, 3, 1, 0, 96000000}, // Actual baud: 2000000, error =0.00%, 0 iterations
new: { 9600, 514, 15, 4, 100000000}, // Actual baud: 9600, error =0.00%, 110 iterations
old: { 9600, 337, 15, 14, 100000000}, // Actual baud: 9593, error -0.07%, 1365 iterations
new: { 38400, 93, 4, 3, 100000000}, // Actual baud: 38402, error +0.01%, 120 iterations
old: { 38400, 85, 12, 11, 100000000}, // Actual baud: 38363, error -0.10%, 525 iterations
new: { 57600, 62, 4, 3, 100000000}, // Actual baud: 57604, error +0.01%, 120 iterations
old: { 57600, 61, 9, 7, 100000000}, // Actual baud: 57633, error +0.06%, 840 iterations
new: { 115200, 31, 4, 3, 100000000}, // Actual baud: 115207, error +0.01%, 120 iterations
old: { 115200, 31, 4, 3, 100000000}, // Actual baud: 115207, error +0.01%, 525 iterations
new: { 230400, 19, 7, 3, 100000000}, // Actual baud: 230263, error -0.06%, 120 iterations
old: { 230400, 19, 7, 3, 100000000}, // Actual baud: 230263, error -0.06%, 735 iterations
new: { 250000, 25, 1, 0, 100000000}, // Actual baud: 250000, error =0.00%, 1 iterations
old: { 250000, 25, 1, 0, 100000000}, // Actual baud: 250000, error =0.00%, 0 iterations
new: {1000000, 5, 4, 1, 100000000}, // Actual baud: 1000000, error =0.00%, 8 iterations
old: {1000000, 5, 4, 1, 100000000}, // Actual baud: 1000000, error =0.00%, 315 iterations
new: {2000000, 2, 9, 5, 100000000}, // Actual baud: 2008929, error +0.45%, 120 iterations
old: {2000000, 2, 9, 5, 100000000}, // Actual baud: 2008929, error +0.45%, 315 iterations
new: { 9600, 625, 4, 1, 120000000}, // Actual baud: 9600, error =0.00%, 8 iterations
old: { 9600, 404, 15, 14, 120000000}, // Actual baud: 9602, error +0.02%, 1575 iterations
new: { 38400, 179, 11, 1, 120000000}, // Actual baud: 38408, error +0.02%, 120 iterations
old: { 38400, 101, 15, 14, 120000000}, // Actual baud: 38409, error +0.02%, 525 iterations
new: { 57600, 93, 5, 2, 120000000}, // Actual baud: 57604, error +0.01%, 120 iterations
old: { 57600, 68, 12, 11, 120000000}, // Actual baud: 57545, error -0.10%, 420 iterations
new: { 115200, 47, 13, 5, 120000000}, // Actual baud: 115248, error +0.04%, 120 iterations
old: { 115200, 34, 12, 11, 120000000}, // Actual baud: 115090, error -0.10%, 315 iterations
new: { 230400, 19, 7, 5, 120000000}, // Actual baud: 230263, error -0.06%, 120 iterations
old: { 230400, 17, 12, 11, 120000000}, // Actual baud: 230179, error -0.10%, 210 iterations
new: { 250000, 30, 1, 0, 120000000}, // Actual baud: 250000, error =0.00%, 1 iterations
old: { 250000, 30, 1, 0, 120000000}, // Actual baud: 250000, error =0.00%, 0 iterations
new: {1000000, 5, 2, 1, 120000000}, // Actual baud: 1000000, error =0.00%, 3 iterations
old: {1000000, 4, 8, 7, 120000000}, // Actual baud: 1000000, error =0.00%, 210 iterations
new: {2000000, 3, 4, 1, 120000000}, // Actual baud: 2000000, error =0.00%, 8 iterations
old: {2000000, 2, 8, 7, 120000000}, // Actual baud: 2000000, error =0.00%, 210 iterations
2013-11-29 02:44:14 +11:00
tkuyucu
820e0473f6
Bogdan's startup fix added.
2013-11-28 13:21:21 +01:00
0xc0170
c5a2e6ed0e
pwm, spi - pin definition, dac removed
2013-11-27 18:46:30 +01:00
bcostm
1159845529
NUCLEO_F103RB: update channels management in analogin api
2013-11-27 15:39:57 +01:00
tkuyucu
511e24ecc9
nRF51822 mbed SDK with working GPIO, RawSerial, and timer
2013-11-27 13:16:11 +01:00
0xc0170
0e99a7c9bd
Analog API - pins, analog pins (arduino) correction, irq
...
- ADC - pins, mux
- analog pins - Ax
- irq - port A - E
2013-11-26 20:08:13 +01:00
Bogdan Marinescu
256f70fffc
Merge remote-tracking branch 'origin/master'
2013-11-26 17:14:46 +02:00
Bogdan Marinescu
3c0a8b633f
Provide generic pinout defines
...
This commit adds generic peripheral names to various mbed enabled
boards, to make it easier to write portable code amongst various
mbed boards.
2013-11-26 17:12:36 +02:00
bcostm
dd292a7e71
NUCLEO_F103RB: Add pwmout api + change timers for ticker
2013-11-26 09:26:08 +01:00
bcostm
c33dbfd63d
Enable STDIO messages used by the test firmwares
2013-11-25 10:20:39 +01:00
0xc0170
3dc97b20c0
startup ARM - stack pointer, serial functional
...
- stack pointer correction
- startup for ARM - clean up
- GCC ARM linker - RAM size correction
- NVIC - RAM address
2013-11-22 21:21:01 +01:00
bcostm
c47bc1780a
Add UseMicroLIB option for exported project
2013-11-22 11:41:07 +01:00
Bogdan Marinescu
f6c9c8db5e
Fixed initial SP value
2013-11-21 19:07:52 +02:00
Emilio Monti
64952d4f7e
Merge pull request #114 from mazgch/master
...
Avoid hardfault when CAN object is destructed.
2013-11-21 08:40:43 -08:00
mazgch
a3a16b3683
Avoid hardfault when CAN object is destructed.
...
interrupts have to be disabled(can_irq_free) before we turn off(can_free) the peripheral
2013-11-21 17:31:17 +01:00
Emilio Monti
5278dd43f2
Merge pull request #113 from mazgch/master
...
fix the documentation to ethernet api to match implementation
2013-11-21 02:32:05 -08:00
mazgch
2b7d2bb343
fix the documentation to match implementation
2013-11-21 11:24:58 +01:00
Emilio Monti
6a5335a40e
Merge pull request #112 from Sissors/master
...
Added sleep to LPC81x
2013-11-21 01:58:28 -08:00
Sissors
585e05ca6a
Added sleep to LPC81x
...
http://mbed.org/users/mbed_official/code/mbed-src/pull-request/6
2013-11-21 08:19:44 +01:00
hototogi
03b79b5920
support GCC_ARM for LPC4330_M4
...
- Linker script is based on LPC1768
number of NVIC is 16 (CORE) + 53 (M4 in LPC43xx) = 69,
therefor, reserve at the top of RAM0 (address:0x10000000)
to relocate NVIC vector table
- startup file is based on startup_ARMCM4.S in CMSIS V3.20
change NVIC name for cortex-M4 of LPC43xx
- add GCC_ARM for LPC4330_M4 in python scripts
- add some descriptions for GCC_ARM
2013-11-20 17:03:59 +09:00
0xc0170
4e09b52a71
K20 uVision files, ld NVIC offset
...
- K20 KEIL files
- clock set to 1 (48MHz)
- offset in GCC ld for vectors in RAM
- us ticker - PIT timer interrupt implementation
2013-11-19 20:06:26 +01:00
bcostm
415ac34b56
Add analogin, serial and spi support for NUCLEO_F103RB
2013-11-19 09:11:31 +01:00
0xc0170
8ca8014c00
Merge branch 'master' into K20D50
2013-11-18 20:34:45 +01:00
bcostm
70dd0d891e
Add STM32F10x standard periph driver
2013-11-14 11:33:29 +01:00
bcostm
6d9b523185
Update workspace_tools files
2013-11-14 11:07:01 +01:00
bcostm
beb779b3d6
Rename target
2013-11-13 09:29:29 +01:00
Bogdan Marinescu
5b6faea448
Removed redundant label TARGET_LPC81X_COMMON
2013-11-11 13:28:18 +02:00
Joris Aerts
76ffc4935e
Fix bug in gpio_set not setting reserved pins correctly
...
Loop going over reserved pins was not going over all entries as result of incorrect sizeof
2013-11-08 13:39:00 -08:00
bcostm
b8ddfce3d0
Change folder name to TARGET_NUCLEO-F103RB
2013-11-08 11:19:09 +01:00
bcostm
96a96f2cb6
Add STM32F10X cmsis files
2013-11-07 14:16:01 +01:00
bcostm
c0d5675480
Add STM NUCLEO64 STM32F10X basic files
2013-11-07 11:32:01 +01:00
0xc0170
f4591dbbab
Merge branch 'upstream_master' into dev_kl46z
2013-11-05 22:08:07 +01:00
Andreas Rebert
09cf4ef128
Support for exporting to GCC_ARM
2013-10-31 13:28:05 +01:00
pbrier
b1d88905a9
fixed can_filter() prototype (prevents build of LPC1768)
2013-10-26 17:02:29 +02:00
Emilio Monti
317a1f66d2
Merge pull request #91 from jorisa/master
...
Add CAN api filter support and LPC11CXX CAN implementation
2013-10-25 06:58:05 -07:00
Bogdan Marinescu
9d881770c9
Merge remote-tracking branch 'github/master'
2013-10-25 15:43:01 +03:00
Adam Green
969733ae8f
serial_putc() to make better use of Tx FIFO
...
If don't know if this is an issue that anyone cares about. I am also
not sure what the best way to solve it is either. I just thought I
would issue a pull request with this commit to bring the issue to light
and show a possible solution that I have tested on my mbed-1768 device.
Previously the serial_putc() API didn't make any use of the Tx FIFO
since the serial_writable() API it utilizes only returns true when the
FIFO is completely empty. This is due to the fact that the THRE bit of
the UART's LSR (Line Status Register) only goes high when the whole
FIFO is empty.
I noticed this when doing some performance testing with the network
stack. I went from calling printf() to output 3 bytes every 10 seconds
(with packet drop stats) to instead output 4 bytes every 10 seconds.
I thought these should easily fit in the 16 byte FIFO but outputting
one extra byte caused an additional three 550 byte UDP packets to be
dropped. This should only happen if the additional character being
sent to the UART was taking away extra CPU cycles from the network
stack.
My solution is to keep track of the number of bytes that have been
placed in the Tx FIFO since it was last detected as being completely
empty (via the THRE bit). Only once this count hits 16 does the code
then block, waiting for the THRE bit to go high. Each time the THRE
bit does go high, the count is reset to 0 again and it is incremented
for each byte that is loaded into the THR.
2013-10-25 15:17:06 +03:00
Joe Turner
6ae1e9e360
Merge branch 'master' of git://github.com/mbedmicro/mbed into bugfix-STM32-vectors
2013-10-25 13:11:25 +01:00
Joe Turner
0ef4905728
Fix relocation of vector on STM32.
2013-10-25 13:09:06 +01:00
Bogdan Marinescu
544ac9e728
Disable DEVICE_STDIO_MESSAGES for LPC81X
...
Because the LPC81X HAL implementation calls error(), which in turn calls
fprintf(), quite a bit of code is added to the image, which is not a good
idea on such resource constrained targets.
2013-10-25 14:51:01 +03:00
Bogdan Marinescu
5742abe6d9
Added the new RawSerial.h in mbed.h
2013-10-23 17:28:05 +03:00
Bogdan Marinescu
2404dc0092
Added new serial class, remove interrupt chaining
...
The new RawSerial class is a simple wrapper over the serial HAL that can
be safely used from an interrupt handler.
Interrupt chaining code was removed from InterruptIn, Serial and Ticker
because it caused lots of issues with the RTOS. Interrupt chaining is
still possible using the InterruptManager class.
2013-10-23 16:08:34 +03:00
Joris Aerts
739f2a6375
Add can_api hal implementation to LPC11CXX target
...
Most of the functionality works, interrupts might need a little more work.
2013-10-22 11:02:10 -07:00
Joris Aerts
08c1483eb3
Add bitfields definition to LPC11XX target
...
Generated from UM10398
2013-10-22 11:00:17 -07:00
Joris Aerts
067e446ae2
Add CAN->filter to API and add placeholders to hal's
...
Add filter function and modify CAN->read definition to allow reading specific messages.
2013-10-22 10:57:28 -07:00
0xc0170
b0537af763
gpio irq enable/disable
...
- InterruptIn disable_irq/enable_irq
2013-10-19 22:28:29 +02:00
0xc0170
d9ed7aba77
CMSIS KL46 files (were KL25 renamed)
2013-10-17 19:32:40 +02:00
Andreas Rebert
a0a6cbe1d3
Merge branch 'master' into lpc4088
2013-10-11 14:02:59 +02:00
Andreas Rebert
a574fd73b3
Bugfixes for I2C and port impl
2013-10-11 14:01:49 +02:00
0xc0170
122f24b83f
Update: Merge branch 'master' into freedomKL46Z
...
Conflicts:
workspace_tools/targets.py
2013-10-06 18:55:32 +02:00
Joris Aerts
7ed6acb08a
Move pwmout_api.c/PeripheralNames.h to LPC11XX_11CXX common
...
Because CT32B1 (P1_1, P1_2 and P1_3) is used by us_ticker.c for wait and ticker function. Since wait/ticker is commonly used by mbed code and I decided CT32B1 of LPC11XX should only be used for this function, not for PwmOut.
P1_6 and P1_7 are used by UART (USBTX/USBRX) and I think they should not be assigned to other function.
2013-09-30 08:11:56 -07:00
Joris Aerts
4d0c864b16
Move adc_pinmap.h to LPC11XX_11CXX common
...
Merge back into analog_api.c. P1_3/ADC0_4 (SWDIO) now disabled for both targets
2013-09-30 08:07:26 -07:00
0xc0170
8df14cadc9
scatter file - 32kb RAM, startup - removed heap, stack init
...
- clock set to 1 (external crystal)
2013-09-29 22:36:50 +02:00
0xc0170
5dcd8ea10e
ARM (KEIL) files for KL46Z
2013-09-29 20:40:06 +02:00
0xc0170
b83fd7fb3b
MUX corrections, Arduino Analog signals
...
- added new MUX options to all drivers
- removal of LED which are not there
- analog arduino R3 signals were switched
2013-09-29 20:04:56 +02:00
0xc0170
2ca3195b17
NVIC offset and address in RAM correction
2013-09-29 18:53:57 +02:00
Joris Aerts
e1967755a5
Move spi_pinmap.h to LPC11XX_11CXX common
...
Merge back into spi_api.c. P0_10/SPI_0 (SWCLK) now disabled for both targets
2013-09-27 19:10:08 -07:00
Joris Aerts
e9f5c8d3ca
Move README.md to LPC11XX_11CXX common
2013-09-27 18:56:11 -07:00
Joris Aerts
3fe31ad50e
Move objects.h to LPC11XX_11CXX common
...
Use #if DEVICE_CAN for can_s definition
2013-09-27 18:53:19 -07:00
Bogdan Marinescu
f580c008b1
Merge pull request #78 from mconners/master
...
Added KL46Z support
2013-09-25 03:18:49 -07:00
Bogdan Marinescu
8f57c1e847
Merge remote-tracking branch 'github/master'
2013-09-25 10:27:17 +01:00
Bogdan Marinescu
1e224c5152
Fix RAM size for LPC11C24 in ARM/uARM linker command files
2013-09-25 10:18:43 +01:00
Bogdan Marinescu
30907d7772
Refactor LPC1114 and LPC11C24 code
...
Since most of the code for LPC1114 and LPC11C24 is similar, refactor the
code structure to avoid duplication of the common code.
2013-09-25 10:17:19 +01:00
Michael Conners
5bd25ac046
Added K20D5M support
2013-09-24 10:36:04 -04:00
Michael Conners
afcc79ad27
Added KL46Z support
2013-09-24 10:01:06 -04:00
Andreas Rebert
bb35d16521
Merged bugfixes and improvments for LPC1768 target to LPC4088 target
2013-09-23 11:39:52 +02:00
Bogdan Marinescu
f2f7b213cd
Merge pull request #75 from jorisa/master
...
Keep LPC11CXX in sync with LPC11XX
2013-09-20 01:53:40 -07:00
Emilio Monti
38ed9eb6a0
Merge pull request #72 from jorisa/master
...
Split uVision project source files in groups mbed/hal/src
2013-09-19 01:46:53 -07:00
Bogdan Marinescu
81b372d362
Merge pull request #73 from ytsuboi/master
...
Fixed LPC1114 ADC offset problem
2013-09-19 01:35:42 -07:00
Toyomasa Watarai
866858a816
Fixed LPC1114 ADC offset problem
2013-09-19 16:19:04 +09:00
Toyomasa Watarai
f4bfe5aedb
Revert "Fixed ADC offset problem"
...
This reverts commit 399acd1d6f
.
2013-09-19 16:16:52 +09:00
Toyomasa Watarai
399acd1d6f
Fixed ADC offset problem
2013-09-19 16:16:05 +09:00
Joris Aerts
a4badc7dd2
Keep LPC11CXX in sync with LPC11XX
...
Only differences in CMSIS now are:
* Top of RAM (0x10001000 vs 0x10002000)
* Clock configuration (IRC/System PLL vs System Oscillator/IRC)
2013-09-18 18:54:53 -07:00
Joris Aerts
979bba6864
Don't call mbed_interface_disconnect when DEVICE_SEMIHOST is disabled
2013-09-18 14:10:29 -07:00
Joris Aerts
c275ef3b3d
Replace #ifdef with #if DEVICE_STDIO_MESSAGES
...
DEVICE_STDIO_MESSAGES is the only #define in device.h that is being used in the library as #ifdef rather than #if. This is misleading since setting it to 0 will not disable including the <stdio.h> libraries.
2013-09-17 18:19:22 -07:00
Adam Green
5eb976a088
Fix _sbrk() implementation for Cortex-M parts.
...
A recent commit, 43acaa4166
, to get _sbrk() to build successfully for
LPC2368 broke the Cortex-M implementation. __get_MSP() isn't ever
defined as a macro, it is an inline function. This means that the
code would always be compiled to use SP instead of MSP on Cortex-M
parts. I switched the code to instead use the TARGET_ARM7 define
to choose which stack pointer to utilize.
I tested this fix by making sure that the LPC2368 version of the mbed
SDK would still build successfully with the Python scripts and that the
NET1 test still built and ran successfully on my mbed-LPC1768 device.
2013-09-17 04:29:35 -07:00
Emilio Monti
96ea3db1b3
Merge pull request #66 from dinau/lpc2368_mod
...
LPC2368 mod
2013-09-16 08:00:20 -07:00
dinau
efbc52465d
LPC2368 [GCC_ARM]: Silence some warnings.
2013-09-13 22:01:21 +09:00
dinau
43acaa4166
LPC2368 [GCC_ARM]: Fixed: Compilation and link errors in case "SD" example.
2013-09-13 22:01:19 +09:00
Emilio Monti
2481fbe2a2
Merge pull request #62 from arebert/lpc4088
...
LPC4088: PIN mode fix, export to external tools and MAC address retrieval
2013-09-13 05:59:14 -07:00
Erik Olieman
94ff741989
LPC1768 InterruptIn speedup
...
Use __CLZ to speed up GPIO interrupt processing.
2013-09-11 18:46:18 +03:00
Bogdan Marinescu
171dda705c
Merge pull request #63 from jorisa/master
...
Fix hardfault when attaching callback to CAN2 when CAN1 is not defined
2013-09-10 03:22:55 -07:00
Joris Aerts
efd3d8d8e0
Fix hardfault when attaching callback to CAN2 when CAN1 is not defined
...
Fault is triggered by trying to read LPC_CAN1->IER when the peripheral is powered off. Fixed by checking the power control register before checking the IER register.
2013-09-09 09:06:04 -07:00
Bogdan Marinescu
cfa6a1d912
Merge pull request #61 from ytsuboi/master
...
Fixed problem in PWMOUT mapping table
2013-09-09 08:22:11 -07:00
Andreas Rebert
00cfdbad2a
Merge remote-tracking branch 'upstream/master' into lpc4088
2013-09-09 14:13:08 +02:00
unknown
0e36bdd457
Bugfix: PIN Modes was not set correctly
...
Added: Export to uVision and Code Red toolchains
2013-09-09 14:10:11 +02:00
Bogdan Marinescu
1f243a900c
Merge remote-tracking branch 'github/master'
2013-09-09 12:31:42 +03:00
Bogdan Marinescu
fded46b459
[LPC1768] Fix serial_clear
...
serial_clear() erroneously disabled the UART FIFOs.
Reported by Adam Green.
2013-09-09 12:28:11 +03:00
Toyomasa Watarai
d0d2df3ce5
Fixed problem in PWMOUT mapping table
...
Fixed problem in PWMOUT output issue.
Startup code cean-up (correced exception names).
Corrected test cases.
2013-09-09 18:15:51 +09:00
Bogdan Marinescu
d51411294f
Merge pull request #57 from adamgreen/serialTxDropsRx
...
serial_putc() can cause rx bytes to be dropped
2013-09-09 01:19:29 -07:00
Joris Aerts
743e178455
Fix MASKED_ACCESS bug in gpio_init, now same as LPC11xx (Also use PIN_SHIFT instead of magic number 8 in gpio_set)
2013-09-08 18:57:40 -07:00
Adam Green
5d27f98c7b
serial_putc() can cause rx bytes to be dropped
...
While fixing this issue in the various LPC* ports, I noticed a comment
pointing to this mbed forum post which summarizes this bug quite well:
https://mbed.org/forum/bugs-suggestions/topic/4473/
This bug was introduced in the following commit:
2662e105c4
The following code was added to serial_putc() as part of this commit:
uint32_t lsr = obj->uart->LSR;
lsr = lsr;
uint32_t thr = obj->uart->THR;
thr = thr;
As the forum post indicates, this causes the serial_putc() routine to
actually eat an inbound received byte if it exists since reading THR is
really reading the RBR, the Receiver Buffer Register. This code looks
like code that was probably added so that the developer could take a
snapshot of these registers and look at them in the debugger. It
probably got committed in error.
2013-09-07 00:44:44 -07:00
Bogdan Marinescu
423f1abd63
Fix startup files for various versions of LPC11Uxx
...
LPC11U24/LPC11U24_301/LPC11U35_401 shared the same startup file for ARM
and uARM toolchains, which is wrong, because the initial SP value is
different for LPC11U24_301. This commit fixes this issue by giving each
target its own startup file.
2013-09-06 11:50:52 +03:00
Bogdan Marinescu
95f6826196
Refactor code for LPC810/LPC812
...
There were lots of overlaps in the code for LPC810 and LPC812, including
duplicated source files. This commit adds a TARGET_LPC81X_COMMON folder in
both HAL and CMSIS, this folder keeps common code for the targets.
2013-09-05 19:00:19 +03:00
Bogdan Marinescu
233979e88f
Merge pull request #54 from ytsuboi/master
...
Added LPC810 support
2013-09-05 07:00:17 -07:00
Bogdan Marinescu
ae16d3efa8
Fix NULL pointer indirection in FilePath
...
If the FileBase::lookup operation in the constructor of FilePath returns
NULL, subsequent operations (such as isFile()/isFileSystem()) will call
methods on a NULL 'fb' pointer. This commit fixes this issue by adding
explicit NULL checks and a new method in FilePath (exists()).
2013-09-05 14:09:27 +03:00
ytsuboi
46003d4c3c
Merge remote-tracking branch 'upstream/master'
2013-09-05 13:01:12 +09:00
Abe Karplus
96101aed32
Added complete PwmOut mappings for KL25Z
2013-09-04 15:52:58 +03:00
Bogdan Marinescu
45565cb055
Merge pull request #48 from adamgreen/gccRetargetSbrk
...
gcc: Provide _sbrk implementation compatible with RTX
2013-09-04 01:12:31 -07:00
ytsuboi
0718c7671a
Merge remote-tracking branch 'upstream/master'
2013-09-03 19:38:34 +09:00
dinau
8503ccb7a3
LPC2368 [GCC_ARM, GCC_CR]:
...
1. Added: GCC_CR toolchain ID for LPC2368. (targets.py)
2. Modified: Startup codes for GCC_ARM and GCC_CR toolchain.
3. Verified: "ticker" and "basic" test program work well, so far.
(Fixed typo.)
2013-08-31 16:00:40 +09:00
dinau
7bcdf0b980
LPC2368 [GCC_ARM, GCC_CR]:
...
1. Added: GCC_CR toolchain ID for LPC2368. (targets.py)
2. Modified: Startup codes for GCC_ARM and GCC_CR toolchain.
3. Verified: "ticker" and "basic" test program works well, so far.
2013-08-31 13:33:34 +09:00
Adam Green
9e6d1683b8
gcc: Provide _sbrk implementation compatible with RTX
...
I verified that the hang issue I was seeing when building and running
the mbed official networking tests with GCC_ARM was related to this
issue reported on the mbed forums:
http://mbed.org/forum/mbed/topic/3803/?page=1#comment-18934
If you are using the 4.7 2013q1 update of GCC_ARM or newer then it
will have a _sbrk() implementation which checks the new top of heap
pointer against the current thread SP, stack pointer.
See this GCC_ARM related thread for more information:
https://answers.launchpad.net/gcc-arm-embedded/+question/218972
When using RTX RTOS threads, the thread's stack pointer can easily
point to an address which is below the current top of heap so this
check will incorrectly fail the allocation.
I have added a _sbrk() implementation to the mbed SDK which checks the
heap pointer against the MSP instead of the current thread SP. I have
only enabled this for TOOLCHAIN_GCC_ARM as this is the only GCC based
toolchain that I am sure requires this.
2013-08-30 18:15:25 -07:00
Bogdan Marinescu
1798920cf4
Merge remote-tracking branch 'github/master'
2013-08-30 12:26:37 +03:00
Bogdan Marinescu
e870a90ff2
Added toolchain hooks and support for LPC4088_EA binary generation
...
A new hooks mechanism (hooks.py) allows various targets to customize
part(s) of the build process. This was implemented to allow generation of
custom binary images for the EA LPC4088 target, but it should be generic
enough to allow other such customizations in the future. For now, only the
'binary' step is hooked in toolchains/arm.py.
2013-08-30 12:19:08 +03:00
dinau
841ce1d719
Fixed: The issue of interrupt vector remapping for GCC_ARM LPC1114
2013-08-29 21:40:57 +09:00
dinau
97d92789ec
Fixed: The issue of interrupt vector remapping for GCC_ARM LPC1114
2013-08-28 23:29:16 +09:00
Bogdan Marinescu
2cdd41d9b1
Added support for LPC11U24/_301 and LPC11U35_401 in uARM
2013-08-27 15:31:47 +03:00
Bogdan Marinescu
9a270999d0
Added support for LPC11U35_401 in ARM and GCC_ARM
2013-08-27 15:19:01 +03:00