void Sensor::initSensors() { sensGPIO.begin(1); //Address pins sensGPIO.pinMode(FRPIN, OUTPUT); sensGPIO.pinMode(LTRPIN, OUTPUT); sensGPIO.pinMode(LTLPIN, OUTPUT); sensGPIO.pinMode(FLPIN, OUTPUT); sensGPIO.pinMode(MRPIN, OUTPUT); sensGPIO.pinMode(MLPIN, OUTPUT); sensGPIO.pinMode(BRPIN, OUTPUT); sensGPIO.pinMode(BLPIN, OUTPUT); //-------Set all sensor select pins to high--------------- sensGPIO.writeGPIOA(0xFF); //Ultrasonic pins pinMode(A0, OUTPUT); pinMode(A1, INPUT); for (byte i = sC::FR; i < sC::invalid; i++) { SelectSensor(i); tsl.begin(TSL2561_ADDR_0); tsl.setTiming(TSL2561_GAIN_16X, TSL2561_INTEGRATIONTIME_14MS); tsl.setPowerUp(); } delay(14); _sensorInitComplete = true; }
static void ioSetup() { digitalWrite(PIN_IO_RST,LOW); delay(100); digitalWrite(PIN_IO_RST,HIGH); delay(100); mcp_.begin(IO_ADDR); mcp_.pinMode(PIN_EP_EN,OUTPUT); mcp_.pinMode(PIN_LED_EN,OUTPUT); mcp_.pinMode(PIN_SRV_EN,OUTPUT); mcp_.pinMode(PIN_FAN_EN,OUTPUT); mcp_.pinMode(PIN_FAN_TACHO,INPUT); mcp_.pinMode(PIN_HOST_INT,OUTPUT); mcp_.pinMode(PIN_STEP_SLP,OUTPUT); mcp_.pullUp(PIN_FRAME_STOP,HIGH); mcp_.pullUp(PIN_STEP_STOP1,HIGH); mcp_.pullUp(PIN_STEP_STOP2,HIGH); mcp_.pullUp(PIN_BTN11,HIGH); mcp_.pullUp(PIN_BTN12,HIGH); mcp_.pullUp(PIN_BTN13,HIGH); mcp_.pullUp(PIN_BTN21,HIGH); mcp_.pullUp(PIN_BTN22,HIGH); mcp_.pullUp(PIN_BTN23,HIGH); mcp_.setupInterruptPin(PIN_BTN11,CHANGE); mcp_.setupInterruptPin(PIN_BTN12,CHANGE); mcp_.setupInterruptPin(PIN_BTN13,CHANGE); mcp_.setupInterruptPin(PIN_BTN21,CHANGE); mcp_.setupInterruptPin(PIN_BTN22,CHANGE); mcp_.setupInterruptPin(PIN_BTN23,CHANGE); mcp_.setupInterrupts(false,false,LOW); if(st_.active()) stepperInterrupt(true); if(fan_.tachoActive()) fanInterrupt(true); }