PWM valvonta käyttämällä painikkeita

A

ashwal31

Guest
Olen uusi mikro.Aion rakentaa ensimmäinen hanke "Push-painiketta valvotaan PWM" käyttämällä PIC12F675 varten himmennys LED.

Haluan valvoa tulli sykli 100Hz pulssin 0-100%.
Kaksi painonapit, yksi increment ja toinen vähenemä tullin ajan.
Päätöslauselmassa vaaditaan on vaiheita 2%.

Ystävällisesti auttaa minua koodilla.Thx.

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Hymyillä" border="0" />ashwal.patel (at) gmail.com

 
Infact tämä tämä koodaavia dc moottorien ohjaukseen käytetään PWM kanssa lisäys ja vähennys keskeinen vain kokeilla tätä u saada jonkinlaisen käsityksen

#
include <pic.h>
#
include "delay.c"

__CONFIG (0x1932);

mitätön PWM_INIT ();
mitätön PWM_ON (unsigned int);
mitätön PWM_OFF ();
mitätön PWM_INC ();

static unsigned int inc;
unsigned int PWM;

mitätön tärkeimmät ()
(
TRISB = 0x0F;
RB4 = 0;
RB7 = 0;
RBPU = 0;

PWM_INIT ();
inc = 1;
DelayMs (10);
kun taas (1)
(
if (RB0 == 0)
(
DelayMs (3);
if (RB0 == 0)
(
RB7 = 1;
if (sis. <23)
sis. ;
)
)
if (RB1 == 0)
(
DelayMs (3);
if (RB1 == 0)
(
RB7 = 1;
if (sis.> 1)
sis. -;
)
)

if (RB2 == 0)
(
DelayMs (5);
if (RB2 == 0) (
PWM = (sis. * 6) 60;
PWM_ON (PWM);
)
)
if (RB3 == 0)
(
DelayMs (5);
if (RB3 == 0)
(
PWM_OFF ();
RB7 = 0;
DelayMs (5);
PWM_INIT ();
)
)
)
)mitätön PWM_INIT ()
(
TRISC1 = TRISC2 = 0;
RC1 = RC2 = 0;
PR2 = 199;
CCPR2L = 0;
CCP2CON = 0x0C;
T2CON = 0x06;
)

mitätön PWM_ON (unsigned int val)
(
CCPR2L = val;
)
mitätön PWM_OFF () (
CCP2CON = 0x00;
if (PR2) PR2 = 0;
if (CCPR2L) CCPR2L = 0;
TMR2ON = 0;
RC1 = 0;
)

 

Welcome to EDABoard.com

Sponsor

Back
Top