历史上的今天
返回首页

历史上的今天

今天是:2026年01月05日(星期一)

正在发生

2023年01月05日 | 基于S3C2410处理器实现3G无线网卡接入无线网络功能的设计

2023-01-05 来源:elecfans

本研究的目的是实现一个具有3G无线网络接入功能的嵌入式系统。系统的硬件平台是基于ARM系列的S3C2410微处理器。文章简要介绍了该系统的体系结构,给出USB主机接口硬件电路。研究基于USB接口的3G无线网卡的无线网络接入功能实现,包括研究Linux USB设备驱动程序、实现USB Serial设备的驱动、定制Cramfs文件系统。最后移植和配置PPP拨号程序,实现嵌入式系统通过3G无线网卡接入无线网络的功能。


目前,嵌入式技术已广泛应用于工业控制、无线通讯、网络应用、消费类电子产品、成像和安全产品等各类产品。随着3G牌照的发放,无线网络的带宽大幅扩展,具有3G无线网络接入功能的嵌入式系统更加具有发展前景。本文将介绍中兴的AC580无线网卡在以S3C2410微处理器为核心的嵌入式系统上的应用。


1 终端系统的硬件平台

1.1 系统体系结构

S3C2410处理器作为核心芯片集成了许多重要功能模块,本系统主要用到以下部分:NandFlash控制器、SDRAM控制器、3个通道的UART、2个USB主机接口、1个USB设备接口、JTAG。NandFlash作为存储器,用于存储支撑整个系统软件的BootLoader、Kernel、文件系统。在开发调试时串口作为控制台起作用,USB设备接口起到与PC机连接并下载传输数据的作用,而USB主机接口用于连接3G无线网卡设备,Embedded-ICE(20脚标准JTAG)接口和并口式JTAG接口则支挣ADS软件的下载、调试以及Flash的烧写。系统结构图如下:

1.2 USB主机接口硬件电路

中兴的AC580无线宽带上网卡是基于CDMA20001X/EV-DO REVA网络的数据卡产品。它采用USB接口进行连接,支持Linux操作系统。其传输速率为上行(反向链路)最高到1.8Mb/s,下行(向前链路)最高3.1Mb/s,工作频段为CDMA800MHz。网卡可以直接通过S3C2410集成了的USB HOST控制器接入,不需要附加额外的芯片,非常方便。USB总线协议定义了四条信号线,其中两条负责供电,另外两条负责数据的传输。USB HOST接口硬件电路如图2所示。

2 系统的3G无线网络接入功能实现

系统软件包括以下三个部分:vivi作为BOOTLOADER(引导启动程序);Linux-2.6.24作为嵌入式操作系统;Cramfs作为系统的文件系统。系统将采用PPP拨号的方式接入无线网络。


2.1 设备驱动与KERNEL

Linux内核采用的是2.6.24版本,需要移植到ARM平台。设备驱动程序可以被看作操作系统的一部分。设备驱动既可以交叉编译到内核镜像中,也可以以模块的形式存放在文件系统中,并在运行时加载模块。本系统采用的方式是编译到镜像文件中。


USB驱动程序分为主机控制器驱动程序(HostController Driver,HCD)、主机端设备驱动程序(USBD)和不同的USB设备的设备类驱动(Sla-ve Device Driver)。USB的HCD是USB主机驱动程序中直接与硬件交互的软件模块,USBD是整个USB主机驱动程序的核心,而USB设备类驱动则是最终与应用程序交互的软件模块。

USBD和HCD需在配置内核编译选项时选择编译进内核。对于USB设备类驱动,AC580使用的是高通公司的MSM6085芯片,这款芯片能在USB下仿真出串口,并通过它来完成拨号工作。将中兴的USB Serial驱动源码加入内核源码中,修改Makefile和Kconfig,将USB Serial驱动编译进内核。


另外AC580是一个多合一设备,有CDROM、USBMASS Storage、USB Serial三部分,因此还需添加对SCCICDROM、USB MASS Storage的支持。同时为了实现拨号,编译的内核还应添加对PPP协议的支持。


2.2 建立Cramfs文件系统

