95 Commits

Author SHA1 Message Date
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
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
Mike Smith
5310cd1b57 Flash sector erase requires the FLASH_SER bit set. 2012-02-12 15:00:08 -08:00
Piotr Esden-Tempski
1a3ad6e998 Added the entry point definiton to all stm32 linker scripts. This allows gdb to reset the target correctly on exit. 2012-02-11 22:24:41 -08:00
Uwe Hermann
9532195e65 More coding-style and cosmetic fixes. 2012-02-06 23:39:06 +01:00
Fergus Noble
3e47a46c5c Fix numerous bugs in NVIC convenience functions, doing an |= on a clear register will clear ALL currently enabled irqs, not just the one you specified and other things of that sort. Also changed to support the full range of irq numbers supported by ARMv7M, not just the first 68 used in the STM32F1 series. 2012-02-06 23:08:07 +01:00
Fergus Noble
477c410be4 Added functions to enable and disable DMA from stm32 USART. 2012-02-06 23:08:07 +01:00
Fergus Noble
7c67322f75 Change stm32 usart baud rate generation to round rather than floor for more accurate divisor selection. 2012-02-06 23:08:07 +01:00
Fergus Noble
ac29b654a9 Fix nasty bug with GPIO alternate function setup on F2/F4 (sorry guys). 2012-02-06 23:08:06 +01:00
Fergus Noble
5dce4172a8 Fix bug with F4 clock settings, change HPRE to PPRE. 2012-02-06 23:08:06 +01:00
Fergus Noble
fae83c43c1 Discard .ARM.exidx section to make newlib 64bit (long long) printf support work. This may need to be fixed if using C++. 2012-02-06 23:08:06 +01:00
Fergus Noble
8cc888a030 Fixing small bug/typo in F2 rcc code. 2012-02-06 23:08:06 +01:00
Gareth McMullin
651917aeb4 Added USB example for stm32f4.
Moved clock enable for OTG_FS back into applications.  This and gpio config
are the only differences between f107 and f2xx/f4xx.
2011-12-17 14:11:39 +13:00
Piotr Esden-Tempski
8af809a12a Reverted the api of the usart_set_baudrate function to hide the clock rail selection again. 2011-11-16 18:41:48 -08:00
Piotr Esden-Tempski
bf4f8480a6 Added address legend to the interrupt vector. Made it easier to crosscheck for correctness. 2011-11-16 18:41:48 -08:00
Piotr Esden-Tempski
c6f30043fd Added UART4 and UART5 gpio definitions for stm32f1. Also corrected the naming everywhere. Both peripherals are UARTS not U_S_ARTS. 2011-11-16 18:17:56 -08:00
Uwe Hermann
608ca2a811 stm32/f1/gpio.c: Add some Doxygen comments. 2011-11-17 00:12:47 +01:00
Uwe Hermann
d97c937b8e lib: More small fixes. 2011-11-17 00:09:29 +01:00
Uwe Hermann
0d25aa3fcd lib/stm32/f4: Coding-style fixes. 2011-11-17 00:09:28 +01:00
Uwe Hermann
50f680f3f7 lib/stm32/f2: Coding-style fixes. 2011-11-17 00:09:27 +01:00
Uwe Hermann
8725bc5171 lib/stm32/f1: Coding-style fixes. 2011-11-17 00:09:27 +01:00
Uwe Hermann
6e7403f769 lib/stm32/*.c: Coding-style fixes. 2011-11-17 00:09:26 +01:00