Manuale d'uso del programma PCMon

- A cura del Prof. Stefano Salvi -


Sistema di cross-sviluppo ed emulatore per 8051:

Le finestre del programma

All'accensione il programma apre sette finestre, che consentono di gestire il colloquio con la scheda (o con l'meulatore) e di monitorare l'esecuzione di un programma.

Finestra Terminale (pcmon)
La Finestra Terminale è la finestra base del programma. Da questa finestra, tramite i menù o le icone della toolbar si possono raggiungere tutte le altre finestre.
Il testo scritto in questa finestra viene inviato all'interfaccia seriale (se una scheda è connessa) o alla seriale emulata dell'emulatore. I caratteri inviati alla seriale dall'hardware esterno oppure inviati al registro sbuf dell'emulatore vengono visualizzati in questa finestra.
Nella barra di stato di questa finestra viene visualizzato lo stato della connessione e dell'esecuzione.
Pc e Breackpoint
Questa finestra controlla l'esecuzione del programma. Nel campo Pc compare il punto corrente di esecuzione, quando la scheda è in pausa. Se si modifica il valore in questo campo, all'avvio il programma verrà eseguito dall'indirizzo indicato.
È anche possibile impostare fino a tre breackpoint.
Spazio Code
In questa finestra viene visualizzato il contenuto dello spazio Code del processore. La finestra Code presenta quattro colonne:
  1. Indirizzo della riga, in esadecimale
  2. Rappresentazione esadecomale del byte
  3. Rappresentazione ASCII (se codice ASCII valido, da spazio a ~)
  4. Opcode del codice. Se l'istruzione si espande su più byte, solo di fianco al primo viene visualizzato l'opcode completo.
I dati possono essere modificati in ciascuna delle tre colonne che visualizzano il dato.
Spazio Data
Questa finestra presenta tre colonne:
  1. Indirizzo del primo byte della riga.
  2. Rappresentazione esadecimale di 16 byte (10 esadecimale) della memoria DATA
  3. Rappresentazione ASCII (se codice ASCII valido, da spazio a ~) per gli stessi 16 byte
Possono essere visualizzati tutti i 256 byte della memoria DATA. Essi possono essere modificati in ciascuna delle due colonne che visualizzano il dato.
Spazio Xdata
Questa finestra presenta tre colonne:
  1. Indirizzo del primo byte della riga.
  2. Rappresentazione esadecimale di 16 byte (10 esadecimale) della memoria DATA
  3. Rappresentazione ASCII (se codice ASCII valido, da spazio a ~) per gli stessi 16 byte
Possono essere visualizzati i byte dall'indirizzo 8050h al F8FFh della memoria XDATA. Essi possono essere modificati in ciascuna delle due colonne che visualizzano il dato.
Sfr
Questa finestra visualizza i registri di uso speciale (SFR = Special Function Register) che il Mo52 consente di manipolare. Questi registri sono:
  1. Lo Stack Pointer SP
  2. L'accumulatore A
  3. Il registro delle moltiplicazioni B
  4. Il pegistro dei flags PSW (Program Status Word)
  5. Il puntatore alla memoria Data o Xdata DPTR
  6. Gli 8 registri (R0 ... R7) del banco corrente
Non sono visualizzati nè quindi modificabili i registri relativi ai dispositivi hardware, come i port, i timer, la seriale e l'interrupt controller.
Tutti i registri sono modificabili e vengono aggiornati ogni volta che il programma in esecuzione viene sospeso.
TIO 16
Questa finestra fà parte dell'emulatore. Essa emula tutto l'hardware di interfaccia disponibile con una scheda GPC-F2 connessa ad un TIO16.
La parte superiore, con sfondo verde, coniene i 16 LED ed i 16 pulsanti presenti sul piastrino TIO16 (manca il LED che indica la presenza dell'alimentazione). I LED ed i bottoni rossi sono connessi alla porta A, il LED ed il pulsante più a sinistra corrispondono al bit 0 della porta A.
I LED ed i pulsanti gialli corrispondono ai bit da 0 a 3 della porta C (sempre il bit 0 corrisponde al LED ed al pulsante più a sinistra), i LED ed i pulsanti verdi ai bit da 4 a 7 della porta C.
Nella parte bassa, con sfondo bianco, emula l'I/O conenuto direttamente nella scheda GPC-F2. Contiene i LED giallo (P1, bit 2 dell'8051) e verde (P1, bit 5 dell'8051) ed il banco di DIP Switch, connessi alla porta B del PPI (il DIP a sinistra corrisponde al bit 0 della porta B).

Oltre a queste finestre, aperte automaticamente, il programma possiede:

Finestra dell' Editor
Di questo tipo di finestra possono essere aperte più copie, con file diversi. È un completo text editor, completo di funzioni di ricerca e sostituzione e di tutte le funzioni che normalmente si trovano in un text editor.
Dall'editor è possibile invocare l'assemblatore, per assemblare il file editato. È anche possibile scaricare il programma assemblato sulla scheda (o nell'emulatore) e mandarlo in esecuzione.
Se l'assemblatore trova degli errori nel file, l'editor consente di raggiungere immediatamente la riga contenete l'errore.
Lista degli errori dell'assemblatore
Questa finestra viene aperta alla fine dell'esecuzione del comando di assmblaggio, se l'assemblaggio non ha avuto successo. Contiene la lista degli errori riportati dall'assemblatore. È possibile selezionare un errore e posizionare l'editor con il sorgente sulla linea che lo ha generato.

Prof. Stefano Salvi