|
$ [* u" q5 C" c) q1 x( Q您好,使用OMAPL138-EVM开发板,按照《2-1开发板快速体验》,在内核编译时把"System Type -> TI DaVinci Implementations->Enable UART1 RS485 funcation"选项选上,并重新编译内核,然后使用编译后的内核启动系统。发现开发板485口能发数据,但是不能接收数据。6 Q9 m. l9 F# s, v e9 y: B
. J& q# _* `, @+ [% y/ ~我的qt程序如下:0 P4 p* w* C; E+ L' R
struct termios setting;
' \( k1 J( p, c7 Q fd = open("/dev/ttyS1", O_RDWR);1 K+ h8 I8 [: I: G8 a' M; G
if (fd == -1) {
$ W( s1 @5 B0 c, f- M- K5 ] LOG_INFO("open /dev/ttyS failure ...");
8 }% h& d9 l Y. d' ? return ;
( p" n3 I/ Y- \- j }
( S. h+ g1 U8 X ~ LOG_INFO("open /dev/ttyS1 success ...");
+ I5 S+ N2 a8 L1 w( r8 Z tcgetattr(fd, &setting);
+ U+ d( u4 {, v+ e$ R: [. ~ speed_t speed;
9 M) i+ U8 u; ~7 v speed = btr;% t" v( Y3 _0 K( k8 b* c
$ Q) {: e" ]3 W( P cfsetispeed(&setting, speed);
J' v8 _& W" b. C3 a! x cfsetospeed(&setting, speed);
6 _ d. Q5 J$ z { cfmakeraw(&setting);
: q1 A2 s4 b* e5 r! U setting .c_cflag |= CS8;
' r2 H/ \: @) A5 A/ z+ ? setting.c_cflag &= ~PARENB;
. b: R1 X- @: l* `$ d setting.c_iflag &= ~INPCK;- K2 V, O2 T5 G" d% U
setting.c_cflag &= ~CSTOPB;
* t, o. D9 w9 Z tcflush(fd, TCIFLUSH);/ P* ~6 i5 t5 i% a% N/ C- q6 ^+ [
setting.c_cc[VTIME] = 0;
, J* B( I- f6 B2 W5 e) y$ i setting.c_cc[VMIN] = 0;0 u8 K8 [* H4 n+ N# G
tcsetattr(fd, TCSANOW, &setting);
( ]6 Y/ x6 N8 v5 j4 R
8 f# q7 m% w; p int ret;
3 \1 a1 M5 y; ^, `; f char *buff = {"hello,485write ok"} ;
: @4 H; K; v( K$ k+ a0 ~( N ret = write(fd, buff, 17);* ~& r6 {( z/ {0 c3 A5 L- s
( Z4 b$ e: g, _
char buff1[256] ;0 d$ {9 \" }8 l1 W. U. A+ s+ _
while(1){
( E+ S* J. h0 q, h
: G6 |. j' M8 t ret = read(fd, buff1, 255);. H; x; Z, D# X0 J( i$ R8 F
if(ret > 0){' d' z, h4 `1 X" G
( @8 b+ d4 ? F( W4 H/ G, }2 e4 @
write(fd, buff1, 5);
2 S3 c& N' {/ {# Q9 N% o* H
. M/ Y) M/ p5 j5 }* C. l LOG_INFO("rs485 receiver ret = %d " , ret);
5 l0 Q' e! m# N' q M, F1 |' I( r. B C; ?+ |1 w: V
}
`+ o7 v$ U9 T! M$ D7 {- R, X5 j
+ D1 S: V0 w) t3 n, |8 D }
1 S1 v# D3 b( P8 A V+ e% S/ F0 A" a) F& W# N
我使用串口调试助手,开发板能发送数据,调试助手能收到”hello,485write ok“,但是调试助手发的数据开发板却没有收到。并且用示波器可以看到UART1_RXD管脚的数据。请问为什么?# S0 i9 T$ W) F) H3 b, K+ d
2 h v& I& q* M
0 w5 V# ]/ a& {$ Q# `7 q% {$ M* Q1 y& a8 ~) M$ C
|
|