Menu English Ukrainian Russo Casa

Libreria tecnica gratuita per hobbisti e professionisti Libreria tecnica gratuita


ENCICLOPEDIA DELLA RADIOELETTRONICA ED ELETTRICA
Libreria gratuita / Schemi di dispositivi radioelettronici ed elettrici

Inizializzazione di segmenti di memoria aggiuntivi nei programmi per microcontrollori della famiglia MCS-51. Enciclopedia dell'elettronica radio e dell'ingegneria elettrica

Libreria tecnica gratuita

Enciclopedia della radioelettronica e dell'elettrotecnica / microcontrollori

Commenti sull'articolo Commenti sull'articolo

I microcontrollori moderni dispongono di una memoria dati non volatile (EEPROM) incorporata, in cui a volte è necessario inserire informazioni prima che il dispositivo inizi a funzionare. L'immagine (firmware) di questa memoria deve essere generata durante lo sviluppo del programma. Ciò può essere fatto, ad esempio, dagli assemblatori di microcontrollori delle famiglie PICmicro e AVR. Danno al programmatore l'opportunità di organizzare un segmento di memoria aggiuntivo e di impostarvi i dati iniziali per la scrittura su EEPROM.

Gli assemblatori per microcontrollori con core MSC-51 consentono anche di dividere la memoria in più parti, ma solo in una di esse - il segmento di codice eseguibile - è possibile l'inizializzazione. In tutti gli altri è possibile riservare celle di memoria e scrivervi dati solo durante l'esecuzione del programma. Una via d'uscita dalla situazione può essere la tecnica descritta di seguito. La sua essenza è l'uso dell'assemblaggio condizionale, a seguito del quale l'inizializzazione di un segmento di codice avviene in modo diverso, a seconda delle condizioni di traduzione. I file HEX risultanti possono essere utilizzati per programmare non solo la EEPROM interna del microcontrollore, ma anche i chip di memoria esterni.

Segmenti aggiuntivi creati artificialmente (è ammesso un numero qualsiasi) vengono inseriti nel testo del programma prima del segmento di codice reale. Le etichette definite in uno di essi saranno conosciute in tutti i successivi, compreso il segmento di codice vero e proprio. Ma non sono ammessi collegamenti in direzione opposta. Non esistono restrizioni sul tipo e sulla posizione fisica della memoria aggiuntiva.

Un esempio di programma con due segmenti aggiuntivi inizializzati, convenzionalmente chiamati EEPROM e FLASH, è riportato in Tabella. 1. Dopo averlo salvato nel file esempio.asm, utilizzeremo l'assemblatore ASEM-51, che può essere “scaricato” gratuitamente all'indirizzo .

Prima di tutto, eseguiamo l'assembler sulla riga di comando

asem esempio.asm eeprom.hex/define:EEPROM

Durante l'elaborazione delle prime righe del testo del programma, inserirà le etichette idEeprom, ptrWord e prtBufE nella sua tabella dei simboli e i dati specificati dalle direttive DB e DW nel file di output eeprom.hex (Tabella 2). Verrà quindi controllata la lunghezza del segmento. Se il valore del contatore del programma supera la capacità EEPROM fisicamente esistente (in questo caso, 640 celle), verrà visualizzato un messaggio di errore. Se la dimensione del segmento è ovviamente piccola, il controllo può essere omesso. Controlli simili possono essere forniti in altri segmenti.

Inizializzazione di segmenti di memoria aggiuntivi in ​​programmi per microcontrollori della famiglia MCS-51
(clicca per ingrandire)

Successivamente, l'assemblatore incontrerà la direttiva IFNDEF EEPROM. Poiché sulla riga di comando (parametro /define:EEPROM) è definito un simbolo con questo nome, tutte le righe successive del programma, fino alla direttiva ENDIF, verranno ignorate e la traduzione terminerà lì.

Eseguire la ritrasmissione dello stesso programma dalla riga di comando

asem esempio.asm flash.hex/define:FLASH

Si differenzia dal precedente solo per la definizione del simbolo FLASH al posto di EEPROM. La prima fase della traduzione avverrà esattamente come descritto sopra e i dati del segmento EEPROM verranno scritti nel file di output. Tuttavia, questa volta la direttiva IFNDEF EEPROM non interromperà il processo e la successiva direttiva ORG 0 ripristinerà il contatore del programma. L'assemblatore inizierà a scrivere i dati destinati al segmento FLASH nel file di output dall'indirizzo zero. La trasmissione verrà interrotta dalla direttiva IFNDEF FLASH. La forma finale del file flash.hex è mostrata nella tabella. 3.

Impostiamo la traduzione del segmento vero del codice eseguibile dal comando

asem esempio.asm

