Jump to content

justlovecoding

Members
  • Content Count

    1
  • Joined

  • Last visited

Community Reputation

0 Neutral
  1. Hello, As the ASUS Tinker Board has so many wonderful features and direct access of lower level peripherals, I've decided to migrate my development from raspberry Pi to Tinker board. Right now, I'm starting with a basic UART code which sends and receive some strings serially but unfortunately it is not working as expected. The UART I'm trying to use UART1 (Pin number 8 and 10). Right now, if (serialDataAvail(fd)) is getting true every single time. After reading the data serialGetchar(fd), I found out that, the RX pin is in low state (receiving 255 continuously). Although, my code has no error, but I'll still add it here. #include <stdio.h> #include <string.h> #include <errno.h> #include <wiringPi.h> #include <wiringSerial.h> int main () { int fd,inCount = 0 ; char inBuff[500],OutBuff[500]; if (wiringPiSetup () == -1) { fprintf (stdout, "Unable to start wiringPi: %s\n", strerror (errno)) ; return 1 ; } else printf("wiringPi: init successfull! \n\r"); if((fd = serialOpen ("/dev/ttyS0", 115200)) < 0) { fprintf (stderr, "Unable to open serial device: %s\n", strerror (errno)) ; return 1 ; } else printf("Serila: /dev/ttyS0 successfully opened! \n\r"); while (1) { if (serialDataAvail(fd)) { inBuff[inCount] = serialGetchar(fd); if ( inBuff[inCount] == '\n') { printf("RX String=%s"); memset(inBuff,'\0',inCount); inCount = 0 ; } inCount++; if ( inCount == 500) { inCount = 0; memset(inBuff,'\0',inCount); } } } } The reply of "dmesg | grep tty" is attached below.
×
×
  • Create New...