TODOPIC
Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: julioelectronic2 en 30 de Junio de 2008, 18:58:00
-
hola a todos yo aqui despues de 5 años :) resulta que ahora van en el mplab 7.6 y no se como simular, quiero simular una rutina que incluye el puerto serial, alguien tiene un tutorial por ahi?
gracias.
-
hola a todos yo aqui despues de 5 años :) resulta que ahora van en el mplab 7.6 y no se como simular, quiero simular una rutina que incluye el puerto serial, alguien tiene un tutorial por ahi?
gracias.
¿Qué es lo que queres simular puntualmente? El puerto serie en forma completa no es simulado pero sí podes ver si sacas un string o podes emular un input de un string.
Ahora si pretendes mandar cosas y que te responda el simulador con alguna forma programática no hay nada habilitado a nivel de interfaz de IDE.
-
hola maniux
quiero simular que por el puerto serie ingresa una cadena de 9 caracteres (9 bytes), en su conjunto podriamos decir que es un string, sin embargo el analisis de los caracteres enviados se realisa uno a uno, en base a los caracteres que envio el micro hace cambiar de niveles algunos pines que estan como salida.
-
Bueno, fijate.
Ve al menu Debugger, luego Stimulus y luego New WorkBook
Se te abrirá una ventana como la siguiente, selecciona la pestaña Register Inyection.
En ella, en la columna Reg/Var elige RCREG. En la columna DataFilename, clickea en el botón que aparece y selecciona el archivo de texto que quieras insertarle.
Por último Clickea en Advanced y genera un archivo SCL pulsando en Generate SCL File
Si la ventana se cerró, clickea de nuevo en Advanced y pulsa en Attach y elige el SCL que acabas de generar.
Eso debiera ser suficiente.
Saludos
PD: fijate en la imagen que adjunto.
-
Gracias Maniux
Vere que hago, aunque no se como fabricar el archibo de texto a insertar, me refiero a la forma en que posisiono los datos, segun lo que tu me dices no puedo utilizar los caracteres no imprimibles del atabla ascii, por ejemplo si quiero enviar un cero decimal por el Puerto Serie.
-
Gracias Maniux
Vere que hago, aunque no se como fabricar el archibo de texto a insertar, me refiero a la forma en que posisiono los datos, segun lo que tu me dices no puedo utilizar los caracteres no imprimibles del atabla ascii, por ejemplo si quiero enviar un cero decimal por el Puerto Serie.
Sí puedes!! De hecho yo lo hecho centenar de veces para probar protocolos de comunicación entre micocontroladores de la forma que te he explicado.
Si quieres introducirle un texto en ASCII simplemente le indicas que es ASCII.
Si quieres introducir algo en modo binario, seleccionas la columna HEX y el archivo generalo con un formato así:
0x03
0x00
0xFA
0x38
0x18
Eso lo escribes así en ascii , pero el MPSIM los tomará como una sucesión de datos en hexa. Si lo queres en decimal, también lo puedes hacer. No importa que nombre le des al archivo, al MPSIM solo le importa el formato que le indicaste en la columna.
-
:) ok maniux ahora esoty mas claro, te cuento mas adelante como me resulta la simulacion, ahora estoy terminando un codigo que quiero probar despues simulando
saludos.
-
Tambien puedes ir al menu debugger la opcion settings y ahi te apareceran varias opciones para configurar la simulacion (la velocida del cristal, refresco de registros y otras mas) veras que hay una pestaña que dice UART IO, cuando habilitas la opcion Enable Uart IO solo debes de cargar un archivo de texto (.txt) donde esta la cadena que quieres que reciba el PIC y tambien puedes ver lo que el PIC transmite ya sea en la ventana Output (la que te saca los mensajes de compilacion) o un archivo de texto aparte.
Saludos
-
ok entiendo ambos procedimientos pero como le doy la orden para que se envie la cadena basta con animar?
gebere el archivo de texto
con este formato
0x65
0x00
0x00
0x00
0x00
0x00
0x00
0x00
0x00
sin embargo no logro ver respuesta ni logro ver como el micro entra al bloque de programa donde recive la cadena
-
De la forma en la que te dije , es suficiente con que marques la opcion Enable UART IO y al ir simulando los valores se iran cargando en el RCREG, aunque me parece que debes de quitar los 0x antes de los numeros, con el metodo que te indicaba maunix no estoy seguro.
Saludos