massimilianonball
22-02-2019, 12:58
Ciao a tutti, vi scrivo perché mi sono un po' incartato nelle ricerche per un progetto che sto portando avanti nel tempo libero.
In pratica, come da titolo della discussione vorrei riuscire ad interfacciare una raspberry tramite i suoi GPIO (https://www.raspberrypi.org/documentation/hardware/raspberrypi/gpio/README.md) con con un ricevitore di radio per modellismo che lavora in PWM (o anche PPM volendo). Il problema è già stato ampiamente affrontato (https://www.google.it/search?hl=it&ei=HOtvXIe6KvDgsAeO2JWgCg&q=raspberry+pwm+rc+receiver&oq=raspberry+pwm+rc+receiver&gs_l=psy-ab.3..35i39.146672.152174..152887...1.0..1.303.5402.0j12j13j1......0....1..gws-wiz.......33i160j0i19j0i22i30i19j0i67j0i20i263j0j0i203j0i22i30.FFT_0ocOl9E); spesso accoppiando la raspberry con arduino o con convertitori analogico/digitale tipo l'mcp3008 (https://learn.adafruit.com/raspberry-pi-analog-to-digital-converters/mcp3008).
Il problema è che praticamente in moltissimi casi la raspberry legge i segnali con programmi (python o c++) in polling con dei cicli..
Di conseguenza non solo non ho letture in tempo reale, ma spessissimo la raspberry lavora con cicli di tempo ridottissimi proprio per avere letture il più possibile attendibili: vuol dire farla lavorare occupando il 50% e oltre di CPU ed è una roba abominevole..
Volevo sapere se qualcuno conosce un metodo per ottenere gli stati dei canali del ricevitore in "push", tipo un qualcosa basata sugli interrupt (https://medium.com/@rxseger/interrupt-driven-i-o-on-raspberry-pi-3-with-leds-and-pushbuttons-rising-falling-edge-detection-36c14e640fef) o robe del genere, grazie!!
In pratica, come da titolo della discussione vorrei riuscire ad interfacciare una raspberry tramite i suoi GPIO (https://www.raspberrypi.org/documentation/hardware/raspberrypi/gpio/README.md) con con un ricevitore di radio per modellismo che lavora in PWM (o anche PPM volendo). Il problema è già stato ampiamente affrontato (https://www.google.it/search?hl=it&ei=HOtvXIe6KvDgsAeO2JWgCg&q=raspberry+pwm+rc+receiver&oq=raspberry+pwm+rc+receiver&gs_l=psy-ab.3..35i39.146672.152174..152887...1.0..1.303.5402.0j12j13j1......0....1..gws-wiz.......33i160j0i19j0i22i30i19j0i67j0i20i263j0j0i203j0i22i30.FFT_0ocOl9E); spesso accoppiando la raspberry con arduino o con convertitori analogico/digitale tipo l'mcp3008 (https://learn.adafruit.com/raspberry-pi-analog-to-digital-converters/mcp3008).
Il problema è che praticamente in moltissimi casi la raspberry legge i segnali con programmi (python o c++) in polling con dei cicli..
Di conseguenza non solo non ho letture in tempo reale, ma spessissimo la raspberry lavora con cicli di tempo ridottissimi proprio per avere letture il più possibile attendibili: vuol dire farla lavorare occupando il 50% e oltre di CPU ed è una roba abominevole..
Volevo sapere se qualcuno conosce un metodo per ottenere gli stati dei canali del ricevitore in "push", tipo un qualcosa basata sugli interrupt (https://medium.com/@rxseger/interrupt-driven-i-o-on-raspberry-pi-3-with-leds-and-pushbuttons-rising-falling-edge-detection-36c14e640fef) o robe del genere, grazie!!