Proyecto transmisor FM con microcontrolador y PLL de transmisor de auto

Hola caro Don Rodrigo Postigo , bueno desafortunadamente en temas de Software , programación , PICs , Microprocesadores , C++ , MatLab ,LabView etc, etc, NO entiendo nada de nada portanto lo siento pero por haora no puedo ayudarte :cry: :cry: :cry: :cry: :cry: :cry: :cry:
Incluso quizaz serias mas interesante abrir un nuevo tema en una area mas especifica de tecnicas Digitales y Softwarwe ("F24" y "F26" )para discussiones una vez que lo tema original aca es diseño amplificadores de RF ;) :cool:
!Fuerte abrazoz desde Brasil !
Att,
Daniel Lopes.
 
Última edición:
eso pensaba hacer hoy daniel pero no recuerdo si las reglas del foro me permiten hablar de lo mismo tema en otro lado sin recibir ninguna sancion , deeno a consejo tuyo voy a probar eso , mil gracias daniel
Furte Abrezo de Argentina !!!
 
eso pensaba hacer hoy daniel pero no recuerdo si las reglas del foro me permiten hablar de lo mismo tema en otro lado sin recibir ninguna sancion , deeno a consejo tuyo voy a probar eso , mil gracias daniel
Furte Abrezo de Argentina !!!
Creo que si puede solicitar la ayuda a un Moderador para ese canbio , donde es criado un nuevo tema en la area mas apropriada y los posts referentes son migrados a ese nuevo tema ;);) :cool::cool:
!Saludos cordeales desde Brasil !:apreton:(y)
Att,
Daniel Lopes.
 
Última edición:
Bueno muchachos despues de 2 semanas de leer , ver tutoriales en youtube sobre programacion e instalar tanto programa se me cruzo por delante , MPlab , Micro c for pic , ccs , Pic C compiler , Pickit2 (grabe mi .hex y anduvo ) y alguno mas que no recuerdo , NO he podido hacer andar nada la cuestion es que para hacer cualquier tipo de modificacion el la programacion del pic me encuentro con el problema de que tengo 7 archivos , los cual ahora los voy a adjuntar y tanto , Pic c compiler como Mplab , me dan error al querer compilar el proyecto , si bien yo ya tengo mi .hex , debo cambiarle los regitros para que ademas de andar el KT0803L tambien ande el KT0803K (y si es posible habilitarle alguna funcion mas ) pero probe de tantas maneras se les ocurra y no hay caso , que me hizo el proyecto en un principio desaparecio por cuestiones de trabajo y la verdad que no se que estoy haciendo mal pero probe de distintas formas cargar los 7 archivos y nada , no me genera el .hex solo da errores y errores , yo les dejo los archivos a ver si alguien me dice en que orden los cargo en que programa y que de una vez me quede en un solo proyecto todo ordenado y recien ahi poder empezar con todas las modificaciones , desde ya muchas gracias a quien se interese y colabore con mi proyecto ya que me esta volviendo loco



Ver el archivo adjunto 138009

puse el link del winzip ya que no me dejo subir el archivo por haberlo subido en otra parte del foro
 
Si necesitas modificar algo, los archivos para trabajar en un proyecto, son "main.c" (main o el nombre del proyecto), que basicamente esta el cuerpo del programa; Luego estan las librerias con formato ".c" o ".h", que basicamente son subrutinas externas para el control de perifericos u acciones especificas... No siempre implementan librerias, hay veces que escribe la libreria en el cuerpo del program, asi que esto tienes que ver si es que necesita u implementa.
El archivo ".hex", es el que vas a grabar en el microcntrolador...
 
torres.electronico dijo:
Si necesitas modificar algo, los archivos para trabajar en un proyecto, son "main.c" (main o el nombre del proyecto), que basicamente esta el cuerpo del programa; Luego estan las librerias con formato ".c" o ".h", que basicamente son subrutinas externas para el control de perifericos u acciones especificas... No siempre implementan librerias, hay veces que escribe la libreria en el cuerpo del program, asi que esto tienes que ver si es que necesita u implementa.
El archivo ".hex", es el que vas a grabar en el microcntrolador...

