S12ZVC HVI input voltage range and setting

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

S12ZVC HVI input voltage range and setting

Jump to solution
810 Views
daehyeonkim
Contributor II

Hello,

 

I'm considering using HVI pin for wake-up function. the input voltage of the wake-up signal would be 12~14V

I have a few question for it..

 

1. is it needed to be a digital input to detect a wake up signal (DC 12V)?

 

2. in the datasheet, the structure of internal pull down resistor is this..

[Figure 2-37]

HV supply(12V) ----------- [ 10K ] ----- [ HVI pin ] ------ [ 40K ] ------  [  610K / 1050K  ] -----GND

                                 l                                                                 l

                               SW ------ GND                                        Digital in

 

simply calculated this regarding as voltage divider, in case of the variable resister is 610K,

Digital in is 11.1V and 1050K, 11.454V..

this is not a mcu voltage level.. is this the right way for designing HVI?

if this is wrong, how to calculate this?

 

extra) if you have a example source for HVI or know where it is, please notiy me..

 

thank you

Labels (1)
Tags (1)
1 Solution
524 Views
RadekS
NXP Employee
NXP Employee

Hi Daehyeon,

1. Yes, the Port L pin has to be configured into the digital mode when we want to use interrupt (in run mode) / wake-up (in stop mode) feature.

2. In the Digital Mode Operation (DIENL=1 & PTAENL=0) is this voltage divider disabled (PTAENL=0) and input voltage is detected directly through 50k (10k external + 40k internal) current limited link by port L input buffer. This input buffer is slightly different than input buffer at standard GPIO pins and the threshold voltages are specified in Table G-1 in RM.

Since there is high impedance at Port L pin input, the pin is not directly clamped to VDDX power supply rails.

 

Unfortunately, I am afraid that we don’t have any special example project for HWI wake-up. But for HVI0 you may try something like:

interrupt 79 void PortL_ISR(void)
{
    
    /* DO SOMETHING HERE */
       
    PIFL = 0x01;      // clear flag to exit interrupt routine
  
}

void main(void) {
  /*** Digital input ** Support wakeup from stop ***/
  PTAENL_PTAENL0 = 0; // PL0 disconnect from ADC channel
  DIENL_DIENL0 = 1;   // Enable digital input buffer
  //////////////////////////////////////////////////
  asm ANDCC #0x7F;    // clear S bit - enable the stop mode. If the S bit is not
                      // cleared then STOP instruction has no effect and is 
                      // executed as a dummy instruction NOP.
  EnableInterrupts;
  
  for(;;) {
    asm STOP;           
  } 
}‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

I hope it helps you.

Have a great day,
Radek

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

View solution in original post

1 Reply
525 Views
RadekS
NXP Employee
NXP Employee

Hi Daehyeon,

1. Yes, the Port L pin has to be configured into the digital mode when we want to use interrupt (in run mode) / wake-up (in stop mode) feature.

2. In the Digital Mode Operation (DIENL=1 & PTAENL=0) is this voltage divider disabled (PTAENL=0) and input voltage is detected directly through 50k (10k external + 40k internal) current limited link by port L input buffer. This input buffer is slightly different than input buffer at standard GPIO pins and the threshold voltages are specified in Table G-1 in RM.

Since there is high impedance at Port L pin input, the pin is not directly clamped to VDDX power supply rails.

 

Unfortunately, I am afraid that we don’t have any special example project for HWI wake-up. But for HVI0 you may try something like:

interrupt 79 void PortL_ISR(void)
{
    
    /* DO SOMETHING HERE */
       
    PIFL = 0x01;      // clear flag to exit interrupt routine
  
}

void main(void) {
  /*** Digital input ** Support wakeup from stop ***/
  PTAENL_PTAENL0 = 0; // PL0 disconnect from ADC channel
  DIENL_DIENL0 = 1;   // Enable digital input buffer
  //////////////////////////////////////////////////
  asm ANDCC #0x7F;    // clear S bit - enable the stop mode. If the S bit is not
                      // cleared then STOP instruction has no effect and is 
                      // executed as a dummy instruction NOP.
  EnableInterrupts;
  
  for(;;) {
    asm STOP;           
  } 
}‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

I hope it helps you.

Have a great day,
Radek

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------