You are on page 1of 2

ASSIGNMENT NO:10

ROLL NO:29
BATCH: S2
TITLE: DAC to generate square, triangular and trapezoidal waveforms.

DAC SQUARE WAVE

ORG 0000H
MOV P1,#00H
REPEAT:ACALL SQUARWAVE
SJMP REPEAT
SQUARWAVE:MOV P1,#0FFH
ACALL DELAY
MOV P1,#00H
ACALL DELAY
RET
DELAY:MOV R0,#20
UP2:MOV R1,#250
UP1:MOV R2,#250
HERE:DJNZ R2,HERE
DJNZ R1,UP1
DJNZ R0,UP2
RET
END

DAC TRIANGULAR WAVE

ORG 0000H
MOV P1,#00H
REPEAT:ACALL TRIWAVE; GENERATE TRIANGULAR
WAVE SJMP REPEAT
TRIWAVE:MOV A,#00H
INCR:MOV P1,A
INC A
CJNE A,#0FFH,INCR
DECR:MOV P1,A
DEC A
CJNE A,#00H,DECR
RET
END
Dac Trapezoidal wave

ORG 0000H
LJMP START
ORG 0100H
START:MOV A,#00H
HERE:MOV R7,#0FFH
HERE1:DJNZ R7,HERE1
AGAIN:MOV P1,A
INC A
CJNE A,#0FFH,AGAIN
MOV R7,#0FFH
HERE2:DJNZ R7,HERE2
NXT:MOV P1,A
DEC A
CJNE A,#00H,NXT
SJMP HERE
END

You might also like