Autor Tema: Funcion Map en CCS C  (Leído 4010 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado jumu

  • PIC12
  • **
  • Mensajes: 83
Funcion Map en CCS C
« en: 19 de Mayo de 2015, 18:45:33 »
Buenas tardes a todos, ya dias no entraba por aca.
Bueno tengo un proyecto personal de hacer un robot balancin, ya tengo el test con el MPU6050 y todo bien, me estaba guiando con un ejemplo sencillo que esta hecho en arduino seria como lo basico para luego mejorarlo, ahora llego a una parte donde usan la funcion map() de arduino y mapean para que la velocidad este entre -255 y 255 aqui  un pedazo del codigo...
Código: [Seleccionar]
void Motors(){
101
  if (speed > 0)
102
  {
103
    //forward
104
    analogWrite(AIN1, speed);
105
    analogWrite(AIN2, 0);
106
    analogWrite(BIN1, speed);
107
    analogWrite(BIN2, 0);
108
  }
109
  else
110
  {
111
    // backward
112
    speed = map(speed,0,-255,0,255);
113
    analogWrite(AIN1, 0);
114
    analogWrite(AIN2, speed);
115
    analogWrite(BIN1, 0);
116
    analogWrite(BIN2, speed);
117
  }
118
}
lo demas ya me salio bien solo queda eso de los motores, y queria saber si alguien sabe como hacer la funcion map(), ya busque en la pagina de arduino y copio el mismo codigo pero no funciona bien o no se si lo estoy haciendo mal, alguien lo tiene? o mejor lo hago de otra forma?...
muchas gracias.

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re: Funcion Map en CCS C
« Respuesta #1 en: 19 de Mayo de 2015, 18:59:29 »
Código: C
  1. long map(long x, long in_min, long in_max, long out_min, long out_max)
  2. {
  3.   return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
  4. }

De

http://www.arduino.cc/en/pmwiki.php?n=Reference/Map


 

anything