Beigt PWM ar izejas zemu - (Simplest restart iekļauts)

A

atferrari

Guest
Micro PIC 16F628 - PWM signālu izmanto, lai kontrolētu līdzstrāvas motors, pieprasa, kad pārtraukta, kas ir PWM produkcija pin (RB3) Zema.
but realized that the output stays high, most of the times, so I resorted to add CLRF CCPR1L
.

Sākotnēji, I (nepareizi) mēģināja BCF T2CON, TMR2ON
bet saprata, ka izejas saglabājas augsts, lielākā daļa no laikiem, tāpēc es izmantoja, lai pievienotu CLRF CCPR1L.Joprojām pati problēma?!
The CCP1 pin is set (exception: if PWM duty cycle = 0%, the CCP1 pin will not be set)

No manual:
CCP1 pin ir noteikta (izņēmums: ja PWM cikls = 0%, CCP1 pin netiks komplekts)

Jautājums) Kāds varētu būt iemesls, I don't get, ka rezultāts?
-------------------------------------------------- ---------------------I've got the output becoming low.

Vēlāk, ar CLRF CCP1CON
I've got produkcija kļūst zems.
to stop the PWM with output pin low?

Jautājuma b) Vai ir vienkāršāka par CLRF CCP1CON
pārtraukt PWM ar rezultātu pin zemi?

Lai atsāktu Man ir jānosaka tas atkal kā PWM (varētu es tā izvairītos?) Un, ja vajadzīgs, B4 pārlādēt: B5 ar ciklu vērtība LSB.Es uzskatu, ka, mainot iestatījumu peripheric lai nepieļautu, ka nav pareizi (vai vismaz pārāk!)

Agustín Tomás

 
Es domāju, ka jums ir tuvi reālu risinājumu, tas nav tik vienkārši, lai pārslēgtos uz priekšu un atpakaļ.

Lūdzu, mēģiniet šo: nodrošināt ostas mazliet izvadi un noskaidrot inicializācijas rutīnas, pirms sākat lietot PWM.
Tad, nevis uz clrf CCP1CON, skaidrs tikai pēdējos četrus bitus:

movlw 0xF0
andwf CCP1CON, F

Ka nodzēš PWM un atdos kontroli ostā fiksatoru.

Atsākt, kas bits 2 un 3 (vai 0-3 CCP1CON)

movlw 0x0C; (vai movlw 0xF0)
iorwf CCP1CON, F

Try to, es nevar garantēt, ka būs darbs, bet es domāju, ka tā vajadzētu.

 
Paldies par atbildēm.Atrasts sakarā ar problēmu: Man bija apstāšanās TMR2, ko man nevajadzētu.<img src="http://www.edaboard.com/images/smiles/icon_cry.gif" alt="Ļoti bēdīgs, raud" border="0" />

CCPR1L bija pienācīgi notīrīta, bet neskaitot jau bija disabled.
.

Pareizais ceļš, lai iegūtu izejas zemu padara CCPR1L un CCP1CON b5: b4 = 0.

is enough.

Manā gadījumā CCP1CON b5: b4 vienmēr = 0, tāpēc CLRF CCPR1L
ir pietiekami.
, the output pin goes high

Kad es rakstu jaunu ciklu vērtība, kas nav 0,
produkcija pin iet augstu

Agustín Tomás

 

Welcome to EDABoard.com

Sponsor

Back
Top