soft/lpc122x/core
2 years agoAdd const to function header for const config data
Nathael Pajani [Fri, 14 Aug 2015 15:11:00 +0000 (17:11 +0200)]
Add const to function header for const config data

2 years agoUpdated comments
Nathael Pajani [Fri, 14 Aug 2015 15:09:51 +0000 (17:09 +0200)]
Updated comments

2 years agoAdd WS2812 chainable leds support
Nathael Pajani [Thu, 13 Aug 2015 23:03:15 +0000 (01:03 +0200)]
Add WS2812 chainable leds support

2 years agoSome timers fixes.
Nathael Pajani [Thu, 13 Aug 2015 23:01:25 +0000 (01:01 +0200)]
Some timers fixes.

2 years agouser information block cannot be programmed using ISP mode. It must be done using...
Nathael Pajani [Tue, 11 Aug 2015 18:49:55 +0000 (20:49 +0200)]
user information block cannot be programmed using ISP mode. It must be done using IAP.

2 years agoUpdated README
Nathael Pajani [Tue, 11 Aug 2015 16:58:19 +0000 (18:58 +0200)]
Updated README

2 years agotypo fix in comments
Nathael Pajani [Tue, 11 Aug 2015 16:58:00 +0000 (18:58 +0200)]
typo fix in comments

2 years agobetter this way to ignore all .img and .bak files
Nathael Pajani [Tue, 11 Aug 2015 16:55:46 +0000 (18:55 +0200)]
better this way to ignore all .img and .bak files

2 years agoignore also these extentions, they usually mark generated binaries or development...
Nathael Pajani [Wed, 22 Jul 2015 09:24:29 +0000 (11:24 +0200)]
ignore also these extentions, they usually mark generated binaries or development files.

2 years agoAdd an 8x8 font with ascii characters only.
Nathael Pajani [Wed, 22 Jul 2015 01:04:23 +0000 (03:04 +0200)]
Add an 8x8 font with ascii characters only.

2 years agoAdd epaper driver for pervasive display epaper screens on embedded artists adapter.
Nathael Pajani [Wed, 22 Jul 2015 01:03:34 +0000 (03:03 +0200)]
Add epaper driver for pervasive display epaper screens on embedded artists adapter.

2 years agoIntroduce new UART baud-rate generator configuration mechanism to achieve higher...
Nathael Pajani [Wed, 22 Jul 2015 00:46:37 +0000 (02:46 +0200)]
Introduce new UART baud-rate generator configuration mechanism to achieve higher data rates. Keep the old one for data rates below or equal to 115200. Only 1152000 supported above (yet)

2 years agoUse the saved flags for intr reset. Do not erase possible other interrupt sources.
Nathael Pajani [Wed, 22 Jul 2015 00:45:05 +0000 (02:45 +0200)]
Use the saved flags for intr reset. Do not erase possible other interrupt sources.

2 years agoAdd and fix comments
Nathael Pajani [Wed, 22 Jul 2015 00:44:16 +0000 (02:44 +0200)]
Add and fix comments

2 years agoFix some comments
Nathael Pajani [Fri, 27 Mar 2015 12:59:09 +0000 (13:59 +0100)]
Fix some comments

2 years agoMinor comment fixe
Nathael Pajani [Thu, 19 Mar 2015 22:02:23 +0000 (23:02 +0100)]
Minor comment fixe

2 years agoAdd gpio_toggle define
Nathael Pajani [Thu, 19 Mar 2015 22:02:10 +0000 (23:02 +0100)]
Add gpio_toggle define

2 years agoUpdate licence version for this file
Nathael Pajani [Thu, 19 Mar 2015 22:01:31 +0000 (23:01 +0100)]
Update licence version for this file

2 years agoUse arm-none-eabi- compilation toolchain for embeded micro-controllers. No need of...
Nathael Pajani [Fri, 27 Feb 2015 09:19:31 +0000 (10:19 +0100)]
Use arm-none-eabi- compilation toolchain for embeded micro-controllers. No need of a GNU C library for Linux targets, these are not linux targets. arm-none-eabi- compilation toolchain is now in Debian GNU/Linux SID arm-none-eabi- is also the most common toolchain name for embedded ARM targets