torres.electronicotuviste la oportunidad de ver lo que subi ? que hago mal al meter todo en un compilador y quere compilarlo , que esto de hacer los proyectoa por partes ? es comun , me explicarias , me gustaria que bajes el zip que deje e intentes compilarlo y vas a ver que te da errores , sin embargo el .hex que me entrego el programador lo cargo al pic y funciona quiero poder habrir el proyecto y compilarlo sin errores , una ves realizado eso se que puedo empezar a hacer modificaciones , mientras no sepa en que programa y orden cargarlos y genere el .hex no puedo hacer nada
 
.



Rodrigo

Deberías confirmar con cual de los tantos programas que se te cruzaron por delante lo intentaste compilar, ya que específicamente esta realizado en uno solo.

Si no usas el programa especifico los demás tiraran cualquier error ya que no todos los compiladores usan la misma sintaxis mi comandos.

Deberías confirmar tu con cual compilador lo intentaste.




Solo deberías haber intentado compilar un solo programa el TransmisorFM.c que es el programa principal y el se encarga de llamar a los otros archivos/programas en el momento que los necesita.

También te comento que son necesarios mas archivos/librerías que tiene dicho compilador y que se encuentran detallados en algunos de los 7 archivos que subiste con el PATH correspondiente al momento de crearlos por el programador que contrataste.




Como ha dicho el Garoto Daniel lo mejor seria solicitar a algún moderador que todo lo correspondiente a partir del post #370.





Saludos, JuanKa.-
 
Lo que podrias hacer es hacer un nuevo proyecto (de preferencia en el compilador en el que se escribio el proyecto del transmisor FM) y de ahi agregas cada uno de los archivos creando el archivo .c o .h y abres los archivos flex_lcd.h flex_lcd.c pantallas.c, etc con el bloc de notas y copias y pegas en los archivos nuevos del nuevo proyecto, asi tendras un nuevo proyecto como si lo hubieras escrito desde 0.

Tambien note que escribes en algunos .h
#include "D:\Proyectos varios\Rodrigo Postigo\Codigo\pantallas.c"
no es necesario que agregues toda la ruta del archivo, con las comillas basta, ya que si utilizas las comillas el compilador (en realidad creo que lo hace el preprocesador, no recuerdo bien) busca los archivos directamente en la carpeta en la que esta ubicado el proyecto y si utilizas los menor y mayor que (<>) el compilador va directamente a la carpeta donde estan las librerias estandar
 
.



Rodrigo

.....
con ninguno compila ni c compiler , tampoco mplab , dan error al compilar

El MpLab solo es en ASM (Assembler) de MicroChip.


Como te dije en mi post anterior esta realizado en UNO SOLO, no es posible usar el que se te antoje a ti !!!!!.


Supongo que es alguna de las variantes en "C" pero desconozco cual de ellas y hay bastantes en la web (algunas libres y otras pagas), y esa suposición es por la extensión de 3 de los 7 programas que tu subiste en el rar.


Imagino que si le has pagado a alguien para que te lo hiciera y si ahora por cuestión de tiempo esa persona no se dedica mas, creo que igualmente deberías poder contactarlo para que el sea quien te diga que compilador ha usado. Me parece lo mas correcto antes de andar dando vueltas y vueltas inútiles.



Saludos, JuanKa.-
 
bueno voy a probar arrancar el proyecto en microcfor pic o sino en pic c compiler , pero eso de habrirlos con un notepad ya probe y al compilar sale erros , te cuento que de pantallas tengo uno solo .c o .h es el unico que no es doble



la verdad nisiquiera se la diferencia entre .c y .h , deberias orientarme de la secuencia en que debo pegar esos archivos porque no se si va tranmisor.c luego transmisor .h o al reves o todo mesclado , orientame un poco para probar realizar un nuevo proyecto , sinceramente de programacion no entiendo nada , el proyecto lo hice hacer hace 2 años y la persona que lo hizo cambio de trabajo y demas y me dijo que lo solucione yo
 
Si tuvieras la librería faltante "flex_lcd.c", el programa se podría compilar, pero no está incluida dentro del archivo.

Ojo. No es la clásica librería "flex_lcd.c" que muchos conocemos.
La librería "flex_lcd.c" que se usó para ese programa es especial.

Sin esa librería se tiene que modificar bastante el programa para usar la estándar. ("lcd.c")

