| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Add common linker scripts for ram and rom. Add medium and high density
libraries for libcs3.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Some additional HardwareTimer methods introduced to make this
convenient; ancillary libmaple/timers.h changes resulted.
|
|
|
|
| |
still need usb descriptors to improve, and also nothing else is tested.
|
|
|
|
|
|
|
|
|
|
| |
pinMode(PWM) turns the channel on, other modes should turn it off
Fixes bug with conflicting timer for spi1 and timer. This is not
well-tested.
Conflicts:
libmaple/timers.c
|
| |
|
| |
|
| |
|
|
|
|
| |
also removed an old ASSERT()
|
| |
|
|
|
|
|
|
|
|
|
| |
Fixed millis(), it was just wrong, before.
Added micros(), not extensively tested.
New implementation of delayMicroseconds(). Should be more consistent
now.
Added a handful of nvic routines to enable/disable interrupts.
Cleaned up systick
|
| |
|
| |
|
| |
|
|
|
|
| |
examples code cleanup, more descriptive comments, more notes
|
|
|
|
|
| |
refactored timers and added interrupt behavior. see notes and
comments... also includes a crude vga hack that doesn't use timers.
|
| |
|
|
|
|
|
|
| |
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.h from libmaple. Will have another pass through to use
the standard libmaple types, but will come in another commit.
|
|
|
|
|
| |
Conflicts:
Makefile
|
|
copy-to-ide and Makefile updated to conform; .gitignore added;
LICENSE added
|