嵌入式开发者社区

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

作者: zhaohui293    时间: 2014-10-31 17:01
标题: 关于RS485控制引脚
本帖最后由 zhaohui293 于 2014-10-31 17:05 编辑
/ L  {2 w; J. }, l  q; e  c. x8 g5 v6 p. p0 \' D  \
我的板子修改了RS485收发控制引脚,不知道在驱动的哪个位置修改RS485控制引脚,在8250.c的哪个位置,2 P* f. z( e' y
$ V! S1 m. A. G- j1 S0 _$ k

& N) j, u  \0 U2 e9 g& L
作者: teddy    时间: 2014-10-31 17:21
您好!tronlong提供的最新的linux3.3内核已经对uart0和uart1做了rs485功能的支持,uart2默认为启动串口。如何想使能uart0和uart1 rs485的功能,只需在menuconfig将485使能。
! P5 x7 S  {* G  I0 H# A  *** DaVinci Core Type ***                                                              | |7 N1 n7 a8 j, p1 K: m
  | |                    [ ] DaVinci 644x based system                                                              | |
5 S+ D4 y1 z0 f3 Q( O0 O  | |                    [ ] DaVinci 355 based system                                                               | |/ T, Z1 t- h* G% B0 ~3 H9 K
  | |                    [ ] DaVinci 646x based system                                                              | |
9 A- Q# v$ p0 `) o* k+ C) d. f  @+ Q  | |                    [ ] DA830/OMAP-L137/AM17x based system                                                     | |; r$ [2 G/ S3 O. {5 z6 x
  | |                    [*] DA850/OMAP-L138/AM18x based system                                                     | |
& u! r2 ]2 b5 V# y  | |                    [ ]   Enable UART1 flow control                                                            | |9 X/ I* L3 |7 |2 ^% [9 w" T4 I
  | |                    [ ]   Enable UART0 RS485 funcation                                                         | |
* o& D7 M. i' [5 ^  t2 w  ^  | |                    [*]   Enable UART1 RS485 funcation . S# F+ Z3 I3 ]# s

+ Y7 _0 e- q* ?8 x1 c1 L想了解详细的功能实现,也可以查看8250.c文件里面的;
& s, A2 }6 e; C/ l" A9 Nvoid serial8250_tx_chars(struct uart_8250_port *up)" ?( k( S" f9 m
                return;2 H+ D* X  q# S! Z* ?
        }# c, _" N* D( g' [$ C
/ O- D4 p- [& A# v' L/ N
+#if 14 M% ]' z, G- t0 S7 t
+       /* The funcation with RS485 flow control */
( u+ D- b* f: m+ [/ |5 i) z+       if (up->port.private_data) {! O. |7 ~6 u" u& b* F. B( K3 w
+               struct serial8250_flow_ctrl *flow_ctrl_p;9 x3 I/ v) e. V/ D' w
+               flow_ctrl_p = up->port.private_data;4 K% C, Q7 B: t# h% x
+6 J" c  A: J9 }% M$ o
+               if (flow_ctrl_p->gpio) {
4 G6 |" P3 _8 p2 s0 R+                       gpio_set_value(flow_ctrl_p->gpio, 1);
0 A% ?% ^  W! t- t4 c/ @8 |+                       ndelay(50); /* Propagation delay >= 50ns */
! g3 L% f. V6 ]/ o: M+               }
. y9 O$ s2 n( @& g7 ]% G+       }
, V, j5 e7 R) m# j% I+#endif
3 |& {) t% d& |  B3 C! n2 F希望对您有帮助。  k: i& C# d3 l. ]* t

作者: zhaohui293    时间: 2014-10-31 17:28
你说的serial8250_tx_chars函数没有你下面写的部分啊; Z  o: s! r% j% r" ]' a( J
9 Q& y3 K8 R0 [* }# ]% x/ G; e- d% ?

作者: teddy    时间: 2014-10-31 18:07
请跟创龙的技术支持获取最新的linux3.3内核源码。  [  B3 \  J( {4 J

作者: 2532609929    时间: 2014-10-31 19:35
zhaohui293 发表于 2014-10-31 17:28+ j% b' Q% j! s- f1 N
你说的serial8250_tx_chars函数没有你下面写的部分啊
$ I6 v0 [  g1 I; K% @* H
在最新的源码中有的,我记得发过给你的了,请使用最新的内核源码
* q3 Z, W2 q* v' q6 _$ v/ ~3 s* {
作者: sddxzzf    时间: 2014-11-18 17:20
提示: 作者被禁止或删除 内容自动屏蔽




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