Arduino WS2812 control

okay @Deva_Rishi

I updated code as below,

for now, I hardcoded this for pin33 only


void Adafruit_NeoPixel::begin(void) {

  if(pin == 33){
    DDRE |= (1 << PE2);
    PORTE |= (1 << PE2);
    begun = true;
    return;
  }
  
  if(pin >= 0) {
    pinMode(pin, OUTPUT);
    digitalWrite(pin, LOW);
  }
  begun = true;
}

and this is my setPin function

void Adafruit_NeoPixel::setPin(uint16_t p) {
  if(p == 33){

    if(begun && (pin >= 0)){
        DDRE |= ~(1 << PE2);
    }
    pin = p;

    if(begun){
      DDRE |= (1 << PE2);
      PORTE |= ~(1 << PE2);
    }
    return;

  }
  if(begun && (pin >= 0)) pinMode(pin, INPUT);
  pin = p;
  if(begun) {
    pinMode(p, OUTPUT);
    digitalWrite(p, LOW);
  }
#if defined(__AVR__)
  port    = portOutputRegister(digitalPinToPort(p));
  pinMask = digitalPinToBitMask(p);
#endif
#if defined(ARDUINO_ARCH_STM32) || defined(ARDUINO_ARCH_ARDUINO_CORE_STM32)
  gpioPort = digitalPinToPort(p);
  gpioPin = STM_LL_GPIO_PIN(digitalPinToPinName(p));
#endif
}