Innanzitutto i segmenti aggiuntivi verranno nuovamente tradotti e tutte le etichette in essi definite verranno inserite nella tabella dei simboli assembler, che consentirà loro di essere referenziati dal segmento di codice. La direttiva ORG 0 all'inizio ripristinerà ancora una volta il contatore del programma a zero. Successivamente la trasmissione proseguirà normalmente. Nel file risultante example.hex (Tabella 4), il codice del programma eseguibile inizia nella quarta riga, situata dopo le righe identiche a quelle contenute nei file HEX precedenti.

La presenza di informazioni non necessarie solitamente non interferisce con il corretto caricamento del codice nelle apposite aree di memoria del microcontrollore. Nel buffer del programma che gestisce la programmazione, i dati corretti, quando gli indirizzi coincidono, “spiazzano” quelli precedentemente inseriti. E solo se il nuovo segmento è più corto del precedente, la sua “coda” verrà memorizzata nel buffer. Per questo motivo è consigliabile descrivere i segmenti di un programma in ordine crescente di lunghezza.

Alcuni programmatori non dispongono di un buffer intermedio o non controllano rigorosamente i dati di input, impedendo la sovrapposizione degli indirizzi. Nel primo caso la programmazione risulterà errata, nel secondo non si avvierà affatto finché non verranno eliminati gli “errori”.

Puoi rimuovere manualmente le righe extra da un file HEX utilizzando qualsiasi editor di testo. Puoi farlo automaticamente eseguendo due comandi di seguito:

hex2bin esempio.hex bin2hex esempio.bin

Il primo creerà un'immagine binaria dei dati contenuti nel file example.hex e la inserirà nel file example.bin. Il secondo eseguirà la conversione inversa e creerà un nuovo file example.hex senza fronzoli. I programmi necessari possono essere “scaricati” da: E .

Autore: S. Chekunov, Izhevsk

Vedi altri articoli sezione microcontrollori.

Leggere e scrivere utile commenti su questo articolo.

<< Indietro

Ultime notizie di scienza e tecnologia, nuova elettronica:

Macchina per diradare i fiori nei giardini 02.05.2024

Nell'agricoltura moderna si sta sviluppando il progresso tecnologico volto ad aumentare l'efficienza dei processi di cura delle piante. Presentata in Italia l'innovativa macchina per il diradamento dei fiori Florix, progettata per ottimizzare la fase di raccolta. Questo attrezzo è dotato di bracci mobili, che permettono di adattarlo facilmente alle esigenze del giardino. L'operatore può regolare la velocità dei fili sottili controllandoli dalla cabina del trattore tramite joystick. Questo approccio aumenta significativamente l'efficienza del processo di diradamento dei fiori, offrendo la possibilità di adattamento individuale alle condizioni specifiche del giardino, nonché alla varietà e al tipo di frutto in esso coltivato. Dopo due anni di test della macchina Florix su diverse tipologie di frutta, i risultati sono stati molto incoraggianti. Agricoltori come Filiberto Montanari, che utilizza una macchina Florix da diversi anni, hanno riscontrato una significativa riduzione del tempo e della manodopera necessari per diluire i fiori. ... >>

Microscopio infrarosso avanzato 02.05.2024

I microscopi svolgono un ruolo importante nella ricerca scientifica, consentendo agli scienziati di approfondire strutture e processi invisibili all'occhio. Tuttavia, vari metodi di microscopia hanno i loro limiti e tra questi c'è la limitazione della risoluzione quando si utilizza la gamma degli infrarossi. Ma gli ultimi risultati dei ricercatori giapponesi dell'Università di Tokyo aprono nuove prospettive per lo studio del micromondo. Gli scienziati dell'Università di Tokyo hanno presentato un nuovo microscopio che rivoluzionerà le capacità della microscopia a infrarossi. Questo strumento avanzato consente di vedere le strutture interne dei batteri viventi con sorprendente chiarezza su scala nanometrica. In genere, i microscopi nel medio infrarosso sono limitati dalla bassa risoluzione, ma l’ultimo sviluppo dei ricercatori giapponesi supera queste limitazioni. Secondo gli scienziati, il microscopio sviluppato consente di creare immagini con una risoluzione fino a 120 nanometri, ovvero 30 volte superiore alla risoluzione dei microscopi tradizionali. ... >>

Trappola d'aria per insetti 01.05.2024