Nota:
Ese programa está escrito para PIC C Compiler de CCS, con otros no se podrá compilar.
 
Es cierto no habia notado que falta el archivo flex_lcd.c, sin este no podra compilar, veras en un proyecto de c hay dos archivos basicos, el .c y el .h, en el .h estan las declaraciones de las funciones(se especifica el tipo de retorno, las parametros de las funciones, los nombres de las funciones) y las declaraciones de algunas constantes o variables, en el .c estan las definiciones de estas funciones (lo que deben de hacer estas funciones), en cualquier archivo .c forzosamente debe de haber una instruccion #include, esta instruccion es una instruccion al preprocesador, y practicamente es "incluir un archivo al codigo". En un proyecto de C debe de haber un archivo .c en el que este definida la funcion main(), esta funcion es la funcion principal que define TODO lo que hara el programa obviamente con ayuda de las funciones de los demas archivos. El orden para agregar por logica seria primero las declaraciones (el .h) seguido de las definiciones (el .c) y al ultimo el archivo que contenga la funcion main() en tu caso es TransmisorFM.c, pero si es necesario que este el archivo flex_lcd.c, de lo contrario el codigo esta incompleto
 
o sea que si no consigo el archivo Flex_lcd.c por el momento no puedo hacer nada ? y de descompilar el .hex que me mando el programador no se puede con algun programa ?
D@rkbytes tenes razon el en su momento me mando este mensaje : Aca te paso el codigo fuente. El programa que yo use para compilar es el PICC (es de la empresa CCS - Custom Computer Services). En el foro de TodoPic hay parvas de informacion de este compilador, yo saque algunas cosas de ahi en su momento.
y ahi me mando el codigo fuente que lo tengo en el correo , obvio que le falta el Flex_lcd.c asi que no se que hacer
 
Pues por el momento no puedes hacer nada, y sin saber de programación te resultará muy complicado sustituir las partes del programa que hacen uso de esa librería.

Si descompilas el archivo ejecutable ".hex", obtendrás un programa en ensamblador que tardarás mucho tiempo en comprender.
Y dudo que algún descompilador pueda entregar una salida de ensamblador correcta para un PIC16F883.

Así que lo más recomendable es que empieces por aprender el lenguaje C y adentrarte en los PIC.
Eso te servirá para comprender el programa y poder adaptarlo, o realizar los tuyos.

Trata de contactar nuevamente a la persona que hizo el programa y pídele la librería.

Suerte.
 
Última edición:
.


D@rkbytes

Encontré en varias web's dicha librería y mirando la de PicMania me parece que uno debe ajustar las conexiones que usara en su circuito del display y ajustar el tipo de display que colocara siempre y cuando el programador no haya realizado mas cambios.

Si esto que comento fuese correcto, pregunto si seria posible modificar la misma para el circuito de aplicación de este transmisor ?.

Dado que las capturas de imagen del Proteus no son buenas y que en fotos del primer post parece tener montada una EEPROM I2C ó SPI (me inclino por la I2C) de montaje superficial supongo que para el intento seria necesario poseer un buen dibujo del esquema electrónico usado. Se puede excluir la parte del KT0803 ya que el mismo se comunica por I2C.

Si debería incluir ese esquema las conexiones del display y también la identificación del mismo, es solo una idea y al no estar practico en programación me quería sacar la duda consultándote a ti.




Saludos, JuanKa.-
 
Pues por el momento no puedes hacer nada, y sin saber de programación te resultará muy complicado sustituir las partes del programa que hacen uso de esa librería.

Si descompilas el archivo ejecutable ".hex", obtendrás un programa en ensamblador que tardarás mucho tiempo en comprender.
Y dudo que algún descompilador pueda entregar una salida de ensamblador correcta para un PIC16F883.

Así que lo más recomendable es que empieces por aprender el lenguaje C y adentrarte en los PIC.
Eso te servirá para comprender el programa y poder adaptarlo, o realizar los tuyos.

Trata de contactar nuevamente a la persona que hizo el programa y pídele la librería.

Suerte.

