Descrizione del progetto
TradottoIn questo caso, il programma principale dovrebbe eseguire l'inizializzazione necessaria, l'input dei dati grezzi e l'output dei risultati attraverso le porte specificate del microcontrollore, e il compito principale dovrebbe essere eseguito dalla subroutine.
Esplora i principali elementi della struttura del microcontrollore ATmega8535: CPU, dispositivi di memorizzazione, porte I/O - nel processo di esecuzione del programma. Indaga in dettaglio la struttura e il funzionamento della CPU e dello stack del microcontrollore, variando i dati iniziali, fissando lo stato dello stack e dei registri, incluso il contatore di programma, il puntatore dello stack e il registro dei flag.
I risultati dello studio sono redatti sotto forma di tabella, come nell'esempio sottostante.
La sequenza delle righe nella tabella dovrebbe corrispondere alla sequenza di esecuzione dei comandi durante l'esecuzione del programma, e non alla loro sequenza nel testo del programma. Nella riga corrispondente a questo comando, il contenuto dei registri e della memoria deve essere come dopo la sua esecuzione.
Nella colonna "Caratteristiche del team" annota l'impatto sui flag, dimensione
Il numero di volte necessario per eseguirlo.
Analizza i risultati dello studio, esegui le necessarie
Confronti, conclusioni.
Caratteristiche comuni di tutte le opzioni:
1. Disponibilità di una subroutine.
2. Input e output attraverso porte parallele del microcontrollore.
Caratteristiche specifiche:
S1. Compito eseguito dal subprogramma.
S2. Porte I/O.
S3. Posizione dello stack.
Confronti esterni (Harvard RISC AVR – Princeton CISC x86):
1. Sistema di comandi.
2. Dimensione e formato del comando.
3. Tempo di esecuzione del comando.
4. L'ordine di cambiamento (contatore di programma) del puntatore del comando.
5. L'ordine di cambiamento del puntatore dello stack.
6. L'ordine di memorizzazione delle parole in memoria.
7. Registro dei flag.
Confronti interni:
1. Disponibilità e utilizzo di registri a uso generale e I/O.
2. Dimensione e tempo di esecuzione dei comandi.