Linux下大唐3G_TD模块DTM6211的使用

最近在研究大唐(联芯科技)的TD/GPRS上网模块,型号DTM6211,需要在Linux将其驱动起来,拨号连接网络并与公司的通信服务器进行通信。

设备有一个DTM6211模块,一块小开发板,通过USB接口连接电脑。环境是虚拟机安装Red Hat Linux,内核2.6.18。

开始的时候犯了两个弱智的错误,1 电源没通电(以为是USB供电的),2 没按复位开关。通电并按复位开关以后,开发板上红绿灯都亮,表示已经识别到设备。如果用图形界面(如KDE),不会有什么反应,如果只是命令行方式,应该打印几行识别到USB设备的英文。

输入cat /proc/bus/usb/device,可以看到这个设备有5个接口,并且有 P:  Vendor=0x1AB7 ProdID=0x6000 Rev=1.00 字样,记住这两个ID号。用标准的usbserial.ko就可以驱动这个模块。驱动文件在/lib..../kernel/drivers/usb/serial/下。输入 insmod usbserial.ko vendor=0x1AB7 product=0x6000 为设备安装驱动。安装成功的话可打印一排信息(命令行方式下),诸如ttyUSB0到ttyUSB5一类的字样。cat一下/proc/devices发现安装的usb驱动主设备号是ttyUSB 188,为字符驱动。查看/dev/下的设备,可发现多出了ttyUSB0到ttyUSB5六个USB转出的串口。注意:ttyUSB5是唯一可用的串口,通过发送AT指令可对模块进行操作。

这里多说两句,在arm板上的调试的时候,内核是2.6.25,也显示了找到6个串口,但是在/dev下找不到,我用mknod手动创建,指定设备号188子设备号0~5,虽然也能发送AT指令,但一直有些问题。板子上可能没有usbserial.ko,可以在内核源代码里自己编译,输入make menuconfig,选择USB Serial一项,注意选中子项中的USB Gernal ****,编辑后得到的usbserial.ko可用。

相关推荐