在LINUX下,移植usb-serial驱动使usb3G模块上网,主要要修改什么地方。

在LINUX下,移植usb-serial驱动使usb3G模块上网,主要要修改什么地方。,第1张

从现象来看,貌似你没有把正确的设备号加到配置文件。

既然你的设备号是0x12d1:0x1da1,先试试看下面的步骤:

1。 sudo vim /etc/usb_modeswitch.conf

在文件最后面增加以下几行。

DefaultVendor= 0x12d1

DefaultProduct= 0x1da1

TargetVendor= 0x12d1

TargetProduct= 0x1da1

HuaweiMode=1

DetachStorageOnly=1

然后执行sudo usb_modeswitch -W 令修改生效。

2。 cd /dev

ls

应该会出来ttyACM0, ttyACM1, 和ttyACM2...等设备。

3。修改/etc/wvdial.conf中的相应部分就可以了。

$ sudo vim /etc/wvdial.conf

注意:把Modem=/dev/ttyUSB0要注释掉,用你自己的设备名,如下所示:

Modem =/dev/ttyACM2

Modem = /dev/ttyUSB0

rfidy和3g一般都是模块

3g模块,与ARM CPU接口,一般是串口或者USB口。

CPU通过发送和接收AT指令 *** 作3g模块。

按照你说的,基本通过3g模块发送短信息就足够了。

数据量大,可以通过3g模块先拨号。

成功后,就是普通的网络socket *** 作发送接收了!

首先要架构你的系统,看你这系统最好还是加 *** 作系统吧,那么ARM7的资源估计有些危险,建议使用ARM9 + WINCE 或者 ARM9 + LINUX.并且 *** 作系统对硬件的管理要比你自己管理强.

其次你要了解这些外设的特性:“GPS模块,3G模块,磁罗盘,摄像头”,使用相应的interface 控制外设.

第三就要编写这些外设的驱动程序了.

*GPS最好使用uart 的.

*3G模块我也用过,一般都会带Linux 或者WINCE的驱动程序,你只要能够移植到系统上,那么就ok了.

最后,建议:你的胆子很正,你才大一,不建议直接做这么大的东西,会耽误上基础课的时间,并且你ARM的基础知识是否扎实才是决定你以后能走的更远的保证!你应该针对每一个模块多做一些小的试验,在弄懂每一个模块的原理后在系统的做上一两个大的系统,这样才是一个正常的发展轨迹.切忌浮躁!


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11803719.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-18
下一篇2023-05-18

发表评论

登录后才能评论

评论列表(0条)

    保存