Cramfs文件系统是专门针对闪存设计的只读压缩的文件系统。当系统需要访问Cramfs文件系统中某个位置的数据时,计算出该数据在文件系统中的位置,并实时解压到内存中。文件系统中的系统基本应用程序可以使用Busybox来定制。


本系统中使用的AC580无线网卡连接到主机时,USB缺省工作方式是USB存储设备,在Linux下显示为CDROM和USB Storage两个设备,拨号需要找到USB Serial设备。首先需要安装好USB Serial驱动,其次使用eject/dev/srl命令弹出USB存储设备。这时AC580中的高通芯片将翻转为串口模式(在/dev目录下显示为/ttyUSB0、/ttyUSBl、/ttyUSB2、/ttyUSB3几个设备),可以用于拨号及无线网络数据传输。因此在配置编译BusyBOX时,除必须的系统基本应用程序外,还必须置eject命令。


在/lib目录下添加共享链接库。添加内核模块和配置脚本,包括rt73.ko、/linuxrc、/etc目录下的配置文件等。在/dev目录下创建设备节点。字符设备的设备文件由字符“c”来识别,块设备由字符“b”来识别。通常而言,主设备号标识设备对应的驱动程序,大多数设备按照“一个主设备号对应一个驱动程序”的原则组织,次设备号由内核使用,用于正确确定设备文件所指的设备。以下几个节点是必须的

2.3 PPP拨号接入CDMA2000 lx/EVDO无线网

PPP是简单链路设计的链路层协议,设计目的主要是用来建立点对点连接进行数据收发。一个PPP会话分为四个步骤:连接建立、连接质量控制、网络层协议配置、连接终止。PPP协议作为链路层协议,它是在Linux内核中实现的。


PPP拨号需要拨号程序及拨号脚本。拨号程序选择的是PPP-2.4.1,将交叉编译生成的chat、pppd、pppdump、pppstats程序文件添加至系统文件系统的/usr/sbin目录下。


拨号脚本及所需文件存放在文件系统的/etc/ppp/目录下:pap-secrets、chap-secrets、PPP-off、resolv.conf、chat-connect、/peers/cdma3g。其pap-secrets、chap secrcts是chap和pap认证文件;resolv.conf是域名服务器配置文件;chat-connect是chat脚本;PPP-off是下线脚本;cdma3g是pppd脚本,里面配置了pppd程序参数。以下是主要的PPPd程序参数:

/dev/ttyUSB0 Modem在ttyUSBO上;115200串口的速率;noipdefault不使用指定ip;defaultroute加入缺省路由;scr“vnet.mobi”用户名;connect‘/usr/sbin/chat-S-V-f/etc/ppp/cbat-connect’调用chat程序并使用chat-connect脚本。

用mkcramfs工具生成Cramfs文件系统。至此,可以利用PPP拨号来实现3G无线网络接入功能了:#pppd calledma3g

3 结束语

本文详细介绍了基于S3C2410微处理器的嵌入式Linux系统接入3G无线网络的方法,对系统的硬件架构及软件实现进行了详细介绍。3G无线宽带网接入功能使得嵌入式系统在无线通讯、网络应用、消费类电子等方面具备广阔的发展前景和强大的竞争力,给嵌入式系统带来更广泛的应用。

推荐阅读

史海拾趣

Free2Move公司的发展小趣事

在电子行业中,Free2Move公司的发展故事虽不直接聚焦于传统电子制造或硬件设计,但其作为出行科技领域的创新者,与电子行业有着紧密的联系,尤其是在汽车电子、物联网(IoT)以及数据服务等方面。以下是五个与Free2Move公司发展相关的事实性故事:

1. 电动汽车生态系统的构建

Free2Move eSolutions,作为Stellantis和Engie EPS的合资企业,致力于电动汽车(EV)产品设计、开发、制造和分销的领先地位。它通过与全球科技企业的合作,如埃森哲,推动电动汽车接入电网,加速出行领域的全面电气化。这一举措不仅促进了电动汽车市场的增长,还带动了电动汽车充电基础设施、电池管理系统等电子相关产业的发展。(参考来源:埃森哲公司官网)

