Dirijarea cu matricea de butoane 4x4 și afișarea pe dispozitivul de afișare LCD 16x2 cu ajutorul microcontrolerului ATMega16

Laborator
8/10 (1 vot)
Domeniu: Electronică
Conține 1 fișier: docx
Pagini : 8 în total
Cuvinte : 712
Mărime: 150.48KB (arhivat)
Publicat de: Vlad-Marin Tamaș
Puncte necesare: 0
Profesor îndrumător / Prezentat Profesorului: Girscan Andrian

Extras din laborator

Scopul lucrării: efectuarea unui program ce ar efectua operatii matematice simple cu ajutorul unei matrici de butoane 4x4 si a dispozitivului alfanumeric LCD 16x2 .

Mersul lucrarii :

1. Vom efectua calculele conform variantei personale.

2. Construim schema electrica de simulare in mediul Proteus.

Fig. 1. Schema de simulare in Proteus

3. Initializarea unui proiect nou intrun mediu de programare conform specificatiilor pentru placa de dezvoltare EasyAVR 6. Vom efectua programarea in mediul de programare CodeVision.

Microcontroler ATmega16

Frecvența de lucru 8MHz

4. Scriem programul in limbajul de programare C.

Listingul programului :

#include <mega16.h>

#include <alcd.h>

#include <delay.h>

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

void main(void)

{

char caracter[13],rez[100]; double a,b,c;

lcd_init(16);

lcd_clear();

while(1)

{m:DDRA=0x0F; PORTA=0xF0;

if(PINA==0b01110000) //Prima coloana - in jos

{DDRA=0xF0; PORTA=0x0F;

if(PINA==0b00001110) //Prima coloana, Primul buton

{lcd_puts("0");

strcat(caracter,"0");

delay_ms(250);}

if(PINA==0b00001101) //Prima coloana, Al doilea buton - lipseste

{delay_ms(250);}

if(PINA==0b00001011) // Prima coloana, Al treilea buton

{lcd_puts("1");

strcat(caracter,"1");

delay_ms(250);

}

if(PINA==0b00000111) // Prima coloana, Al patrulea buton

{lcd_puts("=");

goto rezultat;

delay_ms(250);

}

}

//Trecem la coloana a doua

if(PINA==0b10110000) //A doua coloana - in jos

{DDRA=0xF0; PORTA=0x0F;

if(PINA==0b00001110) //A doua coloana, Primul buton

{lcd_puts("8");

strcat(caracter,"8");

delay_ms(250);}

if(PINA==0b00001101) //A doua coloana, Al doilea buton

{lcd_puts("0");

strcat(caracter,"0");

delay_ms(250);}

if(PINA==0b00001011) //A doua coloana, Al treilea buton

{lcd_puts("9");

strcat(caracter,"9");

delay_ms(250);}

Preview document

Dirijarea cu matricea de butoane 4x4 și afișarea pe dispozitivul de afișare LCD 16x2 cu ajutorul microcontrolerului ATMega16 - Pagina 1
Dirijarea cu matricea de butoane 4x4 și afișarea pe dispozitivul de afișare LCD 16x2 cu ajutorul microcontrolerului ATMega16 - Pagina 2
Dirijarea cu matricea de butoane 4x4 și afișarea pe dispozitivul de afișare LCD 16x2 cu ajutorul microcontrolerului ATMega16 - Pagina 3
Dirijarea cu matricea de butoane 4x4 și afișarea pe dispozitivul de afișare LCD 16x2 cu ajutorul microcontrolerului ATMega16 - Pagina 4
Dirijarea cu matricea de butoane 4x4 și afișarea pe dispozitivul de afișare LCD 16x2 cu ajutorul microcontrolerului ATMega16 - Pagina 5
Dirijarea cu matricea de butoane 4x4 și afișarea pe dispozitivul de afișare LCD 16x2 cu ajutorul microcontrolerului ATMega16 - Pagina 6
Dirijarea cu matricea de butoane 4x4 și afișarea pe dispozitivul de afișare LCD 16x2 cu ajutorul microcontrolerului ATMega16 - Pagina 7
Dirijarea cu matricea de butoane 4x4 și afișarea pe dispozitivul de afișare LCD 16x2 cu ajutorul microcontrolerului ATMega16 - Pagina 8

Conținut arhivă zip

  • Dirijarea cu Matricea de Butoane 4x4 si Afisarea pe Dispozitivul de Afisare LCD 16x2 cu Ajutorul Microcontrolerului ATMega16.docx

Alții au mai descărcat și

Monitorul

O clasificare sumara a monitoarelor ar putea fi dupa unul din criteriile : a) dupa culorile de afisare -monitoare monocrome (afiseaza doar doua...

Numărătoare digitale

I.Scopul lucrarii: Studierea structurii numaratoarelor; obtinerea deprinderilor referitor la modul de conectare si utilizare practica a...

Proiectarea și Calculul unui Transformator de Rețea

Denumirea lucrării: Proiectarea şi calculul unui transformator de reţea. Scopul lucrării: de proiectat un transformator de alimentare (coborîre)...

Proiectarea și Calculul unui Redresor

Denumirea lucrării: Proiectarea şi calculul unui redresor. Scopul lucrării: Să se studieze etapele de proiectare şi calcul a unui redresor. Date...

Circuite Integrate Digitale

LUCRAREA NR.1: STUDIUL PORŢILOR LOGICE 1.1.CONSIDERAŢII TEORETICE 1.1.1. NOŢIUNI DE ALGEBRĂ BOOLEANĂ Fie o mulţime formată din două elemente...

Construirea unui ceas de timp real pe baza microcontrolerului ATMega16

Studierea modulului periferic timer, configurarea modulului pentru generarea intreruperilor co frecventa dorita. Sarcina lucrarii: I) Să se...

Trasarea manuală și automată a cablajului imprimat în Altium Designer

Scopul: De generarat netlistl si de aranjat componentele.De trasare manual si automat cablajulu imprimat. Notiuni teoretice: Crearea unui PCB in...

Ai nevoie de altceva?