0566badcef
Add memory barrier, optimal interrupt on-off
...
Disabling an ISR on ARM has 3 instructions of latency. A Memory barrier is REQUIRED to ensure proper and predictable disabling. Memory barriers are expensive, so avoid disabling if already disabled (See https://mcuoneclipse.com/2015/10/16/nvic-disabling-interrupts-on-arm-cortex-m-and-the-need-for-a-memory-barrier-instruction/ )
2018-05-20 02:39:34 -05:00
c2fb2f54a1
Use assembly for AVR ISR vectors
...
Co-Authored-By: ejtagle <ejtagle@hotmail.com >
2018-05-20 01:58:51 -05:00
206014a957
Fix LPC176x timer functions
...
Co-Authored-By: ejtagle <ejtagle@hotmail.com >
2018-05-20 01:58:51 -05:00
59f7861bcb
Move backtrace to the HAL folder ( #10790 )
2018-05-20 01:33:21 -05:00
c173a31060
Fix some compile warnings
2018-05-19 16:54:48 -05:00
9b64fdbc3a
[LPC176x] HAL: Add missing program space definition ( #10776 )
2018-05-19 15:37:54 -05:00
50270b53a0
Clear up some more compile warnings
2018-05-17 18:40:49 -05:00
40d7e12827
Removing warnings from compilation
2018-05-17 18:04:22 -05:00
fb608938f8
Prevent compilation of unused u8g-oriented code
2018-05-14 13:31:04 -05:00
37b15fe4cf
Reorder HAL timer header items
2018-05-13 16:50:39 -05:00
883b0c9880
Convert custom maths to inlines ( #10728 )
2018-05-13 08:10:08 -05:00
99ecdf59af
Smarter MIN, MAX, ABS macros
...
Use macros that explicitly avoid double-evaluation and can be used for any datatype, replacing `min`, `max`, `abs`, `fabs`, `labs`, and `FABS`.
Co-Authored-By: ejtagle <ejtagle@hotmail.com >
2018-05-13 04:52:56 -05:00
9d98a62699
Followup to HAL optimizations and delays
...
- Cleanups, fixes for Due HAL code.
- TC_IER is write-only. Use TC_IMR to test ISR state.
2018-05-13 00:46:23 -05:00
a1062eec5b
Better handling of DELAY_NS and DELAY_US ( #10716 )
...
Co-Authored-By: ejtagle <ejtagle@hotmail.com >
2018-05-12 08:34:04 -05:00
1b225a2809
DUE: Emergency parser for the USB CDC
2018-05-12 02:12:11 -05:00
0436e16fb2
Apply shorthand Assembler macros
2018-05-08 10:08:54 -05:00
d1b619be52
Standardize some hexadecimals
2018-05-08 09:19:18 -05:00
81b632c255
Additional temp-oriented improvements
2018-05-02 08:43:22 -05:00
e911635fb1
Add thermocouple with AD8495 support
2018-05-02 08:43:16 -05:00
3f68203324
Modify FastIO error message
2018-04-28 20:27:36 -05:00
a474a7e675
Correct AVR_ATmega328_FAMILY macro
...
…as with #10540
Co-Authored-By: per1234 <per1234@users.noreply.github.com >
2018-04-27 03:13:46 -05:00
456cf971af
HAL FastIO cleanup and fixes
2018-04-26 00:40:16 -05:00
5b5e322356
Set Interrupt Priorities and Grouping for STM32F103. ( #10517 )
2018-04-26 00:21:16 -05:00
2578996631
[2.0.x] Emergency parser for multiple serial ports ( #10524 )
2018-04-25 20:58:00 -05:00
2242b98248
[LPC176x] Emergency Parser Feature ( #10516 )
2018-04-25 06:44:26 -05:00
c1e5ebbc1e
[2.0.x] AVR: Atomic bit set and clear of upper pin ports without critical section ( #10502 )
...
* AVR: Atomic bit set and clear
The critical section can be dropped, saving 3 cycles per access. Also simplified pin toggling for all ports.
2018-04-24 13:45:43 -05:00
a3ce8a3fcd
Add sanity checks for EMERGENCY_PARSER
2018-04-24 09:24:26 -05:00
0c428a66d9
Proper AVR preemptive interrupt handling ( #10496 )
...
Also simplify logic on all ARM-based interrupts. Now, it is REQUIRED to properly configure interrupt priority. USART should have highest priority, followed by Stepper, and then all others.
2018-04-23 22:05:07 -05:00
f423e54f77
Strip trailing spaces
2018-04-23 18:00:43 -05:00
cb46cb8480
Add HAS_HEATED_BED conditional ( #10495 )
2018-04-23 17:13:01 -05:00
dea686cf55
Define short pin names in fastio for STM32 ( #10461 )
2018-04-20 14:54:35 -05:00
428c54f2ad
[2.0.x] HAL for STM32F4 ( #10434 )
2018-04-17 17:33:29 -05:00
20772492aa
Fix compile warnings in AVR fastio.h ( #10440 )
2018-04-17 17:26:57 -05:00
c9aed73987
Fix missed includes from HAL macro patch ( #10416 )
2018-04-15 18:27:34 -05:00
29dda871cb
Patch "upload_disk" to make python happy
2018-04-13 22:27:08 -05:00
cc6d41e1d3
Use a macro for HAL header redirection ( #10380 )
2018-04-12 20:25:08 -05:00
85014cd132
[2.0.x] LPC1768 - automatic selection of upload disk ( #10374 )
2018-04-11 14:41:16 -05:00
44a697ab04
Set STM32F1 TEMP_TIMER_FREQUENCY to 1K
...
Responding to https://github.com/MarlinFirmware/Marlin/pull/8833#issuecomment-379426803
2018-04-08 01:08:05 -05:00
9ff4e9e1e6
Patch _IS_HW_SPI so defined() works
2018-04-07 23:29:00 -05:00
0e8242180d
Chamber temperature monitoring and auto fan control.
...
This is an initial cut for feedback, updated for 2.0.x.
Chamber temperature is currently reported along with hot end and bed
temperatures to serial. The format is just like that used for hot end
and bed temperatures, but using 'C' prefix. As there is no heater,
target is always 0. Is this appropriate, is there a better way to report
chamber temperatures?
Chamber temperatures are not reported on the LCD in any way.
When auto chamber fan is enabled, it currently just uses the same
temperature threshold as the other auto controlled fans.
As the chamber temperature is not connected to any heater, it doesn't
undergo mintemp/maxtemp monitoring. This would need to change in the
future if chamber heating became a feature.
2018-04-06 23:09:06 -05:00
acda4ecb20
Fix DUE Trinamic SW/HW SPI sanity check ( #10336 )
2018-04-06 22:22:30 -05:00
ab715c70d1
TMC SPI sanity-check and pins debugging ( #10324 )
2018-04-06 20:24:54 -05:00
902c885782
Switch to TMC2130 compatible hardware SPI & misc ( #10299 )
2018-04-04 20:13:27 -05:00
93305a2d5e
Fix some spellings
2018-04-02 03:03:37 -05:00
889fd5f71f
Backtrace minor cleanup
2018-03-31 18:59:36 -05:00
cbdc78ec0f
Fix STM32 compilation with PlatformIO ( #10245 )
2018-03-28 18:35:20 -04:00
749f19e502
[2.0.x] Move backtrace to a shared location ( #10237 )
...
- And implement the `backtrace()` function call
2018-03-28 14:13:20 -04:00
7dc256432f
Restore STM32F1 series to working order. ( #10229 )
...
The `_O2` attribute is no longer needed on the malyanlcd function, and the macros have broken timer numbers - reset this to a function to return the right device. Also fix the bit order cast in SPI.
2018-03-28 14:07:52 -04:00
8934a2c49b
Added some missing Thumb instructions to the traceback follower, so now it is able to traceback through switch() statements
2018-03-27 04:30:38 -03:00
328edea03a
Several fixes to the backtracer. Tested ant it works
2018-03-26 03:42:54 -03:00