На ELB-REV4 / dev / ttyS2 представляет UART2, и используйте / dev / ttyS0 для UART0, используйте приведенный ниже код, который выводит 101010, который вы можете видеть на осциллографе, и измеряет скорость передачи данных.
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <termios.h>
#include <ctype.h>
#include <errno.h>
struct termios options;
int fd;
int status;
char buf[10];
unsigned char rx_buffer[10];
int main(void)
{
fd = open("/dev/ttyS2", O_RDWR | O_NOCTTY | O_NDELAY);
if (fd < 0)
{
printf("Error opening serial port\n");
exit(1);
}
bzero( & options, sizeof(options));
options.c_cflag = B3000000 | CS8 | CLOCAL | CREAD | IGNPAR | PARODD | PARENB; //8bit, Odd parity,
tcflush(fd, TCIFLUSH);
tcsetattr(fd, TCSANOW, & options);
while (1)
{
buf[0] = 0x55; //pattern
status = write(fd, & buf[0], 1);
if (status < 0)
{
printf("Write error - %s \n", strerror(errno));
exit(1);
}
usleep(1000000);
printf("Sending 0x55 to /dev/ttyS2 port\n");
}
}