[Langage c] Convertion Code ascii
Fermé
Thomas
-
24 avril 2007 à 11:24
dubcek Messages postés 18767 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 5 mars 2025 - 11 juin 2008 à 16:29
dubcek Messages postés 18767 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 5 mars 2025 - 11 juin 2008 à 16:29
salut a tous
voila je travail sur un 68HC12 et je doit echantilloné l'entrée de L'ADC et d'envoyer ces echantillion sur le PC via la liaison serie avec l'Hyperterminal.
J'arrive a envoyer le caractere ascii mais je n'arrive pas a faire la convertion pour qu'il puisse m'afficher le code Hexa ou decimal de ce caractere pluto que le caractere.
Merci d'avance
voila je travail sur un 68HC12 et je doit echantilloné l'entrée de L'ADC et d'envoyer ces echantillion sur le PC via la liaison serie avec l'Hyperterminal.
J'arrive a envoyer le caractere ascii mais je n'arrive pas a faire la convertion pour qu'il puisse m'afficher le code Hexa ou decimal de ce caractere pluto que le caractere.
Merci d'avance
A voir également:
- Convertir un code ascii en caractère en c
- Caractère ascii - Guide
- Convertir youtube en mp3 avec audacity - Guide
- Caractere speciaux - Guide
- Caractères spéciaux : comment taper des |—[©\½→}… - Guide
- Code puk bloqué - Guide
9 réponses
dubcek
Messages postés
18767
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
5 mars 2025
5 628
24 avril 2007 à 14:23
24 avril 2007 à 14:23
Depuis du C ? imprimer le caractère avec printf("%x", c);
Stupeflip
Messages postés
391
Date d'inscription
jeudi 8 février 2007
Statut
Membre
Dernière intervention
4 décembre 2007
94
24 avril 2007 à 13:38
24 avril 2007 à 13:38
Salut,
Il suffit de travailler avec des pointeurs pour récupérer facilement le code en ascii puis le traduire ensuite :) Par adresse en gros
Bon courage
Il suffit de travailler avec des pointeurs pour récupérer facilement le code en ascii puis le traduire ensuite :) Par adresse en gros
Bon courage
Stupeflip
Messages postés
391
Date d'inscription
jeudi 8 février 2007
Statut
Membre
Dernière intervention
4 décembre 2007
94
24 avril 2007 à 15:03
24 avril 2007 à 15:03
Si je me souviens bien, %x affiche l'adresse en hexa de la variable, donc attention si tu manipules de l'ascii de ne pas confondre :)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
dubcek
Messages postés
18767
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
5 mars 2025
5 628
24 avril 2007 à 15:23
24 avril 2007 à 15:23
Si c est un char, %x affiche le code ascii en hexa du caractère, %o l'imprime en octal, %c imprime le caractère, si il est imprimable, %s imprime une chaine de caractères dans un string (char *)
Salut,
Je voudrais afficher sur mon ecran (console), relie a mon micro 68HC12 le contenu d'un tableau.
Pour cala j'ai cree cette fonction:
void AfficherTableauSurConsole(long *Tab) // affiche tableau case par case sur l'ecran de la console
{
int i;
for (i = 0 ; i < 35 ; i++) // 35 cases dans le tableau
{
puts(" %ld",Tab[i]); // voila le probleme ce trouve sur cette ligne(a mon avis)
}
}
La fonction: puts() provient du programme: iochar.c (lui meme provenant du logiciel de developement que j'utilise pour la communication avec mon 68HC12 icc12ide) qui permet en gros de faire comme un printf.
Le programme compile et tout semble fonctionner mais sur mon ecran il y a 35 " ld " qui s'affichent et non les 35 valeurs contenues dans les 35 cases du tableau.
J'ai besoin d'aide ce pb paralyse mon projet.
Je voudrais afficher sur mon ecran (console), relie a mon micro 68HC12 le contenu d'un tableau.
Pour cala j'ai cree cette fonction:
void AfficherTableauSurConsole(long *Tab) // affiche tableau case par case sur l'ecran de la console
{
int i;
for (i = 0 ; i < 35 ; i++) // 35 cases dans le tableau
{
puts(" %ld",Tab[i]); // voila le probleme ce trouve sur cette ligne(a mon avis)
}
}
La fonction: puts() provient du programme: iochar.c (lui meme provenant du logiciel de developement que j'utilise pour la communication avec mon 68HC12 icc12ide) qui permet en gros de faire comme un printf.
Le programme compile et tout semble fonctionner mais sur mon ecran il y a 35 " ld " qui s'affichent et non les 35 valeurs contenues dans les 35 cases du tableau.
J'ai besoin d'aide ce pb paralyse mon projet.
dubcek
Messages postés
18767
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
5 mars 2025
5 628
11 juin 2008 à 15:44
11 juin 2008 à 15:44
printf plutot que puts, non ?
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
11 juin 2008 à 16:26
11 juin 2008 à 16:26
vu que puts est une fonction non standard, il est difficile (voire impossible) de te répondre.
dubcek
Messages postés
18767
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
5 mars 2025
5 628
11 juin 2008 à 16:29
11 juin 2008 à 16:29
puts affiche le string entre "" sans interpréter les %. Pour formater un nombre avec % il faut printf