ao-dbg - En ligne dans le Cloud

Il s'agit de la commande ao-dbg qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

PROGRAMME:

Nom


ao-dbg - débogueur hexadécimal pour les processeurs cc1111

SYNOPSIS


ao-dbg [-t type de processeur] [-X fréquence] [-c] [-r port d'écoute] [-Z port d'écoute] [-s] [-S] [-p
rapide] [-V] [-v] [-H] [-h] [-m] [-T appareil tty] [--tty appareil tty] [-RÉ appareil-altos]
[--dispositif appareil-altos]

DESCRIPTION


ao-dbg se connecte à un processeur cc1111 via une carte cc1111 appropriée ou un cp2103
carte convertisseur USB vers série, en utilisant les broches GPIO disponibles sur cette puce. Il fournit un
interface compatible avec l'émulateur 8051 de sdcc appelé s51, mais communiquant avec
la vraie puce au lieu d'une émulation. Utilisation d'une version modifiée du débogueur SDCC
(sdcdb), vous pouvez contrôler l'exécution du programme sur la machine cible au niveau de la source.

OPTIONS


Les options de ligne de commande sont conçues pour être compatibles avec l'émulateur 8051 afin qu'il
peut être utilisé avec sdcdb. En tant que tels, ils font tous une lettre.

-t type de processeur
L'émulateur 8051 peut fonctionner comme l'une des différentes puces. Bizarrement, le vrai
le matériel ne peut pas, donc cette option est ignorée.

-X fréquence
De même, l'émulateur peut prétendre fonctionner à une fréquence arbitraire que le vrai
le matériel ne peut pas faire. Ignoré.

-c

-s

-S

-v

-V Tous ignorés.

-r port d'écoute, -Z port d'écoute
L'émulateur et sdcdb communiquent via un socket réseau. Cette option change
le débogueur de communiquer via stdin/stdout à l'écoute sur un
port réseau à la place. Une fois la connexion établie, le débogueur continue en utilisant
ce port réseau pour l'entrée et la sortie des commandes. Le débogueur utilise le port 9756 et
tente de se connecter avant de lancer ao-dbg, donc si ao-dbg écoute sur ce port
avant que sdcdb ne démarre, sdcdb finira par parler à l'instance ao-dbg existante.
C'est souvent utile pour déboguer ao-dbg lui-même.

-p rapide
Cela définit l'invite de commande sur la chaîne spécifiée.

-P Cela définit l'invite de commande sur un seul caractère NUL. Ceci est destiné à être utilisé par sdcdb.

-h Cela devrait imprimer un message d'utilisation, mais ne fait rien d'utile actuellement.

-m Cette option n'est pas présente dans l'émulateur 8051 d'origine et provoque le vidage d'ao-dbg
toutes les commandes et réponses reçues et envoyées à sdcdb.

-T tty-device | --tty tty-périphérique
Cela sélectionne le périphérique tty que le débogueur utilise pour communiquer avec la cible
dispositif. Le nom spécial 'BITBANG' indique à ao-dbg d'utiliser la connexion cp2103,
sinon, cela devrait être un port série USB connecté à un débogage cc1111 approprié
nœud.

-D AltOS-périphérique | --device AltOS-périphérique
Recherchez un appareil connecté. Cela nécessite un argument de l'un des suivants
formes:

Télémètre :2
Télémètre
2

Omettre le nom du produit entraînera la sélection par l'outil d'un produit approprié,
omettre le numéro de série fera correspondre l'outil à l'un des
dispositifs.

COMMANDES


Une fois démarré, ao-dbg se connecte au cc1111 puis lit et exécute les commandes, soit
de stdin, ou la connexion réseau à sdcdb.

Contrairement à la ligne de commande, ao-dbg contient une aide intégrée pour chacune de ces commandes, via le
commande « aide ». La plupart des commandes sont disponibles sous une forme longue et un seul caractère
forme courte. Ci-dessous, la forme courte suit la forme longue après une virgule.

aider, ? {commander}
Sans arguments, imprime une liste des commandes disponibles. Avec un argument imprime
plus de détails sur la commande spécifique

arrêter, q
Met fin à l'application, sans changer l'état du processeur cible.

di [début] [fin]
Vide imem (256 octets de mémoire "interne") du début à la fin (inclus).

ds [début] [fin]
Décharge les ressorts du début à la fin (inclus). Notez que bien que la plupart des ressorts soient visibles dans
l'espace d'adressage global, certains ne le sont pas, utilisez donc cette commande au lieu de "dx" pour lire
Eux.

dx [début] [fin]
Videz la mémoire externe (globale) du début à la fin (inclus).

ensemble, t [démarrer] {données ...}
Stocker dans l'espace mémoire spécifié par le préfixe où le préfixe est l'un des "xram", "rom",
"iram", ou "sfr". Stocker les octets en commençant au début.

décharge, d [début Fin]
Vidage de l'espace mémoire spécifié par préfixe, où préfixe est l'un des "xram",
"rom", "iram" ou "sfr". Dumps du début à la fin (inclus).

