aboutsummaryrefslogtreecommitdiffstats
path: root/libmaple/util.c
Commit message (Collapse)AuthorAgeFilesLines
* Initial timer refactor.Marti Bolivar2011-03-241-1/+1
| | | | | | | | | | | | | | | Basic PWM works. Had some problems in testing that might be due to USART bugs. HardwareTimer has been removed from the build for now; I will re-implement it in terms of the new libmaple API, but consider it deprecated. Let's come up with something better. Servo is implemented in terms of HardwareTimer, so it also has been temporarily removed from the build. pwmWrite() likely got a little bit less inefficient due to indirection, but the PIN_MAPs shrank by a pointer per PinMapping.
* [WIP] GPIO refactor: seems ok, ready for reviewMarti Bolivar2011-03-111-3/+3
|
* Set NONEBASETHRDENA on exception.Perry Hung2011-02-271-18/+32
|
* Cleaned out libmaple.h; this had wide-ranging implications.Marti Bolivar2011-02-271-0/+23
| | | | | | | | | | | | | | | | | | | Many of the #defines in libmaple.h were board-specific, not MCU-specific. Most of these were only used by code under libmaple/usb/. These were moved into usb_config.h, and are clearly marked as being terrible hacks. I'm going to treat the USB stack as a black box that we'll deal with later. Further, instead of having a variety of #defines like "How many USARTS do I have?", we decide that based on the density of the chip. This is determined by testing for STM32_MEDIUM_DENSITY or STM32_HIGH_DENSITY defines. libmaple currently doesn't support low-density chips, so that suffices. The Makefile will set these automatically based on the MCU. Other offending #defines are ERROR_LED_PORT and ERROR_LED_PIN; these were made optional, but they're set in the Makefile as a hack to keep things working.
* libmaple: Refactor ADC routinesPerry Hung2011-02-271-1/+1
| | | | | | ADC routines rewritten, support for ADC2, 3, added. Signed-off-by: Marti Bolivar <mbolivar@leaflabs.com>
* docsMarti Bolivar2010-10-111-2/+0
|
* whitespace cleanupsMarti Bolivar2010-09-271-36/+36
|
* Enable USB auto-reset in a hard fault.Perry Hung2010-09-171-20/+31
| | | | | | | | Redirect thread-mode execution to a fail routine which throbs the LED to indicate a hard fault. Because the fail routine runs in thread mode with interrupts on, USB auto-reset should now work. Test by executing some bogus instruction (e.g. *(volatile int*)0xf34fdaa = 0;) and check that the auto-reset continues to work.
* Portability fixesbnewbold2010-08-311-3/+3
| | | | Still not working but fixed a lot of merge errors
* Merge maple-native changes into portablebnewbold2010-08-311-10/+1
|\ | | | | | | This compiles for both maple and maple_native but is untested.
| * inital portability workbnewbold2010-08-251-10/+1
| |
* | partial progress on FSMC for SRAMbnewbold2010-08-051-5/+6
|/
* good quality vga leaf logo; usb+systick disabledbnewbold2010-07-201-1/+1
| | | | | refactored timers and added interrupt behavior. see notes and comments... also includes a crude vga hack that doesn't use timers.
* Licensing: Relicensed libmaple under the MIT License.Perry Hung2010-03-311-12/+17
| | | | | | Relicensed the bulk of libmaple under the more permissive MIT License, from GPLv3. Files that were largely or entirely derived from the Arduino, STM, or Lanchon retain their original licenses.
* Removed inttypes.hPerry Hung2010-03-311-4/+4
| | | | | Removed inttypes.h from libmaple. Will have another pass through to use the standard libmaple types, but will come in another commit.
* Major hierarchy reorganization; see README.bnewbold2010-03-311-0/+103
copy-to-ide and Makefile updated to conform; .gitignore added; LICENSE added