According to the SAMD21 datasheet
Driver Strength = 0 [“Normal” Drive strength]:
I Out Low @ 3.00-3.63V: 2.4mA
I Out High @ 3.00-3.63V: 2.0mA
Driver Strength = 1 [“Stronger” Drive strength --]:
I Out Low @ 3.00-3.63V: 10mA
I Out High @ 3.00-3.63V: 7mA
How is the device configured ? If Normal & not Stronger how can it be set to Stronger
using C commands ?
This from another forum. It compiles OK but I haven’t tested it. Hard to believe the Admins don’t see fit to answer this type question.
To increase a given pin’s driver strength and allow it to source 7mA and sink 10mA, just add the following line after calling the pinMode() function. In this example the driver strength of digital pin D7 is increased:
PORT->Group[g_APinDescription.ulPort].PINCFG[g_APinDescription.ulPin].bit.DRVSTR = 1;
Subsequent calls to the digitalWrite() function don’t affect the DRVSTR bit in any way.