Commit Graph

1008 Commits (dd71fab893892a11e3cc82b3b40714922b823099)

Author SHA1 Message Date
Bogdan Marinescu dd71fab893 Merge pull request #418 from lionleaf/master
Bugfix: Make redirected stdio write initialize UART
2014-07-31 13:43:15 +01:00
Bogdan Marinescu 490d1a6606 Merge pull request #417 from Sissors/master
[LPC1114] Sleep fix + some device.h settings
2014-07-29 18:48:52 +01:00
Andreas Løve Selvik f3de4bc529 Bugfix: Make redirected stdio write initialize UART
Calling a scanf before the first printf would end up calling serial_getc without initializing the UART.
2014-07-29 11:47:46 +02:00
Sissors a545702123 Sleep fix + some device.h settings
LPC1114 has no semihosting and also no localfilesystem. I took the
liberty of guessing the LPC11Cxx also don't have those.

Sleep code did nothing outside of locking up the microcontroller
(because semihosting was enabled). Code seems to be copied from
LPC11u24, but the LPC1114 is fundamentally different. (For example
deep-sleep bit is now the deep-powerdown bit, which you dont want).

Aditionally it keeps current peripheral state during deepsleep and when
waking up. Datasheet rates LPC1114 at 6uA in deepsleep, I measured it at
3.7uA. That makes me a happy panda.
2014-07-28 21:14:57 +02:00
sg- 8c41ea4aae Had duplicate set of api drivers in the directory - deleted
added define guards to xxxxx_api.c files for device.h peripheral gating
2014-07-28 12:46:50 -05:00
Bogdan Marinescu 928b206625 Merge pull request #413 from lindvalla/fix_spi_on_lpc1549
Fixed three issues with the SPI driver for the LPC1549 platform:
2014-07-24 11:45:56 +01:00
sg- 8dda44c302 moved PeripheralNames.h to target folder (set new target values to 0)
Moved peripheral PinMap declarations to PeripheralPins.c
Deleted duplicate mbed_overrides.c
2014-07-23 11:32:30 -05:00
sg- e479081dab Merge branch 'master' of https://github.com/mbedmicro/mbed 2014-07-23 08:33:42 -05:00
Anders Lindvall ea510ce162 Fixed three issues with the SPI driver for the LPC1549 platform:
* The TXDATCTL register was used even if only the control signals were
  modified which caused extra data to be transmitted.

* The RXDAT register does not only contain the received data, but also
  control information in bits 16 to 20. The old code did not mask out
  the control information and in rare cases that would cause the returned
  data to include too much information (i.e. received 0xaa as data but the
  function returned 0x300aa).

* The LPC1549 uses a Switch Matric (SWM) to allow any pin to have any
  function. This is not used in the old code which simply assigned
  the first instance of the SPI class to SPI0 and the second instance to
  SPI1. The third instance would result in a call to error().

  This behaviour is not at all working with real world examples where the
  SPI bus contains more than two peripherals. The third peripheral would
  cause the platform to end up in error().

  The solution is to modify the get_available_spi() function to first see
  if the MISO/MOSI/SCLK and SSEL pins are already configured for use as
  either SPI0 or SPI1. If the exact same pins are already used then the
  SPIx will be reused. If one or more pins are different then another
  SPIx will be used (or if both are alredy in use then error()). With this
  change it is now possible to do this:

  MyFlash      f(D11,D12,D13);      // Will use SPI0
  MyTemp       t(D11,D12,D13);      // Will use SPI0
  SDFileSystem s(D11,D12,D13,"sd"); // Will use SPI0
  MyDisplay    d(D11,D12,D13);      // Will use SPI0

  The old/existing code would have resulted in this

  MyFlash      f(D11,D12,D13);      // Will use SPI0
  MyTemp       t(D11,D12,D13);      // Will use SPI1
  SDFileSystem s(D11,D12,D13,"sd"); // error()
  MyDisplay    d(D11,D12,D13);      // Will never be called
