Es que ahora se termina lo simple. Hay que buscar una forma de guardar el "HOLA MUNDO" en alguna parte y tratar de mostrarlo. ¿ Por que guardarlo? porque me permite que tenga una posicion de memoria, la cual yo vaya incrementando y mostrando los 4 caracteres desde esa posicion.
Por ejemplo comenzamos con "HOLA MUNDO" y nos situamos en la H.. Los 4 primeros serian "HOLA", despues de un tiempo procedo a incrementar la posicion de memoria y que apunte ahora a la "O" entonces los 4 primeros ahora serian "OLA " esta es la forma mas sencilla de pensarlo.
Primero tenes que ver como almacenar eso en la memoria de programa, en la RAM no tiene mucho sentido.
Para guardarlo en la memoria de programa tenes por ejemplo la directiva DB
my_hola DB b'11001000', b'10000001',b'11110001', ......... asi para todos los demas ,.... ; Aca tenes tu HOLA MUNDO
Ya con eso guardamos nuestra palabra "HOLA MUNDO" dentro de la flash.. Ahora hay que usarla... Para eso tiene lo que se llama "tablas", yo debo apuntar con un puntero y acceder.
MOVLW UPPER(my_hola)
MOVWF TBLPTRU
MOVLW HIGH(my_hola)
MOVWF TBLPTRH
MOVLW LOW(my_hola)
MOVWF TBLPTRL
Luego necesito leerlo, y esto lo puedo hacer con la instruccion TBLRD*, incrementaria 3 veces mas y mostraria, finalmente decrementaria 2.
Hasta aca nuevamente estamos mejor... El problema viene en que necesitamos hacer que termine... podrias poner un valor mas y que quede "HOLA MUNDO",0xFF, asi cuando se encuentre con un 0xFF deje de aumentar y comienze de nuevo.
Algo asi:
loop:
TBLRD*+
Apago todo
MOVFF TABLAT, PORTB
Enciendo 1
TBLRD*+
Apago 1
MOVFF TABLAT, PORTB
Enciendo 2
TBLRD*+
Apago 2
MOVFF TABLAT, PORTB
Enciendo 3
TBLRD*+
Apago 3
MOVFF TABLAT, PORTB
Enciendo 4
COMF TABLAT, W ; Reviso que le valor no sea 0xFF
BZ VOLVER_A_EMPEZAR
MOVLW 3
SUBWF TBLPTRL ; Le resto 3
BNC loop ; Continuo si no tengo que arreglarlo
DECF TBLPTRH, F
BNC loop
DECF TBLPTRU, F
BRA loop
El codigo no esta probado, simplemente es para darte una orientacion, ni siquiera si reemplazas el pseudocodigo se si funciona exactamente, pero te va a dar una idea.