Bạn nhấn phím F1 xem cách sử dụng lệnh Atoi() nhé !!!
Code:
#int_RDA
void ngat_RDA()
{
if (0 != kbhit())
{
data = fgetc();
if (data==':')
dem=0;
else
dem++;
luukytu[dem]=data;
putc(data);
}
}
Bạn chỉ putc(data) khi đã nhận được ký tự kết thúc thôi nhé.. trên máy tính bạn gửi 1 chuỗi liên tục xuống mà PIC cũng đồng thời gửi ngược lại...=>xung đột đấy nhé..
Mình góp ý bạn viết như thế này :
Code:
#INT_RDA
void ngat_RDA()
{
char data;
if(kbhit())
{
data=getc();
if(data=='#') // Neu da nhan duoc byte ket thuc thi tien hanh set co Flag //
{
mangdata[index]=data;
index=0;
flag=1; // co bao nhan duoc byte ket thuc //
putc(data); //bao da nhan duoc chuoi thanh cong //
}
else // Neu chua nhan duoc byte ket thuc thi dua gia tri data vao mangdata[index] //
{
mangdata[index]=data;
index++;
}
}
}
Trong main() bạn viết
Code:
....
while(flag==1)
{
flag=0;
...cho hiển thị chuỗi nhận được ở đây...
mangdata=0;
}
....