Mitchell Hatfield / Mbed 2 deprecated Component_Test_Interface

Dependencies:   BridgeDriver FrontPanelButtons MCP23017 SDFileSystem TextLCD mbed

Committer:
mehatfie
Date:
Thu Sep 18 23:38:11 2014 +0000
Revision:
2:3e7baa3e3fec
Parent:
0:22618cf06f45
- Revamped whole system and now works without stalling or freezing mid program; - now Object Oriented Based in terms of Devices (inheritance of functions)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mehatfie 2:3e7baa3e3fec 1 //#ifndef DEVICE_HPP
mehatfie 2:3e7baa3e3fec 2 //#define DEVICE_HPP
mehatfie 2:3e7baa3e3fec 3 //
mehatfie 2:3e7baa3e3fec 4 //#include "Initialization.hpp"
mehatfie 2:3e7baa3e3fec 5 //#include "mbed.h"
mehatfie 2:3e7baa3e3fec 6 //#include "LocalPinNames.h"
mehatfie 2:3e7baa3e3fec 7 //#include "BridgeDriver.h"
mehatfie 2:3e7baa3e3fec 8 ////#include "DeviceClasses.hpp"
mehatfie 2:3e7baa3e3fec 9 ////#include "Motor.hpp"
mehatfie 2:3e7baa3e3fec 10 ////#include "VoltageDriver.hpp"
mehatfie 2:3e7baa3e3fec 11 //
mehatfie 2:3e7baa3e3fec 12 //enum DeviceType{MOTOR, VOLTAGE_DRIVER};
mehatfie 2:3e7baa3e3fec 13 //static const enum DeviceType Device_Map[] = {MOTOR, VOLTAGE_DRIVER};
mehatfie 2:3e7baa3e3fec 14 //const char *DeviceNames[] = {"MOTOR", "VOLTAGE_DRIVER"};
mehatfie 2:3e7baa3e3fec 15 //extern int numDevices = sizeof(DeviceNames)/sizeof(DeviceNames[0]);
mehatfie 2:3e7baa3e3fec 16 //extern int currNumDevices = 0;
mehatfie 2:3e7baa3e3fec 17 //
mehatfie 2:3e7baa3e3fec 18 //
mehatfie 2:3e7baa3e3fec 19 //class Device{
mehatfie 2:3e7baa3e3fec 20 //
mehatfie 2:3e7baa3e3fec 21 // public:
mehatfie 2:3e7baa3e3fec 22 // char name[100];
mehatfie 2:3e7baa3e3fec 23 // static Device* newDevice(int);
mehatfie 2:3e7baa3e3fec 24 // int interpret();
mehatfie 2:3e7baa3e3fec 25 //};
mehatfie 2:3e7baa3e3fec 26 //
mehatfie 2:3e7baa3e3fec 27 //extern Device devices[15]; //Initialize array of devices, initially assume 15 devices will be used (will expand as needed)
mehatfie 2:3e7baa3e3fec 28 //
mehatfie 2:3e7baa3e3fec 29 //void addDevice(int deviceFound){
mehatfie 2:3e7baa3e3fec 30 //
mehatfie 2:3e7baa3e3fec 31 // //devices[currNumDevices] = Device::newDevice(deviceFound);
mehatfie 2:3e7baa3e3fec 32 // currNumDevices++;
mehatfie 2:3e7baa3e3fec 33 //}
mehatfie 2:3e7baa3e3fec 34 //
mehatfie 2:3e7baa3e3fec 35 //
mehatfie 2:3e7baa3e3fec 36 //
mehatfie 2:3e7baa3e3fec 37 //
mehatfie 2:3e7baa3e3fec 38 ///*
mehatfie 2:3e7baa3e3fec 39 //struct DeviceData {
mehatfie 2:3e7baa3e3fec 40 // DeviceType type;
mehatfie 2:3e7baa3e3fec 41 // string name;
mehatfie 2:3e7baa3e3fec 42 // union {
mehatfie 2:3e7baa3e3fec 43 // Voltage_Driver VOLTAGE_DRIVER;
mehatfie 2:3e7baa3e3fec 44 // Motor MOTOR;
mehatfie 2:3e7baa3e3fec 45 // };
mehatfie 2:3e7baa3e3fec 46 //};
mehatfie 2:3e7baa3e3fec 47 //
mehatfie 2:3e7baa3e3fec 48 //extern struct DeviceData devices[15]; //Initialize array of devices, initially assume 15 devices will be used (will expand as needed)
mehatfie 2:3e7baa3e3fec 49 //
mehatfie 2:3e7baa3e3fec 50 //void relayLine(DeviceData device){
mehatfie 2:3e7baa3e3fec 51 // switch(device.type){
mehatfie 2:3e7baa3e3fec 52 // case MOTOR: device.MOTOR.interpret(); break;
mehatfie 2:3e7baa3e3fec 53 // case VOLTAGE_DRIVER: device.VOLTAGE_DRIVER.interpret(); break;
mehatfie 2:3e7baa3e3fec 54 // }
mehatfie 2:3e7baa3e3fec 55 //}
mehatfie 2:3e7baa3e3fec 56 //
mehatfie 2:3e7baa3e3fec 57 //void addDevice(int deviceFound){
mehatfie 2:3e7baa3e3fec 58 //
mehatfie 2:3e7baa3e3fec 59 // //Save the device type
mehatfie 2:3e7baa3e3fec 60 // switch (Device_Map[deviceFound]){
mehatfie 2:3e7baa3e3fec 61 // case MOTOR: devices[currNumDevices].type = MOTOR; break;
mehatfie 2:3e7baa3e3fec 62 // case VOLTAGE_DRIVER: devices[currNumDevices].type = VOLTAGE_DRIVER; break;
mehatfie 2:3e7baa3e3fec 63 // }
mehatfie 2:3e7baa3e3fec 64 //
mehatfie 2:3e7baa3e3fec 65 // devices[currNumDevices].name = lineData.word[1]; //Save the Local Name of the Device, the second word in a device adding line is the Local_Name
mehatfie 2:3e7baa3e3fec 66 // relayLine(devices[currNumDevices]); //Give the command to the appropraite class in order to initialize itself based on the line
mehatfie 2:3e7baa3e3fec 67 // currNumDevices++; //Increment the total number of devices created
mehatfie 2:3e7baa3e3fec 68 //}*/
mehatfie 2:3e7baa3e3fec 69 //
mehatfie 2:3e7baa3e3fec 70 //
mehatfie 2:3e7baa3e3fec 71 //
mehatfie 2:3e7baa3e3fec 72 //#endif
mehatfie 2:3e7baa3e3fec 73 //