Autor Tema: Como puedo enviar multiples bytes por serial en CCS?  (Leído 2220 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado cocu3

  • PIC12
  • **
  • Mensajes: 77
Como puedo enviar multiples bytes por serial en CCS?
« en: 10 de Octubre de 2009, 21:34:42 »
Buenas noches, tengo la siguiente duda, quiero poder enviar varios bytes por serial, algo asi:

...
      datout1 = 0X01; printf("%C",datout1);
      datout1 = 0X02; printf("%C",datout1);
      datout1 = 0X03; printf("%C",datout1);
      datout1 = 0X04; printf("%C",datout1);
      datout1 = 0X05; printf("%C",datout1);
      datout1 = 0X06; printf("%C",datout1);
      datout1 = 0X07; printf("%C",datout1);
      datout1 = 0X08; printf("%C",datout1);
      datout1 = 0X09; printf("%C",datout1);
      datout1 = 0X0A; printf("%C",datout1);
...

pero mi pregunta es si hay una manera mas eficiente que no utiice tantas lineas de codigo, ya que tengo que enviar datos de mayorr numero, mas de 50 :shock: :shock: :shock:

saluds

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: Como puedo enviar multiples bytes por serial en CCS?
« Respuesta #1 en: 10 de Octubre de 2009, 21:47:05 »
Hola.

Puedes meter todos los datos en un bufer[50] y enviar como un string:

Código: [Seleccionar]
printf("%s", bufer);
El papel lo aguanta todo

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: Como puedo enviar multiples bytes por serial en CCS?
« Respuesta #2 en: 10 de Octubre de 2009, 23:23:38 »
Usando un for y putc sería también más rápido...

Código: [Seleccionar]
int8 buffer[50];

...

for(i=0; i<50; ++i)
   putc(buffer[i]);

O usando tu ejemplo...

Código: [Seleccionar]
      datout1 = 0X01; putc(datout1);
      datout1 = 0X02; putc(datout1);
      datout1 = 0X03; putc(datout1);
      datout1 = 0X04; putc(datout1);
      ...


 

anything