Not work on ARM board EM2440

smith
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>


void send(int fd, char *string){
int num = strlen(string);
int n = write(fd, string, num);
printf("Sent: %s, %d chars\n", string, n);
}

int main(){
int fd;
int size;
char buff[255];
fd = open("/dev/ttyUSB0", O_RDWR | O_NOCTTY | O_NDELAY);
if (fd == -1){
printf("Can't open port!\n");
return 1;
}
else {

do
{
buff[0] = '\0';
send(fd, "AT\r\n");
size = read(fd, buff, 255);
printf("GOT: %s\n",buff);
sleep(1);
}while(buff!="ERROR");
return 0;
}
}

is work on x86 machine but not ARM board i am compile using arm-linux-gcc
filename.c but not work??