Y
yviswanathbe
Guest
Bok,
ja sam sučelja ADC0804 za AT89S8252.
Moj sklop radi u redu, ali ja sam ne u mogućnosti pročitati pretvorena vrijednost u PC-u.
Svaki put ja sam uzimajući iste vrijednosti čak i kada sam mijenja analogni ulaz.
Može bilo tko ugoditi pomoć onoga što bi mogao biti problem?
Ja sam moju pričvršćivanje kod ovdje?
Hvala unaprijed .....# include <stdio.h>
# include <reg51.h>
sbit MYDATA = P2;
sbit rd = P3 ^ 7;
sbit WR = P3 ^ 6;
sbit intr ^ P3 = 3;
unsigned char vrijednosti;
void pauza (int);
void delay1ms ();
void delay ();
void prenositi (unsigned char);
void main (void)
(
SCON = 0X50;
TMOD = 0X20;
TH1 = 0XFD;
TR1 = 1;
MYDATA = 0XFF;
intr = 1;
pauza (5);
while (1)
(
delay ();
WR = 0;
delay ();
WR = 1;
while (intr == 1);
delay ();
rd = 0;
delay ();
value = MYDATA;
rd = 1;
prenijeti (vrijednost);
void prenositi (unsigned char vrijednost)
(
TI = 0;
SBUF = vrijednost;
while (! TI);
/ / TI = 0;
/ / flag = 1;
)
void pauza (int k)
(
int j;
for (j = 0; j <= k; j )
(
delay1ms ();
)
)
delay1ms void ()
(
int i;
for (i = 0; i <= 500; i ) / / 15
(
;
)
)
void kašnjenje ()
(
int k, l;
for (k = 0; k <40; k )
for (l = 0; l <80; l );
)
Hvala,
Viswanath
ja sam sučelja ADC0804 za AT89S8252.
Moj sklop radi u redu, ali ja sam ne u mogućnosti pročitati pretvorena vrijednost u PC-u.
Svaki put ja sam uzimajući iste vrijednosti čak i kada sam mijenja analogni ulaz.
Može bilo tko ugoditi pomoć onoga što bi mogao biti problem?
Ja sam moju pričvršćivanje kod ovdje?
Hvala unaprijed .....# include <stdio.h>
# include <reg51.h>
sbit MYDATA = P2;
sbit rd = P3 ^ 7;
sbit WR = P3 ^ 6;
sbit intr ^ P3 = 3;
unsigned char vrijednosti;
void pauza (int);
void delay1ms ();
void delay ();
void prenositi (unsigned char);
void main (void)
(
SCON = 0X50;
TMOD = 0X20;
TH1 = 0XFD;
TR1 = 1;
MYDATA = 0XFF;
intr = 1;
pauza (5);
while (1)
(
delay ();
WR = 0;
delay ();
WR = 1;
while (intr == 1);
delay ();
rd = 0;
delay ();
value = MYDATA;
rd = 1;
prenijeti (vrijednost);
void prenositi (unsigned char vrijednost)
(
TI = 0;
SBUF = vrijednost;
while (! TI);
/ / TI = 0;
/ / flag = 1;
)
void pauza (int k)
(
int j;
for (j = 0; j <= k; j )
(
delay1ms ();
)
)
delay1ms void ()
(
int i;
for (i = 0; i <= 500; i ) / / 15
(
;
)
)
void kašnjenje ()
(
int k, l;
for (k = 0; k <40; k )
for (l = 0; l <80; l );
)
Hvala,
Viswanath