Other Parts Discussed in Thread: TMS320F2800137
Tool/software:
Hi,
I am developing a BLDC ESC with DRV8317 driver IC and TMS320F2800137 microcontroller. Later is supplied by LDO from DRV8317. I am using the same nSLEEP circuit as it is used in EVM board, where 3.3V Zener diode is used with 10kOhm pull-up to VDC. I do not need to use sleep mode on DRV8317, but short pulse is needed to reset the faults (as described in datasheet). The problem is when the nSLEEP GPIO fom F2800137 is configured as output, the CPU looses debug connection. I believe the GPIO configuring is somehow responsible to put the DRV8317 chip into sleep mode and as a result LDO is shutdown. I can see the 3.3V voltage begining to drop down and then BOR is resetting the CPU. After that CPU is returning and again in the init routine, where GPIO is set again, everything repeats. If I am disabling the nSLEEP GPIO setup, everything works. I am working with Universal Motor Control example and the code for GPIO setup is:
// GPIO29->M1_nSLEEP, 1-Active, 0-Low Power Sleep Mode
GPIO_setPinConfig(GPIO_29_GPIO29);
GPIO_writePin(29, 1);
GPIO_setDirectionMode(29, GPIO_DIR_MODE_OUT);
GPIO_setPadConfig(29, GPIO_PIN_TYPE_STD);
When I step over GPIO_setDirectionMode, debugger shuts down. I have tried also to set this pin as open-drain (as it should be anyway) and is the same.
When I measure the voltage on nSLEEP pin, it is showing me approx. 2.5V, although I have a 3.3V Zener diode.
I am puzzled here and I need a solution, because otherwise I would not been able to reset fault conditions.
Thank you.
Jernej