Transmisor PLL FM 1W a 8W con TSA5511 y PIC16F628/A

Siempre es bueno montar un dispositivo de RF sobre un buen plano de tierra. Para ello existen varios métodos. Sube un esquema o foto del transmisor.

Saludos.
Hola Tiago, siguiendo el hilo de éste tema monté en Proteus éste Veronica lcd, al momento de simularlo con el hec que aparece y después de realizar el circuito resulta que el pll no engancha y comienza a bajarse desde los 100 mHz, no se si será el hex que está mal, subo la simulación, saludos
 

Adjuntos

  • VERONICA lcd.rar
    16.1 KB · Visitas: 176
Un simulador es solo eso y rara vez es la "realidad" en RF.

Arma en una placa el diseño y prueba, si quieres estar seguro(NO PROTOBOARD).

No recuerdo el diseño especifico pero me parece que hay comunicación I2C entre el IC PLL y el micro-controlador por lo que si en una simulación no esta el que debe responder al requerimiento de micro-controlador dudo que funcione la simulación.

El archivo de la simulación que subiste a mi no me lo permitió abrir el Proteus que yo tengo.

Si quieres seguridad total antes de hacer algo, compra ya echas las cosas.

Saludos.


Ric.
 
Un simulador es solo eso y rara vez es la "realidad" en RF.

Arma en una placa el diseño y prueba, si quieres estar seguro(NO PROTOBOARD).

No recuerdo el diseño especifico pero me parece que hay comunicación I2C entre el IC PLL y el micro-controlador por lo que si en una simulación no esta el que debe responder al requerimiento de micro-controlador dudo que funcione la simulación.

El archivo de la simulación que subiste a mi no me lo permitió abrir el Proteus que yo tengo.

Si quieres seguridad total antes de hacer algo, compra ya echas las cosas.

Saludos.


Ric.

Que raro que no pudiste abrirlo, que problema te dió, cómo para saber?
 
Si el error es de versión que no es correcta(ya lo actualice)...no subiste el hex que le estas cargando, tenes mal el valor de las resistencia PullUP( deben ser 4K7 no 4.7ohms) y no se que esquema estas siguiendo por que hay muchos con conexiones distintas al display y iusando 628, 84, etc..

Si cargas una versión que no corresponde al micro-controlador o hace uso de otras conexiones al display, nunca funcionara.

No se la frecuencia del reloj, en la simulación lo tenes a 1MHz, etc, etc, etc.

Tanto el cristal como el potenciometro del dimer del display no son necesarios para una simulación.

Limpiando y acomodando un poco quedaría así lo que subiste(no se si es el esquema correcto pero es lo que tenias dibujado).

Ric.
 

Adjuntos

  • VERONICA.zip
    15.2 KB · Visitas: 148
Ok...A mi me funciona perfectamente con el archivo acomodado/corregido las salvedades que te hice del Ares y el hex de este post 231 .

Posiblemente tengas algún error de conexión mas de los que te marque en el esquema que armaste.

Trata de ser ordenado en el armado tanto de lo físico como de lo virtual y te ahorrara tiempo y esfuerzo.

Las conexiones de Power o GND no se "cobra" por lo que puedes poner todas las que quieras por el mismo precio y redunda en limpieza y prolijidad tanto visual como eléctrica.

Si lo que pretende es hacer una simulación no coloques todo, solo las cosas que son necesarias para tal fin(o casi).

Saludos.


Ric.
 

Adjuntos

  • CapVero.JPG
    CapVero.JPG
    120.8 KB · Visitas: 218
Última edición:
Ok...A mi me funciona perfectamente con el archivo acomodado/corregido las salvedades que te hice del Ares y el hex de este post 231 .

Posiblemente tengas algún error de conexión mas de los que te marque en el esquema que armaste.

Trata de ser ordenado en el armado tanto de lo físico como de lo virtual y te ahorrara tiempo y esfuerzo.

Las conexiones de Power o GND no se "cobra" por lo que puedes poner todas las que quieras por el mismo precio y redunda en limpieza y prolijidad tanto visual como eléctrica.

Si lo que pretende es hacer una simulación no coloques todo, solo las cosas que son necesarias para tal fin(o casi).

Saludos.


Ric.
Ah, ok muchas gracias, ahora aprendí algo nuevo, con respecto al pll se que trabaja en conjunto con el tema del vco pero mi duda es cómo el vco sabe por ejemplo que el pll marca 98.1 para que el resto del circuito rf tambien esté en esta frecuencia? Gracias
 
Bueno....Debes estudiar como funciona un PLL.

En la WEB hay mucha información desde el nivel básico, hasta mas elevado; utiliza cualquier buscador.

Cada IC PLL de carga serie, I2C , etc. se comunica con el micro-controlador de una forma en particular prevista y documentada por el fabricante y este le envía como debe dividir, cargar, comparar, etc y el resultado a la salida del VCO sera la frecuencia designada/calculada por el micro-controlador.

