USO

E

experto

Guest
Actualmente
estoy usando un PIC16F877 para crear una pulsación (por ejemplo: 10101010) que reciben de teclado para el transmisor de infrarrojos para ser transmitidos.i desea utilizar la característica de que es el PIC16F877 PWM para generar una frecuencia portadora 38KHZ para combinar con mi pulsante (10101010) para enviar la señal de infrarrojos a transmiter receptor IR 38KHZ.El archivo adjunto es una simple continuación de codificación para enviar datos (10101010) sin usar PWM como output.SO PUEDE ALGUIEN ME AYUDA PARA ENMENDAR LA CODIFICACIÓN PARA salida PWM DE LA PIN EN PIC16F877 para generar un 38KHZ FRECUENCIA PORTADORA !!!!!! !!!!!!!

p = 16F877 lista, f = inhX32, x = off
incluir <p16f877.inc>__CONFIG _CP_OFF
Y _PWRTE_ON
y _XT_OSC
y _WDT_OFF

ERRORLEVEL -302; reprimir banco de alertaTMRO EQU 1
ESTADO EQU 3
PORTA EQU 5
PORTB EQU 6
TRISA EQU 85H
TRISB EQU 86H
OPTION_R EQU 81H
ZEROBIT EQU 2
COUNT EQU H'0C '
TEMP EQU H'0D '

;----------------------------------ORG 0x00
GOTO PRINCIPIO

; Subrutina SECCIÓN ----------------

; 2.5mS SEGUNDA DEMORA
DELAY1 CLRF TMR0
LOOPA MOVF TMR0, W
SUBLW .1
BTFSS STATUS, ZEROBIT
GOTO LOOPA
RETLW 0

; 5 ms SEGUNDO RETARDO ------------------
DELAY2 CLRF TMR0
LOOPB MOVF TMR0, W
SUBLW .3
BTFSS STATUS, ZEROBIT
GOTO LOOPB
RETLW 0

; 7.5mS SEGUNDO RETARDO -----------------
DELAY3 CLRF TMR0
LOOPC MOVF TMR0, W
SUBLW .6
BTFSS STATUS, ZEROBIT
GOTO LOOPC
RETLW 0

; La sección de configuración --------------

INICIO BSF ESTADO, 5
MOVLW B'00011110 '
MOVWF TRISA
MOVLW B'00000000 '
MOVWF TRISB
CLRF TRISC
MOVLW B'00000010 '
MOVWF OPTION_R

BCF ESTADO, 5
CLRF PORTA
CLRF PORTB
; YA COMIENZA PROGRAMA -----------------

COMIENZAN BTFSC PORTA, 0
GOTO COMENZAR
MOVLW B'10101010 '
MOVWF TEMP

BCF PORTB, 1
CONVOCATORIA DELAY1
BSF PORTB, 1
CONVOCATORIA DELAY3

TESTA0 BCF PORTB, 1
CONVOCATORIA DELAY1
BTFSC TEMP, 0
GOTO SETA0
GOTO CLRA0

SETA0 BSF PORTB, 1
CONVOCATORIA DELAY2
GOTO TESTA1

CLRA0 BSF PORTB, 1
CONVOCATORIA DELAY1

TESTA1 BCF PORTB, 1
CONVOCATORIA DELAY1
BTFSC TEMP, 1
GOTO SETA1
GOTO CLRA1

SETA1 BSF PORTB, 1
CONVOCATORIA DELAY2
GOTO TESTA2

CLRA1 BSF PORTB, 1
CONVOCATORIA DELAY1

TESTA2 BCF PORTB, 1
CONVOCATORIA DELAY1
BTFSC TEMP, 2
GOTO SETA2
GOTO CLRA2

SETA2 BSF PORTB, 1
CONVOCATORIA DELAY2
GOTO TESTA3

CLRA2 BSF PORTB, 1
CONVOCATORIA DELAY1

