嵌入式开发者社区

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

作者: zhaohui293    时间: 2014-10-31 17:01
标题: 关于RS485控制引脚
本帖最后由 zhaohui293 于 2014-10-31 17:05 编辑
1 b0 ~1 c" W( c! `- W+ M6 o5 M( m0 W; M8 i& Z' T: n
我的板子修改了RS485收发控制引脚,不知道在驱动的哪个位置修改RS485控制引脚,在8250.c的哪个位置,
8 D: J) K9 @0 m# F% `
7 f( f2 _8 r4 o* w* q) r
8 F8 c0 \  g$ `# o; Q
作者: teddy    时间: 2014-10-31 17:21
您好!tronlong提供的最新的linux3.3内核已经对uart0和uart1做了rs485功能的支持,uart2默认为启动串口。如何想使能uart0和uart1 rs485的功能,只需在menuconfig将485使能。- ~' J% x' `5 s+ O
  *** DaVinci Core Type ***                                                              | |9 Q4 s% M# p9 N$ r
  | |                    [ ] DaVinci 644x based system                                                              | |
& K( e4 K! K- h; {  | |                    [ ] DaVinci 355 based system                                                               | |/ ^4 e4 V2 @+ Z0 W* c" s1 V
  | |                    [ ] DaVinci 646x based system                                                              | |
* u6 S0 u( j2 n' g+ f/ A" z5 i  | |                    [ ] DA830/OMAP-L137/AM17x based system                                                     | |
) d- W3 [  Q: Z! J  | |                    [*] DA850/OMAP-L138/AM18x based system                                                     | |
# Q# W7 H& n# ^% b  | |                    [ ]   Enable UART1 flow control                                                            | |
  y6 y% Z/ L* h- ^* [7 p3 f  B0 p  | |                    [ ]   Enable UART0 RS485 funcation                                                         | |
) a9 {. y& |* h  H/ y" }. O  | |                    [*]   Enable UART1 RS485 funcation 9 i( `$ ^) ^1 x' }' i; Y" O
7 h2 Q5 Z: ^) r. i
想了解详细的功能实现,也可以查看8250.c文件里面的;
" d' a# ]& t6 M. v# p' \void serial8250_tx_chars(struct uart_8250_port *up)% I. O3 y& Q# O8 p
                return;% T' Z+ J; t, @
        }
; N+ y# C# `% t: o8 X8 L8 h2 }4 r. M7 u" W9 V9 b. P* T3 X; a5 Z9 d2 a
+#if 1
1 T& u; a8 s  o9 Q2 l+       /* The funcation with RS485 flow control */
2 m3 c, n7 X( T! ~! r4 F+       if (up->port.private_data) {* Q2 C) s0 d$ K7 d4 M
+               struct serial8250_flow_ctrl *flow_ctrl_p;
  ]1 I& X3 j' D9 s1 e+               flow_ctrl_p = up->port.private_data;) r! \9 s0 C+ Z, v& Y0 S( e
+
: L% |# j7 @) h0 v3 {, L' a+               if (flow_ctrl_p->gpio) {: g) ^/ ?$ r+ c2 B, t3 j7 Q
+                       gpio_set_value(flow_ctrl_p->gpio, 1);
, Y* z, Z; q3 K- b+                       ndelay(50); /* Propagation delay >= 50ns */* L/ ^, Y6 r( @- F- I- V* t4 l
+               }
1 |  T6 p" w, E$ \$ S0 }+       }
* r8 c& |, ~. E$ n& e+#endif
2 f! W* i' E: t; h& |) T2 J% g希望对您有帮助。% r1 K+ o3 E! G% w' d

作者: zhaohui293    时间: 2014-10-31 17:28
你说的serial8250_tx_chars函数没有你下面写的部分啊
" V; L+ B# k- H* |2 w
/ e; y5 _) T5 k+ Y
作者: teddy    时间: 2014-10-31 18:07
请跟创龙的技术支持获取最新的linux3.3内核源码。
% |" C) ]# H: h$ o4 [
作者: 2532609929    时间: 2014-10-31 19:35
zhaohui293 发表于 2014-10-31 17:28
1 m3 P* |) _7 Y你说的serial8250_tx_chars函数没有你下面写的部分啊

) f2 l& `# X! C, h& E7 P( F2 P8 U# _+ j在最新的源码中有的,我记得发过给你的了,请使用最新的内核源码9 _9 s) g7 I/ b/ Z& r# f

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




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