1. Given the following legends on the PCB of NANO:
RX0, TX1, D2, ..., D13, A0, ..., A7
2. Legends of Step-1 are equivalent to the following while executing digitalRead()/digitalWrite() instructions in association with pinMode():
D0, D1, D2, ..., D13, A0, ..., A5
==> 0, 1, ..., 13, 14, ..., 19
3. The execution of this code: pinMode(AX/X, OUTPUT); allows to use the legends of Step-2 as the arguments in the following commands:
digitalWrite(AX, value); //AX = A0, ..., A5 (PC0-PC5); DPins: 14 - 19 value = HIGH or LOW
digitalWrite(X, value); //X = 0, 1, ..., 13, 14, ..., 19 //DPins: 0 - 19; PD0-PD7, PB0-PB5, PC0-PC5
4. The execution of this code: pinMode(AX/X, INPUT); allows to use the legends of Step-2 as the arguments in the following commands:
bool n = digitalRead(AX); //AX = A0, ..., A5 (PC0-PC5); DPins: 14 - 19
bool n = digitalRead(X); //X = 0, 1, ..., 13, 14, ..., 19; DPins: 0 to 19 : PD0 - PD7, PB0-PB5, PC0-PC5
5. When using ananlogRead(AX/X) command, the following codes are valid:
int x = ananlogRead(AX); //AX = A0, ..., A7; ADC channels: Ch0 - Ch7 (PC0 - PC5)
int x = analogRead(X); //X = 0, ..., 7; ADC channels: Ch0 - Ch7
6. While performing analogWrite() command, the following instruction is valid to produce pre-defined PWM signals at the pre-defined DPins (Fig-1):
ananlogWrite(X, value); //X = 3,11, 10,9, 5,6; value = 0 - 255

Figure-1:
Note: 'bool n = digitalRead(0);' and 'int x = analogRead(0);' are not the same though the numerical values of the arguments are apparently equal. From the function name, the compiler unambiguously understands what is what -- former one is 1-bit read operation from a digital port; the later one is the read operation of an analog signal from ADC channel number 0 (Ch0/ADC0).
