Programmer l’Arduino – Les types de données

Les types de données dans C se réfèrent à un système étendu utilisé pour déclarer des variables ou des fonctions de différents types. Le type de variable détermine la quantité d’espace qu’il occupe dans le stockage et la manière dont le motif de bits stocké est interprété.

Le tableau suivant fournit tous les types de données que vous utiliserez lors de la programmation Arduino.

short float char Unsigned char byte double Unsigned int String-object
int Unsigned long void Boolean long array String-char array word

 
 

Void

Le mot-clé void est utilisé uniquement dans les déclarations de fonction. Cela indique que la fonction ne retournera aucune information à la fonction à partir de laquelle elle a été appelée.
 
Exemple :

Void Loop ( ) {
   // le reste du code
}

Boolean

Un booléen prend une des deux valeurs, vraies ou fausses. Chaque variable booléenne occupe un octet de mémoire.
 
Exemple :

boolean val = false; // déclaration de variable de type boolean et l'initialiser avec false
boolean state = true; // déclaration de variable de type boolean et l'initialiser avec true

Char

Un type de données qui prend un octet de mémoire qui stocke un caractère comme ceci: ‘A’ et pour plusieurs caractères on utilise des guillemets doubles: « ABC ».

Cependant, les caractères sont stockés sous forme de nombres. Vous pouvez voir l’encodage spécifique dans le diagramme ASCII. Cela signifie qu’il est possible d’effectuer des opérations arithmétiques sur des caractères, dans lesquels la valeur ASCII du caractère est utilisée. Par exemple, ‘A’ + 1 a la valeur 66, puisque la valeur ASCII de la lettre majuscule A est 65.

ASCII
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Caractère NUL
SOH
STX
ETX
EOT
ENQ
ACK
BEL
BS
HT
LF
VT
FF
CR
SO
SI
DLE
DC1
DC2
DC3
DC4
NAK
SYN
ETB
CAN
EM
SUB
ESC
FS
GS
RS
US
ASCII 64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
Caractère @
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
] ^
_

 

ASCII 96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
Caractère a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
DEL
ASCII160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
Caractère ¡
¢
£
¤
¥
¦
§
¨
©
ª
«
¬
­
®
¯
°
±
²
³
´
µ

·
¸
¹
º
»
¼
½
¾
¿
ASCII 192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
Caractère À
Á
Â
Ã
Ä
Å
Æ
Ç
È
É
Ê
Ë
Ì
Í
Î
Ï
Ð
Ñ
Ò
Ó
Ô
Õ
Ö
×
Ø
Ù
Ú
Û
Ü
Ý
Þ
ß

Exemple :

// déclaration de variable de type char et l'initialiser avec le caractère a
char chr_a = ‘a’; 
// déclaration de variable de type char et l'initialiser avec la valeur 100
char chr_d = 100; 

 


Unsigned char

unsigned char est un type de données non signé qui occupe un octet de mémoire. Le type de données unsigned char code les nombres de 0 à 255.
 
Exemple :

// déclaration de variable de type unsigned char et l'initialiser avec le caractère p
unsigned char chr_p = 111

byte

Un byte (octet) stocke un nombre non signé de 8 bits, de 0 à 255.
 
Exemple :
 

// déclaration de variable de type byte et l'initialiser avec 66
byte m = 66;

Int

int est le principal type de donnée pour le stockage des nombres. Int stocke une valeur de 16 bits (2 octets). Ceci donne une portée de -32,768 à 32,767 (valeur minimale de -2 ^ 15 et une valeur maximale de (2 ^ 15) – 1).

La taille de int varie d’un tableau à l’autre. Sur Arduino Due, par exemple, un int stocke une valeur de 32 bits (4 octets). Cela donne une plage de -2.147.483.648 à 2.147.483.647 (valeur minimale de -2 ^ 31 et une valeur maximale de (2 ^ 31) – 1).
 
Exemple :

// déclaration de variable de type int et l'initialiser avec 100
int i = 100;

Unsigned int

unsigned int (entiers non signés) sont identiques à int dans la manière dont ils stockent une valeur de 2 octets. Au lieu de stocker des nombres négatifs, cependant, ils ne stockent que des valeurs positives, ce qui donne une portée utile de 0 à 65 535 (2 ^ 16) – 1). La carte Arduino Due stocke une valeur de 4 octets (32 bits), allant de 0 à 4,294,967,295 (2 ^ 32 – 1).
 
Exemple :

// déclaration de variable de type int non signé et l'initialiser avec 100
unsigned int i = 100;

Float

Le type de donnée pour le nombre à virgule flottante est un nombre qui a un point décimal. Les nombres de points flottants sont souvent utilisés pour approximer les valeurs analogiques et continues car elles ont une plus grande résolution que les nombres entiers.

Les nombres de points flottants peuvent être aussi importants que 3.4028235E + 38 et aussi bas que 3.4028235E + 38. Ils sont stockés en tant que 32 bits (4 octets) d’informations.
 
Exemple :

// déclaration de variable de type float et l'initialiser avec 2.954
float nbr = 2.954;

 


Double

Sur la carte Arduino Uno et d’autres cartes basés sur ATMEGA, le nombre à virgule flottante à double précision occupe quatre octets. C’est-à-dire que double implémentation est exactement la même que celle du float, sans gain de précision. Sur l’Arduino Due, les doubles ont une précision de 8 octets (64 bits).
 
Exemple :

// déclaration de variable de type double et l'initialisation avec 99.254
double nbr = 99.254;

Short

short est un type de données 16 bits. Sur tous les Arduinos (basé sur ATMega et ARM), short stocke une valeur de 16 bits (2 octets). Ceci donne une portée de -32,768 à 32,767 (valeur minimale de -2 ^ 15 et une valeur maximale de (2 ^ 15) – 1).
 
Exemple :

// déclaration de variable de type short et l'initialiser avec 22
short var = 22;

Long

Les variables de type long sont des variables de taille étendue pour le stockage des nombres de 32 bits (4 octets), de 2 147 483 648 à 2 141 483 647.
 
Exemple :

// déclaration de variable de type long et l'initialisation avec 958472
long vitesse = 958472;

Unsigned long

Les variables de type unsigned long sont des variables de taille étendue pour le stockage de numéros de 32 bits (4 octets). Contrairement aux variables de type long, les longs non signés ne stockeront pas les nombres négatifs, ce qui leur fera passer de 0 à 4,294,967,295 (2 ^ 32 – 1).
 
Exemple :

// déclaration de variable de type unsigned long, est initialisée avec 98563247
unsigned long vitesse = 98563247;

Word

Sur la carte Arduino Uno et d’autres cartes basés sur ATMEGA, un mot stocke un numéro non signé de 16 bits. Sur la carte Arduino Due and Zero, il stocke un numéro non signé de 32 bits.
 
Exemple :

// déclaration de variable de type word, est initialisée avec 222
word w = 222;

 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *