嵌入式开发者社区

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

作者: zhaohui293    时间: 2014-10-31 17:01
标题: 关于RS485控制引脚
本帖最后由 zhaohui293 于 2014-10-31 17:05 编辑 2 f6 r# V; q" [& r  Q6 |- X% x
5 h: E$ [. S9 `; O
我的板子修改了RS485收发控制引脚,不知道在驱动的哪个位置修改RS485控制引脚,在8250.c的哪个位置,. Y$ R: c6 H& L6 ]" S

$ b2 X, {8 ^0 s& }( Z, P* [8 J2 A1 `5 ?; c' t

作者: teddy    时间: 2014-10-31 17:21
您好!tronlong提供的最新的linux3.3内核已经对uart0和uart1做了rs485功能的支持,uart2默认为启动串口。如何想使能uart0和uart1 rs485的功能,只需在menuconfig将485使能。- h& g* V. Z8 x7 R/ p* w" l
  *** DaVinci Core Type ***                                                              | |
7 O) C& w/ ^+ ?' m- P  | |                    [ ] DaVinci 644x based system                                                              | |
/ |& Z- m$ U9 [: r  | |                    [ ] DaVinci 355 based system                                                               | |
) V3 @# n8 i8 C6 S, O  | |                    [ ] DaVinci 646x based system                                                              | |
+ m$ |) @! F& C5 Y  A0 ?  | |                    [ ] DA830/OMAP-L137/AM17x based system                                                     | |
3 V) i$ M" ?2 I- T  u0 s  | |                    [*] DA850/OMAP-L138/AM18x based system                                                     | |
6 z: t  z: U8 j' d0 i5 B  | |                    [ ]   Enable UART1 flow control                                                            | |$ C4 B" Z9 @$ `$ M8 }
  | |                    [ ]   Enable UART0 RS485 funcation                                                         | |
5 K+ C+ D) Q; j  x# Z% w% g1 o7 H7 Z  | |                    [*]   Enable UART1 RS485 funcation 3 o: N- N/ z6 e+ w

- d: O$ N: E4 L6 s- u# E8 ~想了解详细的功能实现,也可以查看8250.c文件里面的;
; {' t$ \! O8 F9 }# `. [8 O4 r( w: Evoid serial8250_tx_chars(struct uart_8250_port *up)4 J# f. P/ j* q8 S
                return;- J& r3 O$ y& `4 A0 I! }8 U, F
        }
1 D/ y8 b; _- K$ b
. H! p3 Q0 s; A4 ^  l9 Z4 J+#if 1
  O. V" O# ^' ]* p' N& n! n: p+       /* The funcation with RS485 flow control */0 C4 e! P  h( _1 ]9 |1 a
+       if (up->port.private_data) {
- y8 Y8 f+ {% `/ B" E% t( f+               struct serial8250_flow_ctrl *flow_ctrl_p;$ h) k5 S2 C3 [1 a. G) C
+               flow_ctrl_p = up->port.private_data;
, `, r5 ]  t+ ?7 @! D/ z- X9 Q++ z# D9 _% F3 T( {* |0 u9 ?; N
+               if (flow_ctrl_p->gpio) {) \1 B3 C4 C9 z0 S
+                       gpio_set_value(flow_ctrl_p->gpio, 1);
% [* X; a& S( M. e+                       ndelay(50); /* Propagation delay >= 50ns */
; b, l% J9 s2 L+               }. B2 V9 R' f! o+ [- B, O
+       }
" k' Q  f! k. a6 o) ~9 ^+#endif
* D% W% g/ g5 u( j4 o% Q希望对您有帮助。/ G. F- V4 H0 L9 ]$ {" ^# H1 w1 C

作者: zhaohui293    时间: 2014-10-31 17:28
你说的serial8250_tx_chars函数没有你下面写的部分啊
9 O* F5 C1 I& F0 ]7 P
# D( |( {( I' B
作者: teddy    时间: 2014-10-31 18:07
请跟创龙的技术支持获取最新的linux3.3内核源码。* j- d( E* Q" V" P# i' W7 V

作者: 2532609929    时间: 2014-10-31 19:35
zhaohui293 发表于 2014-10-31 17:28. B$ ]  D  c0 H5 a/ T
你说的serial8250_tx_chars函数没有你下面写的部分啊

2 z/ \1 D, |/ F! L, d& T在最新的源码中有的,我记得发过给你的了,请使用最新的内核源码
3 w0 w! v/ `6 ~7 n9 q7 G! @
作者: sddxzzf    时间: 2014-11-18 17:20
提示: 作者被禁止或删除 内容自动屏蔽




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