Ðề tài: giao tiếp rs232
View Single Post
Old 21-10-2008, 01:17 AM   #5
dvnccbmacbt
Đệ tử 4 túi
 
Tham gia ngày: May 2007
Bài gửi: 65
:
các bạn có thể dùng lệnh gets(str) để nhận 1 chuỗi ký tự từ máy tính. sau đó muốn làm j với chỗi đó cũng được. Mình gửi 1 ví dụ mình đã làm và đã chạy ok:
Code:
#INT_RDA
void ngat_serial()
{ 
  gets(str); \\ NHAN CHUOI KY TU

  printf("%s\r",str); \\GUI TRA CHUOI KY TU

 //-------THAO TAC VOI CAC PHAN TU CUA CHUOI----//

  if ((str[strlen(str)-2]=='1')&&(str[strlen(str)-1]=='p'))          fini = 1;
  else if ((str[strlen(str)-2]=='1')&&(str[strlen(str)-1]=='i'))     fini = 2;
  else if ((str[strlen(str)-2]=='1')&&(str[strlen(str)-1]=='d'))     fini = 3;
  else if ((str[strlen(str)-2]=='1')&&(str[strlen(str)-1]=='v'))     fini = 4;
  else if ((str[strlen(str)-2]=='2')&&(str[strlen(str)-1]=='p'))     fini = 5;
  else if ((str[strlen(str)-2]=='2')&&(str[strlen(str)-1]=='i'))     fini = 6;
  else if ((str[strlen(str)-2]=='2')&&(str[strlen(str)-1]=='d'))     fini = 7;
  else if ((str[strlen(str)-2]=='3')&&(str[strlen(str)-1]=='p'))     fini = 8;
  else if ((str[strlen(str)-2]=='3')&&(str[strlen(str)-1]=='i'))     fini = 9;
  else if ((str[strlen(str)-2]=='3')&&(str[strlen(str)-1]=='d'))     fini = 10;
  else if ((str[strlen(str)-2]=='v')&&(str[strlen(str)-1]=='m'))     fini = 11;
  else if ((str[strlen(str)-2]=='a')&&(str[strlen(str)-1]=='m'))     fini = 12;
  else if ((str[0]=='o')&&(str[1]=='n'))     on = 1;
  strncpy(value,str,strlen(str)-2);

 // ----------------
}
Hi vọng giúp được các bạn.
dvnccbmacbt vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn