Bonjour,
je pense avoir executé toutes les etapes necessaires, j’ai modifié les fichiers avant de les avoir enregistrés.
Je passe par un terminal pour executer les commande (flash compris) et pourtant lors de la demande cpu et board je n’ai apparement pas la bonne reponse
TP4 : une etape doit me manquer


Bonjour,
Est-ce que les commandes shell apparaisse lorsque vous tapez help
dans le shell RIOT ?
Etes-vous sûr d’avoir modifié les bons fichiers Makefile et main.c ?
Le plus simple pour vous aider serait que vous postiez ici le contenu de votre Makefile et de main.c.
Merci

J’ai modifié les fichiers presents dans le dossier “shell”
voila ce que me retourne help :
> help
help
Command Description
---------------------------------------
board Print the board name
cpu Print the cpu name
Voici le Makefile :
APPLICATION ?= basic-shell
BOARD ?= native
# Add module for the shell here
USEMODULE += shell
RIOTBASE ?= $(CURDIR)/../../RIOT
include $(RIOTBASE)/Makefile.include
et le main.c :
#include <stdio.h>
#include <shell.h>
static int _board_handler(int argc, char **argv)
{
/* These parameters are not used, avoid a warning during build */
(void)argc;
(void)argv;
puts(RIOT_BOARD);
return 0;
}
static int _cpu_handler(int argc, char **argv)
{
/* These parameters are not used, avoid a warning during build */
(void)argc;
(void)argv;
puts(RIOT_CPU);
return 0;
}
static const shell_command_t shell_commands[] = {
{ "board", "Print the board name", _board_handler },
{ "cpu", "Print the cpu name", _cpu_handler },
{ NULL, NULL, NULL }
};
/* Include the shell header */
/* Implement the shell function callback here */
/* Add the shell command to the list of commands here */
int main(void)
{
char line_buf[SHELL_DEFAULT_BUFSIZE];
shell_run(shell_commands, line_buf, SHELL_DEFAULT_BUFSIZE);
return 0;
}

Bonjour,
Votre code est correct. Que vous affiche le shell de RIOT lorsque vous y lancez les commandes board
et cpu
?

Bonjour,
j’ai reessayé aujourd’hui sans avoir touché mes fichiers et effectivement cela fonctionne.
J’avais sans doute fait une erreur de manip lors du flash, meme si j’avais effectué plusieurs essais…
Merci pour la confirmation de mon code en tout cas