Brayan Andrés Bermúdez
Published © GPL3+

Carro a control remoto PSoC4

A través de una aplicación en app inventor para android se controla un carro a control remoto hecho con PSoC por comunicación Bluetooth.

IntermediateFull instructions provided8 hours793
Carro a control remoto PSoC4

Things used in this project

Story

Read more

Schematics

Diagrama esquemático de conexiones

conexiones de Hardware

Code

Código PSoC

C/C++
Código usado en PSoC4 Pioneer KIT
#include <project.h>
void adelante();//Declaracion de el metodo para avanzar
void atras();//Declaracion de el metodo para retroceder
void derecha();//Declaracion de el metodo para girar
void izquierda();//Declaracion de el metodo para girar
void quieto();//Declaracion de el metodo para quedar en reposo

CY_ISR (interruptRx)
{
    char dato;
    
    dato=UART_GetChar();//obteniendo variable del puerto serial
    
    if (dato == 't')// verificando si la variable corresponde a la instruccion
    {
        adelante();// ejecutar instrucción
    }
    if (dato == 'v')
    {
        atras();
    }
    if (dato == 'a')
    {
        izquierda();
    }
    if (dato == 'l')
    {
        derecha();
    }
    if (dato == 'm')
    {
        quieto();
    }
    
}


int main()
{
    CyGlobalIntEnable; 
    UART_Start();
    
    isrRx_StartEx(interruptRx);// inicialización de la interrupcion 
    
    for(;;)
    {
        
    }
}

void adelante()// metodo para avanzar
{
    Motor1_1_Write(1);// con el orde de bits "10" en  ambas entradas del puente H se consigue que el motor avance
    Motor1_2_Write(0);
    
    Motor2_1_Write(1);//Motor 2 avance
    Motor2_2_Write(0);
    
    Motor3_1_Write(1);// Motor 3 avance 
    Motor3_2_Write(0);
    
    
    Motor4_1_Write(1);// Motor 4 avance 
    Motor4_2_Write(0);
    
}
void atras()
{
    Motor1_1_Write(0);
    Motor1_2_Write(1);
    
    Motor2_1_Write(0);
    Motor2_2_Write(1);
    
    Motor3_1_Write(0);
    Motor3_2_Write(1);
    
    
    Motor4_1_Write(0);
    Motor4_2_Write(1);
}

void izquierda()
{
    Motor1_1_Write(1);// el carro gira si se hace que las dos ruedas de un lado avancen y las otras retrocedan
    Motor1_2_Write(0);// motor 1 avance 
    
    Motor2_1_Write(1);// motor 2 avance
    Motor2_2_Write(0);
    
    Motor3_1_Write(0);//motor 3 retroceso
    Motor3_2_Write(1);
    
    
    Motor4_1_Write(0);//motor 3 retroceso
    Motor4_2_Write(1);
}
void derecha()
{
    Motor1_1_Write(0);
    Motor1_2_Write(1);
    
    Motor2_1_Write(0);
    Motor2_2_Write(1);
    
    Motor3_1_Write(1);
    Motor3_2_Write(0);
    
    
    Motor4_1_Write(1);
    Motor4_2_Write(0);
}
void quieto()
{
    Motor1_1_Write(0);
    Motor1_2_Write(0);
    
    Motor2_1_Write(0);
    Motor2_2_Write(0);
    
    Motor3_1_Write(0);
    Motor3_2_Write(0);
    
    
    Motor4_1_Write(0);
    Motor4_2_Write(0);

}

Archivos de PSoC Creator 3.3

archivos de PSoC Creator y archivo de app inventor

Credits

Brayan Andrés Bermúdez

Brayan Andrés Bermúdez

9 projects • 19 followers

Comments