Programa Serie Para Maestro - Pololu 3pi Guía De Usuario

Tabla de contenido
258.
case (char)0xB9:
259.
do_lcd_goto_xy();
260.
break;
261.
case (char)0xBA:
262.
auto_calibrate();
263.
break;
264.
case (char)0xBB:
265.
set_pid();
266.
break;
267.
case (char)0xBC:
268.
stop_pid();
269.
break;
270.
case (char)0xC1:
271.
m1_forward();
272.
break;
273.
case (char)0xC2:
274.
m1_backward();
275.
break;
276.
case (char)0xC5:
277.
m2_forward();
278.
break;
279.
case (char)0xC6:
280.
m2_backward();
281.
break;
282.
default:
283.
clear();
284.
print("Bad cmd");
285.
lcd_goto_xy(0,1);
286.
print_hex_byte(command);
287.
play("o7l16crc");
288.
continue; // bad command
289.
}
290.
}
291.
}
10.b Programa serie para maestro.
El programa maestro serie usado en el programa esclavo está incluido en la librería Pololu AVR
Library (ver
Section
con un LV-168 o en el 3pi como una demostración de lo que es posible, pero probablemente
quieras adaptarlo a tu propio controlador. Para utilizar el programa, debes hacer las siguientes
conexiones entre maestro y esclavo:
GND-GND
Enciende ambos maestro y esclavo. El master mostrará un mensaje "Connect" seguido de la
versión del código esclavo (Ej. "3pi1.0"). El maestro da instrucciones al esclavo para mostrar
"Connect" y tocar una pequeña melodía. Pulsa el botón B en el maestro lo que causará que el
esclavo entre en la rutina de auto-calibración, después puedes manejar el esclavo usando los
botones a y C en el maestro, mientras ves los datos de los sensores en la LCD.
Si pulsas B el esclavo entra en seguimiento de línea PID.
Código fuente
1.
#include <pololu/orangutan.h>
2.
#include <string.h>
3.
/*
4.
* 3pi-serial-master - An example serial master program for the Pololu
5.
* 3pi Robot.
6.
* it is intended as an example of how to use the master/slave
7.
* routines.
8.
*
*
http://www.pololu.com/docs/0J21
*
http://www.pololu.com/docs/0J20
11.
*
http://www.poolu.com/
12.
*/
13.
// Data for generating the characters used in load_custom_characters
14.
// and display_readings.
15.
// offsets, we can generate all of the 7 extra characters needed for a
16.
// bargraph.
17. const char levels[] PROGMEM = {
18.
0b00000,
5.a) en
libpololu-avr\examples\3pi-serial-master
PD0-PD1
This can run on any board supported by the library;
By reading levels[] starting at various
This is also stored in program space.
. Está diseñado para correr
PD1-PD0
Tabla de contenido
loading

Tabla de contenido