Programming Nano output.

No matter how I work it I cannot get pins A6 and A7 assigned as outputs on a Nano. Could someone look ,at my programming and tell me what I am doing wrong. All the pins befor A6 and A7 are low as progra

/*

Connection Setup

PIN      COLUMN
D2======C1
D3======C2
D4======C3
D5======C4
D6======C5
D7======C6
D8======C7
D9======C8
D10======C9
D11======C10
D12======C11
D13======C12
D0=====C13
D1=====C14
A4=====C15
A5=====C16
A6=====C17
A7=====C18
GRD====Center col.

4 LEVELS
tier(t)= connect to the LED anode.
1=A0
2=A1
3=A2
4=A3
*/

                                             
int column[18]={2,3,4,5,6,7,8,9,10,11,12,13,0,1,A4,A5,A6,A7};   // Declaring LED column pin assignment Bottom to top
int tier[4]={A0,A1,A2,A3};      // Declaring LED tier pin assignment. Bottom to top.
int ledTimeOn1=15;
int ledTimeOff1=15;
int ledTimeOn2=50;
int ledTimeOff2=50;
int ledTimeOn3=1500;
int ledTimeOff3=1500;
int ledTimeOn4=500;
int ledTimeOff4=500;

int tier4=4;   // turn this tier on or off.
int tier3=3;
int tier2=2;
int tier1=1;
int allTiers=4;      // turn all tiers on or off.
int allColumns=18;  //turn all columns on or off


void setup() {
//setting columns to output.
   for(int c=0; c<allColumns; c++)
   {  
   pinMode(column[c], OUTPUT);
   }
    //setting tiers to output
  for(int t = 0; t<4; t++)
   {
   pinMode(tier[t] , OUTPUT);     
   }
}
void loop()
{
  //TURNS ALL THE columns low.
  
    for(int c=0; c<allColumns; c++)
    {
      digitalWrite(column[c], 0);  //Turns the columns low.
    } 
 
    
  // Turns each tier on then off from bottom to top.

     for(int t=0; t<allTiers; t++)
    {
      digitalWrite(tier[t], 1);
      delay(ledTimeOn2);
     digitalWrite(tier[t], 0);
      delay(ledTimeOff2);
    }  
     // Turns each tier on then off from bottom to top.

     for(int t=0; t<allTiers; t++)
    {
      digitalWrite(tier[t], 1);
      delay(ledTimeOn3);
     digitalWrite(tier[t], 0);
      delay(ledTimeOff3);
    }
    
      
     
}

mmed. Thanks.

This is correct behavior.

Pins A6 and A7 are analog-input-only pins - they were added to the 328p as an afterthought when they added the TQFP package; that's a 32-pin package, and before it was in a 28-pin DIP - they used 2 of the pins for an extra pair of power and ground, and then put the other two extra pins onto the ADC. It's worth noting that those are the only analog input only pins within the entire AVR product line.

When they came out with the 328pb (the successor to the 328p), they dropped a pair of Vcc/Gnd pins, and made the A6 and A7 pins, along with the two pins that replaced the dropped power pins, into a new, fully functional, port.

But yeah, there are no output drivers on those pins, nor registers to control them - all they can do is analogRead()

Thanks for responding. I figured it was something I wasn't aware of. Thanks again.