I only get a case with insert several zero on special platform a few years ago
Finally , I can only use ascII string convert first .then transfer over uart and convert back in receiver I dont know if this is related with chipset , This case is only happen on QNX platform 6.4.1 2015-02-11 11:57 GMT+08:00 Przemek Klosowski <przemek.klosow...@gmail.com>: > I am not sure if I understand--please clarify. > > On Sun, Feb 8, 2015 at 11:25 AM, oli4gate <oli4.depoor...@gmail.com> > wrote: > > Hi, > > > > over the uart port I would like to send out following hexadecimal string > > C5C301000000000076. > ... > > unsigned char tx_buf[9] = > > {0xC5,0xC3,0x01,0x00,0x00,0x00,0x00,0x00,0x76}; //unsigned is 0<>255 > signed > > is -128<>127 > > unsigned char *p_tx_buf = &tx_buf[0]; //points to the first element > of > > the tx_buf > > > > int fd; > > > > //open uart2 for tx/rx, not controlling device > > if((fd = open("/dev/ttyO4", O_RDWR | O_NOCTTY | O_NDELAY)) < 0) > > printf("Unable to open uart2 access .\n"); > > else > > printf("uart2 opened succesfully.\n"); > > > > if(write(fd,&tx_buf,sizeof(tx_buf))<0) > > Ok, so you are not sending the hex string, but rather the binary > values. I never ran it this way so I am not sure what might prevent it > from working this way, but the following stack overflow discussion > might be helpful: > http://stackoverflow.com/questions/506805/binary-data-over-serial-terminal > > > printf("ERROR : tx not send.\n"); > > else > > for(unsigned int i = 0; i < sizeof(tx_buf); ++i) > > { > > std::cout << std::hex << (int)tx_buf[i]; > > } > > printf(" : tx send \n"); > > You do realize that the 'else' block contains just the for() {} loop > and not the printf statement? > (your indentation seems to indicate otherwise) I recommend using > curly braces always even if the conditional block has just one > statement. > > -- > For more options, visit http://beagleboard.org/discuss > --- > You received this message because you are subscribed to the Google Groups > "BeagleBoard" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to beagleboard+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.