Mitchell Hatfield / Mbed 2 deprecated Component_Test_Interface

Dependencies:   BridgeDriver FrontPanelButtons MCP23017 SDFileSystem TextLCD mbed

DeviceClasses.hpp

Committer:
mehatfie
Date:
2014-09-18
Revision:
2:3e7baa3e3fec

File content as of revision 2:3e7baa3e3fec:

///*#include "mbed.h"
//#include "LocalPinNames.h"
//#include "TextLCD.h"
//#include "BridgeDriver.h"
//*/
//#include "Device.hpp"
////#include <string>
//
///**********************************************************************************************************************************/
///**********************************************************************************************************************************/
///***************************                        <CLASS: Voltage_Driver>                            ****************************/
///**********************************************************************************************************************************/
///**********************************************************************************************************************************/
//
//class Voltage_Driver{
//    
//    public :
//        //uint8_t ch123; //Channel value this device is set to  
//        int ch; 
//        int test;
//        
//        int interpret();
//        int forceBrake();
//        //int forceFloat();
//        float drive();  
//         
//        //Voltage_Driver();          
//        void setChannel(int channel){
//            Voltage_Driver::ch = channel;
//        }
//            
//        int getChannel(){     
//            return Voltage_Driver::ch;
//        }
//};
//
////Voltage_Driver::Voltage_Driver(void){
////}
//
////A line consists of [ __(Local_Name)__ __(function)__ __(parameter1)__ __(parameter2)__ __(parameter3)__ ... and so on]
//int Voltage_Driver::interpret(){
//    /*
//    lcd.cls(); //clear the display
//    lcd.setAddress(0,3);
//    lcd.printf("Test2    ");
//    lcd.setAddress(0,1);
//    lcd.printf("wrd1: %s", lineData.word[0]);
//    lcd.setAddress(0,2);
//    lcd.printf("wrd2: %s", lineData.word[1]);
//    wait(3);
//*/
//    
//            
//    string firstWord = lineData.word[0]; //get the first word in the line
///*
//    lcd.setAddress(0,2);
//    lcd.printf("fW: %s", firstWord);
//    lcd.setAddress(0,3);
//    lcd.printf("ch: %d", ch);
//    wait(3);*/
//    
//    //Initialize the class and device
//    if (firstWord.compare("device") == 0){
//        //Order of Line: Command, Local_Name, VOLTAGE_DRIVER, Channel(1,2,3,4,5,6,7,8)
//        
//        test = 10;
//        
//        if (lineData.numWords != 4){
//             //Error Check, incorrect number of parameter, error out
//            return 0;
//        }
//            
//        string channel = lineData.word[3]; //Parameter is a number
//        int channelValue = 0;
//        sscanf(channel.c_str(), "%d", &channelValue);
//        
//        //Channel Value between 1 to 8
//        if (channelValue >= 1 && channelValue <= 8){
//            
//            setChannel(channelValue);
//            //ch = channelValue;
//            
//            lcd.setAddress(0,2);
//            lcd.printf("fW: %s", firstWord);
//            //lcd.setAddress(0,3);
//            //lcd.printf("ch: %d", getChannel());
//            lcd.setAddress(0,3);
//            lcd.printf("test: %d", test);
//            //lcd.setAddress(0,3);
//            //lcd.printf("chString: %s", chString);
//            wait(2);
//    
//            switch (channelValue){
//                case 1:
//                case 2:
//                    bridges.enablePwm(BridgeDriver::MOTOR_A, 0);
//                    break;
//                case 3:
//                case 4:
//                    bridges.enablePwm(BridgeDriver::MOTOR_B, 0);
//                    break;
//                case 5:
//                case 6:
//                    bridges.enablePwm(BridgeDriver::MOTOR_C, 0);
//                    break;
//                case 7:
//                case 8:
//                    bridges.enablePwm(BridgeDriver::MOTOR_D, 0);
//                    break;
//            }
//           /* lcd.setAddress(0,2);
//            lcd.printf("AchannelVal: %d", channelValue);
//            lcd.setAddress(0,3);
//            lcd.printf("Ach: %d", ch);
//            wait(3);*/
//    
//        }
//        else{
//            //ERROR Out
//            //Unacceptable channel, or conversion function failed when converting string to int
//        }
//    }
//    
//    //if the first word is not "device" it means that it's trying to perform a function to a specific Motor
//    else{
//        
//
//            
//        //Order of Line: Local_Name, Function_Name, Param1, Param2, Param3,.......
//        string localname = lineData.word[0]; //just for the sake of following the variable easily and understanding 
//        string func = lineData.word[1];
//                   
//        /******************************************************************************/
//        /***                       <Func: forceBrake>                               ***/
//        /******************************************************************************/
//        if (func.compare("forceBrake") == 0){
//            
//            if (lineData.numWords != 3){
//                 //Error Check, incorrect number of parameter, error out
//                return 0;
//            }
//            
//            bridges.forceBrake(ch);
//        }
//        
//        
//        /******************************************************************************/
//        /***                           <Func: drive>                                ***/
//        /******************************************************************************/
//        else if (func.compare("drive") == 0){
//            //Order of Line: Local_Name, drive
//            
//            lcd.setAddress(0,0);
//            lcd.printf("lclN: %s ", localname); 
//            lcd.setAddress(0,2);
//            lcd.printf("func: %s ", func);
//            //lcd.setAddress(0,3);
//            //lcd.printf("3ch: %d  ", getChannel());
//            lcd.setAddress(0,3);
//            lcd.printf("test: %d", test);
//            //lcd.setAddress(0,3);
//            //lcd.printf("chString: %s   ", chString);
//            wait(3);
//        
//            if (lineData.numWords != 2){
//                 //Error Check, incorrect number of parameter, error out
//                return 0;
//            }
//             /*           
//            int State = 2;
//            int channelValue = atoi(chString);
//            State = bridges.drive(channelValue, 1); //Turn channel on
//            lcd.setAddress(0,2);
//            lcd.printf("TEST ch: %d, State: %d", channelValue, State);
//            wait(3);*/
//            
//        }
//        
//        
//        /******************************************************************************/
//        /****                           <Func: off>                                ****/
//        /******************************************************************************/
//        else if (func.compare("drive") == 0){
//            //Order of Line: Local_Name, drive, duration
//            
//            if (lineData.numWords != 2){
//                 //Error Check, incorrect number of parameter, error out
//                return 0;
//            }
//            
//            bridges.drive(getChannel(), 0); //Turn channel off
//        }
//        
//        else {
//            return 0;
//            
//        }  
//    }  
//    /*
//    lcd.setAddress(0,3);
//    lcd.printf("ENDch: %d  ", getChannel());
//    wait(3);*/
//            
//    return 1;
//}
//
//
//
///**********************************************************************************************************************************/
///**********************************************************************************************************************************/
///********************************                        <CLASS: Motor>                            ********************************/
///**********************************************************************************************************************************/
///**********************************************************************************************************************************/
//
//class Motor{
//    
//    enum BridgeDriver::Motors motor; 
//
//    public :
//        int interpret();
//        void enableBrake();
//        int forceBrake();
//        //int forceFloat();
//        float drive();  
//        
//        
//        void setMotor(BridgeDriver::Motors selectedMotor){
//            motor = selectedMotor;
//        }
//            
//        enum BridgeDriver::Motors getMotor(){     
//            return motor;
//        }
//    
//};
//
////A line consists of [ __(Local_Name)__ __(function)__ __(parameter1)__ __(parameter2)__ __(parameter3)__ ... and so on]
//int Motor::interpret(){
//    /*
//    lcd.cls(); //clear the display
//    lcd.setAddress(0,3);
//    lcd.printf("Test2    ");
//    lcd.setAddress(0,1);
//    lcd.printf("wrd1: %s", lineData.word[0]);
//    lcd.setAddress(0,2);
//    lcd.printf("wrd2: %s", lineData.word[1]);
//    wait(3);
//*/
//    /*
//    lcd.setAddress(0,2);
//    lcd.printf("wrd1: %s", lineData.word[0]);
//    lcd.setAddress(0,3);
//    lcd.printf("TEST1  ");
//    wait(1);*/
//    
//    string firstWord = lineData.word[0]; //splits the str based on a space delimeter 
//
//    if (firstWord.compare("device") == 0){
//        //Order of Line: Command, Local_Name, VOLTAGE_DRIVER, Channel(1,2,3,4,5,6,7,8)
//
//        if (lineData.numWords != 4){
//             //Error Check, incorrect number of parameter, error out
//            return 0;
//        }
//        
//        string channel = lineData.word[3]; //Parameter is a single character, so dereference the point to the word
//    
//        if ((channel.compare("A") == 0) || (channel.compare("a") == 0))
//                setMotor(BridgeDriver::MOTOR_A);
//        else if ((channel.compare("B") == 0) || (channel.compare("b") == 0))
//                setMotor(BridgeDriver::MOTOR_B);
//        else if ((channel.compare("C") == 0) || (channel.compare("c") == 0))
//                setMotor(BridgeDriver::MOTOR_C);
//        else if ((channel.compare("D") == 0) || (channel.compare("d") == 0))
//                setMotor(BridgeDriver::MOTOR_D);
//    }
//    
//    //if the first word is not "device" it means that it's trying to perform a function to a specific Motor
//    else{
//        //Order of Line: Local_Name, Function_Name, Param1, Param2, Param3,.......
//        //char localname[15] = lineData.word[0]; //just for the sake of following the variable easily and understanding 
//        string func = lineData.word[1];
//            
//        /******************************************************************************/
//        /***                       <Func: enableBrake>                              ***/
//        /******************************************************************************/
//        if (func.compare("enableBrake") == 0){
//            
//            if (lineData.numWords != 4){
//                 //Error Check, incorrect number of parameter, error out
//                return 0;
//            }
//            
//            //Initialize and Convert Parameters
//            string enable = lineData.word[2];
//            int enableValue = 0;
//            sscanf(enable.c_str(), "%d", &enableValue);
//            
//            bridges.enableBraking(getMotor(), enableValue);
//        }
//            
//        /******************************************************************************/
//        /***                       <Func: forceBrake>                               ***/
//        /******************************************************************************/
//        else if (func.compare("forceBrake") == 0){
//            
//            if (lineData.numWords != 3){
//                 //Error Check, incorrect number of parameter, error out
//                return 0;
//            }
//            
//            bridges.forceBrake(getMotor());
//        }
//        
//        
//        /******************************************************************************/
//        /***                           <Func: drive>                                ***/
//        /******************************************************************************/
//        else if (func.compare("drive") == 0){
//            
//            /*lcd.setAddress(0,2);
//            lcd.printf("wrd2: %s", lineData.word[1]);
//            lcd.setAddress(0,3);
//            lcd.printf("TEST2  ");
//            wait(1);*/
//    
//            if (lineData.numWords != 4){
//                 //Error Check, incorrect number of parameter, error out
//                return 0;
//            }
//                        
//            //Initialize Parameters
//            string speed = lineData.word[2];
//            string dir = lineData.word[3];
//            
//            //Initialize Convertion Variables if needed
//            float speedValue;
//            int dirValue = 0;
//            
//            //Convert string to usable values
//            //NOTE both atof and atoi functions return 0 if no valid conversion could be performed
//            sscanf(speed.c_str(), "%f", &speedValue);
//            speedValue = speedValue / 100;
//            
//            if (speedValue <= 0)
//                return 0; //Error Out because a value gives no functionality or is wrong
//            
//            if (dir.compare("CC") == 0 || dir.compare("cc") == 0)
//                dirValue = -1; //Turn Clockwise
//            else if (dir.compare("C") == 0 || dir.compare("c") == 0)
//                dirValue = 1; //Turn CounterClockwise
//            else
//                return 0; //Error Out since the parameter is incorrect
//            
//            bridges.drive(getMotor(), dirValue, speedValue); //Turn on the Motor
//            
//        }
//        /******************************************************************************/
//        /****                           <Func: off>                                ****/
//        /******************************************************************************/
//        else if (func.compare("off") == 0){
//            
//            /*lcd.setAddress(0,2);
//            lcd.printf("wrd2: %s", lineData.word[1]);
//            lcd.setAddress(0,3);
//            lcd.printf("TEST2  ");
//            wait(1);*/
//            
//            if (lineData.numWords != 2){
//                 //Error Check, incorrect number of parameter, error out
//                return 0;
//            }
//                 
//            bridges.drive(getMotor(), 0, 0); //Turn off the Motor
//        }
//        
//        else {
//            return 0;
//            
//        }  
//    }  
//    
//    return 1;
//}
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//