Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

05/05/2011 #1


Duda, Hacer una Onda Cuadrada de 650mhz
Hola, me encargaron eso en la escuela pero no se como hacerlo, espero y me ayuden, tengo 2 pic 16f877a y el 16f873a, espero la ayuda....
05/05/2011 #2


verifica la frecuencia, ya que los pics trabajan con 20 Mhz como maxima frecuencia,
06/05/2011 #3


Tiene que ser con PIC?
........
Se puede hacer con compuertas logicas.
06/05/2011 #4

Avatar de electroconico

Pues puedes genera una señal con el pic, luego la insertas en un multiplicador.
06/05/2011 #5


Tiene que ser afuerzas con pic ya que estoy llevando la materia de micros , si habia pensado en compuertas, y ya genere la frecuencia, lo que no se es como aumentarla hasta 650Khz.
06/05/2011 #6


Larcyn dijo: Ver Mensaje
Tiene que ser afuerzas con pic ya que estoy llevando la materia de micros , si habia pensado en compuertas, y ya genere la frecuencia, lo que no se es como aumentarla hasta 650Khz.
Una cosa son MHz y otra cosa mucho mas fácil son KHz. En definitiva, que frecuencia necesitas??
06/05/2011 #7

Avatar de J2C

Ni hablar de 650 mHz que me lo han enseñado el siglo pasado como mili Hertz !!!

Saludos, JuanKa.-
06/05/2011 #8


J2C dijo: Ver Mensaje
Ni hablar de 650 mHz que me lo han enseñado el siglo pasado como mili Hertz !!!

Saludos, JuanKa.-
Necesito que sean 650 KHz
06/05/2011 #9

Avatar de J2C

Larcyn

Con cualquiera de los PIC's que posees, un Xtal de 10.4 MHz tendras un ciclo de máquina de 2,6 MHz (0,384615384615 µSeg.).

Tu necesidad es de 650 KHz (1,53846153846153 µSeg.) con lo cual con que cambies una salida de estado cada 2 ciclos de máquina, y luego la vuelvas a cambiar al otro estado luego de otros 2 ciclos de máquina habras logrado la señal cuadrada que necesitas.

Incluso hay muchas otras formas, pero con lo que solo has enunciado no sabria darte mas ayuda, depende de que elementos adicionales te permita tu profesor.

Saludos, JuanKa.-
06/05/2011 #10


J2C, cómo cambiarías de estado un pin cada 2 ciclos? Lo pregunto en serio porque programar algo así, que esté cambiando de estado cada dos ciclos me parece algo imposible. Corrígeme si me equivoco pero para eso tendrías que hacer algo asi:
Código:
movlw 0x01 ; condicion inicial para cambiar el pin 1 del puerto X
xorwf portx,f ; a partir de aqui contamos
nop ; ciclo 1
xorwf portx,f ; ciclo 2
nop ; ciclo 1
xorwf portx,f ; ciclo 2
nop ; ciclo 1
xorwf portx,f ; ciclo 2
...
Tal vez esté mal pero no se me ocurre otra forma de programar algo que haga que un pin cambie de estado cada dos ciclos y programar algo así es verdaderamente imposible porque en algún momento se acabaría la memoria de programa.

Además, no se si te entendí mal o es que hace mucho que no programo un PIC pero para generar una señal de 650KHz con el oscilador que tu propones no se tendría que cambiar el estado del pin cada 4 ciclos? De esta manera el código sería mucho más simple:
Código:
movlw 0x01 ; condicion inicial para cambiar el pin 1 del puerto X
ciclo xorwf portx,f ; ciclo 1
nop ; ciclo 2
goto ciclo ; ciclos 3 y 4
Otra cosa podrías hacer Larcyn es utilizar el módulo PWM y generar una señal con un ciclo util de 50% y una frecuencia de 650KHz. No es complicado y en el datasheet puedes encontrar todo lo que necesitas. Tal vez mi respuesta no te resuelva el problema pero hace mucho que no agarro un PIC y cualquier código que te pueda pasar probablemente no te serviría de mucho pero la respuesta es: usa el PWM.
06/05/2011 #11

Avatar de J2C

Protoboard

Solo tire una idea sin entrar en la programación. Tampoco sabemos durante cuanto tiempo debe generar dicha señal por que quien lo solicito no dio mas detalles, fue demasiado escueto!!!.

No recordaba si el PWM llegaba a 650 KHz, que seria lo mejor en todo caso. También pensa que esta estudiando y desconocemos que sabe y que no.

Solo son ideas para entre todos darle mas puntos de vista, a mi no me interesa realizar la tarea de el.

Saludos, JuanKa.-
06/05/2011 #12


En ese pic una patita del puerto c se pude programar como salida del oscilador del temporizador 1 y ete se puede programar como oscilador variable
07/05/2011 #13

Avatar de Randy

aqui:
comf PORTA
goto aqui

2 ciclos maquina prendido
y 2 apagado....

creo... ya no se :S

Saludos
07/05/2011 #14


Miren, yo tengo haci mi codigo, lo que ahora quiero es que saque la frecuensia de 650 KHz


;************************************************* ********************************
;Programa practica3.ASM
;1)GENERAR UNA ONDA CUADRADA POR EL PUERTO RB0 DE 650KHZ
;************************************************* ********************************
LIST P=16F873A
#INCLUDE P16F873A.INC
R0 EQU 0X20;
R1 EQU 0X21;
R2 EQU 0X22;
__CONFIG _CP_OFF & _WDT_OFF & _BODEN_ON & _PWRTE_ON & _XT_OSC & _LVP_OFF
ORG 0H ; comando que indica al ensamblador la direccion de la memoria del programa
; donde se va a situra
;************************************************* ********************************
BSF STATUS,5 ; PONE RP0 A 1 Y PASA AL BANCO1
MOVLW B'00000000' ; CARGA W CON 00000000
MOVWF TRISB ; Y PASA EL VALOR A TRISB
BCF STATUS,5 ; PONE RP0 A 0 Y REGRESA AL BANCO 0

VAMOS BSF PORTB,0; HABILITA EL PUERTO RB0
NOP ; RETARDO PARA LA FRECUENCIA
BCF PORTB,0; DESHABILITA EL PUERTO RB0
NOP; RETARDO PARA LA FRECUENCIA
GOTO VAMOS
END
07/05/2011 #15


Podés hacerlo en C? Con el PCW es bastante facil, usando las funciones delay_us y delay_ms. Te dejo el manual

http://www.google.com/url?sa=t&sourc...CSuotw&cad=rja
07/05/2011 #16


Esta muy bueno, pero nesesito en MPLAB ya que ese ensablador es el que estamos utilizando... =(
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.