2 years agoFix this copy-paste error ... oups :(
Nathael Pajani [Sun, 22 Feb 2015 02:03:21 +0000 (03:03 +0100)]
Fix this copy-paste error ... oups :(

2 years agoAdd some gpio helper functions. Note that these are not very effective unless the...
Nathael Pajani [Sun, 22 Feb 2015 01:50:14 +0000 (02:50 +0100)]
Add some gpio helper functions. Note that these are not very effective unless the compiler does some optimisations when called multiple times from the same function.

2 years agoAdd comments to gpio driver header
Nathael Pajani [Sun, 22 Feb 2015 01:48:32 +0000 (02:48 +0100)]
Add comments to gpio driver header

2 years agoAdd comments to Status led external driver header file
Nathael Pajani [Sun, 22 Feb 2015 01:47:38 +0000 (02:47 +0100)]
Add comments to Status led external driver header file

2 years agoMissing include in header file
Nathael Pajani [Thu, 12 Feb 2015 03:22:43 +0000 (04:22 +0100)]
Missing include in header file

2 years agoAdd support for RTC Tested on Sub1GHz module because it's the only module i have...
Nathael Pajani [Mon, 2 Feb 2015 01:39:24 +0000 (02:39 +0100)]
Add support for RTC Tested on Sub1GHz module because it's the only module i have with RTC oscilator.

2 years agoSystem tick timer additions and improvements Implement the remove callback functionna...
Nathael Pajani [Mon, 2 Feb 2015 01:38:26 +0000 (02:38 +0100)]
System tick timer additions and improvements Implement the remove callback functionnality Reset wrapping counters when systick is stopped or reset. Add is_systick_running() and systick_get_tick_ms_period() helper functions Add or improve comments.

2 years agoRemove GPIO-Demo module or DomoTab specific parts from EEPROM support code
Nathael Pajani [Sun, 28 Dec 2014 03:41:32 +0000 (04:41 +0100)]
Remove GPIO-Demo module or DomoTab specific parts from EEPROM support code

2 years agothis is not true for all the modules.
Nathael Pajani [Sun, 28 Dec 2014 02:26:37 +0000 (03:26 +0100)]
this is not true for all the modules.

2 years agoAllow configuration of pins used for status leds
Nathael Pajani [Sat, 20 Dec 2014 15:29:38 +0000 (16:29 +0100)]
Allow configuration of pins used for status leds

2 years agoAllow app-level CC1101 configuration modifications
Nathael Pajani [Sat, 20 Dec 2014 15:28:59 +0000 (16:28 +0100)]
Allow app-level CC1101 configuration modifications

2 years agoMake the apps Makefiles "app independent" This makes it easier to create new apps...
Nathael Pajani [Wed, 17 Dec 2014 17:25:54 +0000 (18:25 +0100)]
Make the apps Makefiles "app independent" This makes it easier to create new apps by copying the app directory.

2 years agoChange variable and function name as it counts clock cycles and not ticks. Add comments
Nathael Pajani [Wed, 17 Dec 2014 01:22:23 +0000 (02:22 +0100)]
Change variable and function name as it counts clock cycles and not ticks. Add comments

2 years agosystick: provide access to a global count of systick cycles
Cyprien Laplace [Tue, 16 Dec 2014 12:56:41 +0000 (07:56 -0500)]
systick: provide access to a global count of systick cycles

System tick is now maintening a global count of cycles at main clock
frequency, independantly of the systick timer interrupt frequency.

The number of cycles can be obtained using systick_get_tick_cycles().

2 years agoProvide support for multiple applications in the same repository Single common Makefi...
Nathael Pajani [Mon, 15 Dec 2014 14:04:22 +0000 (15:04 +0100)]
Provide support for multiple applications in the same repository Single common Makefile for all existing and future apps without modifications Simple application addition Readme updated accordingly.

2 years agoMoving DHT11 support to a specific external driver.
Nathael Pajani [Mon, 15 Dec 2014 00:30:42 +0000 (01:30 +0100)]
Moving DHT11 support to a specific external driver.

2 years agoUse new set_pins scheme - part 1 Remove individual local set_*_pins functions WARNING...
Cyprien Laplace [Sun, 14 Dec 2014 17:11:06 +0000 (18:11 +0100)]
Use new set_pins scheme - part 1 Remove individual local set_*_pins functions WARNING : This commit is HARD-LINKED with the next one or pins will not be configured. Otherwise, you must perform the modifications on your code to configure the pins using the new scheme.

2 years agoMake use of the pio and gpio config functions - eeprom part
Cyprien Laplace [Sun, 14 Dec 2014 17:08:17 +0000 (18:08 +0100)]
Make use of the pio and gpio config functions - eeprom part

2 years agoMake use of the pio and gpio config functions - status_led part
Cyprien Laplace [Sun, 14 Dec 2014 17:05:58 +0000 (18:05 +0100)]
Make use of the pio and gpio config functions - status_led part

2 years agoMake use of the pio and gpio config functions - cc1101 part
Nathael Pajani [Sun, 14 Dec 2014 17:04:39 +0000 (18:04 +0100)]
Make use of the pio and gpio config functions - cc1101 part

2 years agoFix : set gpio state only when GPIO is configured as output
Cyprien Laplace [Sun, 14 Dec 2014 17:01:11 +0000 (18:01 +0100)]
Fix : set gpio state only when GPIO is configured as output

2 years agoAdd a set_pins() core function which can configure all GPIO in one loop.
Nathael Pajani [Sun, 14 Dec 2014 17:00:11 +0000 (18:00 +0100)]
Add a set_pins() core function which can configure all GPIO in one loop.

2 years agoUse const structs for the pio definitions Move the weak definitions outside of the...
Nathael Pajani [Sun, 7 Dec 2014 22:00:07 +0000 (23:00 +0100)]
Use const structs for the pio definitions Move the weak definitions outside of the driver file, so that the compiler cannot optimise and use the empty "weak" definitions. Next step is to merge all definitions in a single table, and call a single pio config function.

2 years agoallow use of different cross-compiler on the command line
Nathael Pajani [Sun, 7 Dec 2014 21:05:01 +0000 (22:05 +0100)]
allow use of different cross-compiler on the command line

2 years agouse const for functions which do not modify the pio structures.
Nathael Pajani [Sun, 7 Dec 2014 21:04:33 +0000 (22:04 +0100)]
use const for functions which do not modify the pio structures.

2 years agostatus-led: put led status in an array
Cyprien Laplace [Sun, 7 Dec 2014 04:18:52 +0000 (23:18 -0500)]
status-led: put led status in an array

2 years agoSeparate internal LPC drivers and external ones Place the external ones in extdrv...
Nathael Pajani [Sat, 6 Dec 2014 01:51:20 +0000 (02:51 +0100)]
Separate internal LPC drivers and external ones Place the external ones in extdrv Split i2c and eeprom in two different headers

2 years agoFix the term colors so that we get back to default and not white (thanks cyprien)
Nathael Pajani [Thu, 4 Dec 2014 02:36:42 +0000 (03:36 +0100)]
Fix the term colors so that we get back to default and not white (thanks cyprien)

2 years ago-ffreestanding Assert that compilation targets a freestanding environment (one with...
Nathael Pajani [Thu, 4 Dec 2014 02:23:18 +0000 (03:23 +0100)]
-ffreestanding Assert that compilation targets a freestanding environment (one with no OS and none of the related stuff) -nostdlib prevents inclusion of standard libraries, which or not present in our system. Requiered parts have been re-implemented (mostly a copy from the Linux kernel code)

2 years agoThis comment comes from the original makefile ... change to the right name :)
Nathael Pajani [Thu, 4 Dec 2014 02:16:24 +0000 (03:16 +0100)]
This comment comes from the original makefile ... change to the right name :)

2 years agoRemove warning on some gcc versions (thanks Alexandre) Add typedef for one of the...
Nathael Pajani [Thu, 4 Dec 2014 02:15:33 +0000 (03:15 +0100)]
Remove warning on some gcc versions (thanks Alexandre) Add typedef for one of the very rare cases in which a typedef makes things somehow more readable, and this still can be discussed ...

2 years agoAllow use of a null status argument.
Nathael Pajani [Wed, 22 Oct 2014 00:29:09 +0000 (02:29 +0200)]
Allow use of a null status argument.

2 years agoAdd comments to signal yet unsupported feature
Nathael Pajani [Tue, 21 Oct 2014 22:21:54 +0000 (00:21 +0200)]
Add comments to signal yet unsupported feature

2 years agoFix problem with ADC at conversion rates above a few hertz (3 or 4Hz) as updated...
Nathael Pajani [Tue, 21 Oct 2014 22:21:08 +0000 (00:21 +0200)]
Fix problem with ADC at conversion rates above a few hertz (3 or 4Hz) as updated in user manual rev2.1 See Section 19.2 of UM10441 revision 2.1 or newer for more information.

2 years agoBetter comments for systick callback information.
Nathael Pajani [Tue, 21 Oct 2014 09:47:04 +0000 (11:47 +0200)]
Better comments for systick callback information.

2 years agoUse second value in config field to select the timer control channel.
Nathael Pajani [Thu, 9 Oct 2014 10:46:13 +0000 (12:46 +0200)]
Use second value in config field to select the timer control channel.

2 years agoAdd partial support for event driven conversions Only two events supported yet. Suppo...
Nathael Pajani [Fri, 26 Sep 2014 10:09:51 +0000 (12:09 +0200)]
Add partial support for event driven conversions Only two events supported yet. Support for new ones will be easy but requires some code refactoring.

2 years agoAdding support for address change Adding support for config register change Set defau...
Nathael Pajani [Fri, 26 Sep 2014 08:54:59 +0000 (10:54 +0200)]
Adding support for address change Adding support for config register change Set default GDO_0 behavior for interrupt on RX packet CRC OK.

2 years agoThe previous test may never come true if we do not set the flag
Nathael Pajani [Thu, 18 Sep 2014 19:53:11 +0000 (21:53 +0200)]
The previous test may never come true if we do not set the flag

2 years agoThere is no "single burst" mode on the LPC1224, remove corresponding code.
Nathael Pajani [Thu, 18 Sep 2014 19:50:12 +0000 (21:50 +0200)]
There is no "single burst" mode on the LPC1224, remove corresponding code.

2 years agoThe ADC resolution cannot be selected on the LPC1224, do not confuse the user.
Nathael Pajani [Thu, 18 Sep 2014 19:42:54 +0000 (21:42 +0200)]
The ADC resolution cannot be selected on the LPC1224, do not confuse the user.

2 years agoSometimes GCC needs Low registers instead of general ones, but we need to tell him...
Nathael Pajani [Thu, 28 Aug 2014 17:34:47 +0000 (19:34 +0200)]
Sometimes GCC needs Low registers instead of general ones, but we need to tell him he can use them. Maybe necessary in other places, but at least fixes the problem i have on my test system. Special thanks to cyprien, once again !

2 years agoAdd support for user information block reading. (Use IAP for writting)
Nathael Pajani [Thu, 28 Aug 2014 11:45:07 +0000 (13:45 +0200)]
Add support for user information block reading. (Use IAP for writting)

2 years agoPartial IAP ROM helpers support
Nathael Pajani [Thu, 28 Aug 2014 11:43:59 +0000 (13:43 +0200)]
Partial IAP ROM helpers support

2 years agoImplement timer interrupt callbacks
Nathael Pajani [Mon, 25 Aug 2014 23:24:21 +0000 (01:24 +0200)]
Implement timer interrupt callbacks

2 years agoRemove comments comming from the linux kernel but irrelevant for us.
Nathael Pajani [Wed, 6 Aug 2014 00:58:51 +0000 (02:58 +0200)]
Remove comments comming from the linux kernel but irrelevant for us.

2 years agoDeclare a weak "empty" pio struct for each driver inside the driver so that there...
Nathael Pajani [Thu, 31 Jul 2014 19:54:22 +0000 (21:54 +0200)]
Declare a weak "empty" pio struct for each driver inside the driver so that there's no need to do it in the "main.c" file when the function is not used.

2 years agoSome more precision in the comments.
Nathael Pajani [Mon, 28 Jul 2014 08:57:11 +0000 (10:57 +0200)]
Some more precision in the comments.

2 years agoSplit build rule in two parts : linking and binary image creation.
Nathael Pajani [Mon, 28 Jul 2014 08:56:15 +0000 (10:56 +0200)]
Split build rule in two parts : linking and binary image creation.

2 years agoArgh ! hidden, silent bug, as I always used port 0 for the pins. (Thank you cyprien...
Nathael Pajani [Mon, 28 Jul 2014 08:51:23 +0000 (10:51 +0200)]
Argh ! hidden, silent bug, as I always used port 0 for the pins. (Thank you cyprien for seeing this one :) Use the port number from the provided pio struct, not from our onw un-initialized one. And make sure both pio struct pointers are not NULL before using them ....

2 years agoHey, this one is for LPC1224 ...
Nathael Pajani [Sun, 27 Jul 2014 23:24:34 +0000 (01:24 +0200)]
Hey, this one is for LPC1224 ...

2 years agoMake sure we receive valid (at least not NULL) pointers Add a few comments
Nathael Pajani [Sun, 27 Jul 2014 23:24:07 +0000 (01:24 +0200)]
Make sure we receive valid (at least not NULL) pointers Add a few comments

2 years agoRemove unusefull flags and move static directive to link options, where it belongs.
Nathael Pajani [Wed, 16 Jul 2014 01:29:16 +0000 (03:29 +0200)]
Remove unusefull flags and move static directive to link options, where it belongs.

2 years agoFunction not used in current main(), so name mismatch not detected.
Nathael Pajani [Thu, 19 Jun 2014 16:02:31 +0000 (18:02 +0200)]
Function not used in current main(), so name mismatch not detected.

2 years agoThis driver is specific to TMP101 sensor, reflect this in files and functions names
Nathael Pajani [Thu, 19 Jun 2014 14:46:38 +0000 (16:46 +0200)]
This driver is specific to TMP101 sensor, reflect this in files and functions names

2 years agoAdding tags and binary to ignore list.
Nathael Pajani [Thu, 19 Jun 2014 13:07:43 +0000 (15:07 +0200)]
Adding tags and binary to ignore list.

2 years agoAdding some comments about the "status" led used on the demo module.
Nathael Pajani [Sun, 8 Jun 2014 22:00:47 +0000 (00:00 +0200)]
Adding some comments about the "status" led used on the demo module.

2 years agoAdding gpio config function, which in turn calls config_pio() and set pin direction...
Nathael Pajani [Sun, 8 Jun 2014 21:59:34 +0000 (23:59 +0200)]
Adding gpio config function, which in turn calls config_pio() and set pin direction and initial state.

2 years agoImproved ADC support (untested)
Nathael Pajani [Sun, 27 Apr 2014 16:52:14 +0000 (18:52 +0200)]
Improved ADC support (untested)

2 years agoThis function is now internal to driver.
Nathael Pajani [Thu, 24 Apr 2014 22:15:37 +0000 (00:15 +0200)]
This function is now internal to driver.

2 years agoOne more part of multiple SPI busses support (not for LPC1224)
Nathael Pajani [Thu, 24 Apr 2014 16:32:33 +0000 (18:32 +0200)]
One more part of multiple SPI busses support (not for LPC1224)

2 years agoCall gpio pins configuration Make the configuration function static.
Nathael Pajani [Thu, 24 Apr 2014 16:31:44 +0000 (18:31 +0200)]
Call gpio pins configuration Make the configuration function static.

2 years agoComments improved or corrected.
Nathael Pajani [Thu, 24 Apr 2014 16:30:54 +0000 (18:30 +0200)]
Comments improved or corrected.

2 years agoRemoving unrequiered include
Nathael Pajani [Thu, 24 Apr 2014 13:04:56 +0000 (15:04 +0200)]
Removing unrequiered include

2 years agoAdd support for the CC1101 chip from TI Receiving is done by pooling Sending is done...
Nathael Pajani [Thu, 24 Apr 2014 02:37:00 +0000 (04:37 +0200)]
Add support for the CC1101 chip from TI Receiving is done by pooling Sending is done when a line has been received on UART1 and the "send" flag set. Need to implement the "packet sent/received" interrupt.

2 years agoNo functional change. Only use the same coding rules as the other files.
Nathael Pajani [Thu, 24 Apr 2014 02:29:40 +0000 (04:29 +0200)]
No functional change. Only use the same coding rules as the other files.

2 years agoImproved name and comment. Made the function specific to eeprom code.
Nathael Pajani [Tue, 22 Apr 2014 21:41:22 +0000 (23:41 +0200)]
Improved name and comment. Made the function specific to eeprom code.

2 years agoImproved and easier GPIO ports access, based on the port defined in the pio struct...
Nathael Pajani [Tue, 22 Apr 2014 21:38:27 +0000 (23:38 +0200)]
Improved and easier GPIO ports access, based on the port defined in the pio struct used for gpio definition.

2 years agoImproved implementation of the SSP (SPI) Bus handling.
Nathael Pajani [Tue, 22 Apr 2014 21:34:56 +0000 (23:34 +0200)]
Improved implementation of the SSP (SPI) Bus handling.

2 years agoUpdated readme
Nathael Pajani [Tue, 22 Apr 2014 17:44:08 +0000 (19:44 +0200)]
Updated readme

2 years agoAllow configuration of UART as RS485 or IrDA (IrDA not tested) Include simple test...
Nathael Pajani [Tue, 22 Apr 2014 17:42:38 +0000 (19:42 +0200)]
Allow configuration of UART as RS485 or IrDA (IrDA not tested) Include simple test to forward characters received on RS485 to the other UART.

2 years agoFix pio definitions (restore green status led !) and status led numbering (not much...
Nathael Pajani [Mon, 21 Apr 2014 21:33:41 +0000 (23:33 +0200)]
Fix pio definitions (restore green status led !) and status led numbering (not much importance, but do it anyway)

2 years agoCLKOUT support and test
Nathael Pajani [Mon, 21 Apr 2014 21:20:51 +0000 (23:20 +0200)]
CLKOUT support and test

2 years agoSome cleanup
Nathael Pajani [Mon, 21 Apr 2014 19:33:27 +0000 (21:33 +0200)]
Some cleanup

2 years agoUtility functions.
Nathael Pajani [Mon, 21 Apr 2014 19:30:06 +0000 (21:30 +0200)]
Utility functions.

2 years agoFix : call the ADC pin configuration ! Comments added, unused headers removed.
Nathael Pajani [Mon, 21 Apr 2014 11:32:53 +0000 (13:32 +0200)]
Fix : call the ADC pin configuration ! Comments added, unused headers removed.

2 years agoComments and typo
Nathael Pajani [Thu, 17 Apr 2014 21:57:12 +0000 (23:57 +0200)]
Comments and typo

2 years agoVery big commit for a big rewrite of the pins configuration process, making it easier...
Nathael Pajani [Thu, 17 Apr 2014 21:56:33 +0000 (23:56 +0200)]
Very big commit for a big rewrite of the pins configuration process, making it easier to select pins functions and configure the code according to the hardware. Some parts still have to be improved (dependent on pins being on port 0). At least the code compiles and runs on the target, and the parts I tested run fine.

2 years agoUse a dummy fault handler in core and move the "user defined" one to main.c
Nathael Pajani [Thu, 17 Apr 2014 09:19:26 +0000 (11:19 +0200)]
Use a dummy fault handler in core and move the "user defined" one to main.c

2 years agoThere are more than the division routines in ROM. Prepare for inclusion of the other...
Nathael Pajani [Thu, 17 Apr 2014 09:13:07 +0000 (11:13 +0200)]
There are more than the division routines in ROM. Prepare for inclusion of the other ones.

2 years agoSystick code review and fix of systick timer frequency.
Nathael Pajani [Thu, 17 Apr 2014 08:59:27 +0000 (10:59 +0200)]
Systick code review and fix of systick timer frequency.