Sumador de 4 bits. AVR

download Sumador de 4 bits. AVR

of 4

description

AVR

Transcript of Sumador de 4 bits. AVR

.cseg.org 0x00rjmp Iniciorjmp Iniciorjmp Inicio;;Declaracin de PuertosInicio:LDI R16,0x00LDI R17,0xFFLDI R18,0x03OUT DDRD,R16OUT DDRB,R17SBI DDRC,0SBI DDRC,1;Suma de los numerosMain:IN R19,PINDMOV R20,R19ANDI R19,0x0FANDI R20,0XF0ROR R20ROR R20ROR R20ROR R20ADD R19,R20;Valor de las decenas.CPI R19,0x1EBREQ treintaCPI R19,0x14BRSH veinteCPI R19,0x0ABRSH diesCPI R19,0x00BRSH zero; Decenas en el primer displaytreinta:CALL DELAYSBI PORTC,1CBI PORTC,0ldi R21,0x4Fout PORTB,r21RCALL DELAYSBI PORTC,0CBI PORTC,1ldi R21,0x3Fout PORTB,R21rjmp Mainveinte:CALL DELAYSBI PORTC,1CBI PORTC,0ldi r21,0b01011011out PORTB,r21SUBI R19,0x14jmp numdies:CALL DELAYSBI PORTC,1CBI PORTC,0ldi r21,0x06out PORTB,r21SUBI R19,0x0Ajmp numzero:CALL DELAYSBI PORTC,1CBI PORTC,0ldi r21,0x3Fout PORTB,r21jmp num;Unidades.num:CALL DELAYSBI PORTC,0CBI PORTC,1cpi r19,0x00breq cerocpi r19,0x01breq unocpi r19,0x02breq doscpi r19,0x03breq trescpi r19,0x04breq cuatrocpi r19,0x05breq cincocpi r19,0x06breq seiscpi r19,0x07breq sietecpi r19,0x08breq ochocpi r19,0x09breq nueve;Unidades en el segundo displaycero:ldi r21,0b00111111out PORTB,r21jmp Mainuno:ldi r21,0b00000110out PORTB,r21jmp Maindos:ldi r21,0b01011011out PORTB,r21jmp Maintres:ldi r21,0b01001111out PORTB,r21jmp Maincuatro:ldi r21,0b01100110out PORTB,r21jmp Maincinco:ldi r21,0b01101101out PORTB,r21jmp Mainseis:ldi r21,0b01111101out PORTB,r21jmp Mainsiete:ldi r21,0b00000111out PORTB,r21jmp Mainocho:ldi r21,0b01111111out PORTB,r21jmp Mainnueve:ldi r21,0b01100111out PORTB,r21jmp Main;Retardo necesario para la visualizacin de ambos displays.DELAY:ldi R22,0xFFretraso:dec r22brne retrasoRET