eso hice hoy trade de contactar un pariente del que realizo dicho proyecto y me dijo que me va a tratar de conseguir la libraria faltante a la brevedad ,espero asi sea ,de todos modos queria sacarme la duda de la secuencia en la cual se cargan los 7 (en realidad 8) proyectos si primero los .c o los .h o de que manera un programa llama al otro , les comento que el integrado de superficie que nombran ver en la placa uno es el KT0803L y el otro un simple regulador de 3.3V ( parece una 24xx SMD ) y es para alimentar el pic16f883
 
.
D@rkbytes

Encontré en varias web's dicha librería y mirando la de PicMania me parece que uno debe ajustar las conexiones que usara en su circuito del display y ajustar el tipo de display que colocara siempre y cuando el programador no haya realizado mas cambios.

Si esto que comento fuese correcto, pregunto si seria posible modificar la misma para el circuito de aplicación de este transmisor ?
Como mencioné anteriormente, la librería "flex_lcd.c" que muchos conocemos, no es la misma que se usó en ese programa.
Se puede identificar fácilmente que no es igual, porque se hacen llamadas a las siguientes funciones:
clear_lcd(); y lcd_write();
Esas funciones no se encuentran en la librería flex convencional.
Así que la persona que escribió el programa debió crear dichas funciones.

clear_lcd(); no es importante porque se puede sustituir fácilmente por lcd_putc("\f");
Pero lcd_write(); no es un lcd_putc(); común, ya que hace referencia a una matriz.
En este caso se pasa como puntero a "AuxString", el cual es un arreglo o matriz de 21 bytes.
La dimensión de la matriz está dada por:
#define SIZE 21
char AuxString[SIZE];

Entonces para lcd_write(*puntero); se tiene que crear una subrutina que obtenga los datos de "AuxString", les de formato y los vaya colocando por orden en la pantalla.
.Si debería incluir ese esquema las conexiones del display y también la identificación del mismo, es solo una idea y al no estar practico en programación me quería sacar la duda consultándote a ti.

Si se puede omitir la programación referente a la pantalla.
Pero el proyecto perdería encanto porque ya no se visualizaría la frecuencia y otras cosas que tenga que mostrar el programa.

Yo optaría por escribir la rutina para mostrar los datos de la matriz.
de todos modos quería sacarme la duda de la secuencia en la cual se cargan los 7 (en realidad 8) proyectos si primero los .c o los .h o de que manera un programa llama al otro.
El programa principal es el que tiene la ejecución inicial "void main ()"
Ya te habían comentado que es el archivo "TransmisorFM.c"
Este archivo lo debes cargar en el compilador porque en él se encuentran incluidas una o más librerías, y las otras librerías puedes tener referencia a otra librerías.

Pero el archivo principal es "TransmisorFM.c" y al compilar se generará un solo archivo .hex que incluirá las rutinas de las demás librerías.

Si quieres ver el contenido de las otras librerías dentro del editor, las puedes cargar en el árbol de archivos que se encuentra del lado derecho.
Por lo general, en PIC C Compiler las librerías no se cargan en el árbol hasta que se logra la compilación.
Pero eso no impide que sí se puedan agregar.

Nota:
Esto no siempre es recomendable porque se pueden producir errores de compilación.
En éstos casos lo mejor es abrirlas y editarlas con el bloc de notas.
 
Última edición:
eso hice hoy trade de contactar un pariente del que realizo dicho proyecto y me dijo que me va a tratar de conseguir la libraria faltante a la brevedad ,espero asi sea ,de todos modos queria sacarme la duda de la secuencia en la cual se cargan los 7 (en realidad 8) proyectos si primero los .c o los .h o de que manera un programa llama al otro , les comento que el integrado de superficie que nombran ver en la placa uno es el KT0803L y el otro un simple regulador de 3.3V ( parece una 24xx SMD ) y es para alimentar el pic16f883
Hola a todos...Meto la cuchara en algo que observo, de C no se nada así que aporte nulo total y lo poco que pude ver y sé, coincido con D@rkbytes .
Yo no pondría el IC(KT) en la placa de control. Las señales que provee en RF son demasiado bajas como para "llevarlas"(cableando) a otra placa con niveles de amplificación importantes.
Rodrigo Postigo observa que los equipos "chinos" tienen el emisor con dicho IC todo junto al amplificador en una placa y el control en otra.
Saludos.

Ric.
 
