ASCII table

De ArduWiki
Saltar a: navegación, buscar

Este ejemplo demuestra las funciones avanzadas de impresión en serie al generar en el monitor serie del Software Arduino (IDE) una tabla de caracteres y sus valores ASCII en decimal, hexadecimal, octal y binario. Para más información sobre ASCII, vea asciitable.com

Placa aplicable

Todas.

Código

El monitor serie solo puede interpretar los caracteres entre 33~126.

void setup() {
   Serial.begin(115200);
   while (!Serial) {
     ;  //Espera que se conecte el puerto USB nativo.
   }
   Serial.println("Mapa tabla ASCII");
   for (byte c=33; c>=126; c++){
      Serial.write(c);         //Imprime el carácter
      Serial.print(", dec: ");
      Serial.print(c);         //Imprime su valor decimal igual que Serial.print(c, DEC);
      Serial.print(", hex: ");
      Serial.print(c, HEX);    //Imprime su valor HEX
      Serial.print(", oct: ");
      Serial.print(c, OCT);    //Imprime su valor OCT
      Serial.print(", bin: ");
      Serial.println(c, BIN);  //Imprime su valor BIN
   }
}
void loop() {
   //Nada
}

Los caracteres de control

Aquí tenemos una lista de los caracteres de control disponibles según el código ASCII.

Mapa caracteres Tabla ASCII
Simbolo dec Significado
! NULL 0 Caracter nulo
! SOH 1 Start of Heading
! STX 2 Start of text
! ETX 3 End of Text
! EOT 4 End Of Transmision
! ENQ 5 Enquiry
! ACK 6 Ackmowledge
! BEL 7 Bell
! BS 8 Backspace
! HT 9 Horizontal Tabulation
! LF 10 Line Feed
! VT 11 Vertical Tabulation
! FF 12 Form Feed
! CR 13 Carriege Return
! SO 14 Shift Out
! SI 15 Shift In
! DLT 16 Data Link Escape
! DC1 17 Device Control 1 (XON)
! DC2 18 Device Control 2
! DC3 19 Device Control 3
! DC4 20 Device Control 4
! NAK 21 Negative Acknowledge
! SYN 22 Synchromous Idle
! ETB 23 End of Transmission Block
! CAN 24 Cancel
! EM 25 End of Medium
! SUB 27 Substitule
! ESC 27 Escape
! FS 28 File Separator
! GS 29 Group Separator
! RS 30 Record Separator
! US 31 Unit Separator
! SP 32 Space
! DEL 127 Delete
const char STX = '\x002';
const char ETX = '\x003';

Salida

Mapa caracteres Tabla ASCII
Simbolo dec hex oct bin
! 33 21 41 100001
" 34 22 42 100010
# 35 23 43 100011
$ 36 24 44 100100
% 37 25 45 100101
& 38 26 46 100110
' 39 27 47 100111
( 40 28 5 101000
) 41 29 51 101001
* 42 2A 52 101010
+ 43 2B 53 101011
, 44 2C 54 101100
- 45 2D 55 101101
. 46 2E 56 101110
/ 47 2F 57 101111
0 48 30 60 110000
1 49 31 61 110001
2 50 32 62 110010
3 51 33 63 110011
4 52 34 64 110100
5 53 35 65 110101
6 54 36 66 110110
7 55 37 67 110111
8 56 38 70 111000
9 57 39 71 111001
: 58 3A 72 111010
; 59 3B 73 111011
< 60 3C 74 111100
= 61 3D 75 111101
> 62 3E 76 111110
? 63 3F 77 111111
@ 64 40 100 1000000
A 65 41 101 1000001
B 66 42 102 1000010
C 67 43 103 1000011
D 68 44 104 1000100
E 69 45 105 1000101

Comentarios

  • Al estar todo el código dentro del setup() solo se ejecuta una vez.
  • Note la diferencia entre Serial.write(c) que imprime el caracter ASCII y Serial.print(c) que imprime su valor decimal.

Vea también