Algunos IC tiene un pin de UL(UnLock) o LD(Lock Data) que informan, si el PLL realmente logro enganchar al VCO en la frecuencia previamente programada o no.

Ric.
 
Amigos bueno, estoy armando el pll de Redfiel , quería mandarle mp pero no se ve por el foro hace muchon quiero saber si alguien me puede compartir el código fuente ya que quiero aprender un poco como es la programación, he leído mucho y la verdad me cuesta un poco pero creo que teniendo el código se me hará mas fácil poder aprender sobre vco y plls y picks..... muchas gracias, el que estoy armando es el con el saa1057 y pretendo hacerlo mezclado con componentes smd, pienso agregarle un codificador estero o si alguien puede compartir el codigo de otro pick ya que me cansé de buscar y no piller nada, gracias.
 
amigos bueno estoy armando el pll de redfiel , quería madarle mp pero no se ve por el foro hace mucho quiero saber si alguien me puede compartir el código fuente ya que quiero aprender un poco como es la programacion, he leído mucho y la verdad me cuesta un poco pero creo que teniendo el código se me hará mas fácil poder aprender sobre vco y plls y picks..... muchas gracias el que estoy armando es el con el saa1057 y pretendo hacerlo mesclado con componentes smd, pienso agregarle un codificador setero o si alguien puede compartir el codigo de otro pick ya que me canse de buscar y no piller nada graciasss
Hola caro Don lumin , en realidad lo codigo fuente (software) que es cargado en lo PIC o uProcesador solamente sirve para programar correctamente los dibisores internos al PLL .
Si quieres realmente saper como funciona un sistema PLL tienes que estudiar ese tema.
No es de todo muy conplicado entiender como funciona , haora para desahollar un desde cero es nesesario conocer matemactica avanzada (Engineria) .
!Suerte en los estudios!.
Att,
Daniel Lopes.
 
Daniel lopes la verdad es que si de a poco he ido aprendiendo, pero apelo a los usuarios del foro se que estuvo en el foro el código fuente, y por eso el amigo redfield dejo de intervenir en el foro, yo por lo menos no pretendo plagear el trabajao del sr redfiel y otros que lo ayudaron, pero es que tengo ese bichito de querer aprender y con lo que pido se me haría mucho mas fácil espero que alguien me lo compartan, muchas gracias
 
Hola, hasta donde pude saber, en realidad el código fuente estaba en la tesis de investigación de Redfield para la obtención del título profesional, y justamente dicha tesis estaba en un repositorio digital, que alguien difundió, y otra persona (de este foro) se hizo de la autoría de ese código fuente y estuvo comercializándolo, y creo que esa fué la razón por la que Redfield abandonó este foro.
Tal vez alguien pueda dar mas luces
Americo
 
Bueno la verdad es que hoy en dia los pll estan tan avanzados miden potencia, roe, temperatura etc, que alguien que tenga este codigo fuente del ya sea para el lm7001 o saa me ayudaria mucho a comprender esto se los pll ya que estoy en poder realizar mi propio diseño mixto con smd ya tengo dolor de cabesa tanto buscar informacion saludos americo8888
 
Bueno la verdad es que hoy en dia los pll estan tan avanzados miden potencia, roe, temperatura etc, que alguien que tenga este codigo fuente del ya sea para el lm7001 o saa me ayudaria mucho a comprender esto se los pll ya que estoy en poder realizar mi propio diseño mixto con smd ya tengo dolor de cabesa tanto buscar informacion saludos americo8888
Caro Don lumin estas un tanto equivocado , PLLs NO miden potencia nin ROE y nin tanpoco tenperatura.
PLLs son circuitos destinados a trabar la frequenzia de un VCO (oscilador controlado por tensión ) tal cual como si ese fuese un cristal de quartzo en estabilidad de frequenzia.
Medidores de ROE y potenzia son otros circuitos especialmente diseñados para hacer esa función.
Para medir tenperatura si puede enpleyar un termistor o mejor aun un circuito integrado especialmente desahollado para esa función que el lo "LM35".
Haora quien es lo cerebro que procesa todas esas informaciones , mostra en un display LCD y aun programa los dibisores interno al PLL propriamente dicho es un PIC o uProcesador.
Att,
Daniel Lopes.
 
lumin
Te reitero lo que te indique. Estudia como funcionan los PLL y en especial el que vas a usar lee atentamente la hoja de datos del mismo que esta explicado por el fabricante como se debe introducir la información a este IC para que funcione en una determinada frecuencia.

Subo la hoja de datos de un IC que se usa/ba el MB1504 y a partir de la hoja Nº5 esta explicado como deben ser las señales para controlarlo.