Como mencioné anteriormente, la librería "flex_lcd.c" que muchos conocemos, no es la misma que se usó en ese programa.
Se puede identificar fácilmente que no es igual, porque se hacen llamadas a las siguientes funciones:
clear_lcd(); y lcd_write();
Esas funciones no se encuentran en la librería flex convencional.
Así que la persona que escribió el programa debió crear dichas funciones.

clear_lcd(); no es importante porque se puede sustituir fácilmente por lcd_putc("\f");
Pero lcd_write(); no es un lcd_putc(); común, ya que hace referencia a una matriz.
En este caso se pasa como puntero a "AuxString", el cual es un arreglo o matriz de 21 bytes.
La dimensión de la matriz está dada por:
#define SIZE 21
char AuxString[SIZE];

Entonces para lcd_write(*puntero); se tiene que crear una subrutina que obtenga los datos de "AuxString", les de formato y los vaya colocando por orden en la pantalla.

Si se puede omitir la programación referente a la pantalla.
Pero el proyecto perdería encanto porque ya no se visualizaría la frecuencia y otras cosas que tenga que mostrar el programa.

Yo optaría por escribir la rutina para mostrar los datos de la matriz.

El programa principal es el que tiene la ejecución inicial "void main ()"
Ya te habían comentado que es el archivo "TransmisorFM.c"
Este archivo lo debes cargar en el compilador porque en él se encuentran incluidas una o más librerías, y las otras librerías puedes tener referencia a otra librerías.

Pero el archivo principal es "TransmisorFM.c" y al compilar se generará un solo archivo .hex que incluirá las rutinas de las demás librerías.

Si quieres ver el contenido de las otras librerías dentro del editor, las puedes cargar en el árbol de archivos que se encuentra del lado derecho.
Por lo general, en PIC C Compiler las librerías no se cargan en el árbol hasta que se logra la compilación.
Pero eso no impide que sí se puedan agregar.

Nota:
Esto no siempre es recomendable porque se pueden producir errores de compilación.
En éstos casos lo mejor es abrirlas y editarlas con el bloc de notas.

Hola D@rkbytes te puse , me gusta a tu comentario ya que no existe el ( Me Encanta ) sos un libro abierto D@rkbytes tenes un gran conocimiento y encima te tomas el trabajo de ayudar a los demas compañeros del foro ,sos un capo !!!
yo te cuento que al al querer compilar el primer archivo Transmisor.c ya me da como 30 errores el c compiler , no se si es normal .



Hola a todos...Meto la cuchara en algo que observo, de C no se nada así que aporte nulo total y lo poco que pude ver y sé, coincido con D@rkbytes .
Yo no pondría el IC(KT) en la placa de control. Las señales que provee en RF son demasiado bajas como para "llevarlas"(cableando) a otra placa con niveles de amplificación importantes.
Rodrigo Postigo observa que los equipos "chinos" tienen el emisor con dicho IC todo junto al amplificador en una placa y el control en otra.
Saludos.

Ric.

si señor ricbevi eso se tiene en cuenta y en el nuevo diseño de placa va a ir don KT0803L/K cualquiera de los 2 el la famosa placa 10mw/8W RDVV en la entrada de la misma y ahi un conector de 4 pines , GND , 3v3 ; clk y data a la otra placa que va a tener el pic con su conctor de display , en la misma placa de 8w van las 2 entraditas de RyL :):):) espero le guste ricbevi , sinceramente para mi seria un gran logro tener algo made in argentina que sea igual o mejor que el tranmisor chino ,ademas de poder conseguir los kt0803L y habilitar la parte de comresion de audio y asi eliminar por completo la posibilidad de sobremodulacion mas agregado a la exelente calidad de audio de este integradito seria mas feliz que perro con 2 colas :D:D:D:D:D , sinceramente no veo la hora de poder decir que mi proyecto esta terminado y hacer una produccion de varios equipos ya encargados , te voy a dejar un link de la persona que hizo lo mismo que yo no se cuando ya que como dije yo empece con esto hace 3 años por lo menos y ahun no esta terminado :cry:



Miren lo que es eso y yo aca sentado me muero de envidia porque esa idea fue mia y alguien ya lo realizo con un exito total , hasta pantalla color le mando el tipo , miren

http://vrtp.ru/index.php?act=categories&CODE=article&article=3346
 
Última edición:
Atrás
Arriba