Generació de rellotge de sortida de PIC 16F877A

G

gidp

Guest
Hola,

Pot algú que em faci saber com puc generar un rellotge d'uns 30KHz sobre la sortida d'una de les clavilles de PORTC, En paral lel al programa principal.Això significa que jo no volia aquest rellotge de freqüència "poden veure's afectats per la
Principal codi longitud o demora.El rellotge ha de ser de cicle de servei de ~ 50%, i el vidre està utilitzant 4MHZ PIC 16F887A.

Gràcies en avançat,
GID

 
Vostè pot utilitzar el mòdul PWM per generar la sortida de rellotge.
Açò es fa al maquinari per tal de no afectar el seu codi principal.

 
Aquí tens:

/ *
* PWM registres de configuració
* Fosc = 4000000 Hz
* Fpwm = 30.303,03 Hz (Solicitada: 30000 Hz)
* Cicle = 50%
* La resolució és de 7 bits
* Prescaler és d'1
* Assegureu-vos que els seus pins PWM es configura com a sortida digital
* Vegeu més detalls sobre http://www.micro-examples.com/
* Aquest codi font es proporciona "tal qual",
* L'ús en els seus propis riscos
* /
PR2 = 0b00100000;
T2CON = 0b00000100;
CCPR1L = 0b00010000;
CCP1CON = 0b00011100;

main () (

while (1) (

)
)

 
Moltes gràcies nois.Creat després de 4 hores i 36 minuts:Hola Hugo,

He fet el següent (en assemblador), però no el seu treball,
per favor hágamelo saber per què?

; Els registres de configuració de PWM
CLRF T2CON; Atura Timer2
BSF STATUS, RP0; Bank1
MOVLW B'00100000 '; Període d'Ajustament
MOVWF PR2
FBC TRISC, 2; Definiu bit 2 PORTC com a sortida
BCF STATUS, RP0; Bank0

BSF T2CON, 2; Inicia TIMER2
MOVLW B'00010000 '
MOVWF CCPR1L; Cicle Conjunt
MOVLW B'00011100 '
MOVWF CCP1CON; Establiu el mode PWM

 
Podeu utilitzar el temporitzador d'interrupció en el microcontrolador
per al període de temps coherent.

Salutacions cordials,
Boon Siong

www.siongboon.com

 

Welcome to EDABoard.com

Sponsor

Back
Top