Centos 7.5 1804安装绿联PL2303串口驱动

绿联PL2303串口驱动下载

绿联USB转DB9,RS232串口线,Windows驱动下载地址

下载后解压有个linux目录,驱动需要根据内核进目录自行编译

uname -r
3.10.0-862.el7.x86_64

进3.10目录编译

cd 3.10_ok/
make all

提示

make: *** /lib/modules/3.10.0-862.el7.x86_64/build: 没有那个文件或目录。 停止。

这个实际上是缺少kernel-devel包

我这个版本对应的包名是

kernel-devel-3.10.0-862.el7.x86_64.rpm

使用yum install 命令无法下载

所以最后找了个百度云的地址传上去,然后手动安装

rpm -ivh kernel-devel-3.10.0-862.el7.x86_64.rpm 

安装上去尝试再编译,报结构体成员名错

[root@192 3.10_ok]# make all
make -C /lib/modules/3.10.0-862.el7.x86_64/build M=/root/PL2303G_Linux_Driver_v1.0.5/3.10_ok modules
make[1]: 进入目录“/usr/src/kernels/3.10.0-862.el7.x86_64”
  CC [M]  /root/PL2303G_Linux_Driver_v1.0.5/3.10_ok/pl2303.o
/root/PL2303G_Linux_Driver_v1.0.5/3.10_ok/pl2303.c: 在函数‘pl2303_ioctl’中:
/root/PL2303G_Linux_Driver_v1.0.5/3.10_ok/pl2303.c:696:26: 错误:‘struct usb_serial’没有名为‘minor’的成员
   ser.line = port->serial->minor;
                          ^
/root/PL2303G_Linux_Driver_v1.0.5/3.10_ok/pl2303.c:697:18: 错误:‘struct usb_serial_port’没有名为‘number’的成员
   ser.port = port->number;
                  ^
make[2]: *** [/root/PL2303G_Linux_Driver_v1.0.5/3.10_ok/pl2303.o] 错误 1
make[1]: *** [_module_/root/PL2303G_Linux_Driver_v1.0.5/3.10_ok] 错误 2
make[1]: 离开目录“/usr/src/kernels/3.10.0-862.el7.x86_64”
make: *** [all] 错误 2

两个结构体变量不对

网上找了两篇文章有结构体相关线索的

ch34x.c:402:42: 错误:‘struct usb_serial_port’没有名为‘number’的成员-OS-有趣

Linux-Kernel Archive: Re: [PATCH 1/3] USB: serial: ports: add minor and port number

CH341SER_LINUX.ZIP - 南京沁恒微电子股份有限公司

根据ch34芯片驱动程序结构体的写法推测报错的结构提应该修改为

1.
ser.line = port->serial->minor;
应该改成
ser.line = port->minor;

2.
ser.port = port->number;
应该改成
ser.port = port->port_number;

改完后编译通过

串口测试

#查看串口参数
stty -F /dev/ttyUSB0
#改波特率115200
stty -F /dev/ttyUSB0 speed 115200
#改波特率9600
stty -F /dev/ttyUSB0 speed 9600
打开两个终端,
终端一:cat /dev/ttyUSB0 (用于接收,也可以直接用minicom,minicom不用两个终端,发送接收都带)
终端二:echo "test" >/dev/ttyUSB0  (发送test)

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 11
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值