digitalRead being ignored?


i've been trying create shutdown raspberry pi. on pi, uart tx pin high, until software shutdown performed, @ point pin goes low. code has 2 parts:
1. wait ir signal switch relay on controlling pi.
2. wait uart tx pin on pi go low, , switch relay off.

the first part works perfectly, every time. second part, doesn't seem doing @ all.

code: [select]
#include <irremote.h>
#include <irremoteint.h>

// initialize components , variables
int recv_pin = 3; // ir receiver pin
int gpiopin = 7; // pi uart pin
irrecv irrecv(recv_pin);
decode_results results; 
unsigned long storedcode = 0x3ce8ad6;
int relaypin =  5; // relay pin 
int outputstate = 0;
long lastgpiocheck = 0;
long gpiocheckdelay = 1000;

void setup()
{
  serial.begin(9600);
  irrecv.enableirin();
  digitalwrite(relaypin, high);
  pinmode(relaypin, output);
  pinmode(gpiopin, input);   
}

void loop()
{
  // start power on signal check
  if ((irrecv.decode(&results)) && (outputstate == 0))
  {
    if(storedcode == (results.value))
    {
      serial.print("proper ir signal received. switching relay on.");
      digitalwrite(relaypin, low);
      outputstate = 1;
    }
    irrecv.resume();
  }
  // end power on signal check

  // start pi power off check
  if ((digitalread(gpiopin) == low) && (outputstate == 1))
  {
    if  ( (millis() - lastgpiocheck) > gpiocheckdelay ) // run after gpio low 1000ms
    {
      serial.print("raspberry pi powered down. switching relay off.");
      digitalwrite(relaypin, high);
      outputstate = 0;
      lastgpiocheck = millis(); // reset count
    }
  }
  else
  {
    lastgpiocheck = millis();
  }
  // end pi power off check
}


if digitalwrites backward, it's apparently because relay "active low". @ least that's read. last relay used wasn't this.

so there glaring mistake missing?

is same problem in other thread? if why start new thread?

how of information provided me , others useful or relevant? don't want have go through again.

...r


Arduino Forum > Using Arduino > Project Guidance > digitalRead being ignored?


arduino

Comments

Popular posts from this blog

Connecting Raspberry Pi 2 to P10(1R)-V706 LED Dot Matrix - Raspberry Pi Forums

TypeError: <unknown> is not a numpy array - Raspberry Pi Forums

datso and removing imagetitle - Joomla! Forum - community, help and support