PIC16f877a

D

dhanraj_kmr

Guest
moje sumnje je što korištenje CCP PWM mode i na taj način procesor?
gdje je potrebna njegova?i zašto??

Hvala unaprijed

 
Postoji mnogo koristiti za CCP i PWM.
Ovisno o aplikaciji,
možete izaći s kreativnim idejama kako bi ih koristili.
Nema strogih pravila ono što bi trebao biti iskorišten za.

PWM je vrlo korisno za komutiranje i nadzor na vlasti.
Duty ciklus ili frekvencija se obično koristi za unos sklopove.

CCP je za hvatanje vanjski događaj sa vašim vremena.
Moći ćete saznati vrijeme s obzirom na svoj doprinos okidač.
Primjer se može zaustaviti sat vremena značajke.

www.siongboon.com

 
dhanraj_kmr wrote:

moje sumnje je što korištenje CCP PWM mode i na taj način procesor?

gdje je potrebna njegova?
i zašto??Hvala unaprijed
 
thankz mnogo ...........pl uploadati neki uzorak programa ako slobodno ...........

 
Ovdje je primjer za referentni

////////////////////////////////////////////////// ///////////////////////
/ / / / EX_PWM.C / / / /
/ / / / / / / /
/ / / / Ovaj program će prikazati kako koristiti izgrađena u PIC PWM./ / / /
/ / / / Program traje analogni ulazni i koristi digitalne / / / /
/ / / / Vrijednost za određivanje radnog ciklusa.Učestalost je postavio / / / /
/ / / / Korisnik preko RS-232./ / / /
/ / / / / / / /
/ / / / Konfigurirate CCS prototip karticu kako slijedi: / / / /
/ / / / Priključite opsega na pin 3 (C2) / / / /
/ / / / Connect 9 do 15 (lonac) / / / /
/ / / / Pogledajte dodatne veze u nastavku./ / / /
/ / / / / / / /
////////////////////////////////////////////////// ///////////////////////# ako defined (__PCM__)
# uključuju <16F877.h>
# osigurači HS, NOWDT, NOPROTECT, NOLVP
# koristiti delay (clock = 10000000)
# korištenje RS232 (Baud = 9600, xmit = PIN_C6, rcv = PIN_C7, BRGH1OK) / / Jumpers: 8 do 11, 7 do 12

# elif defined (__PCH__)
# uključuju <18F452.h>
# osigurači HS, NOWDT, NOPROTECT, NOLVP
# koristiti delay (clock = 10000000)
# korištenje RS232 (Baud = 9600, xmit = PIN_C6, rcv = PIN_C7, BRGH1OK) / / Jumpers: 8 do 11, 7 do 12
# endifponiłtava glavni () (
pougljiti izbor;
byte value;printf ( "\ r \ nFrequency: \ r \ n");
printf ( "1) 19,5 kHz \ r \ n");
printf ( "2) 4,9 kHz \ r \ n");
printf ( "3) 1.2 kHz \ r \ n");

do (
selection = getc ();
) A ((izbor <'1')||( izbor>'3 '));setup_ccp1 (CCP_PWM); / / Konfiguracija CCP1 kao PWM

/ / Ciklus Vrijeme će biti (1/clock) * 4 * * t2div (razdoblje 1)
/ / U ovom programu sat i period = 10000000 = 127 (u nastavku)
/ / Za tri moguća ciklusa odabire vrijeme je:
/ / (1 / 10000000) * 4 * 1 * 128 = 51,2 ili 19,5 kHz
/ / (1 / 10000000) * 4 * 4 * 128 = 204,8 ili 4,9 kHz
/ / (1 / 10000000) * 4 * 16 * 128 = 819,2 ili 1,2 kHz

preklopnik (izbor) (
case'1 ': setup_timer_2 (T2_DIV_BY_1, 127, 1);
break;
case'2 ': setup_timer_2 (T2_DIV_BY_4, 127, 1);
break;
case'3 ': setup_timer_2 (T2_DIV_BY_16, 127, 1);
break;
)setup_port_a (ALL_ANALOG);
setup_adc (adc_clock_internal);
set_adc_channel (0);
printf ( "% c \ r \ n", izbor);

dok (istinito) (
value = read_adc ();

printf ( "% 2X \ r", value);

set_pwm1_duty (vrijednost); / / To određuje vrijeme je puls
/ / Visoka svakom ciklusu.Mi koristimo A / D
/ / Input napraviti jednostavnu demo.
/ / Je krajnje vrijeme bit će:
/ / Vrijednost, ako je dug INT:
/ / Vrijednost * (1/clock) * t2div
/ / Ako se vrijednost INT:
/ / Vrijednost * 4 * (1/clock) * t2div
/ /
Npr. vrijednost 30 i t2div
/ / 1 je krajnje vrijeme je 12us
/ / UPOZORENJE: Vrijednost previsok ili nizak će
/ / Spriječi izlaz iz
/ / Mijenja.
)

)

 
Bok svima!
I'm making temu o PIC 16f877a je mjerenje i prikaz brzine na motorni LCD
ali
ja sam newbie ne znam o PIC toliko.ugoditi pomoć mene pisanja koda i circuts.
puno hvala!

 
niko mi pomogne!
ugoditi pomoć mene za ovaj predmet.
puno hvala

 
Zvuči kao da želite nekoga učiniti vaš domaći zadatak za vas.

 
ne!to je predmet ću ga za sebe, a ne domaći.Želim konzultirati ako mi pomogne.
puno hvala_______________________

zabavite se

 

Welcome to EDABoard.com

Sponsor

Back
Top