De poco te servirá un programa echo en un lenguaje que no dominas para entender como cargar los datos.

En ese IC básicamente se manda de forma serie y te muestro como lo controlo yo en un desarrollo en lenguaje Proton Basic por si te sirve.

Código:
        ...
           Low ENB              'HABILITA IC PARA LA CARGA PLL MB5104 CON LA FRECUENCIA
                  SHOut DTA , CLK , MsbFirst_L , [5121\16]        'CARGA STEP 5KHz CON Xtal DE 12.800KHz
                     High ENB                             ' EN PLL Y CON EL PRESCALER EN DIVISION  / 64
                     Low ENB
                  SHOut DTA , CLK , MsbFirst_L , [ET\11,NBT\7,0\1]       'CARGA LOS DIVISORES PROGRAMABLES
                      High ENB                         ' CON LOS RESULTADOS DE LAS CUENTAS PARA QUE SE POSICIONE EN FRECUENCIA
                      Low ENB
      ...

Ric.
 

Adjuntos

  • MB1504.pdf
    187.7 KB · Visitas: 130
Gracias Daniel seguiré buscando información, pillé este asm con pic16f84 y el mc141570, alguien lo puede compilar y simular? Lo dejo a continuación

Código:
;********************************************************************************
;
;    Original program by Richard Hosking (e-mail  -  ???) using pic16c57
;    Modify by LZ4ZD Zlatan Dimitrov (lz4zd@qsl.net) using pic16f84
;
;    This program drive mc145170 Motorola PLL Serial Synthesizer
;    from 87.6-108.0 (FM Broadcast Band) in 100kHz steps
;
;    Freq is selected with DIP switch conected to RB0:RB7 (with pull-up resistors to Vdd)
;    MCLR (reset) shift selected freq in synthesizer
;    ENB  is RA0
;    CLK  is RA1
;    DATA is RA2
;
;    4MHz Xtal
;
    LIST     p=16f84, n = 66
    include "p16f84.inc"
    __FUSES _XT_OSC & _PWRTE_ON & _WDT_OFF & _CP_OFF

carry            equ     0    ; Carry bit in status register

temp            equ     8    ; Register for temporary data
temp_1            equ     9


divider_hi        equ     0E    ; Address of current synth data
divider_lo        equ     0F    ; N divider

tx_hi            equ     12    ; Address of tx freq data
tx_lo            equ     13    ; N counter

synth_enable        equ     0    ; Synthesizer enable bit port A
synth_clock        equ     1    ; Synthesizer data clock bit port A
synth_data        equ     2    ; Synthesizer data bit port A

configure        equ     64    ; Configuration setup for synth
    ; Bit 7    0 Polarity unchanged
    ; Bit 6    1 Differential phase det
    ; Bit 5    1 Lock detect enable
    ; Bits 432 001 Ref out enable divide by 1
    ; Bit 1    0 Fv disable
    ; Bit 0    0 Fr disable

counter            equ    20    ;wait counter

;********************************************************************
start
;
;********************************************************************
;
; Routine to initialize ports
;
;********************************************************************

    clrf     PortA
    clrf    PortB
    bsf    Status,RP0
    movlw    0x00            ;Define PortA as output
    movwf    TrisA

    movlw    0xff            ;Define PortB as input
    movwf    TrisB

    bcf    Status,RP0

    bcf     portA,synth_clock    ; Clock low initially
    bsf     portA,synth_enable    ; Enable high initially
    nop
    nop
    bcf     portA,synth_enable    ; and then low to allow data to synth
    movlw   configure        ; Configuration word for synth
    movwf   temp
    movlw   08            ; 8 bits
    movwf   temp_1

loop_configure
    rlf     temp,f
    btfsc   status,carry        ; Write bit to port A
    bsf     portA,synth_data
    btfss   status,carry
    bcf     portA,synth_data
    bsf     portA,synth_clock    ; Clock data
    bcf     portA,synth_clock
    decfsz  temp_1

    goto    loop_configure        ;

    bsf     portA,synth_enable    ; Latch data to synth

;*******************************************************************************
;
; Programing Register R
;

        movlw   07            ; first 7 bits low of 15 bits
        movwf   temp            ; Reference divide by 40 (028h)
        bcf     portA,synth_enable
