嵌入式开发者社区

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

作者: zhaohui293    时间: 2014-10-31 17:01
标题: 关于RS485控制引脚
本帖最后由 zhaohui293 于 2014-10-31 17:05 编辑
: w9 e# J# a( a4 d& Z" u* Z4 n$ y& ^3 D
我的板子修改了RS485收发控制引脚,不知道在驱动的哪个位置修改RS485控制引脚,在8250.c的哪个位置,
5 j& l3 y: U( s3 G; o6 L
9 g2 p' F& {# c/ I; P0 ?# N* A8 J2 ~/ M/ x. g( b# M

作者: teddy    时间: 2014-10-31 17:21
您好!tronlong提供的最新的linux3.3内核已经对uart0和uart1做了rs485功能的支持,uart2默认为启动串口。如何想使能uart0和uart1 rs485的功能,只需在menuconfig将485使能。' x) x/ P! L. K& \) U( C6 \! _
  *** DaVinci Core Type ***                                                              | |) T. }' x% x& V* T7 ^# |
  | |                    [ ] DaVinci 644x based system                                                              | |% F$ p$ }6 S* i% f
  | |                    [ ] DaVinci 355 based system                                                               | |
4 p+ `/ U& [' x  | |                    [ ] DaVinci 646x based system                                                              | |
+ I+ ^+ m6 D" _8 \/ f  | |                    [ ] DA830/OMAP-L137/AM17x based system                                                     | |- M& H" k& M  a% T  v. @
  | |                    [*] DA850/OMAP-L138/AM18x based system                                                     | |/ s1 Q) w/ y: `# W8 ~
  | |                    [ ]   Enable UART1 flow control                                                            | |
; w+ B" N5 H- p4 G# m1 G$ i0 R( }) u  | |                    [ ]   Enable UART0 RS485 funcation                                                         | |
( `" C7 P$ T1 X2 a7 F' O  | |                    [*]   Enable UART1 RS485 funcation ) z% k& C: w3 M+ a3 i, A; T$ Z1 f$ ]% q7 ]

8 I, H5 G& `& H' I& R想了解详细的功能实现,也可以查看8250.c文件里面的;
7 b$ }" U( {4 g+ U# ]  \. g; k( R) fvoid serial8250_tx_chars(struct uart_8250_port *up)
6 H; T' z# h& P) o/ h, c                return;: R8 M8 J$ g1 m( w
        }
  ^" j  n* {+ V0 J9 K4 O& ?
2 T6 V2 G, ~% l/ H5 l3 r/ X, m$ |+#if 1* q, F: c: ?0 [. H, M
+       /* The funcation with RS485 flow control */
; u. V" ^* R1 E& y  n! d+       if (up->port.private_data) {( D! I! _- ^/ W5 t0 ]3 T
+               struct serial8250_flow_ctrl *flow_ctrl_p;
0 g- B" v: E' u7 L, `" a3 Q6 _( c+               flow_ctrl_p = up->port.private_data;
8 q) g8 V: K. w1 u" H% ^+( M* I1 c: |2 u' Z" K# D
+               if (flow_ctrl_p->gpio) {
2 z% Q: x- v3 T. V0 V+                       gpio_set_value(flow_ctrl_p->gpio, 1);$ S1 n' \2 K2 r0 _
+                       ndelay(50); /* Propagation delay >= 50ns */" ~% C6 k" B3 w
+               }
% u5 D9 U. z# Q* e/ T8 p2 }+       }
4 ~1 u8 A8 O) {5 }% Z2 z+#endif
  P7 A" f- n7 F' F" w9 t' I  C% w希望对您有帮助。
' m; m, J" X8 D8 V
作者: zhaohui293    时间: 2014-10-31 17:28
你说的serial8250_tx_chars函数没有你下面写的部分啊: X9 _, q- G3 _! C
2 {' O! r  C. w8 w

作者: teddy    时间: 2014-10-31 18:07
请跟创龙的技术支持获取最新的linux3.3内核源码。
9 e1 |7 K  k9 j" K2 R) o
作者: 2532609929    时间: 2014-10-31 19:35
zhaohui293 发表于 2014-10-31 17:28! ]' L4 M6 s8 o: A5 ^. T' \
你说的serial8250_tx_chars函数没有你下面写的部分啊

! d! K3 a2 Q8 P/ k/ m6 A  {在最新的源码中有的,我记得发过给你的了,请使用最新的内核源码
& ^- r# e6 w. }4 l$ M9 b1 m
作者: sddxzzf    时间: 2014-11-18 17:20
提示: 作者被禁止或删除 内容自动屏蔽




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