TESTA3 BCF PORTB, 1
CONVOCATORIA DELAY1
BTFSC TEMP, 3
GOTO SETA3
GOTO CLRA3

SETA3 BSF PORTB, 1
CONVOCATORIA DELAY2
GOTO TESTA4

CLRA3 BSF PORTB, 1
CONVOCATORIA DELAY1

TESTA4 BCF PORTB, 1
CONVOCATORIA DELAY1
BTFSC TEMP, 4
GOTO SETA4
GOTO CLRA4

SETA4 BSF PORTB, 1
CONVOCATORIA DELAY2
GOTO TESTA5

CLRA4 BSF PORTB, 1
CONVOCATORIA DELAY1

TESTA5 BCF PORTB, 1
CONVOCATORIA DELAY1
BTFSC TEMP, 5
GOTO SETA5
GOTO CLRA5

SETA5 BSF PORTB, 1
CONVOCATORIA DELAY2
GOTO TESTA6

CLRA5 BSF PORTB, 1
CONVOCATORIA DELAY1

TESTA6 BCF PORTB, 1
CONVOCATORIA DELAY1
BTFSC TEMP, 6
GOTO SETA6
GOTO CLRA6

SETA6 BSF PORTB, 1
CONVOCATORIA DELAY2
GOTO TESTA7

CLRA6 BSF PORTB, 1
CONVOCATORIA DELAY1

TESTA7 BCF PORTB, 1
CONVOCATORIA DELAY1
BTFSC TEMP, 7
GOTO SETA7
GOTO CLRA7

SETA7 BSF PORTB, 1
CONVOCATORIA DELAY2
CLRF PORTB
GOTO COMENZAR

CLRA7 BSF PORTB, 1
CONVOCATORIA DELAY1
CLRF PORTB
GOTO COMENZAR
FIN

 
Una sugerencia.

Configure el PWM para generar 38KHz - 25% ciclo de trabajo.Switch PWM y fuera como por los bits en la frecuencia necesaria.

¡Salud!

Ravi

 
sí,, yo también tengo idea de que tales enviar un poco n detener y, a continuación, enviar segundos y luego se detiene poco, pero i problema es que no están familiarizados con el uso de PIC, do u me cuenta alguna fuente ?????

thxs

 
babatundeawe escribió:

¿Cómo puedo generar 50HZ USAR ESTE MCU
 
puede escribir u PWM para la inicialización de codificación de acuerdo con ur concepto me refiero? PLS

thxs

 
pwminit

clrf ccp1con
clrf tmr2
movlw 0FFh
movwf pr2

clrf t2con
movlw 0FFh
movwf ccp1con
BSF t2con, tmr2on

retlw 00

Puede que tenga que cambiar el valor de 38KHz.

¡Salud!

Ravi

 
pwminit

clrf ccp1con
clrf tmr2
movlw 0FFh
movwf pr2

clrf t2con
movlw 0FFh
movwf ccp1con
BSF t2con, tmr2on

retlw 00

can u hazme un favor,
se combinan con la inicialización mis datos para generar 38KHZ?
Yo agradezco
plsssssss
thxxxxxx

 
Compruebe fuera de este sitio.Existe un software para calcular los valores para los distintos periféricos para PICmicro.

h ** p: / / www.mister-e.org/pages/homepag.html

<img src="http://www.edaboard.com/images/smiles/icon_biggrin.gif" alt="Very Happy" border="0" />Feliz Picking

Ravi

 
ravimarcus escribió:

Compruebe fuera de este sitio.
Existe un software para calcular los valores para los distintos periféricos para PICmicro.h ** p: / / www.mister-e.org/pages/homepag.html
<img src="http://www.edaboard.com/images/smiles/icon_biggrin.gif" alt="Very Happy" border="0" />

Feliz PickingRavi
 

Welcome to EDABoard.com

Sponsor

Back
Top