Come interfacciare un LED con un microcontrollore 8051

Prova Il Nostro Strumento Per Eliminare I Problemi





Conosciamo molto bene 'Hello world!' codice del programma di base nella fase iniziale di qualsiasi file linguaggio di programmazione per imparare alcune cose di base. Allo stesso modo per iniziare con il microcontrollore 8051, l'interfacciamento dei LED è una cosa fondamentale nella programmazione dell'interfaccia del microcontrollore. Ogni microcontrollore è diverso nella sua architettura, ma il concetto di interfacciamento è quasi lo stesso per tutti i microcontrollori. Questo tutorial ti darà un'interfaccia LED con 8051.

L'interfacciamento è un metodo che fornisce la comunicazione tra il microcontrollore e il dispositivo di interfaccia. Un'interfaccia può essere un dispositivo di input o un dispositivo di output, un dispositivo di archiviazione o un dispositivo di elaborazione.




Dispositivi di interfaccia di input: Interruttore a pulsante, tastiera, sensore a infrarossi, Termometro , sensore di gas, ecc. Questi dispositivi forniscono alcune informazioni al microcontrollore e vengono chiamate dati di input.

Dispositivi di interfaccia di uscita: LED, LCD, cicalino, Driver del relè , Driver motore CC, display a 7 segmenti ecc.



Dispositivi di interfaccia di archiviazione: Utilizzato per memorizzare / conservare i dati, ad esempio, scheda SD, EEPROM, DataFlash, orologio in tempo reale , eccetera.

Modello di interfacciamento del microcontrollore

Modello di interfacciamento del microcontrollore

Interfacciamento di un LED con 8051

L'interfacciamento comprende hardware (dispositivo di interfaccia) e software (codice sorgente per comunicare, chiamato anche driver). Semplicemente, per utilizzare un LED come dispositivo di uscita, il LED deve essere collegato alla porta del microcontrollore e l'MC deve essere programmato all'interno per accendere o spegnere il LED o lampeggiare o attenuare. Questo programma è chiamato come driver / firmware. Il software del driver può essere sviluppato utilizzando qualsiasi file linguaggio di programmazione come Assembly , C ecc.


8051 Microcontrollore

Il microcontrollore 8051 è stato inventato negli anni '80 da Intel. Le sue fondamenta si basano sull'architettura di Harvard e questo microcontrollore è stato sviluppato principalmente per portarlo ad essere utilizzato nei sistemi embedded. Abbiamo discusso in precedenza 8051 Microcontroller Storia e nozioni di base . È un PDIP a 40 pin (Plastic Dual Inline Package).

8051 ha un oscillatore su chip, ma richiede un clock esterno per eseguirlo. Un cristallo di quarzo è collegato tra i pin XTAL dell'MC. Questo cristallo necessita di due condensatori dello stesso valore (33pF) per generare un segnale di clock della frequenza desiderata. Le caratteristiche del microcontrollore 8051 sono state spiegate nel nostro precedente articolo.

Microcontrollore Crystal Connections

Microcontrollore Crystal Connections

LED (diodo a emissione luminosa)

Il LED è un dispositivo a semiconduttore utilizzato in molti dispositivi elettronici, principalmente utilizzato per scopi di trasmissione del segnale / indicazione di potenza. È molto economico e facilmente disponibile in una varietà di forme, colori e dimensioni. I LED sono utilizzati anche per progettare tabelloni per messaggi e luci di segnalazione per il controllo del traffico, ecc.

Ha due terminali positivo e negativo come mostrato in figura.

Polarità LED

Polarità LED

L'unico modo per conoscere la polarità è testarlo con un multimetro o osservando attentamente all'interno del LED. L'estremità più grande all'interno del led è -ve (catodo) e quella più corta è + ve (anodo), è così che troviamo la polarità del LED. Un altro modo per riconoscere la polarità è, collegando i cavi, il terminale POSITIVO ha una lunghezza maggiore del terminale NEGATIVO.

Interfaccia LED per 8051

Ci sono due modi in cui possiamo interfacciare il LED al microcontrollore 8051. Ma i collegamenti e le tecniche di programmazione saranno differenti. Questo articolo fornisce le informazioni sull'interfacciamento dei LED con 8051 e sul codice di lampeggiamento dei LED per il microcontrollore AT89C52 / AT89C51.

Metodi di interfacciamento tra LED e 8051

Metodi di interfacciamento tra LED e 8051

Osservare attentamente l'interfaccia LED 2 è polarizzata in avanti perché la tensione di ingresso di 5v è collegata al terminale positivo del LED, quindi qui il pin del microcontrollore dovrebbe essere a livello BASSO. E viceversa con le connessioni dell'interfaccia 1.

Il resistore è importante nell'interfacciamento dei LED per limitare la corrente che scorre ed evitare di danneggiare il LED e / o l'MCU.

  • L'interfaccia 1 si illuminerà di LED, solo se il valore del PIN dell'MC è ALTO poiché la corrente scorre verso terra.
  • L'interfaccia 2 si illuminerà di LED, solo se il valore del PIN dell'MC è BASSO poiché la corrente scorre verso il PIN a causa del suo potenziale inferiore.

Lo schema del circuito è mostrato di seguito. Un LED è collegato al pin-0 della porta-1.

Circuito di simulazione di Proteus

Circuito di simulazione di Proteus

Spiegherò in dettaglio il codice del programma. Inoltre, fare riferimento a questo link ' Tutorial di programmazione in C integrato con Keil Language '. Un cristallo di 11.0592 MHz è collegato per generare il clock. Come sappiamo, il microcontrollore 8051 esegue un'istruzione in 12 cicli della CPU [1], quindi questo cristallo da 11,0592 Mhz fa funzionare questo 8051 a 0,92 MIPS (milioni di istruzioni al secondo).

Nel codice sottostante, il LED è definito come il pin 0 della porta 1. Nella funzione principale, il LED viene commutato ogni mezzo secondo. La funzione 'delay' esegue istruzioni null ogni volta che viene eseguita.

Un valore di 60000 (compilato utilizzando il software Keil micro-vision4) genera un tempo di esecuzione dell'istruzione nulla di circa 1 secondo (tempo di ritardo) quando viene utilizzato il cristallo da 11,0592 MHz. In questo modo, il LED collegato al pin P1.0 viene fatto lampeggiare utilizzando il codice riportato di seguito.

CODICE

#includere

sbit LED = P1 ^ 0 // pin0 di port1 è denominato LED

// Dichiarazioni di funzione

void cct_init (void)

void delay (int a)

int main (void)

{

cct_init ()

mentre (1)

{

LED = 0

ritardo (60000)

LED = 1

ritardo (60000)

}

}

void cct_init (void)

{

P0 = 0x00

P1 = 0x00

P2 = 0x00

P3 = 0x00

}

void delay (int a)

{

int i

per (i = 0 i

}

Questo articolo fornisce le informazioni su come il LED si interfaccia con l'8051. Questo è il concetto di interfacciamento fondamentale per i progetti del microcontrollore 8051.

Spero che leggendo questo articolo abbiate una conoscenza di base su come interfacciare il modulo LED con l'8051. Se avete domande su questo articolo o sul progetti di microcontrollori , non esitate a commentare nella sezione sottostante.