I'm working on moving an existing design (based on ATMEGA168) to the new ATTINY1616.
The reason being size (20pin VQFN or even lower pin count), and built in DAC which saves me both space and components on the currently (really constrained) layout. As for needs, I only need 2 PWM outputs, 2 ADC inputs, and UART so this is perfectly fine.
It's also much cheaper than the 168PB (the latest, that I'm using now).
My issue is with the UART: for things to work properly, I need a good clock source. I am currently running at 16Mhz and communicating at 1Mbps.
With the mega168 I use 16Mhz a ceramic resonator on the XTAL pins that gives me 0.5% accuracy, which is fine for UART and for my application.
For some reason, the TINY1616 has fewer options for clock sources:
a) Internal 16Mhz oscillator which, in this processor and according to the datasheet, can get me within 2% error using factory calibration. (theoretical UART max error should be <=3% total between the two devices, so this is cutting it close).
Furthermore, the datasheet also says on a footnote they haven't exhaustively characterized this, so I'm left wondering....
b) From what I can see, pins TOSC1/TOSC2 can only have a resonator up to 32Khz, so the option to use a 16Mhz resonator is gone.
c) Another option is the EXTCLK.
This means that I either blindly trust the internal 16Mhz Oscillator accuracy or need to go with a significantly more expensive Crystal, since a 16Mhz resonator doesn't seem to be supported (or not without additional circuitry)
I also can't find any reference to a PLL that could use the 32Khz resonator to generate a more stable/reliable 16Mhz clock.
My questions are:
a) Am I reading the datasheet right? Are these all the clock options?
b) To achieve stable 16Mhz via the EXTCLK pin, is there any alternative to a Crystal that comes close to the price of a resonator?
c) Do you think using the internal 16Mhz clock, with the factory callibrations, would be a smart move, considering I am using a UART?
Thank you very much for your input,