| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
Some bugfixes in the external interrupt code were found along the way.
Defines for nonexistent registers removed from nvic interface.
|
| |
| |
| |
| | |
renamed SysTick_Handler back to SysTickHandler since all of our linker magic/lanchon-stm32 depends on that name. added backup register support in order to test independent watchdog support; it seems to work. next major test target is DMA support.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
Added support for non-power-of-two ring buffers.
|
| |
| |
| |
| | |
capacity. Sorted struct members by size to improve the packing.
|
| |
| |
| |
| | |
threads/interrupts. Add comments.
|
| | |
|
| | |
|
| |
| |
| |
| | |
other externs.
|
| |\ |
|
| | | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
libmaple/usb/usb.c
notes/coding_standard.txt
|
| | | | |
|
| |\ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Chose debug-serialusb version in cases of conflict.
Conflicts:
libmaple/usb/usb_callbacks.c
|
| | | | |
| | | | |
| | | | |
| | | | | |
this new function will only return AFTER the usb interrupt has been serviced and the byte is sent. Bytes should NOT fall on the floor ever with this function. (but they still do? pyserials problem?)
|
| | | | |
| | | | |
| | | | |
| | | | | |
no longer use a ring buffer. No longer double buffer a local rx buffer and the packet memory. Instead, we read out of packet memory and block it for all reads. This is going to be slower. but it tests OK (unlike the old one...).
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | | |
changed USB driver to nak whenever it cant fill an entire endpoint (64B) worth of new data. The old scheme was to set receive valid as long as as the endpoint buffer wasnt full, the new scheme is to nak until it is completely empty.
|
| | | | |
| | | | |
| | | | |
| | | | | |
notes/native-pin-definitions.txt (copied from ST datasheet).
|
| | | | | |
|
| | | | | |
|
| |/ / /
|/| | | |
|
| | | | |
|
|\| | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
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
|
|/ / / |
|
| | | |
|
| | | |
|
| |/
|/| |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Extend the wirish attachInterrupt() and detachInterrupt() interface to
work with all GPIOs.
Note: The STM32 external interrupt lines are multiplexed between GPIO
ports. While any GPIO can be used as an external interrupt, not all of
them can be used at the same time. Each EXTI[n] line selects between
PA[n], PB[n], PC[n], etc. For example, line EXTI5 can be used with STM32
pins PA5, PB5, or PC5, but not all at the same time. See table:
EXTI Line Maple Pin STM32 Pin
0 D2 PA0
0 D27 PB0
0 D15 PC0
1 D3 PA1
1 D28 PB1
1 D16 PC1
2 D1 PA2
2 D17 PC2
2 D25 PD2
3 D0 PA3
3 D18 PC3
4 D10 PA4
4 D19 PC4
5 D13 PA5
5 D4 PB5
5 D20 PC5
6 D12 PA6
6 D5 PB6
6 D35 PC6
7 D11 PA7
7 D9 PB7
7 D36 PC7
8 D6 PA8
8 D14 PB8
8 D37 PC8
9 D7 PA9
9 D24 PB9
9 D38 PC9 (BUT)
10 D8 PA10
10 D29 PB10
10 D26 PC10
11 D30 PB11
12 D31 PB12
13 D32 PB13
13 D21 PC13
14 D33 PB14
14 D22 PC14
15 D34 PB15
15 D23 PC15
|
| |
| |
| |
| |
| |
| |
| | |
Interrupts should be cleared by writing to the interrupt clear-enable
register (ICER). This commit fixes an improper read-modify-write on
NVIC_ICER[n] that incorrectly cleared interrupt-enable bits on
non-designated channels.
|
| | |
|
| | |
|
| |
| |
| |
| | |
whoops.
|
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|