Table of Contents

Calculator de buzunar cu input de la telecomanda

Introducere

Descriere generală

vali_diagrama_pm.pdf

Hardware Design

Lista principalelor componente folosite:

Scheme realizate: tsop.jpg

lcd.jpg

Software Design

functia de afisare pe LCD a operanzilor

void afisare() foloseste variabilele globale op1, op2 si operatie {

LCD_writeInstruction(LCD_INSTR_gotoCGRAM);
LCD_writeInstruction(LCD_INSTR_clearDisplay);
LCD_gotoXY(0, 0);
char afisaj1[10];
char afisaj2[10];
sprintf(afisaj1, "%i %c ", op1, operatie);
if(operatie != ' ') sprintf(afisaj2, "%i", op2);
LCD_print2(afisaj1, afisaj2);

}

functia de afisare a operanzilor, a operatiei si a rezultatului final

    (se apeleaza la intalnirea codului predefinit EGAL) 

void afisare_rezultat() foloseste variabilele globale op1, op2 si operatie {

LCD_writeInstruction(LCD_INSTR_gotoCGRAM);
LCD_writeInstruction(LCD_INSTR_clearDisplay);
LCD_gotoXY(0, 0);
char afisaj1[10];
char afisaj2[10];
if(operatie=='+') rez = op1 + op2;
if(operatie=='-') rez = op1 - op2;
if(operatie=='*') rez = op1 * op2;
if(operatie=='/') rez = op1 / op2;
if(operatie==' ') rez = op1;
sprintf(afisaj1, "%i %c %i", op1, operatie, op2);  // op1, op2 si operatie sunt globale
sprintf(afisaj2, "=%i", rez);
LCD_print2(afisaj1, afisaj2);

}

  unsigned int rc5data = rc5decode(); // salvez codul in variabila rc5data
if(rc5data==EGAL) 
{
	afisare_rezultat(); 
	op1 = rez; 
	op2=0; 
	rez=0;
	operatie = ' ';
}
else
{
	if(rc5data==PLUS) operatie = '+';
	else if(rc5data==MINUS) operatie = '-';
	else if(rc5data==INMULTIT) operatie = '*';
	else if(rc5data==IMPARTIT) operatie = '/';
	else
	{
		if(operatie==' ') op1 = op1*10 + rc5data;
		else op2 = op2*10 + rc5data;
	}
	afisare();

Rezultate Obţinute

Concluzii

Download

proiect_pm.rar

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

doc2817.pdf

ir-remote-control-signal-receiver-using-avr-microcontroller

30485.pdf

www.avrprojects.info

avr-software.html

lab1

RC-5

rc5.htm

016m002b.pdf