嵌入式开发者社区

标题: 关于RS485控制引脚 [打印本页]

作者: zhaohui293    时间: 2014-10-31 17:01
标题: 关于RS485控制引脚
本帖最后由 zhaohui293 于 2014-10-31 17:05 编辑 : x2 p  e  {2 b+ ~( n

3 {3 W! P) Y" ^7 s0 M我的板子修改了RS485收发控制引脚,不知道在驱动的哪个位置修改RS485控制引脚,在8250.c的哪个位置,
, Y$ i6 Z) F( H6 v) V7 I+ E; y
9 y) n8 K" b, n' B/ o
+ K5 r. {8 I9 I  E4 @: V* D
作者: teddy    时间: 2014-10-31 17:21
您好!tronlong提供的最新的linux3.3内核已经对uart0和uart1做了rs485功能的支持,uart2默认为启动串口。如何想使能uart0和uart1 rs485的功能,只需在menuconfig将485使能。7 C1 T" `) L/ Z5 I3 W+ E
  *** DaVinci Core Type ***                                                              | |
( I9 ^) c" }, t1 c! ]& L  | |                    [ ] DaVinci 644x based system                                                              | |
2 V! Z5 c& X' U) \  | |                    [ ] DaVinci 355 based system                                                               | |
1 J9 W6 \' V& U! x7 p& T0 c% [  | |                    [ ] DaVinci 646x based system                                                              | |
  h7 r; g: B( V! ]  | |                    [ ] DA830/OMAP-L137/AM17x based system                                                     | |$ F2 J7 b9 ~$ p$ Y
  | |                    [*] DA850/OMAP-L138/AM18x based system                                                     | |8 q  X* C, u* R: T
  | |                    [ ]   Enable UART1 flow control                                                            | |7 d. ]6 I. N3 G+ d& C- {" Q
  | |                    [ ]   Enable UART0 RS485 funcation                                                         | |
% X' S8 n$ ?# R+ [8 z" v  | |                    [*]   Enable UART1 RS485 funcation 8 g! T4 B6 r, g4 Q
# ]& X# z$ [. b& U8 `4 ~5 }: J4 C
想了解详细的功能实现,也可以查看8250.c文件里面的;" S# }. R7 F0 E$ z
void serial8250_tx_chars(struct uart_8250_port *up)
9 ]" z  ]; J$ i2 J                return;+ M, l% P, r0 a& o3 a! w
        }- [+ R& E( ]/ x& N& ?6 b( u( s7 s

$ A2 M. g2 y1 ?  `# {: ]! g. f# Q. U+#if 1# B# s  ?% a! K. ^
+       /* The funcation with RS485 flow control */: R& H1 B' Y7 q$ r
+       if (up->port.private_data) {2 n: J* s/ c0 E5 |
+               struct serial8250_flow_ctrl *flow_ctrl_p;
* ]5 y/ [( c& |  }, }6 M/ L8 S/ c+               flow_ctrl_p = up->port.private_data;
) W) c' _# b& i* A% ?' a+7 F& N3 K- A: e! k/ v
+               if (flow_ctrl_p->gpio) {' {' \3 ]4 I5 i" |& `- P: g
+                       gpio_set_value(flow_ctrl_p->gpio, 1);& C2 [5 g+ r' x0 z" r6 a4 `9 l" f
+                       ndelay(50); /* Propagation delay >= 50ns */
+ j3 c- L. J" m8 r( }# @4 \; K+               }. p2 Z7 @- O( p& H% o
+       }6 @( {$ f& T+ j, b( Z3 H; U
+#endif
( z2 k$ Z2 ]9 J2 l/ [; ?5 [' {希望对您有帮助。3 [( M* c, f% y5 k

作者: zhaohui293    时间: 2014-10-31 17:28
你说的serial8250_tx_chars函数没有你下面写的部分啊
& ~* Q9 [( ]* @1 a! a
: _5 O: M0 ~2 x
作者: teddy    时间: 2014-10-31 18:07
请跟创龙的技术支持获取最新的linux3.3内核源码。& u8 R' X  d& e. U2 T9 F1 J

作者: 2532609929    时间: 2014-10-31 19:35
zhaohui293 发表于 2014-10-31 17:28
; O0 k7 G7 H) {7 ~( N/ p你说的serial8250_tx_chars函数没有你下面写的部分啊

$ p; c) ~1 s7 L1 `5 v" P在最新的源码中有的,我记得发过给你的了,请使用最新的内核源码3 q: b2 S3 B/ _  ^* Z9 u6 T7 i3 p

作者: sddxzzf    时间: 2014-11-18 17:20
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4