Bonjour,
j'ai un programme pour faire clignoter une led sur shell script et je veux traduire en C
voila le programme
// Blink an LED on breadboard
PIN="26" # P8_6is gpio1_3 = (32 * 1) + 3 = 35
GPIOPIN="/sys/class/gpio/gpio$PIN"
if [ -d "$GPIOPIN" ]; then
echo "Blinking LED connected to Pin $PIN ..."
else
echo $PIN > /sys/class/gpio/export
echo "Blinking LED connected to Pin $PIN ..."
sleep 1
fi
while true; do
echo high > $GPIOPIN/direction
sleep 2
echo low > $GPIOPIN/direction
sleep 2
done
voila ce que j'ai essayé
int main()
{
int p; char tab[max_N];
int gpio = 26;
p=open("/sys/class/gpio/export", O_WRONLY);
sprintf(tab, "%d", gpio);
write(p, tab, strlen(tab));
close(p);
sprintf(tab, "/sys/class/gpio/gpio%d/direction", gpio);
p = open(tab, O_WRONLY);
write(p, "out", 1);
write(p, "in", 3);
close(p);
if [ -d "$GPIOPIN" ] then
fprintf ("Blinking LED connected to Pin $PIN …")
else
// echo $PIN > /sys/class/gpio/export
fprintf("Blinking LED connected to Pin $PIN …")
//sleep 1
else
while (true) do
{
sprintf(tab, "/sys/class/gpio/gpio%d/value", gpio);
p = open(tab, O_WRONLY);
write(p, "1", 1);
write(p, "0", 1);
close(p);
return 0;
}
# ???
Posté par mouvda . Évalué à 1.
bonjour,
tu veux quoi : de l'aide, qu'on te le fasse ou autres : y a pas de questions ou de sollicitations dans ton texte ?
tant va la cruche à l'eau qu'à la fin elle t'explose en pleine tête
[^] # Re: ???
Posté par oumayma . Évalué à 1.
s'il y a quelqu'un qui peut corrigé ce que j'ai déjà essayé
merci d'avance
# Déjà
Posté par Tonton Benoit . Évalué à 1.
Un premier jet, sans chercher à comprendre le code :
max_Nn'est pas défini.C'est pas du C tout ça !
while (true) doC'est pas du C, true n'existe pas en C, manque l’accolade fermante.[^] # Re: Déjà
Posté par benja . Évalué à 1.
Ça dépend dans quel C, visiblement dans C99 cela existe après avoir inclu
<stdbool.h>.Après il reste certainement une question de bon goût :)
# 2 choses: syntaxe C, et poser une question intelligemment
Posté par freem . Évalué à 2.
Je n'ai pas répondu sur l'autre fil, mais je suppose que tu as fais un effort sur celui-la…
Donc, pour moi il va falloir que tu apprennes 2 choses:
while(true) do{}ce n'est pas du C. Idem leif [ ... ] thenest une construction du shell.Pour ce qui est du shell, sais-tu ce que fais
[ -d foobar ]?Et pour le code C, le jour ou tu feras des programmes sérieux, tu vas galérer à déboguer si tu ne prends pas un minimum de bonnes habitudes. Notamment:
Il y aurais sûrement d'autres choses à dire, mais commences par ça. Ho, et un dernier conseil pour la route, au sujet de la compilation: ajoutes les flags
-Wallet-Wextra.-Werrorest pas mal non plus quand on commence, parce que quand on ne maîtrise pas le langage, il vaut mieux suivre les conseils du compilateur, et ce flag te "forcera" à le faire.[^] # Re: 2 choses: syntaxe C, et poser une question intelligemment
Posté par oumayma . Évalué à -1.
ok, merci pour tes conseils
# dupe
Posté par Krunch (site web personnel) . Évalué à 2.
Ah ben il y a justement une autre entrée de forum à ce sujet. Tu trouvera peut-être la réponse par là https://linuxfr.org/forums/programmation-c--2/posts/shell-script-langage-c
pertinent adj. Approprié : qui se rapporte exactement à ce dont il est question.
[^] # Re: dupe
Posté par benja . Évalué à 1. Dernière modification le 23 novembre 2015 à 14:57.
Du coup je me suis planté d'endroit…
oumayma, réponse ici :
http://linuxfr.org/forums/programmation-c--2/posts/shell-script-langage-c#comment-1631988
PS: N'esite pas à poster ta version corrigée dans les commentaires cette fois ci…
[^] # Re: dupe
Posté par oumayma . Évalué à -2.
ok, merci beaucoup
# Python
Posté par Ludo . Évalué à -3.
Pourquoi vouloir le faire en C?
Fais le avec Python, ça sera moins compliqué pour commencer.
[^] # Re: Python
Posté par benja . Évalué à 1.
Hormis la question de l'empreinte, je ne trouve pas que pour ce genre de trivalité le python soit beaucoup plus facile, surtout si l'on ne maîtrise ni l'un ni l'autre à priori. Dans les 2 cas tu vas devoir passer autant de temps dans la documentation.
Maintenant pour faire des choses plus complexes, il y aurait probablement matière à débat.
[^] # Re: Python
Posté par lolop (site web personnel) . Évalué à 2.
Avec MicroPyhon alors…
Votez les 30 juin et 7 juillet, en connaissance de cause. http://www.pointal.net/VotesDeputesRN
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.