I am using an Arduino UNO and I am trying to vary the brightness by steps by 0.5 volts till it gets to a max of 5.0 V using buttonA and decrease the brightness of the LED by 0.5 volts with buttonB I believe that I am close the only Problem I have is that when I push buttonA the LED steps it's voltage all the way to 5.0V and with buttonB its steps down to 0. I would like to have the LED step each time I press the button not all at once. Here is my code that I have so far can someone help me with telling the Arduino to Step each time a button is pressed.

HERE is my code:

    int ledPin = 9; // must be a PWM digital pin  
    int buttonApin = 10;  
    int buttonBpin = 11;  
    int maxBright = 255; // between 0 and 255  
    int ms = 300;    // delay in milliseconds  
    int counter = 0;  
      
    void setup()   
    {  
    pinMode(ledPin, OUTPUT);  
    pinMode(buttonApin, INPUT_PULLUP);  
    pinMode(buttonBpin, INPUT_PULLUP);  
    }  
  
    void loop()   
    {  
      if (digitalRead(buttonApin) == LOW)  
      {  
      if (counter >= 10)  
      {  
       counter = 10;  
      }  
     // fade from min to max in increments of 25.5 points: basically (0.5 volts)  
     for (float n = 0; n <= maxBright; n +=25.5)   
     {  
      // sets the value (range from 0 to 255):  
      analogWrite(ledPin,n);  
      delay(ms);  
     }  
    }  
    
     if(digitalRead(buttonBpin) == LOW)  
     {  
       if (counter <= 0)  
       {  
       counter = 0;  
       }  
       // fade from max to min in increments of 25.5 points: basically (0.5 volts)  
       for (float n = maxBright; n >= 0; n -= 25.5)   
       {  
        // sets the value (range from 0 to 255):  
        analogWrite(ledPin, n);  
        delay(ms);  
       }  
     }  
    }