You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: ChangeLog.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -24,6 +24,8 @@ Changes listed here are checked in to GitHub ("master" branch unless specificall
24
24
25
25
### Planned 2.6.11
26
26
* Pending: New toolchain version.
27
+
* Make wiring.c have the functions referred to in the doc.
28
+
* Fix some of the constants for timers so that all timers can still get uniform codes specifying the portmux and (for non-TCA's) which pin within the mux it is, which matters forthe other core.
27
29
* Documentation improvements.
28
30
* Corrected bug sometimes encountered when using serial under atypical cases the causes of which remain mysterious), where it would complain about `__poll_dre_done`.
#defineTIMERD0 (0x40) // If any of these bits match it's potentially on TCD0
518
-
#defineDACOUT (0x80) /// If the high bit is set, it;s either the DAC oone of the new timers.
519
+
#defineDACOUT (0xF8) /// If the high bit is set, it;s either the DAC oone of the new timers.
519
520
#defineTIMERE0 (0x10) // I do not expect TCE and TCA to ever coexist on the same chip. TCE comes with WEX and the need for the PLL. Would they put TCA's on a part that had the infrastructre for TCEs? Doubtful
* For the millis timer, there's nothing weird here.
525
526
* But the timer table constants contain more information than that for these. When user code interprets the timer table entries it is critical to do it right:
526
527
* 1. If 0x40 is set, TCD0 can output here. bits 4 and 5 contain information on what channel, and bits 0-2 specify what the PORTMUX must be set to.
527
-
* 2. If 0x20 us set, there is a TCB can output PWM there.
528
+
* 2. If there's a TCE/TCF, if 0x90 is set, it's TCE0, 0xA0 is TCE1,
529
+
* 2. If 0x20 is set, there is a TCB can output PWM there.
528
530
* 2a. If 0x20 is set, check 0x10 - if that's set, it's the alt pin mapping. This is currently not returned by the table, and I assess it to be unlikely to be of use
529
531
* 4. If 0x10 is set, it's a TCA0 pin. This is never used in the timer table, but digitalPinToTimerNow() can return it.
530
532
* 5. If 0x08 is set, it's a TCA1 pin. This is never used in the timer table, but digitalPinToTimerNow() can return it.
## Why do the few pieces of documentation mentioning this speak as though it were impossible to give better compile errors?
405
+
406
+
This is a bit of a puzzler. It appears that the names are "set in stone" when the C runtimes are precompiled. Which is only done for instruction set variants, and so doesn't have the names of the vectors; further, it sounds as though there's no way to get the linker to give better errors. It definitely seems that there is a communictions bottleneck between everything else, and the linker.
Copy file name to clipboardExpand all lines: megaavr/extras/Ref_Robust.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -16,7 +16,7 @@ BOD will keep the chip in reset when you it knows the voltage is too low to keep
16
16
### If you don't use BOD
17
17
You need to ask yourself a few hard questions:
18
18
*~if~ When the system is hung in production, how hard/embarrassing will it be to have to run to reset them by hand?
19
-
* If it's hard to reset the device (mounted on a 20 meter pole, in the canopy of a tree, in a drainage ditch six feet up, or worst of all, mounted on a 20 meter pole attached to the canopy of a tree growing our of a drainage ditch located at a customer site.), use the watchdog timer!
19
+
* If it's hard to reset the device (mounted on a 20 meter pole, in the canopy of a tree, in a drainage ditch six feet up, or worst of all, mounted on a 20 meter pole attached to the canopy of a tree growing out of a drainage ditch located at a customer site.), use the watchdog timer!
20
20
* Running a simple program at 20 MHz, lowering voltage until output ceases, and then restoring voltage does NOT reliably restore execution without BOD!
21
21
22
22
### A bootloader is likely the right approach if you want end users to be uploading updates
Copy file name to clipboardExpand all lines: megaavr/libraries/Logic/Tricks_and_Tips.md
+19-19Lines changed: 19 additions & 19 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -169,25 +169,25 @@ Propagation time (Tp) is in ns, and has been rounded to quarter-nanoseconds to d
169
169
Current was also measured using a bench power supply. As the power supply in quetion is known to be of low quality (typical low cost chinese import bench supply). It was deemed sufficiently accurate for this purpose, though its readings were sometimes not reproducible, leading to uncertainty about whether the discrepancy was within the microcontroller or elsewheremember, this is a sample size of 1 tested under conditions governed by expediency, not precision. I did, however, set the cpu speed to 1 MHz to reach lower voltages and to make the control numbers more useful
| 2.5 | 42 MHz | 24.1 MHz | 12.0 | 8.75 | 4 mA | 0 | 0 | At 20 Mhz, 2.4V no longer works.Raising voltage again does not fix it, power cycle needed. That is not surprising |
183
-
| 2.0 | 29 MHz | 16.6 MHz | 17.25 | 13.0 | 0 mA | 0 | 0 | Current readings obviously of |
184
-
| 1.9 | 26.0 MHz | 15.0 MHz | 19.25 | 14.0 | 0 mA | 0 | 0 | little value below here. But |
185
-
| 1.8 | 23.4 MHz | 13.4 MHz | 21.5 | 16.0 | 0 mA | 0 | 0 | This is the minimum rated voltage for these parts, and the lowest BOD voltage |
| 1.4 | 12.3 MHz | 7.1 MHz | 40.75 | 29.75 | 0 mA | 0 | 0 | At least the CCL kept at it down to 1.4v, before hitting the power on reset threshold at 1.3V |
190
-
| 1.3 | 0 MHz | 0 MHz | n/a | n/a | 0 mA | 0 mA | 0 mA | Chip below POR threshold |
| 2.5 | 42 MHz | 24.1 MHz | 12.0 | 8.75 | 4 mA | 0 | 0 | At 20 Mhz, 2.4V no longer works.Raising voltage again does not fix it, power cycle needed. That is not surprising
183
+
| 2.0 | 29 MHz | 16.6 MHz | 17.25 | 13.0 | 0 mA | 0 | 0 | Current readings obviously of
184
+
| 1.9 | 26.0 MHz | 15.0 MHz | 19.25 | 14.0 | 0 mA | 0 | 0 | little value below here. But
185
+
| 1.8 | 23.4 MHz | 13.4 MHz | 21.5 | 16.0 | 0 mA | 0 | 0 | This is the minimum rated voltage for these parts, and the lowest BOD voltage
| 1.4 | 12.3 MHz | 7.1 MHz | 40.75 | 29.75 | 0 mA | 0 | 0 | At least the CCL kept at it down to 1.4v, before hitting the power on reset threshold at 1.3V
190
+
| 1.3 | 0 MHz | 0 MHz | n/a | n/a | 0 mA | 0 mA | 0 mA | Chip below POR threshold
0 commit comments