2016-05-06 22 views

Antwort

0

Eine mögliche Lösung mit dem aktuellen Code ist zu zwei schnell genug Multiplexer hinzufügen der Echo/Triggerstifte der Sensoren (8: 1 oder 16: 1 in Abhängigkeit davon, wie viele Sensoren Sie wollen verbinden). Die erste besteht darin, zwischen Triggerverbindungen zu wechseln, und die zweite, um zwischen Echoverbindungen zu wechseln. Um den Mux zu steuern, verbinden Sie die Auswahlleitungen des Mux mit einem der GPIO-Pins (am einfachsten sind P8_14, P8_15, P8_16 und P8_18, da P8_11 und P8_12 von PRU verwendet werden).

Sie werden den vorliegenden Code so etwas wie dieses

/* Execute code on PRU */ 
printf(">> Executing HCSR-04 code\n"); 
prussdrv_exec_program(0, "hcsr04.bin"); 

/*Add code here to set GPIO pins high/low to choose the sensor */ 

/* Get measurements */ 

Mux im Allgemeinen 5 V Ein- und Ausgänge haben sich ändern müssen, stellen Sie sicher, dass Sie es Schritt auf 3 V nach unten, was Sie Ihre BeagleBone blasen werden!

Grund billig Mux haben 35ns max Reaktionszeit, die mehr ist, dass ausreichend, um die Anforderungen zu entsprechen

https://en.wikipedia.org/wiki/Multiplexer http://socrates.berkeley.edu/~phylabs/bsc/PDFFiles/DM74151A.pdf

Addition: Tie alle Triggerstifte zusammen und Mux nur die Echostifte so dass Sie nur einen Mux anstelle von 2

benötigen