Linux系统下PCI转串口卡驱动安装方法
以下答案是我从我爱买电脑配件批发网上摘过来的,希望能帮到你。
由于公司产品要做行业市场,而产品与行业用户间PC的通讯为RS232串口方式。而行业用户那里的PC都没有串行口,而且行业用户PC操作系统为Turbo Linux。怎么办?
办公室内有台机器是RedHat Linux 9.0一个是 Fedora Core 5 。就先在这两个系统上试验吧。这两台电脑上各自本身就有2个RS232串口。
一、PCI转串口卡安装 型号NetMos Nm9835CV
1、插入PCI卡到主机
2、启动 Linux,打开终端
3、输入命令:#setserial /dev/ttyS0 -a(COM-1)
显示内容:/dev/ttyS0, Line 0, UART: 16550A, Port: 0x3f8, irq: 4
Baud_base: 115200, clos_delay: 50, divisor: 0
closing_wait: 3000, closing_wait2: infinite
Flags: spd_normal skip_test
4、输入命令:#setserial /dev/ttyS2 -a(COM-3)
显示内容:/dev/ttyS2, Line 2, UART: unknown, Port: 0x3e8, irq: 4
Baud_base: 115200, clos_delay: 50, divisor: 0
closing_wait: 3000, closing_wait2: infinite
Flags: spd_normal skip_test
第3、4步操作的目的主要是对主机自带串口及PCI扩展串口的区别。区别在于4显示的内容中UART:未unknow。不过若您检测这一步的时候 UART为16550A而不是unknow,证明你的系统已经认识了扩展的串口,不需要进一步设置,直接跳入第8步测试就可以了。
5、需要输入命令查看一下您当前PCI检测的状态,以便对扩展串口进行设置
#more /proc/pci
会显示出一堆的信息,不要因为看不懂而吓坏了。只要看到类似于这个PCI的信息,比如:PCI communication。。。或者Board with Nm9835CV part。。。可能就是这个卡了,主要看看它的终端是多少,即irq多少及分配的地址是多少。例如:(不一定完全一样)
Board with Nm9835CV part irq:11
I/O at 0xc000 [0xc001] serial port 1
I/O at 0xc400 [0xc401] serial port 2
I/O at 0xc800 [0xc801] not used
I/O at 0xd000 [0xd001] not used
I/O at 0xd400 [0xd401] not used
I/O at 0xd800 [0xd801] not used
6、知道PCI扩展卡的终端为11串口1地址为0xc000 串口2地址为0xc400..
就可以设置扩展的串口了。输入命令:
setserial /dev/ttyS2 port 0xc000 UART 16550A
irq 11 Baud_base 115200
另一个串口也类似的这么操作
7、设置完毕后,就可以看看设置的情况了,输入第2步的命令看看,UART是否就是16500A 而不是 unknow了,如果是16500A恭喜,可能设置好咯,如果不是那就再检查一下吧。
8、设置好了后是不是需要测试一下是否能够通讯呢?最好的办法是两台pc相连。如果pc为windows操作系统就用超级终端,是linux呢就用minicom吧
9、装有linux的机器,首先需要设置一下监听的串口参数,输入命令
#minicom -s
进入界面后有个框弹出来,如果你还认识点英文单词的话,就回知道选择哪个的。应该是第三个吧,串口设置。
将第一行更改为 /dev/ttyS2
波特率也更改您所需要的。
更改完后保存,保存的那个菜单应该是 save ... df1
最后 exit
10、在另外一台机器发送数据,这台机器minicom界面就能够收到信息了,成功后觉得挺有意思。另外不要把两个COM顺序弄翻了,如果弄错了哪个是COM3 COM4测试可就不灵便咯。一般的 安装 驱动:
找到 src 包,都是 源程序
make install
good luck这个 PCI转串口卡 有 Linux 下的 驱动 吗
如果 有 Linux 下的 驱动 一定
有 详细 说明书 的
linux内核自带的s3c2440串口驱动里怎么配置串口啊,该怎么读写串口呢
是的,串口设备也是字符设备呀
但是一般serial 0会被当作console,也就是你在pc上通过超级终端等进去的那个移植步骤:
1.修改根目录的makefile中的arch=arm,cross-compile=arm-linux-
2.在arch/arm/mach-s3c2440/mach-smdk2440.c中,将163行的s3c24xx_init_clocks(16934400)改为s3c24xx_init_clocks(12000000)。
3.修改arch/arm/tools/mach-types中379行的362改为
原创文章,作者:墨羽SEO,如若转载,请注明出处:https://www.moyuseo.com/fuwuqi/4247.html