Getting TLC5927 into Special Mode and then adjusting current

Greetings all,

I've been unsuccessfully trying to place a TLC5927 into Special Mode to set the current. I use the SPI library to send it data that lights up the correct LEDs, but getting it into Special Mode takes a little bit manipulation, which is described in the TI data sheet. I attach my code to set Special Mode. Any help appreciated.

Theron Wierenga

void NormalMode()
{
  stopISR();
  digitalWrite(cs1, LOW);     // cs1 goes to LE, pin 4, on TLC5927
  digitalWrite(oe1, HIGH);    // oe1 goes to OE, pin 21 on TLC5927
  delayMicroseconds(1);
  digitalWrite(clk, HIGH);    // Clk 1, clk goes to CLK, pin 3 on TLC5927
  delayMicroseconds(1);
  digitalWrite(clk, LOW);
  digitalWrite(oe1, LOW);
  delayMicroseconds(1);
digitalWrite(clk, HIGH);    // Clk 2
  delayMicroseconds(1);
  digitalWrite(clk, LOW);
  digitalWrite(oe1, HIGH);
  delayMicroseconds(1);
   
  digitalWrite(clk, HIGH);    // Clk 3
  delayMicroseconds(1);
  digitalWrite(clk, LOW);
  delayMicroseconds(1);
   
  digitalWrite(clk, HIGH);    // Clk 4
  delayMicroseconds(1);
  digitalWrite(clk, LOW);
  delayMicroseconds(1);
   
  digitalWrite(clk, HIGH);    // Clk 5, now in Normal Mode
  delayMicroseconds(1);
  startISR();
}

This looks like your code to put the device into normal mode. Do you have a similar function for switching to Special Mode?