Adam Green
692e666ced
Silence signed/unsigned comparison warnings in GCC.
...
i2c_frequency() compares a uint32_t ref variable to the int hz
function parameter passed in by the caller. I forced this to be an
uint32_t comparison.
i2c_slave_write() declared i and count variables to be of type uint32_t
but used them as int type throughout the code (in comparisons and
returns) so I switched them to be of signed int type.
spi_frequency() contains a change similar to that made in
i2c_frequency().
2013-08-13 01:47:20 -07:00
Adam Green
461a3dd0d2
Cast to matching enumeration type instead of uint32_t
...
This commit targets the KL25Z code, whereas previous ones targetted
similar issues in the LPC1768 and LPC11U24 mbed HAL code.
These changes were made to silence GCC warnings and fix potential bugs
where they would never be equal when the enumeration wasn't a 32-bit
type.
For example, pinmap.c used to contain this code:
if (pin == (uint32_t)NC) return;
I switched it to:
if (pin == (PinName)NC) return;
I wonder why this casting to uint32_t was done in the first place?
Maybe another supported compiler requires it?
2013-08-13 01:47:20 -07:00
Adam Green
cc56997a70
Cast to matching enumeration type instead of uint32_t
...
This commit targets the LPC11U24 code, whereas a previous one
targetted similar issues in the LPC1768 mbed HAL code.
These changes were made to silence GCC warnings and fix potential bugs
where they would never be equal when the enumeration wasn't a 32-bit
type.
For example, pinmap.c used to contain this code:
if (pin == (uint32_t)NC) return;
I switched it to:
if (pin == (PinName)NC) return;
I wonder why this casting to uint32_t was done in the first place?
Maybe another supported compiler requires it?
2013-08-13 01:47:19 -07:00
Adam Green
8fe7276b98
Silence signed/unsigned comparison warnings in GCC.
...
Why do the wait APIs take a signed integer if they are going to be
compared to unsigned quantities?
2013-08-13 01:47:19 -07:00
Adam Green
c411823656
Fix operator precedence warning in can_api.c
...
The original code was:
if(LPC_CAN1->IER | LPC_CAN2->IER != 0) {
This would actually be interpreted as:
if(LPC_CAN1->IER | (LPC_CAN2->IER != 0)) {
I simplified it to:
if(LPC_CAN1->IER | LPC_CAN2->IER) {
With the comparison removed, the GCC warning no longer fires since the
user's intent is no longer unclear. However, the end result should be
the same.
2013-08-13 01:47:19 -07:00
Adam Green
15f833bc1b
Cast to matching enumeration type instead of uint32_t
...
These were done to silence GCC warnings and fix potential bugs where
they would never be equal when the enumeration wasn't a 32-bit type.
For example, common/pinmap_common.c used to contain this code:
if (pin == (uint32_t)NC)
I switched it to:
if (pin == (PinName)NC)
I wonder why this casting to uint32_t was done in the first place?
Maybe another supported compiler requires it?
2013-08-13 01:47:19 -07:00
Bogdan Marinescu
1a47a218a4
[KL25Z] Fixed counter type for i2c_read operations.
2013-08-12 12:31:05 +03:00
Emilio Monti
0843613136
Add LPC11U24/301 TARGET
2013-08-09 17:21:03 +01:00
Andreas Rebert
75dba19438
Updated pin mapping and CAN HAL for LPC4088 target
2013-08-08 13:57:02 +02:00
Bogdan Marinescu
3b465de3aa
Changed line endings to LF, removed non-ASCII chars from sources
2013-08-08 12:58:34 +03:00
Bogdan Marinescu
3f703f1bf0
[LPC11C24] Make code compatible with the interrupt chaining code
2013-08-07 15:24:30 +03:00
Bogdan Marinescu
9ee1fc9f55
[KL25Z] Fix I2C issue related to the silicon errata.
...
Makes a difference when running the I2C EEPROM test at 400KHz, which has a 100%
success rate after this change.
2013-08-07 14:49:11 +03:00
Bogdan Marinescu
6c05438993
Interrupt chaining: added documentation, fixed a synchronization issue in CallChain.
2013-08-07 14:46:40 +03:00
Bogdan Marinescu
d399e51bfd
Interrupt chaining: now working on all targets.
...
Tested on LPC1768, LPC11U24, KL25Z, LPC2368.
2013-08-07 14:43:36 +03:00
Bogdan Marinescu
43d4445074
Interrupt chaining: preliminary version
2013-08-07 14:43:26 +03:00
Bogdan Marinescu
1e8e50996c
[KL25Z] Restore full SPI pin mappings
2013-08-07 14:42:02 +03:00
Bogdan Marinescu
58fd85fc6f
Add support for calling a function before main()
...
The name of the function is mbed_main.
Fixes PRMBED-906.
2013-08-07 14:39:13 +03:00
Emilio Monti
1142df8cfd
Merge pull request #22 from matthewelse/anotherpullrequest
...
PWM Patch Pull Request
2013-08-07 02:20:51 -07:00
Matthew Else
e1eb357c53
Added changes to PWM API from LPC1114 to LPC11C24
2013-08-07 09:45:47 +01:00
Matthew Else
b437a3ca22
Removed can_api.c from TARGET_LPC11CXX, as it's not ready for pull request yet.
2013-08-07 09:43:28 +01:00
Toyomasa Watarai
0c0b51f663
Fixed pwm_api bug
...
Corrected pwm_timer_map table for LPC1114
2013-08-07 16:24:58 +09:00
0xc0170
6127ed3bb7
KL25Z adc channels A
...
- only channels B were available
2013-08-06 21:21:03 +02:00
Matthew Else
548d18ebd7
Pull in changes to the main mbed code base.
2013-08-06 20:04:32 +01:00
Matthew Else
d29ebefbd9
Begin to add can_api.c to LPC11C24 codebase. Not complete yet, which is why it's #if 0ed out. Lots of build errors come up if #if0 isn't there, which is why it is for now.
2013-08-06 17:41:31 +01:00
Emilio Monti
e42786649f
The LPC1347 board does not have an interface chip
2013-08-06 16:36:03 +01:00
Matthew Else
45470aba31
Updated READMEs
2013-08-06 15:09:41 +01:00
Matthew Else
4401516f14
Removed unnecessary core_cm* files, as they are now shared in cmsis
2013-08-06 15:06:28 +01:00
Matthew Else
bf02700a32
Merge https://github.com/jorisa/mbed
2013-08-06 09:43:52 +01:00
Matthew Else
f7a2be4bed
Merge remote-tracking branch 'upstream/master'
2013-08-06 09:42:09 +01:00
Joris Aerts
c747e2533f
Rename some argument and enum names to match existing naming
...
Add CAN->mode(Mode mode) function (not implemented in hal)
2013-08-05 17:28:27 -07:00
emilmont
4f03cd09b8
Remove undefined peripherals
2013-08-05 22:09:32 +01:00
0xc0170
e1af24c1f2
Spaces correction
2013-08-05 19:06:22 +02:00
Matthew Else
ef28879863
Merged remote tracking branch 'upstream/master'
2013-08-05 17:22:01 +01:00
Matthew Else
2c45596673
Merge https://github.com/jorisa/mbed
2013-08-05 17:11:58 +01:00
Matthew Else
7c8c7228c8
Pushed LPC1114 I2C updates to the LPC11C24
2013-08-05 17:09:22 +01:00
0xc0170
3c0775f5c3
More pin mux options for KL25Z
...
- as reported in mbed bug section, add all available mux options
2013-08-04 21:33:06 +02:00
0xc0170
e993e94886
Update kl25z_gcc_arm branch to latest master
2013-08-04 19:21:04 +02:00
0xc0170
08beebcd83
RAM region shifted by 0xC0 for vectors
2013-08-02 22:32:41 +02:00
0xc0170
0d6bec9d8c
LD - space reserved for vectors in RAM
2013-08-02 21:08:29 +02:00
Emilio Monti
8562b3660b
Add LPC1347 export templates. Cleanup GCC toolchain check.
2013-08-02 17:56:11 +01:00
0xc0170
48ee225d1f
vectors and flash protection area are separated
2013-08-02 18:01:49 +02:00
Emilio Monti
54893092c3
Merge pull request #17 from matthewelse/forpullrequest
...
LPC1114 Port Pull Request
2013-08-02 08:56:44 -07:00
matthewelse
7827d62504
Added alternative DIP package names for pins in the LPC1114
...
Added this so it is consistent with the notebook page.
2013-08-02 10:38:05 +01:00
0xc0170
afab75fd01
only one flash memory (FLASH)
2013-08-02 07:14:36 +02:00
Joris Aerts
f685efa9b2
Merge remote-tracking branch 'upstream/master'
2013-08-01 17:24:20 -07:00
Matthew Else
789f81b1ea
Removed extra core_* files that are no longer needed. Makes Emilio more happy.
2013-08-01 22:54:52 +01:00
Matthew Else
d899612525
Merge branch 'forpullrequest'
2013-08-01 16:25:28 +01:00
Matthew Else
0f7ece02a8
Fixed I2C API
2013-08-01 16:23:13 +01:00
Matthew Else
df5c36a9ae
Uncommented i2c_wait_SI(obj), as it should not have been commented out.
2013-08-01 16:04:18 +01:00
Matthew Else
dc68b76d0f
Added timeout for i2c_stop in LPC1114 target.
2013-08-01 15:46:05 +01:00
Joris Aerts
a16dc72272
Add @param documentation for new event parameter
...
Add clear irq to attach() template function
Call irq_handler for every interrupt set
2013-07-31 10:45:28 -07:00
Joris Aerts
63b2b271d1
Refactor CAN interrupt handling to LPC176X HAL implementation
...
Add handlers for other CAN interrupt events
Changed CAN private entities to protected
2013-07-31 07:26:32 -07:00
0xc0170
33c096c9d0
Initial version of a ld and a startup for KL25Z ARM GCC
2013-07-31 10:19:18 +02:00
Joris Aerts
8ef8aac36e
Merge remote-tracking branch 'upstream/master'
2013-07-30 19:16:34 -07:00
Joris Aerts
51bfe267f4
Add can_t->index to struct and set it during can_init
2013-07-30 15:17:40 -07:00
Matthew Else
07cddbf038
Merge remote-tracking branch 'upstream/master'
2013-07-30 12:01:49 +01:00
Bogdan Marinescu
df5a993197
__cxa_pure_virtual changes
...
- rename stdio.cpp to retarget.cpp, since it doesn't contain only stdio-related
code
- move __cxa_pure_virtual from exit.c to retarget.cpp where it belongs.
2013-07-29 18:54:22 +03:00
Bogdan Marinescu
1cd95c2467
[KL25Z] Fix clock generation for I2C and SPI
...
Don't set a clock higher than the one requested for the I2C and SPI interfaces,
even if this setting is the closest to the requested one. This was causing
some issues with the EEPROM test and possibly other issues with the SPI SD test.
2013-07-29 18:20:04 +03:00
Bogdan Marinescu
48d41016cd
Added armcc support for STM32F407
2013-07-29 18:15:04 +03:00
Bogdan Marinescu
5655d2fc2a
Fix for the previous "change vector table relocation check" commit.
2013-07-29 18:13:38 +03:00
Bogdan Marinescu
beed7117ad
Add __cxa_pure_virtual to avoid pulling in functions from the C++ library
...
Fixes PRMBED-859
2013-07-29 18:13:37 +03:00
Bogdan Marinescu
14409cd7fd
Change the check for vector table relocation
...
Allows the user to specify his own VTOR location.
Fixes PRMBED-1065.
2013-07-29 18:13:37 +03:00
matthewelse
429d2e61eb
Enabled CAN for LPC11CXX in device.h
2013-07-29 10:59:18 +01:00
Matthew Else
200b263dcd
Added basic stuff necessary to compile for LPC11C24 target.
2013-07-27 18:12:35 +01:00
ytsuboi
a9f0d9a3f7
[LPC1114]: uARM fixed
...
Tested with only "[ 32] MBED_11: Ticker"
2013-07-27 02:06:12 +09:00
Matthew Else
8c2ede6f4f
Merge remote-tracking branch 'upstream/master'
2013-07-26 15:50:59 +01:00
Emilio Monti
5f0bd9d283
Update ARM toolchain symbols
2013-07-26 15:49:00 +01:00
Matthew Else
153153f261
Added serial_break_clear/serial_break_set
...
Fixes #24
2013-07-26 11:44:09 +01:00
Matthew Else
3172fd97ca
Fix both edge bug in gpio_irq_api.c
...
Fixes #22
2013-07-26 09:41:20 +01:00
Matthew Else
a356553c7d
Fixed incorrect use of static in port_api.c
...
This was causing errors when compiling in GCC_ARM
2013-07-25 16:01:45 +01:00
Matthew Else
c3ebd47071
Tidying up gpio_irq_api.c
2013-07-25 10:43:49 +01:00
Matthew Else
a7ba27618d
Fixed bug in gpio_irq_api
...
Test interruptin now works. Fixes #16
2013-07-25 10:26:46 +01:00
Matthew Else
df067bd4e9
Complete support for GPIO interrupts.
2013-07-24 16:02:01 +01:00
Matthew Else
3d08be9700
Attempt to fix the interrupts problem.
2013-07-24 11:00:07 +01:00
Toyomasa Watarai
a125a25a97
Implemented PortIn, PortOut and PortInOut API #8
...
Followingt test cases have been passed:
* PortOut (#24 )
* PortOut PortIn (#9 )
* PortInOut (#8 )
2013-07-24 18:37:12 +09:00
matthewelse
d67d4f7fc1
Create README.md
2013-07-23 15:54:13 +01:00
Matthew Else
55f91f1da8
Fixed errors in gpio_irq_api.c
2013-07-23 15:44:24 +01:00
Matthew Else
c56d1a5236
Fully implemented GPIO_IRQ
...
* Removed unused variables/comments.
* As of yet, untested...
2013-07-23 15:35:38 +01:00
Matthew Else
819ca5547c
Removed extraneous comment from the function
2013-07-23 14:21:40 +01:00
Matthew Else
8011992021
Fully implemented gpio_irq_set
2013-07-23 14:19:33 +01:00
Matthew Else
fea818fccb
Updates to interrupt handling
2013-07-22 13:56:56 +01:00
Matthew Else
1da8e8a2c7
Started to implement gpio_irq_set
2013-07-22 13:30:00 +01:00
Matthew Else
4cf6f09411
Enabled the interrupts api to compile
2013-07-22 12:46:46 +01:00
Toyomasa Watarai
2a989551aa
Fixed gpio_api
...
Corrected base address of GPIO port register
2013-07-22 18:53:45 +09:00
Matthew Else
1097af7091
Added DIP package pins to PinNames.h
2013-07-22 09:30:47 +01:00
Toyomasa Watarai
1781d58249
Merge branch 'master' of https://github.com/matthewelse/mbed
2013-07-22 15:13:13 +09:00
Toyomasa Watarai
b172cd866c
More fix for uARM build to avoid link error
2013-07-22 15:12:42 +09:00
ytsuboi
ca31bda530
Removed printf debug lines
2013-07-22 14:55:19 +09:00
Toyomasa Watarai
b4de4503a8
Fixed uARM build
...
Added EXPORT directive for stack/heap.
2013-07-22 10:29:20 +09:00
Toyomasa Watarai
794ab9cbd3
Fixed #9 and test ticker test code
...
Clean-up GPIO stuff, but it shoud be same behavior as before.
2013-07-21 23:04:46 +09:00
Toyomasa Watarai
796bbbeb0d
Fixed ARM/uARM build and compile error in DigitalOut.h
2013-07-20 19:46:24 +09:00
Matthew Else
84a76cd8d8
Added a load of debug lines
...
Basically this outputs a load of stuff to the serial port. I'm just
using this to get an idea of where the error lies within the code...
2013-07-19 16:56:49 +01:00
Matthew Else
9097bf7f55
A bit more debugging
...
Also removed a random shortcut link that didn't need to be there
2013-07-19 15:32:29 +01:00
Matthew Else
66ca1c9db2
Refactored bits of gpio_api.c
...
In between the last two commits, I added debugging lines using serial to
try and locate the line of code that was causing the issues with GPIO.
However, didn't get anywhere with this because the gpio_write function
is defined in a header file, rather than in an implementation file, so
the printf function can't go there. As a result, it's just refactoring.
2013-07-19 15:23:25 +01:00
Matthew Else
a9bb4aa5cb
Lots of changes, fixing build bugs and renaming
...
Files renamed to fit with the new style folder structure
2013-07-19 13:59:50 +01:00
Matthew Else
18c291b7ce
Added ytsuboi's modifications for using the 1114
2013-07-19 11:24:51 +01:00
Bogdan Marinescu
6d652bddfa
mbed_interface_disconnect/powerdown are now synchronous calls
...
Fixes PRMBED-804
2013-07-17 15:29:41 +03:00
Bogdan Marinescu
dd70336886
[LPC11U24] Take advantage of the full 8K of RAM
...
The linker command scripts/startup files used only 4K of RAM on this target.
2013-07-17 15:29:40 +03:00
Bogdan Marinescu
0c33d40fbb
Added support for UART break generation.
2013-07-17 15:29:39 +03:00
samuel.mokrani@arm.com
f2ea747280
[LPC1347] Change LED pin names
2013-07-17 15:27:10 +03:00