您尚未登录。

楼主 #1 2020-04-21 16:39:17

chendong
会员
注册时间: 2019-07-22
已发帖子: 77
积分: 77

v3s 串口做485

大家拿串口485 一般都是怎么实现的,我是在内核串口驱动里面增加了一个.ioctl = serial_rs485_ioctl, 函数接口,然后应用程序里   
       rs485conf.flags = SER_RS485_ENABLED;
       rs485conf.delay_rts_after_send = 1000;
       rs485conf.delay_rts_before_send = 1000;
       ioctl(fd, TIOCSRS485, &rs485conf);
来开启串口的485 功能。功能到是能开启,但是发现会影响调试串口的输入,TAB 键不好使了,删除键也变了,进入这个函数打印发现每次调试串口终端输入都会有这些命令:
[   17.808074] serial_rs485_ioctl1053 - ######### port_line 0,  cmd 0x5401
[   17.817046] serial_rs485_ioctl1053 - ######### port_line 0,  cmd 0x5401
[   17.825895] serial_rs485_ioctl()1053 - ######### port_line 0,  cmd 0x5401
[   17.835216] serial_rs485_ioctl()1053 - ######### port_line 0,  cmd 0x540b
[   17.854681] serial_rs485_ioctl()1053 - ######### port_line 0,  cmd 0x5401
[   17.863585] serial_rs485_ioctl()1053 - ######### port_line 0,  cmd 0x5401
[   17.887645] serial_rs485_ioctl()1053 - ######### port_line 0,  cmd 0x5401
[   17.896773] serial_rs485_ioctl()1053 - ######### port_line 0,  cmd 0x5402
[   17.907343] serial_rs485_ioctl()1053 - ######### port_line 0,  cmd 0x5401
经查这个些命令的是这个意思
#define TCGETS        0x5401
#define TCSETS        0x5402
#define TCSETSW        0x5403
#define TCSETSF        0x5404
#define TCGETA        0x5405
#define TCSETA        0x5406
#define TCSETAW        0x5407
#define TCSETAF        0x5408
#define TCSBRK        0x5409
#define TCXONC        0x540A
#define TCFLSH        0x540B
#define TIOCEXCL    0x540C
#define TIOCNXCL    0x540D
#define TIOCSCTTY    0x540E
#define TIOCGPGRP    0x540F
#define TIOCSPGRP    0x5410
#define TIOCOUTQ    0x5411
#define TIOCSTI        0x5412
#define TIOCGWINSZ    0x5413
#define TIOCSWINSZ    0x5414
#define TIOCMGET    0x5415
#define TIOCMBIS    0x5416
#define TIOCMBIC    0x5417
#define TIOCMSET    0x5418
哪位有什么好的解决方法,多谢。

离线

#2 2020-04-21 16:42:59

smartcar
会员
注册时间: 2018-02-19
已发帖子: 735
积分: 735

Re: v3s 串口做485

要实现驱动自动控制gpio收发吗?

离线

楼主 #3 2020-04-21 16:44:43

chendong
会员
注册时间: 2019-07-22
已发帖子: 77
积分: 77

Re: v3s 串口做485

smartcar 说:

要实现驱动自动控制gpio收发吗?

平时485 控制信号为低,发送拉高就行了,发送完再拉低。现在就是知道增加一个ioctl 函数怎么会影响调试串口的输入了。

离线

#4 2020-04-21 16:51:13

smartcar
会员
注册时间: 2018-02-19
已发帖子: 735
积分: 735

Re: v3s 串口做485

app控制gpio?

离线

楼主 #5 2020-04-21 16:54:19

chendong
会员
注册时间: 2019-07-22
已发帖子: 77
积分: 77

Re: v3s 串口做485

smartcar 说:

app控制gpio?

没有啊,驱动自己控制啊。发送完就拉低485控制管脚。

离线

#6 2020-04-21 17:15:05

有梦的地方
会员
注册时间: 2020-03-17
已发帖子: 284
积分: 284

Re: v3s 串口做485

可以参考这个帖子: https://whycan.cn/t_4012.html#p39120

瞄了一下,这个是主线linux,估计只能参考参考了。

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn