AVR Shell est le système ultime de développement, de débogage et d'éducation pour les microcontrôleurs basés sur l'AVR.
AVR Shell est de minuscules SG multitasants autonomes à exécuter sur des noyaux AVR 8 bits tels que l'atmega328p qui se trouve sur des cartes Arduino populaires telles que Arduino Uno ou Arduino Nano.
Le but d'AvrShell est principalement de soutenir votre développement matériel et / ou de tester votre logiciel ou à des fins éducatives.
Le shell AVR fournit une petite interface de ligne de commande qui vous permet de lire et d'écrire la mémoire AVR, y compris tous les registres et la mémoire du programme, en utilisant des commandes simples.
Pour compiler, vous avez besoin du gcc-avr et avr-libc . Bien que ce projet soit sans dépendance et qu'il n'utilise pas la LIBC standard, mais le package contient également les fichiers d'en-tête qui sont nécessaires pour compiler dans le code.
De plus, vous avez besoin par exemple, le avrdude clignote pour programmer.
Téléchargez toute la source, transformez en src/ et exécutez simplement make et make upload en supposant que votre carte Arduino est connectée. Vous ouvrez probablement le Makefile et modifiez USBDEV et BAUD de manière appropriée.
Connectez-vous simplement à votre Arduino avec un programme de terminal série tel que minicom . Il suffit d'exécuter minicom -D /dev/ttyACM0 -o -b 9600 -w .
Les commandes suivantes sont encore implémentées.
in <reg_addr> ... fonctionne comme l'instruction in instruction mais est implémenté avec des instructions mappées de mémoire ( ldd ).
out <reg_addr> <value> . ... fonctionne comme l'instruction out .
sbi <reg_addr> <bit> ...... Set Bit (0-7) dans IO Register.
cbi <reg_addr> <bit> ...... Clear bit (0-7) dans IO Register.
dump <addr> [len] ......... vidage des octets Len (par défaut = 512) de la mémoire.
pdump <addr> [len] ........ vide Len (default = 512) des octets de la mémoire du programme.
edump <addr> [len] ........ vide Len (default = 512) octets de la mémoire EEPROM.
ste <addr> <byte> ......... Écrivez l'octet sur eeprom à l'adresse addr .
cpu ....................... Sortie des informations CPU, telles que les bits de fusible, les bits de verrouillage et la signature.
uptime .................... Afficher les tiques de disponibilité du système depuis la dernière réinitialisation.
run <pid> ................. Exécutez le processus PID .
stop <pid> ................ Stop Process Pid .
new <address> ............. Créez un nouveau processus avec la routine de démarrage à l'adresse .
ps ........................ Liste des processus, avec PID, pointeur de pile actuel et état. Les états sont définis dans le processus.
Toutes ces commandes sont implémentées à l'aide de ld , lpm et st .
Avr Shell gère toutes les interruptions et publie un message si une interruption est capturée.
Les exceptions sont l'interruption de démarrage 0x00, et la série interrompt 0x24 et 0x26 car elles sont utilisées pour la coque AVR elle-même.
AVR Shell est développé par Bernhard R. Fischer, [email protected].
Clé PGP: 9867 8E06 0630 07E4 A1F0 B9C5 9BD6 0166 8E24 F29D
N'hésitez pas à me contacter.
Demandez à Phun en utilisant AVR Shell!