Autor Tema: Apoyo compañeros, leer cadena por puerto serie y mostrarla por lcd  (Leído 1980 veces)

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

Desconectado carlos.r.89

  • PIC10
  • *
  • Mensajes: 4
hola compañeros, soy egresado de ing. electronica y tengo un problemita, me eh enpolvado con este tipo de programacion ya que ultimamente solo eh utilizado PLC´s y sistemas industriales, pero trabajo en un aplicacion con un pic 18f2550 y ccs.

RedPic espero puedas ayudarme para hacer mas sencillo tu codigo.

Lo que nececito es leer una cadena de caracteres y mostrarla por un lcd.

Bueno para acabar pronto, nececito leer una cadena de aprox. 20 caracteres ejemplo:    qwertyuiopasdfghjklñ   y esto tenerlo como una sola variable ejemplo: Recibido=qwertyuiopasdfghjklñ;

me pudieras ayudar, o alguien pudiese ayudarme por favor.

tengo software originales que pudiera compartir. por favor compañeros.

Desconectado rivale

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1707
Re: Apoyo compañeros, leer cadena por puerto serie y mostrarla por lcd
« Respuesta #1 en: 01 de Marzo de 2014, 01:45:09 »
Podrias poner el código que lleva hecho para poder ayudarte
"Nada es imposible, no si puedes imaginarlo"

Desconectado carlos.r.89

  • PIC10
  • *
  • Mensajes: 4
Re: Apoyo compañeros, leer cadena por puerto serie y mostrarla por lcd
« Respuesta #2 en: 02 de Marzo de 2014, 02:00:58 »
Gracias por contestar, pero bien ya solucione el problema, pero espero me puedas ayudar con lo siguiente.

miratengo un char por ejemplo=121334ubrrrhshsjjs1234+1234.

yo de ese char quisiera sacar solo lo que esta despues del +.osea 1234.

yo lo que quise hacer es de esta forma, pero no funciona:

char cmd=1234+1234

  mensaje[1]==cmd[7];
  mensaje[2]==cmd[8];
  mensaje[3]==cmd[9];
  mensaje[4]==cmd[10];

COMO PUEDO SOLUCIONARLO




Desconectado Geo

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 922
    • Mexchip
Re: Apoyo compañeros, leer cadena por puerto serie y mostrarla por lcd
« Respuesta #3 en: 03 de Marzo de 2014, 00:13:51 »
Una forma es recorrer cada caracter de la cadena hasta que encuentres el caracter '+', a partir de allí ya tienes la posición y puedes copiar el resto a otra variable.
Otra posibilidad, si tienes acceso a la biblioteca string, utilizar algo como esto:

Código: C
  1. char cmd[] = "1234+5678";
  2.         char mensaje[15];
  3.         char* ptr;
  4.  
  5.         // buscar el primer "token"
  6.         ptr = strtok(cmd, "+");
  7.  
  8.         if (ptr == NULL)
  9.         {
  10.                 printf("No se encontró el caracter '+'.\n");
  11.         }
  12.         else
  13.         {
  14.                 // segundo "token"
  15.                 ptr = strtok(NULL, "+");
  16.                 if (ptr == NULL)
  17.                 {
  18.                         printf("No se recibió mensaje.\n");
  19.                 }
  20.                 else
  21.                 {
  22.                         strcpy(mensaje, ptr);
  23.                         printf("mensaje: %s\n", mensaje);
  24.                 }
  25.         }
La imaginación es el límite.
Visita mi blog, en inglés o en español :).
Mini curso de introducción a VHDL en MEXCHIP :-/