嵌入式开发者社区

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

作者: zhaohui293    时间: 2014-10-31 17:01
标题: 关于RS485控制引脚
本帖最后由 zhaohui293 于 2014-10-31 17:05 编辑
( z5 q9 N* l' B/ X$ K' }* n! _
/ N% d( F6 T% j6 ?8 g- @) O我的板子修改了RS485收发控制引脚,不知道在驱动的哪个位置修改RS485控制引脚,在8250.c的哪个位置,1 X- u, n* V4 s7 `; q4 I% u5 M
0 z5 g% ~0 L0 C" I

( F2 ~  u: k! `2 N2 `/ q( M
作者: teddy    时间: 2014-10-31 17:21
您好!tronlong提供的最新的linux3.3内核已经对uart0和uart1做了rs485功能的支持,uart2默认为启动串口。如何想使能uart0和uart1 rs485的功能,只需在menuconfig将485使能。
, ?% U0 E, L4 Y3 H4 T  *** DaVinci Core Type ***                                                              | |
5 u6 J- j" E3 F! t! X4 Y6 t  | |                    [ ] DaVinci 644x based system                                                              | |
8 _6 u( k5 Z0 q2 H  | |                    [ ] DaVinci 355 based system                                                               | |
  A" V) C1 X8 ~/ h# f  | |                    [ ] DaVinci 646x based system                                                              | |' t: d/ r* J8 n& k6 m
  | |                    [ ] DA830/OMAP-L137/AM17x based system                                                     | |3 O3 z4 g5 [* u# c3 A, m$ I
  | |                    [*] DA850/OMAP-L138/AM18x based system                                                     | |
' P8 l' u" e, H  P8 h8 p  | |                    [ ]   Enable UART1 flow control                                                            | |
# D5 B! s% ?3 `% Y- X  | |                    [ ]   Enable UART0 RS485 funcation                                                         | |+ i! I; [& Z$ l) r
  | |                    [*]   Enable UART1 RS485 funcation : O. G, U0 j( d. k+ b
5 `( a6 q6 h# d6 Z0 o: @
想了解详细的功能实现,也可以查看8250.c文件里面的;* X; a* r4 l6 X) w
void serial8250_tx_chars(struct uart_8250_port *up)
- k& _! I6 s5 v5 e" z% d                return;  R2 j: Q3 Z6 g5 `. [3 H
        }
; }1 n1 n2 S) k. X8 P. [8 o/ T1 C4 u8 g4 C# \
+#if 1
& d+ x7 V) |+ x& \+       /* The funcation with RS485 flow control */
; y! B* V) X9 h& U' W7 ]4 }7 I' ^* n+       if (up->port.private_data) {
6 p; F. V5 O8 m: y$ B  n0 j+               struct serial8250_flow_ctrl *flow_ctrl_p;
; m) J' p" }. W, A/ S6 i* H  P% O& @+ {+               flow_ctrl_p = up->port.private_data;
/ \' R9 D0 [7 Q+( ?5 g& W8 k. `8 W( G" }
+               if (flow_ctrl_p->gpio) {
* ^; e" G8 h/ H6 E; _7 U+                       gpio_set_value(flow_ctrl_p->gpio, 1);
, ]& }, K, y; {" n4 O+                       ndelay(50); /* Propagation delay >= 50ns */6 Q0 [* v; |$ U" N! x, l; a* n
+               }
; w% G& Y' w3 M6 T4 }2 v! \+ ~) i% c+       }4 t* p9 \/ M/ h$ J# w
+#endif: |4 z8 O* ]1 z" Q) K/ v9 L) P  g3 R
希望对您有帮助。
7 `' ]/ }% y! o" [1 A5 G. l7 P
作者: zhaohui293    时间: 2014-10-31 17:28
你说的serial8250_tx_chars函数没有你下面写的部分啊
; U  c0 T; k2 f
2 X, l3 L& A% h- B; G9 p6 U) Y; G) }- D
作者: teddy    时间: 2014-10-31 18:07
请跟创龙的技术支持获取最新的linux3.3内核源码。5 Z( ]& S0 H- X, X

作者: 2532609929    时间: 2014-10-31 19:35
zhaohui293 发表于 2014-10-31 17:28
/ E$ F: K9 v6 z) w你说的serial8250_tx_chars函数没有你下面写的部分啊

* G, j6 z+ Y, d1 \; \7 o. B) o5 U在最新的源码中有的,我记得发过给你的了,请使用最新的内核源码
2 l* I; L' c0 G5 @, h3 f3 P
作者: sddxzzf    时间: 2014-11-18 17:20
提示: 作者被禁止或删除 内容自动屏蔽




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