loop_2                    ; to give 100 KHz steps from 4 MHz clock
        bcf     portA,synth_data    ; Data low
        bsf     portA,synth_clock    ; Clock data into synthesizer
        bcf     portA,synth_clock
        decfsz  temp
        goto    loop_2

        bcf     portA,synth_data    ; Data=0
        bsf     portA,synth_clock    ; 0
        bcf     portA,synth_clock
        bsf     portA,synth_clock    ; 0
        bcf     portA,synth_clock

        bsf     portA,synth_data    ; Data=1
        bsf     portA,synth_clock    ; 1
        bcf     portA,synth_clock    ;
        bcf     portA,synth_data    ; Data=0
        bsf     portA,synth_clock    ; 0
        bcf     portA,synth_clock
        bsf     portA,synth_data    ; Data=1
        bsf     portA,synth_clock    ; 1
        bcf     portA,synth_clock
        bcf     portA,synth_data    ; Data=0
        bsf     portA,synth_clock    ; 0
        bcf     portA,synth_clock
        bsf     portA,synth_clock    ; 0
        bcf     portA,synth_clock
        bsf     portA,synth_clock    ; 0
        bcf     portA,synth_clock

        bsf     portA,synth_enable    ; Data to R reg

;***************************************************************************
;
; Reading DIP Switch
;
;***************************************************************************

    movlw    0x6C
    movwf    tx_lo
    movlw    0x03
    movwf    tx_hi

        movf    PortB,w
    addwf    tx_lo,f
    btfsc   status,carry
    incf    tx_hi,f

    call    synthesizer

    sleep

;***************************************************************************
;
; Synthesizer routine
; Writes 17 bits of data to the A and M dividers
; to update the synthesizer
; A data 7 bits, MSB first followed by M data 10 bits MSB first
;
synthesizer

;

        movf    tx_hi,w            ; tx_rx bit high = transmit
        movwf   divider_hi
;
        movf    tx_lo,w
        movwf   divider_lo
;
        movlw   08            ; Count for software loop
        movwf   temp            ; 16 bits to update synth divider
        bcf     portA,synth_clock    ; Clock must be low initially
        bcf     portA,synth_enable    ; Enable must be low to load data
;
loop_hi
        rlf     divider_hi        ; Move bit from divider data into carry
        btfsc   status,carry        ; and then to synthesizer
        bsf     portA,synth_data
        btfss   status,carry
        bcf     portA,synth_data
        bsf     portA,synth_clock    ; Clock data to synthesizer on pos transition
        bcf     portA,synth_clock    ; and reset for next bit
        decfsz  temp            ; next bit
        goto    loop_hi
;
        movlw   08            ; count for lo byte
        movwf   temp
loop_lo
        rlf     divider_lo        ; Same for M byte
        btfsc   status,carry
        bsf     portA,synth_data
        btfss   status,carry
        bcf     portA,synth_data
        bsf     portA,synth_clock
        bcf     portA,synth_clock
        decfsz  temp
        goto    loop_lo
;
        bsf     portA,synth_enable    ; Enable bit low to restart synthesizer
        retlw   0            ; Return


;***************************************************************************
;
; Wait
;
wait

    movlw    0xff
    movwf    counter
kill    decfsz    counter
    goto    kill
    return

    end
;************************
;
; COOL ;-)
;
;************************

Saludos
 
Hola! Yo he armado varios RDVV´s todos similares salvo el oscilador, unos con J310 y otros con BF980. Todos tienen los problemas arriba mencionados, principalmente no entregan la potencia indicada. Me cansé y compré por eBay dos placas muy bonitas de la marca Moutuolos, de Grecia... Exactamente el mismo problema y peor aun, el oscilador Colpitts con FET J310 junto a los componentes tal como se indican en la placa NO OSCILA hay que reemplazar la R de 680 ohms en SOURCE por un inductor de 22uH y ahi oscila, esto puede inducir a inestabilidades. El fabricante no responde. Conclusión: Todos tienen problemas y hay que rebuscárselas pues los que publican estos desarrollos no solucionan nada. Es cierto que el BFR96A no es lo mejor para exitar al TR de salida, yo usé un clásico 2N4427A con algunas modificaciones y disipador tubular. Adjunto foto del RDVV sacada de internet
 

Adjuntos

  • fm-pll-rdvv-pcb-broadband-notune-875-108mhz-0-5w-broadcast.jpg
    fm-pll-rdvv-pcb-broadband-notune-875-108mhz-0-5w-broadcast.jpg
    125.8 KB · Visitas: 88
"NO OSCILA hay que reemplazar la R de 680 ohms en SOURCE por un inductor de 22uH y ahi oscila"
Hola a todos , caro Don 12AT7 jo personalmente poneria los dos en serie ( 680 Ohmios y 22uH) y despues ayustaria la azar lo valor del resistor.
!Saludos!
"Es cierto que el BFR96A no es lo mejor para exitar al TR de salida"
Bueno es possible sacar hasta 400mW de un transistor BRF96S ( desde que ese sea idoneo) y esa potencia es mas que suficiente para excitar un transistor 2SC1971 ( desde que tanbien ese sea idoneo) hasta full salida ( 7W)
Ambos transistores si quedan descontinuados y lo que hay en lo mercado especializado generalmente son Truxos Chinos.
Lo BRF96S puede sener reenplazado por lo 2SC3358.
!Saludos!
 
Última edición:
Atrás
Arriba