嵌入式开发者社区

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

作者: zhaohui293    时间: 2014-10-31 17:01
标题: 关于RS485控制引脚
本帖最后由 zhaohui293 于 2014-10-31 17:05 编辑
3 y& |3 F6 }7 p! t& r3 s0 X8 u- F/ k* v
我的板子修改了RS485收发控制引脚,不知道在驱动的哪个位置修改RS485控制引脚,在8250.c的哪个位置," I* J5 x/ F, o- @1 t$ ~1 R

# n% s" z5 y9 \# o# ^) c- x( U
) U( a1 w& Q9 ?  u+ `
作者: teddy    时间: 2014-10-31 17:21
您好!tronlong提供的最新的linux3.3内核已经对uart0和uart1做了rs485功能的支持,uart2默认为启动串口。如何想使能uart0和uart1 rs485的功能,只需在menuconfig将485使能。; v, c/ Y) J: |- d0 s* Z
  *** DaVinci Core Type ***                                                              | |
; w  {- A. \, ~2 }* T! |: x  r, S  | |                    [ ] DaVinci 644x based system                                                              | |
$ o2 Z  @8 D- g/ q7 t" @  | |                    [ ] DaVinci 355 based system                                                               | |& k  L2 C" r* v
  | |                    [ ] DaVinci 646x based system                                                              | |
8 m6 {) o& _7 J3 P  | |                    [ ] DA830/OMAP-L137/AM17x based system                                                     | |
3 c3 [7 f* q9 V$ ^4 l+ L1 G% G8 f  | |                    [*] DA850/OMAP-L138/AM18x based system                                                     | |; Z1 ^  s1 e5 \
  | |                    [ ]   Enable UART1 flow control                                                            | |
  |5 l1 N# `# j' j1 F; ?  | |                    [ ]   Enable UART0 RS485 funcation                                                         | |
# `* V+ r! Q. b# {% A/ D  | |                    [*]   Enable UART1 RS485 funcation : t* G; B( A) @7 `7 s' @! b) j

. z/ z6 g) t( M2 s: @4 K% {想了解详细的功能实现,也可以查看8250.c文件里面的;8 l* O: e/ q( t  N
void serial8250_tx_chars(struct uart_8250_port *up)( y, ]% ]/ ]: g1 K4 k. n0 y) l
                return;
% y+ \! w( t1 V# o+ k( k9 k/ S        }+ [  K3 [, B+ N, J! s2 y5 D$ [  `

& m1 j. }; Y" F8 o* Y3 G+#if 13 ?0 n3 I- Q8 J) L& Y6 Q
+       /* The funcation with RS485 flow control */( {# L' ?1 _( e2 y  Z/ ?- \3 r
+       if (up->port.private_data) {; j7 y. c" `* p" U) `+ i; t
+               struct serial8250_flow_ctrl *flow_ctrl_p;" N4 A( N$ B$ f9 U/ D
+               flow_ctrl_p = up->port.private_data;0 y6 e' ~5 g! \5 R" `6 N
+2 t4 p* C  P/ ^2 z- J% t6 g
+               if (flow_ctrl_p->gpio) {, v6 R+ T( F" Z
+                       gpio_set_value(flow_ctrl_p->gpio, 1);# x' @6 H' @& n, j  b& T
+                       ndelay(50); /* Propagation delay >= 50ns */# D) J7 Y/ J$ ]1 \& q8 L5 W
+               }
* [$ e- q+ y" u$ z+       }
- ]! Q; `8 k. z4 K+#endif: {+ R. a& i' G+ G
希望对您有帮助。  ]' ]% u. s' A! b" x  y

作者: zhaohui293    时间: 2014-10-31 17:28
你说的serial8250_tx_chars函数没有你下面写的部分啊7 a1 ?8 w1 j8 Q- Q6 |& T
1 h0 G. i$ F9 `9 \

作者: teddy    时间: 2014-10-31 18:07
请跟创龙的技术支持获取最新的linux3.3内核源码。% y: ~0 a: C, k  g/ A

作者: 2532609929    时间: 2014-10-31 19:35
zhaohui293 发表于 2014-10-31 17:284 ~# l7 ]2 l- u6 w+ u! h
你说的serial8250_tx_chars函数没有你下面写的部分啊
0 w  K6 N+ ~0 }8 c5 ]/ `
在最新的源码中有的,我记得发过给你的了,请使用最新的内核源码! v  {* O' V/ j$ K1 s+ O6 p3 W2 `

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




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