2014-07-23 10:15:14 +02:00
0xc0170 f56f37528d Merge branch 'master' of https://github.com/Sissors/mbed into Sissors-master 2014-07-23 08:42:17 +01:00
sg- d35532b11a Remove testing text 2014-07-22 09:17:34 -05:00
sg- 67a3183567 Add new platform. Based on K64F. 2014-07-22 09:15:52 -05:00
Mihail Stoyanov 55f9b014de Add GHI_MBUINO target support 2014-07-22 11:12:05 +03:00
Sissors dc7155634a Bugfix for KLxx/K20 pwm period
Period is MOD + 1, so needs to add/substract 1 in the correct places
2014-07-21 19:03:07 +02:00
Martin Kojtal f971aef913 Merge pull request #407 from fritzprix/master
[Nucleo, Discovery] Add default heap size( 1 KB) for Nucleo F401RE, DISCOVERY 407
2014-07-21 08:32:31 +01:00
Toyomasa Watarai 5a49448226 [LPC1549] Fixed SPI frequency issue
Fixed SPI frequency issue when new frequency is not divided by system
clock.
Optimized power/clock setting code.
Some code refactoring.
2014-07-20 23:04:43 +09:00
Mihail Stoyanov 787da10f72 RedBearLab NRF51822 target support 2014-07-19 18:57:26 +03:00
DooWoong Lee d1fc90fd50 Update startup_stm32f401xe.s
revert new change into what it was previously
2014-07-19 00:00:55 +09:00
Martin Kojtal df84f2b3e9 Merge pull request #404 from xiongyihui/master
New ARCH_GPRS target
2014-07-18 14:09:41 +01:00
fritzprix 8c7e738263 - fix some type mismatch which causes error in build time 2014-07-17 23:38:34 +09:00
fritzprix e3018e766b - Add Default Heap Size 2014-07-17 23:37:11 +09:00
Martin Kojtal 41b8b1d364 Merge pull request #405 from micromint/master
[LPC4330_M4] Change case of include file for case sensitive builds
2014-07-17 06:26:17 +02:00
jesusalvarez 1e53bb8054 Change case of LPC43xx include file for case sensitive toolchains 2014-07-16 13:15:21 -04:00
Yihui Xiong 76f1eb949b add ARCH_GPRS target 2014-07-16 18:34:20 +08:00
tkuyucu 9f0849d0ea Merge remote-tracking branch 'upstream/master' 2014-07-15 16:21:12 +02:00
Sigve Sebastian Farstad ae4d94584b Fix erroneous boolean expression conversions
In fb90157c9a, asserts were introduced
changing the error checking style in large portions of the code base
from `if(error_condition) fail();` to `assert(!error_condition);`. In
doing so, not all boolean conditions were negated properly. This commit
restores the original semantics of the error checks as they were before
fb90157, (unless an error check has been changed upstream, in which
case it is ignored).

The practical effects of this commit is that it should restore proper
I2C and SPI functionality on the LPC15XX and nRF51822, respectively.
2014-07-15 15:24:30 +02:00
Martin Kojtal 2031512f69 Merge pull request #400 from micromint/master
[LPC4330] Updated LPC4330_M4 port
2014-07-15 07:35:28 +01:00
jesusalvarez e84df816c4 Restored assert on gpio_object.h. Added export template for GCC ARM Embedded (TOOLCHAIN_GCC_ARM) 2014-07-14 10:05:37 -04:00
jesusalvarez 9b8711ea45 Update LPC4330_M4 README 2014-07-11 15:13:54 -04:00
jesusalvarez 4e82296c05 Updates to LPC4330_M4 drivers 2014-07-11 14:48:25 -04:00
0xc0170 0de2a8946d [K20D50M] GPIO IRQ - CLZ to get position in irq handler 2014-07-10 14:43:25 +01:00
0xc0170 cf645e8fa1 [K20D50M] K20D50M - correct target name 2014-07-10 13:46:38 +01:00
0xc0170 79ee368366 [K20D50M] PinNames correction, UART pins definitions, GPIO IRQ speed up (as KLxx) 2014-07-10 13:23:48 +01:00
Sissors 699c1782d5 Increased KLxxZs interrupt handling speed
Instead of checking one bit at a time use a simple binary search
algorithm. Speed increase is roughly 250% (bit more for KL46).
2014-07-09 21:52:25 +02:00
Rohit Grover 9413ed9163 provide default initialization of some local variables in serial_api.c:serial_format() 2014-07-09 10:52:37 +01:00
Rohit Grover aae8513739 changes needed to support V7 of the nRF51822 soft-device 110 2014-07-08 16:42:47 +01:00
Martin Kojtal 09251dd3ba Revert "error.h -> mbed_error.h" 2014-07-08 14:04:50 +02:00
0xc0170 f7f77392d9 error header file rename to mbed_error.h 2014-07-04 08:05:49 +02:00
Bogdan Marinescu f04e12eeda Bumped revision number 2014-07-02 12:53:38 +01:00
Bogdan Marinescu 69befae949 Merge pull request #384 from bcostm/master
[NUCLEO_L053R8] Fix ticker issue
2014-07-02 09:24:17 +01:00
bcostm 776b044262 [NUCLEO_L053R8] Remove call to SystemClockUpdate function.
It's ok to remove this call on this target because the same system clock
frequency is used with HSE and HSI clocks.
2014-07-02 09:18:42 +02:00
bcostm b8633eef38 [NUCLEO_L053R8] Fix ticker issue 2014-07-01 15:58:49 +02:00
dbestm 448f40a902 [NUCLEO_L152RE] enhance I2C for EEPROM 2014-07-01 14:58:43 +02:00
dbestm 35c391ba63 [NUCLEO_F411RE] enhance I2C for EEPROM 2014-07-01 14:49:20 +02:00
dbestm 7b6a59a068 [NUCLEO_F334R8] enhance I2C for EEPROM 2014-07-01 14:36:32 +02:00
dbestm 7b4bcd6eaf [NUCLEO_F030R8] enhance I2C for EEPROM 2014-07-01 14:15:07 +02:00
dbestm 2af0e5b5fc [NUCLEO_F103RB] enhance I2C for EEPROM 2014-07-01 14:06:22 +02:00
dbestm 372a0ae662 [NUCLEO_F302R8] enhance I2C for EEPROM 2014-07-01 13:54:41 +02:00
dbestm 32e5859bed [NUCLEO_F072R8] enhance I2C for EEPROM 2014-07-01 11:11:16 +02:00
dbestm a85701deae [NUCLEO_L053R8] enhance I2C to make it works with EEPROM 2014-07-01 10:32:18 +02:00