          sending data
  */
 
-#include<QueueArray.h>
 #include<PinChangeInt.h>
 
 static int d0 = 0;

    int byte1 = (numChars * 5) >> 7;
    int byte2 = ((numChars * 5) & 0x7f) << 1;
    
    q.enqueue(0b100100001);
    q.enqueue(0b000001011);
    q.enqueue(0b100100001);
    q.enqueue(0b000001101);
    q.enqueue(0b000000111);
    q.enqueue(0b100100001);
    
    if (numChars <= 23 || numChars >= 26) {
        q.enqueue(0b000000110);

        // We will send two bytes from a 10-bit number
        // which is numChars * 5. The top three bits

}

void correct_letter(int letter) {
    sendByte(0b100100001);
    sendByte(0b000001011);
    sendByte(0b100100001);
    sendByte(0b000001101);
    sendByte(0b000000101);
    sendByte(0b100100001);
    sendByte(0b000000110);
    sendByte(0b000000000);
    sendByte(0b000001010);
    sendByte(0b100100001);
    sendByte(0b000000100);
    sendByte(letter);
    sendByte(0b000001010);
    sendByte(0b100100001);
    sendByte(0b000001100);
    sendByte(0b010010000);
}

void micro_backspace() {
    sendByte(0b100100001);
    sendByte(0b000001110);
    sendByte(0b011010000);
    sendByte(0b100100001);
    sendByte(0b000001011);
    sendByte(0b100100001);
    sendByte(0b000001101);
    sendByte(0b000000100);
    sendByte(0b100100001);
    sendByte(0b000000110);
    sendByte(0b000000000);
    sendByte(0b000000010);
    sendByte(0b100100001);
    

    // send one more byte but don't wait explicitly for the response
    // of 0b000000100
    sendByteOnPin(0b000001011);
}

void sendByte(int b) {
        //Serial.println("sending byte!");
        sendByteOnPin(b);
        while (((PIND & 0b01000000) >> 6) == 1) {
          // busy
        }