L’agricoltura è uno dei settori chiave dell’economia e il controllo dei parassiti è parte integrante di questo processo. Un team di scienziati dell’Indian Council of Agricultural Research-Central Potato Research Institute (ICAR-CPRI), Shimla, ha trovato una soluzione innovativa a questo problema: una trappola per insetti alimentata dal vento. Questo dispositivo risolve le carenze dei metodi tradizionali di controllo dei parassiti fornendo dati sulla popolazione di insetti in tempo reale. La trappola è alimentata interamente dall'energia eolica, il che la rende una soluzione ecologica che non richiede energia. Il suo design unico consente il monitoraggio sia degli insetti dannosi che utili, fornendo una panoramica completa della popolazione in qualsiasi area agricola. “Valutando i parassiti target al momento giusto, possiamo adottare le misure necessarie per controllare sia i parassiti che le malattie”, afferma Kapil ... >>

Notizie casuali dall'Archivio

Portachiavi Samsung Connect Tag Smart per il monitoraggio di persone e oggetti 26.10.2017

Samsung Electronics ha introdotto il tracker Connect Tag, che ti consente di sapere dove si trovano i tuoi cari e di tracciare la posizione di eventuali oggetti di valore. Secondo l'azienda, è il primo dispositivo mobile al mondo a utilizzare NB-IoT (Cat.M1), uno standard di comunicazione mobile a bassa potenza appositamente creato per piccoli trasferimenti di dati. Il tracker utilizza una scheda SIM elettronica (eSIM).

Utilizzando una connessione Internet sicura, Samsung Connect Tag rileva la tua posizione e invia notifiche intelligenti. Il dispositivo utilizza GPS, reti cellulari e un sistema di navigazione che consente di determinare la posizione utilizzando hotspot Wi-Fi per garantire la precisione del funzionamento del dispositivo all'interno e all'esterno.

Il Samsung Connect Tag può essere attaccato allo zaino di un bambino per sapere sempre dove si trova il bambino, oppure attaccato al collare di un cane per non perdere un animale domestico. Samsung Connect Tag può anche essere appeso a un portachiavi.

Come molti altri dispositivi Samsung IoT, il nuovo tracker sarà collegato a una speciale piattaforma SmartThings per interagire con gli elettrodomestici intelligenti dell'utente. Quindi, grazie alla funzione Geo-fence, Samsung Connect Tag informerà i dispositivi selezionati che l'utente è nelle vicinanze. Puoi impostare le luci o la TV in modo che si accendano automaticamente quando entri in casa, impostare determinate zone per ricevere notifiche, ad esempio, quando un bambino entra nel cortile della scuola o un cane corre nel cortile di casa.

Trovare un'auto in un ampio parcheggio all'aperto non è più difficile: la funzione On-demand ti aiuterà a determinare la posizione dell'auto. Per fare ciò, devi solo premere un pulsante sul tuo smartphone.

Un'altra funzionalità consente al titolare del tracker di inviare autonomamente la propria posizione corrente. Anche un bambino piccolo sarà in grado di dire esattamente dove si trova. Inoltre, grazie alle notifiche, puoi avere un registro di tutti i movimenti dei tuoi cari.

Dimensioni Samsung Connect Tag solo 42,1 x 11,9 mm, peso 25 g Il dispositivo è protetto da polvere e umidità grazie ad uno speciale sistema di protezione secondo la classe IP68. Mantiene la carica fino a 7 giorni. Il kit comprende uno speciale anello che permette di agganciare il tracker a borse, collari, portachiavi.

Altre notizie interessanti:

▪ La musica sintonizza il cervello del bambino per la parola

▪ Scoperta un'enorme fonte naturale di gas serra

▪ Nuovo chip VoIP per sistemi di telefonia Wi-Fi

▪ Recupero di batterie al litio ferro fosfato

▪ Smartphone ZTE Grand S3 con scanner dell'iride

News feed di scienza e tecnologia, nuova elettronica

 

Materiali interessanti della Biblioteca Tecnica Libera:

▪ sezione del sito Radio - per principianti. Selezione di articoli

▪ articolo Cifre apparenti. Enciclopedia delle illusioni visive

▪ articolo A causa di cosa hanno operato le antiche leggi greche di Zalevka per 300 anni senza quasi emendamenti? Risposta dettagliata

▪ articolo Menta limone. Leggende, coltivazione, metodi di applicazione

▪ articolo Installazione colore-musicale con controllo del numero di impulsi dei trinistor. Enciclopedia dell'elettronica radio e dell'ingegneria elettrica

▪ articolo Norme per il collaudo di apparecchiature e dispositivi elettrici per installazioni elettriche di consumatori. Testare la tensione raddrizzata dei cavi di alimentazione. Enciclopedia dell'elettronica radio e dell'ingegneria elettrica

Lascia il tuo commento su questo articolo:

Nome:


E-mail (opzionale):


commento:





Tutte le lingue di questa pagina

Homepage | Biblioteca | Articoli | Mappa del sito | Recensioni del sito

www.diagram.com.ua

www.diagram.com.ua
2000-2024