You are on page 1of 10

1

PRACTICAL-6
AIM: Write a program to demonstrate “on chip DAC”.

Program-6.1: Generate DC signal.


input:
#include<lpc213x.h>

int main (void)

PINSEL1 = 0x80000 ;

while(1)

DACR = 5;

GAURAV (19162151005)
2

Schematic Diagram :-

GAURAV (19162151005)
3

Program-6.2: Generate square wave.


Input:
#include <LPC213x.h>
void main()
{
PINSEL1=0x80000;
while(1)
{
int i=0;
for(i=0;i<256;i++)
{
DACR=0x3FF<<6;
}
for(i=256;i>0;i--)
{
DACR=0;
}
}
}

GAURAV (19162151005)
4

Schematic Diagram :-

GAURAV (19162151005)
5

Program-6.3: Generate triangular wave.


Input:
#include <LPC213x.h>

#include <math.h>

void main()

PINSEL1=0x80000;

while(1)

int i=0;

for(i=0;i<360;i++)

DACR=sin(i);

GAURAV (19162151005)
6

Schematic Diagram :-

GAURAV (19162151005)
7

Program-6.4: Generate sawtooth signal.


Input:
#include <LPC213x.h>

void main()

PINSEL1=0x80000;

while(1)

int i=0;

for(i=0;i<256;i++)

DACR=i<<6;

GAURAV (19162151005)
8

Schematic Diagram :-

GAURAV (19162151005)
9

Program-6.5: Generate sine signal.


Input:
#include<lpc213x.h>

int main (void)

int i=0;

int sintable[45]={410, 467, 523, 576, 627, 673, 714,


749, 778, 799,813, 819, 817, 807, 789, 764, 732, 694,
650, 602,
550, 495,438, 381, 324, 270, 217, 169, 125, 87, 55, 30,
12, 2, 0,

6, 20, 41, 70, 105, 146, 193, 243, 297, 353};

PINSEL1 = 0x80000 ;

while(1)

for (i = 0x00; i<0x2D; i++)

DACR = (sintable[i] << 6);

GAURAV (19162151005)
10

Schematic Diagram :-

GAURAV (19162151005)

You might also like