TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: arenwi en 28 de Abril de 2014, 19:06:40

Título: simular comunicación serie en proteus
Publicado por: arenwi en 28 de Abril de 2014, 19:06:40
Muy buenas chicos,

Pues ahora he programado una cominicacion serie de mi pic 16f877 con un dispositivo externo por los puertos: SDI, CS, SCLK Y SDO
mando 4 palabras de 8 bits con los tiempos marcados por el sclk del pic. El codigo compila y creo que puede incluso estar bien pero no se como simularlo em proteus, no se como puedo ver si manda o no las palabras de 8 bits(algun componente que lo lea o no se como?).

Saludos y gracias de antemano

Título: Re: simular comunicación serie en proteus
Publicado por: ppyote en 28 de Abril de 2014, 21:34:18
es una comunicacion spi lo que deseas hacer...
en proteus puedes encontrar el SPI DEBUGGER en el mismo lugar donde se encuentra el osciloscopio, Virtual Instruments Mode
Título: Re: simular comunicación serie en proteus
Publicado por: arenwi en 29 de Abril de 2014, 17:14:00
Si ppyote no lo especifica en el datasheet pero creo que es sdi.

Esta seman lo comprobare y os comento.

Un saludo y gracias de nuevo.
Título: Re: simular comunicación serie en proteus
Publicado por: arenwi en 05 de Mayo de 2014, 19:45:57
Nada no me arreglo con el debounger del SPI del proteus.

En una ventana del debouger veo como cambian los valores de mis variables y funciona pero en la pantalla que me sale del debouger del spi (adjunto foto) o eso creo yo que es solo veo 00 y creo que no envia datos. No tengo ni idea por donde empezar a mirar.

Codigo de la función que funciona correctamente pero creo que no envia datos por el spi:


void control_4311()
{
if(nivel<0)
{
   if(nivel==-5)
   {
   envio=22;}
}
   if(nivel==-10)
   {
   envio=12;}
if(nivel>0)
{
envio=(nivel*2)+32;
}

setup_spi(spi_master|spi_l_to_h|spi_clk_div_16);

for(i=0;i<3;i++)    //envio 3 datos de 8 bits cada uno para en la cuata palabra meter los datos que yo quiero enviar
{
int nulo=0;
spi_write (nulo);
}
spi_write(envio); //envio la variable ENVIO por spi o eso creo
}

(http://www.todopic.com.ar/foros/imgtiny/213ma6e.png)
 
(http://www.todopic.com.ar/foros/imgtiny/9aoite.png)

saludos y gracias
Título: Re: simular comunicación serie en proteus
Publicado por: arenwi en 08 de Mayo de 2014, 20:00:31
Buenas alguien se anima a hechar una mano?? saludos y gracias
Título: Re: simular comunicación serie en proteus
Publicado por: BrunoF en 08 de Mayo de 2014, 20:32:26
No uso el SPI DEBUGGUER, pero no se supone que el SDO del uC va al DIN del Debugger, y el SDI del uC al DOUT del Debugger?

Saludos.
Título: Re: simular comunicación serie en proteus
Publicado por: AngelGris en 08 de Mayo de 2014, 20:49:32
  Tal cual lo comenta BrunoF, además te conviene utilizar un pin para SS, ya que el debuger suele usar eso para sincronizar la recepción.
Título: Re: simular comunicación serie en proteus
Publicado por: arenwi en 10 de Mayo de 2014, 18:25:31
ok lo voy a probar y os comento, muchas gracias por la ayuda

saludos