I'am using KL25Z128 with 8 MHZ. external osc. I need output start signal 60ns. after cacth 30ns data ready signal. But i coudnt. I cant down nanoseconds. I use minimum pin out signal 12us. How can i up to pin out / read speed

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

I'am using KL25Z128 with 8 MHZ. external osc. I need output start signal 60ns. after cacth 30ns data ready signal. But i coudnt. I cant down nanoseconds. I use minimum pin out signal 12us. How can i up to pin out / read speed

346 Views
c_emreoz
Contributor I

I'am using KL25Z128 with 8 MHZ. external osc. I need output start signal 60ns. after   cacth 30ns data ready signal. But i coudnt. I cant down nanoseconds. I use minimum pin out signal 12us. How can i up to pin out / read speed

Labels (1)
0 Kudos
1 Reply

237 Views
xiangjun_rong
NXP TechSupport
NXP TechSupport

Hi, C.Emre OZ,

I think it is possible that you output a 60nS signal after you catch a 30nS data ready signal.

I suppose you use GPIO interrupt to capture the 30nS data ready signal, assume that you run the KL25 in 48MHz with FEI or FEE mode, the minimum GPIO pulse width is 1.5 Bus clock, the BUS clock frequency is 24MHz, so the required minimum GPIO pulse width is 60nS, can you generate GPIO interrupt with 30nS pulse?

If you can generate interrupt with GPIO, in the ISR of GPIO, you can set a GPIO pin, then clear it in the next line. for example

void ISROFGPIO(void)

{

set GPIO;

clear GPIO;

}

I suggest you use assembly language so that the setting GPIO is a single clock instruction. If you use C code to set a GPIO bit, the C compiler will assign the GPIO data address to a register, set a bit in the register, it will take several assembly instruction.

The KL family supports Bit Manipulation Engine, it enable you set a bit in one clock cycle based on 48MHz core clock.

Pls refer to AN4838 for BME.

hope it can help you.

BR

XiangJun Rong

0 Kudos