Hello,
I am working with a S32K148 controller and using some of the pins as digital input and the following channels have no hysteresis: PTD7, PTD10, PTD11 and PTD12. The pins are all configured as "normal GPIO". When I connect a voltage of ~ 2.6V to one of these pins, the state of these pins keeps changing from 0/1 1/0, so the pin togle. The controller has a supply voltage of 5V, so the hysteresis should be 0.06xVDD = 0.3V. be
Does anyone have any idea what can cause this behavior?
Thanks for the measurements.
I see VDD is in the range of (4.84V; 4.99V) diff 0.15V
PTD11 (2.38V; 2.55V) diff 0.17V.
And this is only during a few micro seconds.
Maybe the application switches an external load on GPIO Outputs which results in a drop on VDD.
Can you test it with a new project where you read just the GPIO inputs and nothing more?
Do you use a bulk capacitor and decoupling capacitors on VDD?
Regards,
Daniel
Hello Daniel,
In our layout we use 100nF for each supply pin and a 10µF capacitor at the VDD.
In another project we also use the FS32K148UJT0VLUT and this project does not have many functions in this project we also have the problem that there is no hysteresis on the same pins as here.
Hello Lukas,
Do you just test the hysteresis or is there 2.6V signal on the digital inputs in a real application?
As I already mentioned, the specification guarantees that the input reads HIGH when Vin >= 0.65 * VDD and LOW when Vin <= 0.35 * VDD. The input can read either LOW or HIGH in the range between these two levels.
If this is just a test, please use a triangular input signal.
The MCU can read the input and output the result using another pin.
Regards,
Daniel
Hi @Lukas_WE,
Can you please scope VDD along with the voltage on the pin and share the results?
Anyway, the specification guarantees that the input reads HIGH when Vin >= 0.65 * VDD and LOW when Vin <= 0.35 * VDD. The input can read either LOW or HIGH in the range between these two levels.
Regards,
Daniel