嵌入式开发者社区

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

作者: zhaohui293    时间: 2014-10-31 17:01
标题: 关于RS485控制引脚
本帖最后由 zhaohui293 于 2014-10-31 17:05 编辑
+ w( e# e: X- p. v& q, B5 J1 p* ?: ]) S+ A/ R( U, S* P; e
我的板子修改了RS485收发控制引脚,不知道在驱动的哪个位置修改RS485控制引脚,在8250.c的哪个位置,
0 n5 {) X, ]# [! C
+ f' H/ @; V6 E& A+ r7 ?* a0 U. ~7 H/ j4 M8 X

作者: teddy    时间: 2014-10-31 17:21
您好!tronlong提供的最新的linux3.3内核已经对uart0和uart1做了rs485功能的支持,uart2默认为启动串口。如何想使能uart0和uart1 rs485的功能,只需在menuconfig将485使能。5 o7 H" l! c7 M- m
  *** DaVinci Core Type ***                                                              | |
" [' K" ^% w$ v, h: H  | |                    [ ] DaVinci 644x based system                                                              | |; G" {" c  S/ `' }/ o7 f/ a0 s
  | |                    [ ] DaVinci 355 based system                                                               | |
; j# G3 n3 F- Y" O* u  | |                    [ ] DaVinci 646x based system                                                              | |
: F; n* m/ T# y- l9 M% i1 }  | |                    [ ] DA830/OMAP-L137/AM17x based system                                                     | |9 A1 Y, Z* Y' M
  | |                    [*] DA850/OMAP-L138/AM18x based system                                                     | |( E# o$ [; t, A7 }
  | |                    [ ]   Enable UART1 flow control                                                            | |
2 O% V5 q/ `% C' {  | |                    [ ]   Enable UART0 RS485 funcation                                                         | |
5 f8 r) B: N! d) K8 O2 d  | |                    [*]   Enable UART1 RS485 funcation 6 z" c0 T" N+ ^2 z, k- }

0 K$ O. ?, A( o4 m想了解详细的功能实现,也可以查看8250.c文件里面的;  C9 a0 o) a) T3 h
void serial8250_tx_chars(struct uart_8250_port *up)/ i+ ]. F/ u: m
                return;
! T8 U4 P& ^, P' M. Z        }1 ?0 ?* N8 U- u( g/ _, N$ _/ `
8 Y1 ?$ c1 \% Y7 A# l$ [$ s1 o
+#if 1( i% H! K) y  g" d4 `3 [8 K$ t& e
+       /* The funcation with RS485 flow control */( r2 [5 s' ~( r7 z- T# b5 m2 m
+       if (up->port.private_data) {
3 e% d# ^  m8 i  A+               struct serial8250_flow_ctrl *flow_ctrl_p;
/ l! e% P! f# b/ G: ?+               flow_ctrl_p = up->port.private_data;2 z5 }. H3 E. r% g1 i: ?- ]4 t' [
+
4 ~8 ^/ d7 t1 k+               if (flow_ctrl_p->gpio) {. g5 Y+ L' @) o' ~9 h2 H* g
+                       gpio_set_value(flow_ctrl_p->gpio, 1);6 u* i+ F2 x' t
+                       ndelay(50); /* Propagation delay >= 50ns */
/ z% C/ h1 @; p) Z% h& J+               }2 v4 A# T/ G% j! f/ z
+       }, {+ v3 |( T# R) T3 ~) |
+#endif
8 Z, j1 |" b+ U+ D% S- B希望对您有帮助。
  W+ I2 e3 C" v1 Y9 ?7 H/ y
作者: zhaohui293    时间: 2014-10-31 17:28
你说的serial8250_tx_chars函数没有你下面写的部分啊
+ d3 y$ }; j) N7 ~/ S/ I
' P9 s: u2 m9 j% B$ I
作者: teddy    时间: 2014-10-31 18:07
请跟创龙的技术支持获取最新的linux3.3内核源码。
: b  X2 Z7 e, t( _
作者: 2532609929    时间: 2014-10-31 19:35
zhaohui293 发表于 2014-10-31 17:28( [% b6 `. q3 g! e# W/ a
你说的serial8250_tx_chars函数没有你下面写的部分啊
0 Y) a- @0 s: m1 h/ L% |
在最新的源码中有的,我记得发过给你的了,请使用最新的内核源码
7 @: k" c$ \9 }; \) c' o8 A6 H& I+ ~
作者: sddxzzf    时间: 2014-11-18 17:20
提示: 作者被禁止或删除 内容自动屏蔽




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