2. 远程信息处理与数据分析的集成

Free2Move与Guidepoint Systems合作,利用远程信息处理技术提升车队管理效率。Guidepoint Air数据监控服务能够接收来自符合条件的Stellantis车辆的数据,包括速度、位置、发动机状态等,为经销商、商业和政府车队提供库存管理和车队管理服务。这种数据驱动的解决方案依赖于先进的电子设备和物联网技术,实现了对车辆运营状态的实时监控和数据分析。(参考来源:百家号)

3. 商业车队解决方案的开发

Free2Move与Samsara的合作是另一个值得注意的案例。两家公司共同开发了一个集成解决方案,使Stellantis原厂远程信息处理设备的数据能够导入Samsara的互联运营云。这一合作让车队客户能够通过一个控制面板访问车辆的GPS定位、发动机工作小时数、燃料使用量和胎压等关键信息,从而提高了车队的运营效率和驾驶员的安全性。这一解决方案的成功实施,依赖于电子传感器、云计算和数据分析技术的深度融合。(参考来源:搜狐网)

4. 共享出行服务的全球扩展

Free2Move在全球范围内提供共享出行服务,包括共享汽车、停车位和充电站等。这一业务模式的成功,离不开电子支付系统、移动应用技术和物联网平台的支持。例如,在中国市场,Free2Move通过与当地合作伙伴的合作,推出了易微享共享汽车服务,为用户提供便捷的出行体验。这一过程中,电子支付、移动应用开发和物联网技术的运用,都是不可或缺的关键因素。(参考来源:雪球)

5. 医疗保健领域的跨界合作

虽然Free2Move的核心业务并非直接面向电子医疗行业,但其品牌名称“Free2Move”被另一家公司在医疗保健领域采用,推出了用于患者运动评估的技术系统。这一跨界合作展示了Free2Move品牌在不同领域的广泛影响力和创新能力。尽管这一故事并不直接涉及Free2Move公司的传统业务,但它反映了电子技术在不同行业间的渗透和融合趋势,以及品牌价值的多元化应用。(参考来源:爱迪斯通(北京)科技有限公司官网)

以上五个故事,从不同角度展示了Free2Move公司在电子行业中的发展和影响,体现了其在技术创新、数据服务、市场拓展等方面的综合实力。

ETI Systems公司的发展小趣事

ETI Systems深知在电子行业中,单打独斗很难取得长远的发展。因此,公司积极寻求与行业内外的合作伙伴建立战略合作关系。通过与多家知名企业和研究机构的合作,ETI Systems不仅获得了宝贵的技术支持,还拓展了市场渠道和客户资源。这种合作与共赢的伙伴关系,为ETI Systems的快速发展奠定了坚实的基础。

Axiomtek公司的发展小趣事

随着公司业务的不断发展壮大,ETI Systems开始将目光投向国际市场。公司积极参加国际电子产品展览和技术交流活动,与来自世界各地的客户和合作伙伴建立了紧密的联系。同时,ETI Systems也加大了在海外市场的投入力度,通过设立分公司和办事处等方式,进一步拓宽了国际市场渠道。这种国际化战略的实施,为ETI Systems的持续发展注入了新的活力。

EDAC公司的发展小趣事

精英电脑(ECS)自1987年成立以来,一直以其卓越的技术创新能力在电子行业中占据一席之地。公司早期专注于主板的研发和生产,凭借其稳定的性能和出色的兼容性,迅速赢得了市场的认可。随着科技的进步,ECS不断拓宽产品线,从主板扩展到台式机、笔记本电脑、平板电脑等多个领域。在技术创新方面,ECS始终坚持自主研发,不断推出具有行业领先水平的新产品,如采用最新制程技术的主板、搭载高性能处理器的笔记本电脑等。这些创新产品不仅提升了ECS的品牌形象,也为公司带来了可观的利润。

Facon公司的发展小趣事

在发展过程中,Facon遇到了许多技术难题。然而,他们从未放弃过对技术的追求和突破。经过数年的研究和实践,Facon成功研发出了一款具有划时代意义的低功耗芯片,该芯片在保持高性能的同时,大大降低了能耗,为电子产品的续航能力带来了革命性的提升。这一技术突破让Facon在行业中声名鹊起,吸引了众多合作伙伴的关注。

