This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Is there any way we can output hi & lo voltage with an array by PPI?

Hi,

I want to output a high & low voltage with an array, the array contains a sequence number, looks like: {0, 1, 0, 0, 0, 1, 1, 1, 1, 0, ...} , and the length of the array is fixed, might be 100, I know I can using the GPIO and a while loop to do that, but I want to do it without CPU, because the interval of each voltage needs less 1us, e.g every 120ns output a high or low.

I know how to use PPI, Timer, GPIO&GPIOTE, but no idea how to combine them, to take an element from the array, and put it as the output of the GPIO PIN.

Thanks

Parents
  • Hi,

     

    I want to output a high & low voltage with an array, the array contains a sequence number, looks like: {0, 1, 0, 0, 0, 1, 1, 1, 1, 0, ...}

    Unfortunately, you cannot output such a sequence with PPI and GPIOTE. You can output simpler things like toggling a GPIO based on timer input, but not actual sequences like that.

    You could use SPIM peripheral for this purpose by clocking out the specific byte pattern on MOSI.

     

    Kind regards,

    Håkon 

Reply
  • Hi,

     

    I want to output a high & low voltage with an array, the array contains a sequence number, looks like: {0, 1, 0, 0, 0, 1, 1, 1, 1, 0, ...}

    Unfortunately, you cannot output such a sequence with PPI and GPIOTE. You can output simpler things like toggling a GPIO based on timer input, but not actual sequences like that.

    You could use SPIM peripheral for this purpose by clocking out the specific byte pattern on MOSI.

     

    Kind regards,

    Håkon 

Children
Related