fichier [nom de fichier]
Spécifie un fichier hexadécimal au format Intel (ihx) qui contient le contenu de la zone rom
chargé dans le cc1111. Ceci est utilisé pour répondre aux demandes de vidage de la mémoire rom
contenu sans les récupérer du cc1111 (ce qui est lent).

pc, p {adresse}
Si l'argument d'adresse est donné, cela définit le compteur de programme sur la valeur spécifiée
valeur. Sinon, la valeur actuelle du compteur de programme est affichée.

pause, b [adresse]
Définit un point d'arrêt à l'adresse spécifiée. Cela utilise le matériel intégré
prise en charge des points d'arrêt dans le cc1111. En conséquence, il ne supporte pas plus de quatre
points d'arrêt à la fois. Vous devez donc utiliser une version modifiée de sdcdb qui
modifie la façon dont l'exécution du programme est contrôlée pour fonctionner dans cette limite.

clair, c [adresse]
Efface un point d'arrêt à partir de l'adresse spécifiée.

courir, r, aller, g {start} {stop}
Reprise de l'exécution du programme. Si l'argument start est présent, alors il commence
à cette adresse, sinon il continue de fonctionner sur le PC actuel. Si un arrêt
est présent, un point d'arrêt temporaire est défini à cette adresse. Cette
le point d'arrêt temporaire sera supprimé lorsque l'exécution l'atteint.

suivant, m
Première étape. Dans le programme s51 d'origine, cela ignorerait les sous-programmes,
mais comme sdcdb ne nécessite pas cette fonctionnalité, elle n'est pas disponible ici.

pas
Première étape.

charger, l [nom de fichier]
Ceci n'est pas implémenté, mais il est censé charger un fichier hexadécimal dans la mémoire flash. Utilisez le
programme ccload à la place.

arrêt, h
Arrêtez le processeur. C'est la seule commande qui peut être envoyée pendant que le programme est
fonctionnement. Il est ignoré à d'autres moments.

réinitialiser, res
Réinitialisez le processeur. Cela tire la broche de réinitialisation vers le bas et réactive le mode de débogage. Vérifier
la documentation cc1111 pour voir précisément ce que cela fait.

status Ceci vide le registre d'état de débogage cc1111.

info, je points d'arrêt, b
Répertoriez les points d'arrêt actuels.

info, j'aide, ?
Faites la liste des choses sur lesquelles vous pouvez obtenir des informations.

stop Cela ne fait rien et n'est présent que pour conserver la compatibilité avec le
émulateur 8051 d'origine.

CONSEIL D'ADMINISTRATION FAIRE MONTER DÉBOGAGE


Alors que le but initial de ce programme était de connecter le débogueur source avec le
matériel, il peut également être utilisé seul comme débogueur hexadécimal de bas niveau. En particulier,
tous les périphériques cc1111 peuvent être manipulés directement depuis la ligne de commande ao-dbg.

Démarrage de ao-dbg
Assurez-vous d'abord que le périphérique cc1111 cible et la carte intermédiaire cp2103 ou cc111
sont tous correctement branchés.

$ ao-dbg
Bienvenue dans le processeur non simulé
> statut
CPU arrêté
Arrêté par la commande de débogage
>

Allumer les LED
Deux des broches GPIO cc1111, P1_0 et P1_1 sont capables de piloter des LED externes. À
contrôlez-les, définissez les bits de direction du port 1 pour créer ces broches de sortie, puis
modifiez les données du port 1 pour les définir en haut ou en bas :

> définir sfr 0xfe 0x02 # définir P1DIR à 0x2
> définir sfr 0x90 0x02 # définir P1_1 à haut
> définir sfr 0x90 0x00 # définir P1_1 à bas

Lecture des convertisseurs A/N
Les six entrées du convertisseur A/N peuvent chacune être connectées à l'une des broches P0, à la terre,
la référence de tension A/D, un capteur de température interne ou VDD/3. Pour lire l'un des
ces valeurs, sélectionnez un convertisseur A/N à utiliser, puis lancez le processus de conversion. Les
Le manuel cc1111 contient le tableau de sélection de l'entrée à la page 144.

Pour configurer l'une des broches P0 à utiliser par l'unité A/D, nous programmons l'ADCCFG
registre, en définissant les bits dans celui qui correspond aux broches souhaitées :

> set sfr 0xf2 0x3f # activer les 6 entrées A/N

Pour déclencher une seule conversion, nous demandons à l'unité A/N d'effectuer un « extra »
conversion, ce qui signifie faire une seule conversion et non une séquence entière de
reconversions. Ceci est contrôlé par le registre ADCCON3 en 0xB6 :

> set sfr 0xb6 0xb2 # sample P0_2 en utilisant 12 bits de précision
> ds 0xba 0xbb # vider les regs bas et haut des données ADC
> set sfr 0xb6 0xbe # échantillon sonde de température interne
> ds 0xba 0xbb # vider les regs bas et haut des données ADC

Utilisez ao-dbg en ligne en utilisant les services onworks.net



Derniers programmes en ligne Linux et Windows