Hola Amigo Fer: Gracias por tu atencion como siempre al pie del cañon en nuestra ayuda.
Fer te mande un mensaje privado.
Bueno Fer : la idea es clara tomar ese Asm y pasarlo a NIPLE, lo primero que se me ocurrió es ver que el micro se se uso en el original se consiguiese en chechelandia porque aquí an cerrado la importación de algunas cosas y se pone difícil. Conseguí el micro 16f887 que también es el que usa Jorge Cano en sus vídeos de enseñanza, Algo de 7 dolares que no es el caso del precio porque es solo aprendizaje.
Ahora tengo que comparar si el 16f872 tiene lo necesario para migrar el proyecto, asumo que si el vendedor me dijo que el 16f887 es mejor.
Bien según mi planteo y en el que concordamos por lo que me doy cuenta que he avanzado en razonar y plantearme la organizacion del programa.Por Tu respuesta del pos, paso uno configuración de puertos y declaración de variables( registros, bits etc.
Lo voy a pegar aquí como esta en el ASM, para luego realizarlo en NIPLE para ver como va tomando forma.
Mi version de NIPLE es 5.6 rev 2.
; Control de lavarropas automático
; Rev. 01 // 04-OCT-2003 // Versión funcional sin selección de productos
; Rev. 02 //12-marzo-2010 // timeout's de carga y descarga del agua
cprog equ 0x02 ;contador de programa (parte baja)
estado equ 0x03 ;Registro de estados del micro
ptoa equ 0x05 ;Puertos de E/S
ptob equ 0x06
ptoc equ 0x07
intcon equ 0x0B ;Control de interrupciones
tiempo1 equ 0x20 ;Usados para temporizar
tiempo2 equ 0x21
tiempo3 equ 0x22
veces equ 0x23
display equ 0x24 ;Resguarda el numero mostrado en el display
general equ 0x25
tout1 equ 0x26 ;Usadas para el timeout de carga y descarga de agua
tout2 equ 0x27
backw equ 0x28 ;Back-up de W al interrumpir
#define CERO estado, 2 ;Bit indicador de resultado cero
#define RP0 estado, 5 ;Bit de selección de página de memoria
#define GIE intcon, 7 ;Bit de habilitación de las interrupciones
#define SELECT ptoa, 0 ;Entrada de selección de programa
#define START ptoa, 1 ;Entrada de inicio del proceso
#define MEDIA ptoa, 2 ;Entrada de la llave de media carga
#define NOCENT ptoa, 3 ;Entrada de la llave de exclusión de centrifugado
#define PRES50 ptoa, 4 ;Entrada del presostato a media carga
#define PRES100 ptoa, 5 ;Entrada del presostato a carga completa
#define BUZZER ptob, 7 ;Control del parlante piezo
#define MOTFAST ptob, 6 ;Motor a alta velocidad
#define MOTSLOWI ptob, 5 ;Motor a baja velocidad giro I
#define MOTSLOWD ptob, 4 ;Motor a baja velocidad giro D
#define SELENOID ptob, 0 ;Selenoide de engrane lavado (off)/centrifugado(on)
#define VALVULA1 ptob, 3 ;Entrada de agua (electroválvula jabon)
#define BOMBA ptob, 2 ;Salida de agua (desagote)
#define VALVULA2 ptob, 1 ;Entrada de agua (electroválvula enjuage)
#define PAUSA general, 0 ;Indica que entre programa y programa haga una pausa
#define ENTRA general, 1 ;Indica si esta en modo carga (1) /descarga (0) de agua.
Empecemos por aqui, con esta porcion del ASM.
cprog equ 0x02 ;contador de programa (parte baja)----¿ que es esto?
estado equ 0x03 ;Registro de estados del micro ¿ y esto habla de estado a que se refiere
ptoa equ 0x05 ;Puertos de E/S ¿ aqui configura los puerto verdad...?
ptob equ 0x06
ptoc equ 0x07
intcon equ 0x0B ;Control de interrupciones ¿ tiempo serian registros?
tiempo1 equ 0x20 ;Usados para temporizar
tiempo2 equ 0x21
tiempo3 equ 0x22
veces equ 0x23
display equ 0x24 ;Resguarda el numero mostrado en el display ¿ guarda lo ultimo que mostro o el prog. ejecutado?
general equ 0x25
tout1 equ 0x26 ;Usadas para el timeout de carga y descarga de agua ¿ esto es otro registro de teimpo?
tout2 equ 0x27
backw equ 0x28 ;Back-up de W al interrumpir ¿ esto quiere decir que guarda el contenido del reg. de trabajo
bueno espero se entiendan las preguntas, son para ir entendiendo como hacerlas con NIPLE, por que me doy cuenta que hace muchas cosas que aparecen en el ASM cuando lo genera que no nos damos cuenta hasta que vemos ese ASM generado por NIPLE.
Fer un abrazo y nuevamente gracias.