2017-12-30 07:23 AM
I started designing a product with a STM32L432KCU6. Looking at the datasheet I noticed that the HSI16 clock seems to be very accurate. From Figure 14, p 95, it seems that the clock is pretty much within 16MHz +/- 1.5% for the -20C to 100C range. In comparison, for older parts (e.g. F405) the HSI clock is +/- 4% for the -10C to 85C range.
Does anyone know if this is accurate? It seems to me that this means I shouldn't have to use an external crystal, which would be nice as it reduces cost and board space, and also frees up some IOs . I plan to use UARTS with bit rates up to 115kbps, but a clock variation of 1.5% should be OK for this.
Thoughts?
#stm32l42017-12-30 07:44 AM
For something to be 'accurate' you'd look for numbers in ppm or ppb, not percentages.
Serial UART can be very sloppy (+/-5% or worse), where you need accurate clocks are Ethernet, USB and CAN
Crystals, which might be off in frequency, don't vary second-to-second in the way you're likely to observe RC sources.
2017-12-30 07:57 AM
Thanks for the input! I will be using USB as well, but the HSI48 can be adjusted based on the USB clock (clock recovery circuit), which is intended to enable crystal-less operation.
So, do you think HSI16 will be good enough for UART communication or should I be worried about the '
second-to-second
frequency variation' you mentioned?
2017-12-30 09:44 AM
High Speed USB expects +/-500ppm (0.05%)
I would avoid crystal-less USB, you save a few cents on the design at the expense of having a product viewed as unreliable, and with high support costs.
Serial UART can tolerate a lot of bit clocking error, easily more than 5% in OVER16 mode, so the HSI or MSI sources should have no problem