Community
cancel
Showing results for 
Search instead for 
Did you mean: 
VSimh
New Contributor I
1,022 Views

GPIO throughput using IIO high resolution timer trigger

Jump to solution

Hello,

I have connected ADC 7606 to Galileo through SPI1 the driver is included in the kernel build. As required for any ADC module in Linux, the interface to ADC is through IIO subsystem.

I have set up the frequency to be any where between 3KHz ~ 15KHz, but if I hook up an oscilloscope to the IO2 GPIO line it shows a pwm of 2Khz max.

Any idea how I can get generate high frequency PWM WITHOUT the use of arduino or cypress io chip.

Problems of arduino is it hasn't got any buffering mechanism to read the SPI data hence data would be lost.

PWM generate with cypress io expander are not accurate as they are implemented over i2c interface and there by cause jitter.

 

Regards

Simba

 

Tags (1)
0 Kudos
1 Solution
Juan_M_Intel
Employee
139 Views

Hi Simba,

I'm not sure if those speeds can be met that way. Another option would be to have an external PWM chip, something similar to http://www.linear.com/product/LTC6992-1 this one. Then you could control the duty cycle of the PWM with the board. I hope you find this helpful.

Regards,

 

JPMontero_Intel

View solution in original post

3 Replies
Juan_M_Intel
Employee
140 Views

Hi Simba,

I'm not sure if those speeds can be met that way. Another option would be to have an external PWM chip, something similar to http://www.linear.com/product/LTC6992-1 this one. Then you could control the duty cycle of the PWM with the board. I hope you find this helpful.

Regards,

 

JPMontero_Intel

View solution in original post

VSimh
New Contributor I
139 Views

Hi JPMontero_Intel

Thanks I will check the PWM chip.

Any Idea what is the max frequency Galileo IO pin that are connected to Quark SoC can generate. In which document can I find this characteristics.

Regards,

Simba

Juan_M_Intel
Employee
139 Views

Hi Simba,

I was browsing through the community and I found /thread/54138 this post where they generate 38kHz PWM for an IR signal. You might want to check it out, they are using Arduino IDE sketch with a fast output on pin 2. It might give you some ideas on how to reach this speed. Regarding the fastest speed, by using sysfs the fastest speed we were able to get was 14 kHz (http://www.malinov.com/Home/sergey-s-blog/intelgalileo-programminggpiofromlinux this is the method we used), but I know faster speeds can be reached with the IDE, but I'm not sure which is the maximum speed and still getting a clean square signal. I hope this helps.

Regards,

 

JPMontero_Intel
Reply