安谱隆(Ampleon)公司的发展小趣事

在安谱隆的发展历程中,资本市场对其一直保持着高度的关注。然而,其“安家”之路却并不平坦。2017年,奥瑞德曾有意收购安谱隆,但由于资金问题,这桩收购最终未能成行。2018年,旋极信息也计划收购安谱隆,但同样未能成功。这些波折反映了资本市场对安谱隆价值的认可,但也暴露出安谱隆在寻找合适买家方面所面临的挑战。

问答坊 | AI 解惑

武汉理工大学-2009大学生电子设计竞赛初赛题

本帖最后由 paulhyde 于 2014-9-15 09:44 编辑 这个应该是他们的竞赛初赛选拔题或者预测练习题吧~~~~各位可以作参考~~~ A_集成电路芯片测试仪 B_非接触供电系统 C_实用电子秤 D_程控音频OCL功率放大器 E_12V~220V逆变电源 F1_简单汉字自动书 ...…

查看全部问答>

求助 有关头文件目录问题 hack wince

在一篇hacking windows ce的文章里说道一些结构时,都会说出结构是在XX.h文件中定义 就像下面这种 // WINCE420\\PUBLIC\\COMMON\\OAK\\INC\\pehdr.h #define EXP 0 /* 0x8c Export table position */ #define IMP 1 /* 0x94 Import table posit ...…

查看全部问答>

关于模拟屏保

我现在做的程序需要在3分钟没有操作后,弹出一个广告展示窗口显示一些指定的图片.但是我没有想到好的办法去判断是否3分钟没有操作.因为程序中有很多的窗口,如果在每次的操作后都记录一个时间,那么这个工作量就很大.又没有更好的办法来判断是否3分钟 ...…

查看全部问答>

我想山寨M8,大家一起来出出主意!嘿嘿。

魅族M8是我比较佩服的产品,现在我做PDA也想学习一下它。 各位来参与一下,分数不会少的,嘿嘿。 我现在纳闷的问题就是PDA的供电问题,我选了电源芯片,都觉得不合适,M8做的还不错,我就看了一下他的一些拆机文档。 M8的主板结构和芯片大致和之 ...…

查看全部问答>

欢迎使用我的产品,谢谢!

1. c8051f 单片机(c2 ,jtag)和at89s5x单片机(isp)二合一串口编程下载线,速度极快,支持3伏(c8051f 单片机),5伏(at89s5x单片机)电源,设计新颖,可靠稳定,成本低廉!!!目前通过实际验证可编程下载的芯片:c8051f310、c8051f320、c8051f3 ...…

查看全部问答>

想从理论看起的以太网入门的朋友请进-入门资料指南

我想大家都认同在嵌入式的开发中,理论和实践是相辅相成的,对以太网的学习也不例外,掌握必要的理论基础知识是很有必要的,否则就如同云里雾里。有朋友问到需要看哪些资料,我就说说我个人的想法,供想从理论入门的朋友参考一下: 入门资料1:《 ...…

查看全部问答>

STM32能不能兼容工业标准的六线同步串行接口

                                  …

查看全部问答>

仪表放大器桥接电路误差预算分析

在典型应用中,有必要了解仪表放大器的误差源。虽然本指南只是用于说明,但对于解决增益非线性度、LF噪声等性能限制性误差问题具有重要意义。 …

查看全部问答>

这违规吗?

本帖最后由 paulhyde 于 2014-9-15 03:08 编辑 不同的组,用同一个pcb做出的板子违规吗?    …

查看全部问答>

【CLA调试点滴】MDEBUGSTOP的细节

C2000的CLA不支持断点调试,所以,只能在程序中加入MDEBUGSTOP来使CLA暂停。使用MDEBUGSTOP有几点应该注意: 1、在未连接CLA时,MDEBUGSTOP仅作为空操作指令使用,不影响程序的运行。 2、进入单步运行后,即是遇到MSTOP指令,(有时)CLA的中断 ...…

查看全部问答>