Nicolas Schodet
2a35377980
Clean up and make linker scripts more uniform
...
This includes:
- fix some comments indent,
- add entry point,
- align exported symbols,
- remove unneeded "." assignments.
2012-09-03 19:53:43 +02:00
Piotr Esden-Tempski
d98dab6ae2
Merging pull request #23 Changed markup to get more control over documentation.
...
Merge remote-tracking branch 'ksarkies/doc'
2012-08-25 15:16:50 -07:00
Piotr Esden-Tempski
f71742c5da
Merging #18 pull request. Adding nvic documentation.
...
Merge remote-tracking branch 'ksarkies/nvic'
2012-08-25 15:10:01 -07:00
Ken Sarkies
52533a6e3d
STM32F1xx: Changed markup to get more control over documentation, each
...
file having its own group module rather than using @file.
No code changes except for the following:
gpio: Added function to map the eventout signal plus two Remap functions
dma: Prevent changing base addresses while channel enabled (see datasheet)
pwr: Added pwr.c (new file)
timer: Removed the last function that I introduced recently; there is already
an equivalent function present. Changed some parameter names for consistency.
2012-08-20 17:19:20 +09:30
Ken Sarkies
70b2376c9f
Update to doxygen comments to fix promiscuity problem (see later)
2012-08-18 13:32:48 +09:30
Ken Sarkies
0e5e451e22
Revert nvic_set_priority to original form. Minor doxygen markup changes.
2012-08-14 18:25:19 +09:30
Ken Sarkies
cb07ab7c6e
Merge branch 'master' into nvic
2012-08-14 14:47:22 +09:30
Piotr Esden-Tempski
3441bba1c4
Changed local build target for library and linker files.
...
- The library files are now being built into the lib subdirectory of the
source.
- The linker files for each library are being copied into the lib source
subdirectory.
Motivation: The relative locations of files in the source directory after make
are now the same as after make install now. This makes it easier to
reuse examples with their makefiles outside of the libopencm3
sourcecode directory.
2012-08-13 15:19:57 -07:00
Piotr Esden-Tempski
a2c5b6391d
Merging pull request #19 "STM32F timers. Doxygen markup added, and some code changes" by Ken Sarkies.
...
Merge remote-tracking branch 'ksarkies/timer'
2012-08-11 14:00:06 -07:00
Ken Sarkies
52fd7c7976
STM32F timers. Doxygen markup added, and some code changes:
...
1. Remove the extra mask (TIM_DIER(timer_peripheral) & flag)
in timer_get_flag. Not all flags in SR relate to IRQs and the flags that
do might be useful even if interrupts not enabled.
2. In a number of functions (e.g. timer_set_output_idle_state) that only
apply to advanced timers, add test for TIM1 and TIM8, as done in some others.
3. Added timer_force_event to manipulate the EG register
TBD DMA burst - can't get my head around why this would be useful.
Someone must have thought so!
2012-07-10 09:32:47 +09:30
Ken Sarkies
9cff0c962b
Fix compile error
2012-07-09 17:12:27 +09:30
Ken Sarkies
cba9561e89
NVIC_Set_Interrupt_Priority: change to use 4-bit fields.
...
(viz STM32F10xxx Cortex-M3 programming manual PM0056 and
Cortex-M3-Generic-User-Guide.pdf)
Doxygen commentary added
2012-07-09 16:54:01 +09:30
Ken Sarkies
0e02438a80
Code for DAC module STM32Fxxx series
...
Add prototypes to dac.h and small change to simplify alignment enum
2012-06-30 16:56:14 +09:30
Karl Palsson
83d62e9bfc
Add linker scripts with memory maps for F100 series.
...
These definitions are a physical property of the device for most purposes.
No reason not to supply them premade.
2012-06-29 02:10:53 -07:00
Karl Palsson
450c3e00a1
Basic helper routines for CRC
...
Note, the CRC block is pretty useless for interoperability. It only operates on 32bit
chunks, and in a different bit order. No attempt to make full helpers for compatibility
with other implementations has been done.
https://my.st.com/public/STe2ecommunities/mcu/Lists/cortex_mx_stm32/Flat.aspx?RootFolder=%2Fpublic%2FSTe2ecommunities%2Fmcu%2FLists%2Fcortex_mx_stm32%2FCRC%20computation&FolderCTID=0x01200200770978C69A1141439FE559EB459D7580009C4E14902C3CDE46A77F0FFD06506F5B¤tviews=2006
2012-06-29 02:08:53 -07:00
Piotr Esden-Tempski
98174e4a0c
Merge pull request #13 "Code for iwdg module STM32F series"
...
Merge remote-tracking branch 'ksarkies/iwdg-dev'
2012-06-27 14:02:02 -07:00
Piotr Esden-Tempski
a70eabb3e1
Merge pull request #11 "Add helper function for max clock on HSI for f100"
...
Merge remote-tracking branch 'karlp/hsi_f1_24'
2012-06-27 13:58:14 -07:00
Piotr Esden-Tempski
4a17185791
Merge pull request #10 "Add Device Electronic Signature support."
...
Merge remote-tracking branch 'karlp/desig'
2012-06-27 13:56:55 -07:00
Piotr Esden-Tempski
db505a87f7
Merging pull request #7 "Use ODR instead of IDR to toggle an output GPIO"
...
Merge remote-tracking branch 'schodet/gpio-toggle'
2012-06-27 13:49:26 -07:00
Piotr Esden-Tempski
3bfeeedceb
Merge pull request #6 "Doxygen markup and grouping structrue"
...
Merge remote-tracking branch 'ksarkies/doc'
Conflicts:
include/libopencm3/cm3/common.h
2012-06-27 13:30:45 -07:00
Ken Sarkies
0fabe4462b
Fix Typo
2012-06-14 19:45:46 +09:30
Ken Sarkies
2f4cd29324
Code for iwdg module STM32F series
2012-06-13 22:14:53 +09:30
Karl Palsson
62849f043c
Add helper function for max clock on HSI for f100
...
Based on existing HSI code. Tested with f100c8, on custom board with no
external crystals or resonators.
2012-06-12 20:56:34 +00:00
Karl Palsson
71a3a7f2b1
Add Device Electronic Signature support.
...
Working unique id support, but not 100% convinced that this is the "least surprise"
path. ST's docs provide the bits from low to high, in 2xu16 and 2xu32.
But to get it back as a "u96" the highest bits should be first?
2012-06-12 20:53:59 +00:00
Nicolas Schodet
12a73ce052
Use ODR instead of IDR to toggle an output GPIO
...
IDR represents the level on pin input while ODR is the value requested by the
programmer. This makes a difference for example when using the output as open
drain.
2012-05-31 00:08:23 +02:00
Ken Sarkies
06620040aa
Header files for Doxygen group structure, layout changes to headings, example markup in stm32f1/ rcc
2012-05-28 21:38:55 +09:30
Gareth McMullin
154f67598b
Fixed setting of interrupt priorities.
2012-05-26 20:47:47 +12:00
Piotr Esden-Tempski
7011d47c70
Mark reg32 variables as used. So that the compiler does not complain.
2012-05-25 17:56:15 -07:00
Piotr Esden-Tempski
3596075ee0
Fixed the linker scripts to be the way Tomaz Solc proposed.
...
Something went wrong when cherrypicking his commits in the pull request.
Sorry about that. :(
2012-04-25 17:34:07 +02:00
Piotr Esden-Tempski
3b20a5e34e
Removed the load address statement from the .bss section.
...
Otherwise the linker will complain: "section has both a load address and
a load region"
2012-04-24 09:34:39 +02:00
Tomaz Solc
bf65589183
Support for exception handling in linker scripts.
...
This is needed even in plain C when 64 bit variable (e.g. long long int)
arithmetic is used. For example it is required when newlib is compiled with
--enable-newlib-io-long-long.
Conflicts:
lib/stm32/f1/libopencm3_stm32f1.ld
lib/stm32/f2/libopencm3_stm32f2.ld
2012-04-24 09:16:22 +02:00
Tomaz Solc
5510e1fe3b
Wait for writes to finish upon exiting RTC config
...
This fixes race condition when rtc_get_counter_val() call immediately follows
rtc_set_counter_val().
2012-04-24 09:06:32 +02:00
Gareth McMullin
8820277f09
Added functions for configuring timers in slave mode.
2012-04-08 14:12:21 +12:00
Gareth McMullin
a8ec86a527
Added functions for timer input capture polarity and enable/disable.
2012-04-08 13:55:16 +12:00
Gareth McMullin
4b041697f4
Added convenience function for timer input selection.
2012-04-08 11:56:42 +12:00
Gareth McMullin
a62473fbdf
Added convenience funcions for timer input capture filter and prescaler.
2012-04-08 11:11:52 +12:00
Gareth McMullin
567faa9b61
Corrected parameters of timer_set_mode() to u32.
2012-04-07 20:31:56 +12:00
Piotr Esden-Tempski
26de4cb9d6
Constand value for resetting CAN_TDTxR was too big. Fixed.
2012-03-19 23:09:18 -07:00
Piotr Esden-Tempski
ec34e21ead
Changed parameter size for trigger enable.
2012-03-19 20:20:05 -07:00
Piotr Esden-Tempski
451a5e227d
Started some cleanup in the ADC headers and convenience code.
2012-03-19 17:38:24 -07:00
Piotr Esden-Tempski
4fbd42148a
Added basic exception handling to the stm32 linker scripts. Thanks Mike Smith!
2012-03-18 22:59:31 -07:00
Piotr Esden-Tempski
06d6f3e0e6
Made spi_init_master ignore CRC and SPE bits.
2012-03-14 21:00:53 -07:00
Piotr Esden-Tempski
789ae97212
Some additional LGPL3+ license change cleanups.
...
Changed the license to LGPL3+ for some makefiles that got ommited in the
previous big patch commit.
Corrected a find and replace error in a linker file.
2012-03-02 15:39:15 -08:00
Piotr Esden-Tempski
43561de329
License change of the library to LGPL, version 3 or later.
...
Agreed to by all the significant contributors to the library.
2012-03-02 14:44:49 -08:00
Piotr Esden-Tempski
ec904f176b
Cleaned up and streamlined DMA support for f1. Definitely needs a bunch of testing!
2012-02-29 16:02:51 -08:00
Piotr Esden-Tempski
20c5e56234
Fixed spi convenience reset function to compile properly.
2012-02-29 12:02:36 -08:00
Piotr Esden-Tempski
c49f505df4
Added spi reset convenience function.
2012-02-28 11:28:29 -08:00
Piotr Esden-Tempski
2b3f07ee08
Added reset function to i2c convenience functions.
2012-02-24 17:14:50 -08:00
Piotr Esden-Tempski
cbef43ddd8
Added set priority group convenience function.
2012-02-24 16:43:37 -08:00
Gareth McMullin
03e44e91e3
Linker scripts provide stack pointer at the top of RAM.
...
Thanks to Tomaz Solc.
2012-02-12 15:00:09 -08:00