| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Simple USART receiver to SRAM buffer demo partially working.
Interrupting when buffer is full fails mysteriously. GDB thinks
we ended up in an STM32 reserved exception.
|
| |
|
| |
|
|
|
|
|
| |
USART refactor commit f6f9a1122706ed336c52c984d76219dee0594487 only
worked for USART1.
|
|
|
|
|
|
|
| |
* usart_enable(): Doxygen comment bugfix.
* usart_disable(): previously, usart_disable() would nuke the
entire CR1 register just to clear the UE bit.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
For the changelog:
* util.h is free of __read(), __write(), etc. macros.
* systick_resume() was renamed systick_enable().
|
| |
|
| |
|
|
|
|
|
|
|
| |
Adding basic ring_buffer test (cherry-pick from master).
Changing rb_safe_insert()'s type to match that of rb_push_insert().
(Makes it easier to pass around insertion functions.)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added an adc_dev to struct stm32_pin_info. This was necessary to add
support for the channels on the Native which are only connected to
ADC3, but it does add a bunch of NULLs to the PIN_MAPs.
I don't think any other peripherals need representation on a per-pin
basis. Each peripheral library will be responsible for keeping track
of related GPIO ports and bits, and we can throw #defines in to
boards/*.h for other things (e.g. BOARD_SPI1_MISO_PIN).
Fleshed out the ADC refactor and brought it more in keeping with the
new design as it evolves.
A couple of other tweaks. Notably: waitForButtonPress() now takes a
default argument meaning "wait forever".
Removed Maple-specific documentation from core functions in io.h; this
information will need to go into the individual board docs files.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
/wirish/boards/ contains xxx.h and xxx.cpp (for xxx=maple,
maple_native, maple_mini, maple_RET6). The headers contain the
board-specific #defines that used to live in boards.h (except
BOARD_INIT, which was removed). The CPP files contain the PIN_MAP
definitions that used to live in boards.cpp, and a proper boardInit()
function to replace the old BOARD_INIT macro. This will make it
easier to add new boards in the future.
struct PinMapping was renamed struct stm32_pin_info, and was moved
into a new wirish_types.h. Its external interrupt field was moved
into struct gpio_dev, which saves memory by storing an afio_exti_port
per port, rather than one per pin. Also rearranged the stm32_pin_info
fields to improve packing. Maple's PIN_MAP is now down to below 500
bytes.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
| |
Older refactor commit e4807a5010f59ab863ad2c96dc14caf65bf1ae60 used
bit-banding in rcc_clk_init() to set RCC_CR_HSEON, which doesn't work
for some reason. Not going to try to figure out why.
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
examples/test-fsmc.cpp
libmaple/rules.mk
wirish/boards.h
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Squashed commit of the following:
commit 4d6662dadfda7f2fd55107535165dc98a0638a3c
Merge: 174d9ab 7ddc844
Author: Marti Bolivar <mbolivar@leaflabs.com>
Date: Fri Mar 4 23:18:29 2011 -0500
Merge remote branch 'origin/refactor' into refactor
commit 174d9ab73cc3387a3812e6f3d3e97519bf5b2150
Author: Marti Bolivar <mbolivar@leaflabs.com>
Date: Fri Mar 4 23:16:53 2011 -0500
USBSerial docs fix.
commit f217acb73d94f0a88bf33a42684e6e988dcb3685
Author: Marti Bolivar <mbolivar@leaflabs.com>
Date: Fri Mar 4 20:25:26 2011 -0500
Brought examples/ up to date; PIN_MAP bugfix for D24.
commit c4ba3ba05fc39ef260cd80d91759966952df74ae
Author: Marti Bolivar <mbolivar@leaflabs.com>
Date: Fri Mar 4 19:16:42 2011 -0500
Cosmetic/documentation changes to adc.c
commit e7747b4eb831621951deef6d31629f55cb5c3500
Author: Marti Bolivar <mbolivar@leaflabs.com>
Date: Fri Mar 4 19:16:07 2011 -0500
Cosmetic changes to wirish/main.cxx
commit e2f9d4116e59d8487c936989384228ea084a3501
Author: Marti Bolivar <mbolivar@leaflabs.com>
Date: Fri Mar 4 19:15:24 2011 -0500
Untabifying docs/source/conf.py
commit 7ddc84481b4eebe337065a0219e3d8dc000791e5
Author: Perry Hung <iperry@gmail.com>
Date: Wed Mar 2 00:30:19 2011 -0500
cscope: Find .S instead of .s files
commit 62cb09ed6357eae58b0234fbc074c44e9c0aa5e5
Author: Marti Bolivar <mbolivar@leaflabs.com>
Date: Wed Mar 2 00:07:10 2011 -0500
Fixing typo in main.cpp.example.
|
| | |
|
| |\ |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
This reverts commit e4807a5010f59ab863ad2c96dc14caf65bf1ae60.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
http://forums.leaflabs.com/topic.php?id=687
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
|/ / |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
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.
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
DAC header and source slightly cleaned up. Test on Maple Native prototype. Add
flags parameter to allow selective enabling of channels.
|
| | |
|
|/
|
|
|
|
| |
ADC routines rewritten, support for ADC2, 3, added.
Signed-off-by: Marti Bolivar <mbolivar@leaflabs.com>
|