Thanks for the advice,
I will try have a look through the Blink Without Delay example.
With my little understanding of arduino, I assumed the Delay() function, was more of a universal "setting" for the loops which could change dependant on if conditions.
I will post the full code, It works but I'm certain it can be heavily improved.
#include <LiquidCrystal.h>
long randNumber1;
long randNumber2;
long randNumber3;
long randNumber4;
long randNumber5;
long randNumber6;
long randNumber7;
const int buttonPin = 8;
const int buttonPin2 = 7;
const int ledPin = 11;
int buttonState = 0;
int buttonState2 = 0;
LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);
int backLight = 13; // pin 13 will control the backlight
void setup()
{
pinMode(backLight, OUTPUT); //set pin 13 as output
pinMode(ledPin, OUTPUT);
pinMode(buttonPin,INPUT);
analogWrite(backLight, 200); //controls the backlight intensity 0-254
lcd.begin(16,2); // columns, rows. size of display
lcd.clear(); // clear the screen
}
void loop()
{
lcd.clear(); // clear the screen
randNumber1 = random(1, 50);
randNumber2 = random(1, 50);
randNumber3 = random(1, 50);
randNumber4 = random(1, 50);
randNumber5 = random(1, 50);
randNumber6 = random(1, 50);
randNumber7 = random(1, 50);
//************Begin First Row******************//
//----Repeat Break Point----//
if ((randNumber1 == randNumber2) || (randNumber1 == randNumber3) || (randNumber1 == randNumber4) || (randNumber1 == randNumber5) || (randNumber1 == randNumber6) || (randNumber1 == randNumber7))
return;
if ((randNumber2 == randNumber3) || (randNumber2 == randNumber4) || (randNumber2 == randNumber5) || (randNumber2 == randNumber6) || (randNumber2 == randNumber7))
return;
if ((randNumber3 == randNumber4) || (randNumber3 == randNumber5) || (randNumber3 == randNumber6) || (randNumber3 == randNumber7))
return;
if ((randNumber4 == randNumber5) || (randNumber4 == randNumber6) || (randNumber4 == randNumber7))
return;
if ((randNumber5 == randNumber6) || (randNumber5 == randNumber7))
return;
if ((randNumber6 == randNumber7))
return;
//------First Number---------//
if (randNumber1 < 10)
{
lcd.setCursor(1,0);
lcd.print("0");
lcd.setCursor(2,0);
}
else
lcd.setCursor(1,0);
lcd.println(randNumber1);
//------Second Number---------//
lcd.setCursor(3,0);
lcd.print(".");
if (randNumber2 < 10)
{
lcd.setCursor(4,0);
lcd.print("0");
lcd.setCursor(5,0);
}
else
lcd.setCursor(4,0);
lcd.println(randNumber2);
//--------Third Number-------//
lcd.setCursor(6,0);
lcd.print(".");
if (randNumber3 < 10)
{
lcd.setCursor(7,0);
lcd.print("0");
lcd.setCursor(8,0);
}
else
lcd.setCursor(7,0);
lcd.println(randNumber3);
//-------Fourth Number-------//
lcd.setCursor(9,0);
lcd.print(".");
if (randNumber4 < 10)
{
lcd.setCursor(10,0);
lcd.print("0");
lcd.setCursor(11,0);
}
else
lcd.setCursor(10,0);
lcd.println(randNumber4);
//------Fifth Number------//
lcd.setCursor(12,0);
lcd.print(".");
if (randNumber5 < 10)
{
lcd.setCursor(13,0);
lcd.print("0");
lcd.setCursor(14,0);
}
else
lcd.setCursor(13,0);
lcd.println(randNumber5);
//------Clear 16th Char------//
lcd.setCursor(15,0);
lcd.print(" ");
//************Finished First Row******************//
//***********Start Second Row****************//
lcd.setCursor(0,2);
lcd.print("Final Number: ");
//-------Seventh Number--------//
if (randNumber7 < 10)
{
lcd.setCursor(14,2);
lcd.print("0");
lcd.setCursor(15,2);
}
else
lcd.setCursor(14,2);
lcd.println(randNumber7);
//-------Button State Dependant Delay-------//
buttonState = digitalRead(buttonPin);
buttonState2 = digitalRead(buttonPin2);
if (buttonState2 == HIGH)
{
delay(50);
}
if (buttonState == HIGH)
{
delay(1000000);
digitalWrite(ledPin, HIGH);
}
else
{
delay(50);
}
}