LED's Won't turn off after PWM "break and for " statement????

Hello world,
I would need your help related to the led completely turn off.

It was dim led after the loop. The led PWN is fine went to slowly HIGH then go to slowly LOW even I have tried the code see as below. Also, changed to both 255 from 256. The pin 11 refuse turn off the led either way... any idea?

let you know the Fritzing I made dont worry about the leds wrong placement anode and cathode or resister OHMS. please understand that thanks. if something else to addition the electrics components but i doubt it. more likely problems with codes.

on line 123 ( see the attach image)
case 11;
{
int r == 11;
for (r=0; r < 256 ; r++)
{
analogWrite(11, r)
delay(10);
}
for (r=256; r > 0 ; r--)
{
analogWrite(11, r)
delay(10);
}
}
break;


real code if you need addition the information. please let me know.

Post your code as described in How to use the Forum. A picture is no use.

Also use the auto-format feature in the Arduino IDE to indent the code so it is easy to read.

...R

Delta_G:

int r == 11;

Oopsies... I'm surprised if that got by the compiler.

Why surprised?
It's perfectly valid, if pointless.

it does work when I added as greater or equal than "r >= 0"

on line 123 ( see the attach image) 
case 11;
{
int r == 11;
for (r=0; r < 256 ; r++)
{
analogWrite(11, r)
delay(10);
}
for (r=256; r >= 0 ; r--)
{
analogWrite(11, r)
delay(10);
}
}
break;

if I deleted

int r = 11;

it comes with error said "r" was not declared in this scope.

I used the code as

I modified in case 11.

Delta_G:

int r == 11;

Still don't get the purpose of this line.

There isn't a point; it was meant to be an assignment, but that doesn't make it any less valid C.

ironheartbj18:
if I deleted

int r = 11;

it comes with error said "r" was not declared in this scope.

Post your code.
All of it.

/*
 PROJECT: ArduDroid 
 PROGRAMMER: Hazim Bitar (techbitar at gmail dot com)
 DATE: Oct 31, 2013
 FILE: ardudroid.ino
 LICENSE: Public domain
*/

#define START_CMD_CHAR '*'
#define END_CMD_CHAR '#'
#define DIV_CMD_CHAR '|'
#define CMD_DIGITALWRITE 10
#define CMD_ANALOGWRITE 11
#define CMD_TEXT 12
#define CMD_READ_ARDUDROID 13
#define MAX_COMMAND 20  // max command number code. used for error checking.
#define MIN_COMMAND 10  // minimum command number code. used for error checking. 
#define IN_STRING_LENGHT 40
#define MAX_ANALOGWRITE 255
#define PIN_HIGH 3
#define PIN_LOW 2

String inText;

void setup() {
  Serial.begin(9600);
  Serial.println("ArduDroid 0.12 Alpha by TechBitar (2013)");
  Serial.flush();
}

