嵌入式开发者社区

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

作者: zhaohui293    时间: 2014-10-31 17:01
标题: 关于RS485控制引脚
本帖最后由 zhaohui293 于 2014-10-31 17:05 编辑
9 Y" n$ p. q. l3 \# [5 m$ W8 n. {4 X* X
我的板子修改了RS485收发控制引脚,不知道在驱动的哪个位置修改RS485控制引脚,在8250.c的哪个位置,
' c$ `: x- w  P0 A  M& H
. S8 u; m$ r* J4 t* p' p. l6 d: S
2 e# C7 H- Z3 W+ S" }" k0 C6 {1 E
作者: teddy    时间: 2014-10-31 17:21
您好!tronlong提供的最新的linux3.3内核已经对uart0和uart1做了rs485功能的支持,uart2默认为启动串口。如何想使能uart0和uart1 rs485的功能,只需在menuconfig将485使能。: @9 S6 q/ }9 H" Q6 c
  *** DaVinci Core Type ***                                                              | |, [* p$ s! o' {6 ~8 m8 v. D9 C
  | |                    [ ] DaVinci 644x based system                                                              | |; G0 q* y8 D" U4 a9 B/ D: Z. i- U
  | |                    [ ] DaVinci 355 based system                                                               | |
4 M' s/ l' ~! u6 G, y; K  | |                    [ ] DaVinci 646x based system                                                              | |
4 _: V* P2 G/ y1 [5 e  | |                    [ ] DA830/OMAP-L137/AM17x based system                                                     | |
, c9 Y3 u5 a! E1 C0 ^  | |                    [*] DA850/OMAP-L138/AM18x based system                                                     | |
- B4 g' g  z' e: r/ t% |8 n  | |                    [ ]   Enable UART1 flow control                                                            | |2 _% l; q8 y/ k+ c0 E6 }0 J
  | |                    [ ]   Enable UART0 RS485 funcation                                                         | |
* L! F$ V& d7 Y3 p: m' E& E9 I1 h+ c  | |                    [*]   Enable UART1 RS485 funcation
0 J4 H. k' v" B3 d. ?
* |" g7 |" c& q想了解详细的功能实现,也可以查看8250.c文件里面的;
, v3 W6 w: T) g# Uvoid serial8250_tx_chars(struct uart_8250_port *up)
/ D" p$ C3 `, r9 I- Z+ Y                return;/ D9 c( J8 f. Y+ D& g
        }& \( Q6 D9 R& q1 z. L
; O- O  b0 U, \1 y2 F" F
+#if 1
- d- X8 ]3 S, M7 g& J# V  P1 J+       /* The funcation with RS485 flow control */
, H8 L3 G, U/ ^+       if (up->port.private_data) {
. u! l- ~- @+ ?$ ^! V+               struct serial8250_flow_ctrl *flow_ctrl_p;* M! x2 Y* J" y
+               flow_ctrl_p = up->port.private_data;
% g7 P( p% g: ?  k+; a# ?8 z- a4 `$ b2 Y! s$ J
+               if (flow_ctrl_p->gpio) {+ x3 f  M. ~7 H) @3 r6 y! M$ l
+                       gpio_set_value(flow_ctrl_p->gpio, 1);
1 @  S! m0 B, \* q2 t$ [+                       ndelay(50); /* Propagation delay >= 50ns */
# M  P6 v; \4 q* K7 @+               }
2 [1 }5 T! ^& C' K4 B+       }) b( y) P1 u' q. k: [" q
+#endif7 M: o5 z$ T& A! U
希望对您有帮助。$ i% \0 J! F, }3 W+ T& B* @

作者: zhaohui293    时间: 2014-10-31 17:28
你说的serial8250_tx_chars函数没有你下面写的部分啊
7 ^$ X. Z' r$ I  W
$ E  [% [+ q  g# K* m
作者: teddy    时间: 2014-10-31 18:07
请跟创龙的技术支持获取最新的linux3.3内核源码。
1 M0 Q# Q8 U' e, P
作者: 2532609929    时间: 2014-10-31 19:35
zhaohui293 发表于 2014-10-31 17:285 V9 I8 P4 `$ _! T# `; X  ^' K
你说的serial8250_tx_chars函数没有你下面写的部分啊
+ k4 X* {. I  w0 l9 z9 B
在最新的源码中有的,我记得发过给你的了,请使用最新的内核源码0 D; ^' x  I7 G! o; k, r. g

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




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