Autor Tema: Duda niple y señales en nanosegundos  (Leído 5504 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado xiran

  • PIC16
  • ***
  • Mensajes: 100
Duda niple y señales en nanosegundos
« en: 27 de Enero de 2013, 02:18:23 »
Hola a todos compañeros, he buscado por el foro algo de si con niple se pueden generar señales de esta velocidad (ns), se q el ciclo de trabajo con un cristal de 20 mhz, es de 50ns, lo ocupo q sea de 100ns (voy a intentar indirectamente usar un simple nop, y medir en una simulacion). El proyecto q tengo en  mente, es desarrollar una sobre imagen de una pantalla lcd en modo vga con resolucion de 640x480, solo necesito q aparescan letras, asi q con un 16f628a, creo serà suficiente, sino, pues uso un 18f4550, con overclockeo a 48 mhz (tambien trucando niple, diciendole q le voy a trabajar con modulo usb, y el lo overclockea). Aguien q tenga alguna sugerencia?

Desconectado MerLiNz

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2463
Re: Duda niple y señales en nanosegundos
« Respuesta #1 en: 27 de Enero de 2013, 02:29:10 »
Un pic trabaja a Fosc/4, osea si le pones un cristal de 20mhz tendrias 5mhz osea 200ns, ahora bien, hablamos que seria 200ns por instruccion, no se que necesitarias hacer, pero tendras que tener en cuenta que no puedes obtener una frecuencia de 5mhz si tienes que hacer varios calculos, lecturas... cada instruccion te tomaria esos 200ns

Desconectado xiran

  • PIC16
  • ***
  • Mensajes: 100
Re: Duda niple y señales en nanosegundos
« Respuesta #2 en: 27 de Enero de 2013, 02:58:22 »
Ok, muy bien, lo q necesito es motrar texto a una lcd por vga, con un pic, tengo un hex de un intermediario, lo hacen con otro pic, y este, manda hasta 16 colores diferentes, lo hacen con un cristal de 10 mhz, se llama terminal vga y funciona, por asi decirlo, como una tarjeta grafica. se le mandan las instrucciones por spi. Pero quisiera hacerlo directamente. Gracias por responder Merlinz.

Desconectado Fer_TACA

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 4069
Re: Duda niple y señales en nanosegundos
« Respuesta #3 en: 27 de Enero de 2013, 16:50:56 »
La maxima configuracion de la frecuencia acual de trabajo de los pic con Niple es 20MHz
Todos los días se aprende algo nuevo.

Desconectado xiran

  • PIC16
  • ***
  • Mensajes: 100
Re: Duda niple y señales en nanosegundos
« Respuesta #4 en: 29 de Enero de 2013, 01:11:08 »
Enterado fer_taca, voy a probar con niple a cambiar de estado una salida, con tiempo "nop", y analizarlo, solo q estoy esperando me respondan para volver a adquirir niple 5.6, q en la pc donde lo tenia, se me estropeo... Posteo resultados cuando lo logre....

Desconectado xiran

  • PIC16
  • ***
  • Mensajes: 100
Re: Duda niple y señales en nanosegundos
« Respuesta #5 en: 14 de Febrero de 2013, 16:01:22 »
Posteo resultados: efectivamente con la instruccion nop puedo generar señales de menos de 225ns, con un osc de 20 mhz, sigo esperando respuesta de niple 5.6, para hacerlo con el overclock de 48 mhz q trae con un 18f, ojala no se tarden mucho, alguien q sepa donde puedo contactarlos? como me comentaste fer_taca, ya le mandè mail a jorgecano, pero como dices, si tarda un poco en responder, gracias.

Desconectado Fer_TACA

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 4069
Re: Duda niple y señales en nanosegundos
« Respuesta #6 en: 14 de Febrero de 2013, 16:45:43 »
Respecto a la espera no puedo hacer nada.....  ¡wait..........................1

El correo se lo mandasre desde la web directamente, rellendo los campos indicados o fue desde la direccion de MSM que aparece en ella?
Nunca utilizo la direccion MSN, siempre rellenado los campos y dando a "enviar"

F.
Todos los días se aprende algo nuevo.

Desconectado juanfra

  • PIC12
  • **
  • Mensajes: 74
Re: Duda niple y señales en nanosegundos
« Respuesta #7 en: 21 de Febrero de 2013, 02:46:27 »
Hola Xiran.
Directamente desde el Niple no se si podrás hacerlo, pero es muy sencillo desde el MPLAB., tu simplemente implementa tu programa desde niple y a la hora de compilarlo editas los FUSES en el MPLAB..
Puedes hacer rodar un 18fXXXX hasta 96 Mhz. (no puedo garantizarte la estabilidad a esa velocidad).
El truco consiste en decirle al PIC que use como clk  la frecuencia del modulo PLL dividido por lo que tu necesites, el USB funciona  a 96Mhz, y con el pre-divisor puedes conseguir fácilmente lo 48 Mhz. , incluso creo recordar que no es necesario ni cristal exterior, pero no estoy del todo seguro.
Te adjunto captura de una configuración Ok para que rule a 48 Mhz a partir de un cuarzo de 20Mhz.

Juanfra

Desconectado xiran

  • PIC16
  • ***
  • Mensajes: 100
Re: Duda niple y señales en nanosegundos
« Respuesta #8 en: 26 de Febrero de 2013, 07:11:55 »
q tal juanfra, antes q nada permiteme disculparme por no haber leido antes tu respuesta y agradecerte tu tiempo. Hace años manejé asm, pero era muy tardado hacer codigo, por lo q decante por niple. Abusando un poquitin de tu tiempo, no entiendo muy bien, te escribo la cabecera de niple:

_PLLDIV_1             equ  0xF8
_CPUDIV_OSC1_PLL2     equ  0xE7
_USBDIV_1             equ  0xDF
_FOSC_HS              equ  0xFC
_FCMEN_OFF            equ  0xBF
_IESO_OFF             equ  0x7F
_PWRT_ON              equ  0xFE
_BOR_OFF              equ  0xF9
_BORV_0               equ  0xE7
_VREGEN_ON            equ  0xFF
_WDT_OFF              equ  0xFE
_WDTPS_1              equ  0xE1
_MCLRE_OFF            equ  0x7F
_LPT1OSC_OFF          equ  0xFB
_PBADEN_OFF           equ  0xFD
_CCP2MX_OFF           equ  0xFE
_LPT1OSC_OFF          equ  0xFB
_STVREN_OFF           equ  0xFE
_LVP_OFF              equ  0xFB
_ICPRT_OFF            equ  0xDF
_XINST_OFF            equ  0xBF
.
.
.

_config1l             equ  0x300000
_config1h             equ  0x300001
_config2l             equ  0x300002
_config2h             equ  0x300003
_config3h             equ  0x300005
_config4l             equ  0x300006
_config5l             equ  0x300008
_config5h             equ  0x300009
_config6l             equ  0x30000a
_config6h             equ  0x30000b
_config7l             equ  0x30000c
_config7h             equ  0x30000d

 __config _config1l, _PLLDIV_1 & _CPUDIV_OSC1_PLL2 & _USBDIV_1
 __config _config1h, _FOSC_HS & _FCMEN_OFF & _IESO_OFF
 __config _config2l, _PWRT_ON & _BOR_OFF & _BORV_0 & _VREGEN_ON
 __config _config2h, _WDT_OFF & _WDTPS_1
 __config _config3h, _MCLRE_OFF & _LPT1OSC_OFF & _PBADEN_OFF & _CCP2MX_OFF
 __config _config4l, _STVREN_OFF & _LVP_OFF & _ICPRT_OFF & _XINST_OFF & _DEBUG_OFF
 __config _config5l, _CP0_OFF & _CP1_OFF & _CP2_OFF & _CP3_OFF
 __config _config5h, _CPB_OFF & _CPD_OFF
 __config _config6l, _WRT0_OFF & _WRT1_OFF & _WRT2_OFF & _WRT3_OFF
 __config _config6h, _WRTB_OFF & _WRTC_OFF & _WRTD_OFF
 __config _config7l, _EBTR0_OFF & _EBTR1_OFF & _EBTR2_OFF & _EBTR3_OFF
 __config _config7h, _EBTRB_OFF
 
por lo q me comentas, se q debo meter en "__config1l 0xe4", pero no se q hacer con los "and", ya q mplab me da error... Crees poder hecharme una mano y comentarme ambas configuraciones (48 mhz y 96 mhz)? ya haria las pruebas y postearia resultados sobre la estabilidad, saludos!
pd: no sabes si con esta configuracion me consume recursos el puerto usb? me surge por q lei en algun lugar q hay q deshabilitar los puertos analogos para q sea un poquitin mas rapido el pic (creo q niple ya lo hace en si). Gracias!

Desconectado juanfra

  • PIC12
  • **
  • Mensajes: 74
Re: Duda niple y señales en nanosegundos
« Respuesta #9 en: 26 de Febrero de 2013, 17:22:58 »
ok, te explico.

Deja la cabecera del NIPLE tal cual, dedícate a escribir tu programa como si lo hirieras para un cristal de 20 Mhz (te vale tb uno de 4Mhz).

Te dejo un tutorial , ya me contaras si te valió

https://dl.dropbox.com/u/37472560/tuto48mhz.wmv

au cacauuu

Desconectado xiran

  • PIC16
  • ***
  • Mensajes: 100
Re: Duda niple y señales en nanosegundos
« Respuesta #10 en: 26 de Febrero de 2013, 18:23:55 »
Estuvo muy bien tu tutorial juanfra, solo q un detallito, cuando selecciono el divisor de 5, para sacarlo, me sobreescribe la configuracion del codigo generado por niple, es decir lo regresa a su estado original, no sabes q puedo hacer? uso un 18f4550, pickit2, y sip, hasta donde me explicaste lo entendi perfectamente, te agradezco mucho, ya solo seria esa pequeña duda...

Edit: Listo, ya volvi a ver tu videoexplicaion, tengo q grabarlo directo en el micro, ya q si compilo, se sobreescribe mi configuracion, muchas gracias, oye, y si no es mucha molestia, como puedo usarlo a 96 mhz? lo q pasa es q estoy manejando señales vga, y con 48 mhz si q si puede manejarlas un pic, te agradezco bastante tu tiempo y dedicacion.

Edit2: Ya le movi al preescaler como si tuviera un cristal de 12 mhz y buala! como dices, es todavia mas rapido!, ya engañarlo y ponerle como si fuera uno de 8 mhz, ya no lo soporta, con esto podré decantar de aprender a usar atmegas, ya q en velocidad si nos estaban ganando a los pics (me refiero a los mips a los q puede trabajar una atmega, me estoy basando en uno q tengo con un cristal de 16 mhz, y trabajan una resolucion de 1440 x 900 creo...
« Última modificación: 26 de Febrero de 2013, 20:26:55 por xiran »

Desconectado xiran

  • PIC16
  • ***
  • Mensajes: 100
Re: Duda niple y señales en nanosegundos
« Respuesta #11 en: 28 de Febrero de 2013, 17:23:35 »
Oye juanfra, me quedé con la duda de como hacerlo llegar a los 96 mhz, le puse un cristal de 48 mhz, y le puse div por 8, y se super inestabiliza, empieza bien, pero empieza a estropear el asunto, jejejeje....

Desconectado juanfra

  • PIC12
  • **
  • Mensajes: 74
Re: Duda niple y señales en nanosegundos
« Respuesta #12 en: 01 de Marzo de 2013, 04:50:21 »
Estoy bastante liado estos días, en cuanto tenga un momentito te haré otro tuto para el tema de los 96 Mhz,

Desconectado xiran

  • PIC16
  • ***
  • Mensajes: 100
Re: Duda niple y señales en nanosegundos
« Respuesta #13 en: 02 de Marzo de 2013, 02:18:37 »
Perfecto Juanfra, no te preocupes por el tiempo, x aca andaré revisando a cada ratin, gracias!

Oye Juanfra, no se q consejo me puedas dar, mira, hasta el momento logre mandar señales vga, pero como q la resolucion de las letras esta un poco grande. entonces he estado pensando, a parte de ver como lograr los super 96 mhz, los dspic, y los pic32, he estado leyendo un poco, pero no he visto algo similar como niple, (y q vengan en encapsulado tipo dip, jejeje), ya q me ayuda mucho con los tiempos de desarrollo, tendré q volver a estudiar c++...
« Última modificación: 02 de Marzo de 2013, 03:03:39 por xiran »