Comments (16)
@killerkalamari The Arrows, you'll note, are going into pins 2 and 6 within each port; those are the "fully asynchronous" pins, which are able to wake the chip from sleep modes during which the main oscillator has been stopped (ie, anything that actually saves enough power to bothet with). Also on other pins in order to be confident that you will detect a very brief pulkse on the pin, you need to meet the nyquist criteria, you need the pulse to last longer than a clock cycle. But when the fully async pins are configured as interrupt sources they can recognize detect significantly shorter pulses. This does also mean that, when used as interrupt sources (which is where tthis behavior is relevant), they are also more sensitive to noise, on "Rising" and "falling" interrupts (instead of just "change" or "low level" in sl
from dxcore.
See section 18.3.3 of the AVR128DB datasheet or section 17.3.3 of the AVR128DA datasheet for more information. All modern AVRs are like that, by the way. I thin kthe interrupts can also retrigger more frequently
from dxcore.
I'm the one that has created all the pinout pics for the AVR DA series, so I guess it's my job to make the AVR DB ones too. But you got all information you need to answer your own question. You have the AVR DB datasheet where all the peripherals are mapped to the GPIOs in a nice table, and if you need to refer to Arduino pins, you can use the PIN macros: digitalWrite(PIN_PA7, HIGH);
from dxcore.
I haven't had this confirmed by @SpenceKonde himself, but I'm pretty sure this one is correct. Very, very similar to the DA series:
from dxcore.
Oh, shit, I did forget to get back to you on that didn't I?
Well, they have since admitted that the one errata that would have tempted me to do things differently were it fixed (TCD0 hosed except on PORTA) is present on the DB-series too, so...
The MVIO supply pin, they call it "VDDIO2"
And ugh, Oh yeah, this was why I initially deferred responding, because I was unhappy about the box I was being forced into on PORTA.
I guess we move the two TCD0 PWM pins to PA6 and PA7, because otherwise for anyone using a crystal, that's going to be their serial monitor... Uuuuugh... on my next rev of breakout boards, I guess I will be defaulting to the serial header being on those pins with a pair of solder bridge jumpers you can change to connect PA0, PA1 instead, I guess).
Regarding the TCD PWM pins, part of me really wants to make it so it gives you whichever two pins out of the 4 that you write to first >.> Would even provide a graceful way out of the inevitable "okay, great they fixed it, now how to I expose that when there's still a ton of busted hardware out there" situation if it were extended to let you do it for the port too... (well, I guess they could just leave it broken like they did with all the stuff on the 0/1-series)...
from dxcore.
(but to be clear, I won't have time to do what I dream of with TCD0 any time soon - wouldn't that be neat though?)
from dxcore.
Thanks for the pinout, but I recently checked the datasheet and shouldn't TX/RX functionalities from pins PE0 and PE1 be reversed? Same thing for the DA series pinout.
from dxcore.
Yup, never noticed that, heh.... Yeah, TX always on pins 0, alt 4, RX on pins 1, alt 5, for DA and DB
For the ones coming down the pike after that though - it looks like the dart-throwing monkeys from the Atmel days managed get their jobs back >.> (they've got the standard ones, but also looks like a whole bunch of additional wacky ones)
from dxcore.
Thanks for the pinout, but I recently checked the datasheet, and shouldn't TX/RX functionalities from pins PE0 and PE1 be reversed? Same thing for the DA series pinout.
Thanks! That has just slipped through...
@SpenceKonde can you tell me exactly which pins to label as TCD0 outputs? And is there anything else that's wrong/missing apart from the VDDIO2 label?
from dxcore.
FlexTCD will not be implemented in the near term.... soooo TCD0 on PA6. PA7 for the forseable future. I can MS-paint move around the TCD0 labels though, if worse comes to work.
from dxcore.
Yeah, TCD0 on PA6, PA7, amd the correction on the PE TX/RX serial pins, and the MVIO supply pin named VDDIO2 and this should be good to go, thanks :-)
from dxcore.
Please look through all of them to make sure there are no errors in there.
from dxcore.
Thanks - my initial impression is that these look good; will do another pass as I get to come back to the cores after finishing work for a client today, but they are now checked in.
from dxcore.
I notice that some of the pins have dots and some have arrows. What is the significance of an arrow vs a dot?
from dxcore.
Thanks for the great explanation! Possible errata (or Tindie spoiler?) the AVR128DB28 pinout has an "LED" marking on pin 1.
from dxcore.
from dxcore.
Related Issues (20)
- USING TIMERA0 WITh AVRXXDD20 get error HOT 11
- SPI and ISRs -- Why? I have the answer for you. HOT 18
- Question about changes to core files (Information Request) HOT 31
- EEPROM with new AVR EA CPU HOT 3
- millis/micros timer disabled wedges DD part HOT 10
- Comparator Reference Voltages Incorrect? HOT 3
- Optiboot_dx build fails on various alternative baud rates HOT 4
- TWI name classification not perfect. (Information Request) HOT 22
- DD series: Error in digitalPinToAnalogInput macro in pins_arduino.h HOT 3
- 10bit DAC with analogWrite give have only 8bit resolution (DD series and other?) HOT 1
- Add DXCORE AVR128DB64 to Library HOT 2
- Menu with optimization level. HOT 1
- D7 LED not blinking after burning bootloader into 32DD14 configured for Serial on D4/D5 (Serial0, Swap3) HOT 11
- On AVR-DD Parts can't configure MVIO for Single Supply via Tools MVIO Option in Arduino IDE HOT 1
- EVENT AND COMPARATOR ISSUES WITH EA and EB parts HOT 5
- How to do OTA? AVR128DB64 HOT 2
- Wrong timer for millis() on 14-pin DD part HOT 2
- HV programmer for DD series (and newer)
- Board Manager SSH Certificate Expired HOT 2
- AVR128DB48 unexpected behaviour HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dxcore.