TODOPIC
Microcontroladores PIC => - Niple - => Mensaje iniciado por: tsu_electronica en 24 de Mayo de 2023, 17:34:18
-
bueno trataremos de hacer algo que tal vez sea imposible jajajaja, bueno ya tenemos los antecedentes de varios proyectos hechos a mano como algunos colegas le dicen ahora veremos la manera de adaptarlos para que los podamos usar como librerías y que nos funcionen si es posible en todas las versiones y en las futuras, este hilo esta creado para ese fin en el que podamos compartir las experiencias y las librerías, bueno a trabajar.
-
Ánimo con ello.
Estaremos a tentos al desarrollo.
F.
-
estaba pensando en realizar librerías básicas como lo es en los retardos, los bcd y hasta del lcd pero son librerías que ya tiene dominado niple y no eh visto que falle tal vez aumentar funciones pero que fallen tal vez una en un millón por así decirlo, entonces tal vez seria hacer librerías de nuevos componentes o comunicación tal vez o ustedes que opinan.
-
jeje parece que nadie se apunto, bueno no me pareció necesario abrir otro tema ya que este esta basio así que aquí lo pongo.
un blink con re3 o parpadeo con mclr estamos usando un 18f46k22 solo como curiosidad no como aplicación.
-
Hola Tsu, no entiendo lo de mclr, lo que veo es que se prende un led y pasado 1 segundo se apaga y así continúa indefinidamente, lo podés aclarar gracias
-
Es fácil de entender Enrique,
Está utilizando el pin mclr como otro pin cualquiera pero para eso se debe de configurar su funcionamiento dentro de las opciones de configuración de la CPU.
El resto del programa es lo mas simple: enciende y apaga el led con retardos de 1 segundo y repitiéndose de forma indefinida.
Lo que no entiendo es como puede configurarse como salida ya que solo permite realizarlo entrada. Aunque me imagino que tiene que ver con el registro WPUE, solo que este registro solo habilita las resistencias internas y configura como I/O solo los pines RE0,RE1 y RE2.
F.
-
amigo quique62 así como lo entendiste esta perfecto es un parpadeo de un led indefinidamente, aquí la idea es que uso el pin re3 que es un pin de solo entrada pero aquí podemos decir que estamos hackeando al micro para que sirva como salida y utilizarlo en el parpadeo del led.
-
así es mi amigo fer pero no se puede en cualquier pic si no solo en los que tienen el pin mclr una resistencia de pull up como el 18f46k22 y no lo configuramos como salida si no como entrada como se e en la hoja de datos pero primero habilitamos todas las resistencias de pull up y luego lo único que hacemos es conectar y desconectar la resistencia que como sabemos va anclada a positivo internamente, aunque en la realidad el led solo puede iluminarse poco si hace el efecto del parpadeo ya que la resistencia si tiene sus buenos kohms pero podemos poner un driver y así se puede hackear la sola entrada para convertirla en salida, solo es como simple curiosidad y si es real ya esta probado.
-
así es mi amigo fer pero no se puede en cualquier pic si no solo en los que tienen el pin mclr una resistencia de pull up como el 18f46k22 y no lo configuramos como salida si no como entrada como se e en la hoja de datos pero primero habilitamos todas las resistencias de pull up y luego lo único que hacemos es conectar y desconectar la resistencia que como sabemos va anclada a positivo internamente, aunque en la realidad el led solo puede iluminarse poco si hace el efecto del parpadeo ya que la resistencia si tiene sus buenos kohms pero podemos poner un driver y así se puede hackear la sola entrada para convertirla en salida, solo es como simple curiosidad y si es real ya esta probado.
No conocía esa utilidad, me la apunto
F.
-
si amigo fer es curiosa y pues muy lógica y nunca me paso por la mente hasta apenas jeje, ahorita ando en otro que también quiero checar pero todo parece que si se puede, pronto subo que hice mas.
-
vamos a cambiar el nombre de librerías por hackear niple jajajaja bueno no es hackear solo es usar el recurso de niple y usarlo como debe de ser jeje, ahora comparto un parpadeo pero con una velocidad de 64mhz interno del pic18f46k22 ya que necesitamos configurar interno el reloj y niple no trae a 64mhz solo necesitamos ponerlo a 8mhz interno ya lo demás será configurar los registros necesarios y el tiempo en ves de 1 segundo como seria con el reloj de 8 como ahora estamos 8 veces arriba en 64 pues solo ponemos 8 segundos pero en lo próximo trataremos de hacer los retardos para usar bien la velocidad. a y claro ya también testeado en lo real y todo ok.
-
Muchas gracias por la aclaración, veo que es un PIC muy potente y rápido. Está soportado por Niple en todas sus funciones?
-
amigo quique62 es un buen pic muy potente en los de 8bits pero claro hay mejores y niple si lo soporta no al 100 pero lo que tiene si lo tiene funcional y claro si conoces el micro puedes hacer todo lo que necesites sin necesidad de que niple tenga ya hechas las cosas como estos ejemplos que ya subi niple no maneja 64mhz pero si podemos usar a esa velocidad sin problemas.
-
no cabe duda que uno sigue aprendiendo, hoy descubrí que uno puede ver el código que niple genera solo dándole click al bloque en modo experto, yo nunca lo hice y no lo sabia tal vez ya muchos lo sabían pero si no ya lo sabemos jajajaja.
-
bueno ahora si la primera librería jeje, no es gran cosa pero es una rutina de 1 microsegundo a una velocidad de 64mhz, esperamos seguir creciendo la librería esperemos sirva de base para que se animen a hacer las propias.
-
actualizando los retardos, lo estaba haciendo de la manera anidada pero solo llevo 10 milisegundos y ya es un mundo de líneas mas de 300 aunque solo utilizo un registro pero si cada vez que entra mas tiempo aumentan las líneas y checando con los bloques de niple apenas si son unas 30 líneas un poco mas un poco menos entonces tratare de optimizar mas la rutina.
-
comparto mi inicial librería de retardos jeje, en mi archivo esta primero la configuración para el pic18f46k22 a 64mhz internos, después configuro el pin d2 como salida digital y un ciclo sencillo para ir probando, los primeros 6 solo se pueden usar instrucciones nop para los retardos de 62.5 nanosegundos cada uno y después se entra a las rutinas hasta llegar a 1 microsegundo para empezar. ya están testeados en mplab.
-
listo ya quedaron los retardos con el pic18f46k22 a 64mhz desde 62.5 nanosegundos que es un ciclo maquina hasta 2 segundos que son 32 000 000 ciclos maquina, los fui checando en mplab y todos nos dieron bien los tiempos y lo mas exacto que se pudo con los menos bloques posibles, que hicimos pues lo de siempre decrementar registros, uso 3 registros para sumar los ciclos maquina y con eso llegamos hasta los 50 millones de ciclos mas o menos, para optimizar tiempo hice unas formulas en exel y listo así como niple entra en la rutina y cambia de bancos así los cálculos fueron diseñados, les dejo el npl para 6.6.2 y yo creo que sirve en versiones anteriores que tengan el mismo micro y también dejo mi hojita de exel por si quieren checar, esperando que niple ya nos pueda integrar esa velocidad y otras mas.
-
no cabe duda que uno sigue aprendiendo, hoy descubrí que uno puede ver el código que niple genera solo dándole click al bloque en modo experto, yo nunca lo hice y no lo sabia tal vez ya muchos lo sabían pero si no ya lo sabemos jajajaja.
que version de niple usas para ver el codigo del modulo? ya que en mi version no me deja ver el codigo ni en experto ni nada. saludos
-
Para ver el código ASM que genera Niple para cada bloque, hay que ejecutar el software en modo experto.
Una vez realizado, debes realizar clic con el botón derecho del mouse sobre el bloque afectado y Niple te mostrará el código ASM asociado a ese bloque.
Ojo que si ejecutaste el software en modo inicial y cambias a modo experto no podrás ver el código. En este caso debes cerrar el proyecto y volverlo abrir.
En ese caso ahora sí podrás ver el código.
F.
-
buenas ale211983, yo uso la versión 6.6.2 y esperemos que para este 2025 ya tengamos la 6.7
-
buenas ale211983, yo uso la versión 6.6.2 y esperemos que para este 2025 ya tengamos la 6.7
Pues si, esperemos que las pruebas terminen pronto y dispongamos de ella lo antes posible.
-
si fer la tenia que comprar en abril que ya tenia cotización pero pasaron cosas que ya no se pudo testearla y trabajar pero esta en tiempo de espera y yo creo la pido este nuevo año que viene esperemos ya todo mejore y a trabajar
-
si fer la tenia que comprar en abril que ya tenia cotización pero pasaron cosas que ya no se pudo testearla y trabajar pero esta en tiempo de espera y yo creo la pido este nuevo año que viene esperemos ya todo mejore y a trabajar
L
Si esperemos que venga con los errores actuales corregidos y que traiga más cosas nuevas.
F..