void loop()
{
  Serial.flush();
  int ard_command = 0;
  int pin_num = 0;
  int pin_value = 0;

  char get_char = ' ';  //read serial

  // wait for incoming data
  if (Serial.available() < 1) return; // if serial empty, return to loop().

  // parse incoming command start flag 
  get_char = Serial.read();
  if (get_char != START_CMD_CHAR) return; // if no command start flag, return to loop().

  // parse incoming command type
  ard_command = Serial.parseInt(); // read the command
  
  // parse incoming pin# and value  
  pin_num = Serial.parseInt(); // read the pin
  pin_value = Serial.parseInt();  // read the value

  // 1) GET TEXT COMMAND FROM ARDUDROID
  if (ard_command == CMD_TEXT){   
    inText =""; //clears variable for new input   
    while (Serial.available())  {
      char c = Serial.read();  //gets one byte from serial buffer
      delay(5);
      if (c == END_CMD_CHAR) { // if we the complete string has been read
        // add your code here
        break;
      }              
      else {
        if (c !=  DIV_CMD_CHAR) {
          inText += c; 
          delay(5);
        }
      }
    }
  }

  // 2) GET digitalWrite DATA FROM ARDUDROID
  if (ard_command == CMD_DIGITALWRITE){  
    if (pin_value == PIN_LOW) pin_value = LOW;
    else if (pin_value == PIN_HIGH) pin_value = HIGH;
    else return; // error in pin value. return. 
    set_digitalwrite( pin_num,  pin_value);  // Uncomment this function if you wish to use 
    return;  // return from start of loop()
  }

  // 3) GET analogWrite DATA FROM ARDUDROID
  if (ard_command == CMD_ANALOGWRITE) {  
    analogWrite(  pin_num, pin_value ); 
    // add your code here
    return;  // Done. return to loop();
  }

  // 4) SEND DATA TO ARDUDROID
  if (ard_command == CMD_READ_ARDUDROID) { 
    // char send_to_android[] = "Place your text here." ;
    // Serial.println(send_to_android);   // Example: Sending text
    Serial.print(" Analog 0 = "); 
    Serial.println(analogRead(A0));  // Example: Read and send Analog pin value to Arduino
    return;  // Done. return to loop();
  }
}

// 2a) select the requested pin# for DigitalWrite action
void set_digitalwrite(int pin_num, int pin_value)
{
  switch (pin_num) {
  case 13:
    pinMode(13, OUTPUT);
    digitalWrite(13, pin_value);   
    // add your code here     
    break;
  case 12:
 {
    int r = 12;
    for(r=0; r<10; r++)
   {
    pinMode(12, OUTPUT);
    digitalWrite(12, HIGH);   
    delay(50);
    digitalWrite(12, LOW);   
    delay(50);
   }
 }
  break;
 
  case 11:
  {
    int b = 11;
    for (b = 0; b < 255; b++) 
    { 
      analogWrite(11, b);
      delay(10);
    }
    for (b = 255; b >= 0; b--) 
    { 
      analogWrite(11, b);
      delay(10);
    }
  } 
    break;
  
  case 10:
    pinMode(10, OUTPUT);
    digitalWrite(10, pin_value);         
    // add your code here 
    break;
  case 9:
    pinMode(9, OUTPUT);
    digitalWrite(9, pin_value);         
    // add your code here 
    break;
  case 8:
    pinMode(8, OUTPUT);
    digitalWrite(8, pin_value);         
    // add your code here 
    break;
  case 7:
    pinMode(7, OUTPUT);
    digitalWrite(7, pin_value);         
    // add your code here 
    break;
  case 6:
    pinMode(6, OUTPUT);
    digitalWrite(6, pin_value);         
    // add your code here 
    break;
  case 5:
    pinMode(5, OUTPUT);
    digitalWrite(5, pin_value); 
    // add your code here       
    break;
  case 4:
    pinMode(4, OUTPUT);
    digitalWrite(4, pin_value);         
    // add your code here 
    break;
  case 3:
    pinMode(3, OUTPUT);
    digitalWrite(3, pin_value);         
    // add your code here 
    break;
  case 2:
    pinMode(2, OUTPUT);
    digitalWrite(2, pin_value); 
    // add your code here       
    break;      
    // default: 
    // if nothing else matches, do the default
    // default is optional
  } 
}
int b = 11;
    for (b = 0; b < 255; b++)

Why bother double-initialising variables like this?

= operator in C language is used to assign the value of
right-hand side value/variable/expression to the left hand
side variable.

== operator in C/C++ language is used to check the value of
left hand variable/expression with the right hand
variable/expression. whether the two values are equal or
not. It returns true if these are equal else it will return
false.

Delta_G:
Then do it this way, the right way, and declare the variable inside the for loop.

for (int r=0; r < 256 ; r++)

this does work either way. hmm interesting...

Delta_G:
Then do it this way, the right way, and declare the variable inside the for loop.

for (int r=0; r < 256 ; r++)

That may not necessarily be the "right" way, it may simply be the "most appropriate" way.