S3 C2440和Linux的设计方案

发布时间:2015-01-11 阅读量:748 来源: 我爱方案网 作者:

【导读】目前嵌入式技术已经广泛应用于各个领域,设计采用S3C2440处理器和Linux系统实现的无线拨号上网终端在各个领域有着广泛的应用空间。例如在视频监控方面,结合无线网络技术,使监控的方式更加多元化,使监控的面积和距离都得到了大幅提高,摆脱了物理通道的约束,可以说是未来监控系统的发展方向。

终端采用ARM9嵌入式处理器,主频最高可达400 MHz,而且其内部集成了LCD控制器、内存控制器、Flash接口电路以及双通道的USB总线,处理器也支持Linux操作系统,而Linux操作系统也拥有现代操作系统所具备的内容:抢先式多任务处理、内存保护、虚拟内存并支持TCP/IP的众多协议。因此,将它们用于无线拨号上网终端中时,可以利用ARM9低功耗,高性能的特点和Linux良好的网络支持功能完成拨号上网和进一步的具体应用。
 
1 终端硬件平台

 
硬件部分采用核心板加底板的结构,核心板是以S3C2440作为处理器,并配有64 MB的SDRAM,256 MB/1 CB的Nand Flash和2 MB的Nor Flash;底板上添加了串口、USB接口、100 Mbit·s-1以太网RJ-45接口和SD卡等基本外围电路。另外,单独开发了3G模块的电路板,目的是把3G模块的miniPCI接口通过硬件转化为USB接口,这样不仅方便3G模块与核心板的连接,而且也方便了对3C模块在Linux系统下驱动的处理,3G模块采用华为EM770W。
 
2 软件平台
 
2.1 PC机软件平台

 
系统软件平台以Linux操作系统为基础,在PC机上安装虚拟机,然后在VMware Workstation上安装Redhat Enterprise 5,内核采用Lin ux-2.6.32.2,然后在Red hat5的Linux上建立ARM—Linux—gcc的交叉编译环境,ftp以及samba服务器等。
 
2.2 终端的系统移植

 
系统移植包括:配置Linux内核,向内核中添加3G模块的驱动和PPP协议的支持,并重新编译和下载。
 
在内核配置之前,首先要进入内核目录,执行make distclean命令将以前相关的临时文件、配置文件、中间文件和路径文件等清除。再开始配置内核:第一步,cp config_mini2440_w35.config;第二步,make menu config进入基于文本模式的菜单型选项,添加USB转串口的驱动和PPPD协议支持的选项;第三步,对内核进行编译,执行命令make zImage,编译成功后在/arch/arm/boot目录下将生成zImage烧写文件;第四步,制作目标板的文件系统映像,在mini2440的目录下执行命令mkyaffszimage-128M rootfs-qtopia-qt4 rootfs-qtopia-qt 4.img,这样在当前目录下就生成了相应的文件系统映像;第五步,烧写文件,连接好串口和USB电缆,打开超级终端和DNW软件,硬件上电并选择为NOR Flash启动,进入BIOS功能菜单。首先选择功能号[f]开始对Nand Flash进行分区;然后选择功能号[v]开始下载supervivi,下载完毕,BIOS会自动烧写supervivi到NAND Flash分区中,并返回主菜单;安装Linux内核,在BIOS主菜单中选择功能号[k],开始下载Linux内核zlmage;安装根文件系统,在BIOS主菜单选择功能号[y],开始下载ysffs根文件系统映像文件rootfs—qtopia—qt4.img,此过程大概需要2 min,下载的文件越大,烧写的时间就会越长;下载完毕后,拔下USB连接线,在BIOS主菜单选择功能号[b],启动系统,进一步进行屏幕校正和相关设置。
 
3 拨号程序分析
 
3.1 PPPD拨号程序的简要分析

 
PPPD是一个用户空间的后台服务进程(Daemon),负责与3C模块进行通信会话来进行必要的初始化设置,然后开始按照协议要求的步骤进行拨号。初始化设置是由PPPD自带的辅助工具CHAT完成,这个程序利用AT指令和3G模块进行通信,主要是交互一些拨号的参数设置、进行拨号的用户名和密码、是否采用数据加密等连网参数。

拨号流程和主要函数如下:

(1)主程序pppd_start(),这个函数首先是做初始化工作,对几个所使用的协议进行初始化,这里所用到的分别是lcp_protent,chap_ protent,ipcp_protent。

(2)完成初始化后,正式开始进行协议的协商,PPPD协议协商流程,如图1所示。

S3 C2440和Linux的智能无线拨号上网终端设计方案

(3)接下来开始发起lcp通信,start_link->lcp_lowerup(),这个函数首先和内核的PPP协议进行协商,主要是MTU等链路参数,协商后设置LCPDE-LAYED_UP标志,把lcp_delayed_up函数设置给一个定时器,这个定时器会根据DELAYED_UP标志周期执行前赋给lcp_delayed_up,在这里函数将主动发起lcp协议请求,之后等待对方回应。start_link函数结束返回到pppd_start()主函数继续执行。

(4)主函数pppd_start会进入一个无限循环,这个循环主要执行函数handle_events()和get_input()。handle_events主要处理接收到的信号,get_input负责处理接收到的数据包。

3.2 配置拨号脚本


(1)需要配置的拨号脚本文件有3个,分别是:wcdma,chat—wcdma—connect和chat—wcdma—disconnect。把它们存放在/etc/PPP /peers目录下。注意要在wcdma中添加persist命令,保证3G网络在一段时间断开后能自动再连接。

(2)设置开机自动拨号上网,在系统的开机启动脚本中添加shell命令:/etc/PPP/rmlock,判断并删除无效的串口的lock文件,保证成功拨号。/usr/bin/pppd call wcdma,使其自动拨号。/usr/bin/sleep 15,保证15 s的拨号时间

 

4 测试

4.1 驱动检测


将电路板的启动模式设置为Nand Flash启动,则Linux系统会在通电后自动运行。系统启动后,会在/dev目录下生成PPP设备节点,可用ls/dev/PPP-1命令查看是否存在。在电路板的USB HOST口连接3C模块的电路板,若超级终端上有如图2所示的信息输出,则可知3G模块的驱动已经正确添加到内核中了。

S3 C2440和Linux的智能无线拨号上网终端设计方案

4.2 拨号测试


在超级终端命令行下,输入命令:pppd call wcdma&,结果如图3所示,说明拨号成功。

S3 C2440和Linux的智能无线拨号上网终端设计方案

然后记录出现的两个DNS地址,找到/etc目录下的resolv.conf文件,将分配得到的两个DNS服务器地址:202.102.224.68和202. 102.227.68添加到文件中,这样就可以进行域名解析了。Ping外网测试,ping119.75.217.56检查是否能够正常访问网络。结果如图4所示,说明网络连接正常。

5 结束语


设计和实现了基于S3C2440和Linux的无线拨号上网终端,对其中3G拨号上网所用到技术进行了探讨和分析。利用ARM高速的实时数据处理能力和Linux的网络支持功能,保证了终端设备工作的稳定性和实时性,具有一定的实际意义。有待注意之处:(1)硬件3G模块的电路板有必要集成到底板上,这样可以简化系统设计,降低成本。(2)Linux系统内核要根据具体的实际应用情况进行裁剪,这样不仅节省了存储资源,而且还提高了系统的处理速度。

相关文章

SoC的PSTN短消息智能终端系统的软硬件设计方案

智能终端上VoLTE和RCS的共存设计方案

智能终端基于VLC的无线导览系统设计方案
相关资讯
双面散热+5×6mm²封装:解密英飞凌如何实现IBC能效三级跳

随着AI算力需求呈指数级增长,全球超大规模数据中心对供电系统的能效与功率密度提出更高要求。英飞凌科技(FSE: IFX)最新发布的OptiMOS™ 6 80V功率MOSFET,通过5x6 mm²双面散热(DSC)封装技术,在中间总线转换器(IBC)应用中实现0.4%效率提升,单kW负载节省4.3 W功耗。据测算,部署该方案的2000机架数据中心每小时可节能1.2 MWh,相当于25辆小型电动车充电所需能量。

900GB/s突破!英伟达开放核心互连技术引发行业震动

在2024年台北国际电脑展(Computex 2024)主题演讲中,英伟达CEO黄仁勋宣布将向全球芯片设计企业开放其核心互连技术——第四代NVLink Fusion。该技术旨在突破传统芯片间通信瓶颈,为构建下一代AI算力集群提供标准化解决方案

多协议并发+超低功耗!Qorvo QPG6200系列重塑物联网连接标准

全球连接与电源解决方案领导厂商Qorvo®(纳斯达克代码:QRVO)近日宣布,其QPG6200产品组合新增三款支持Matter标准的系统级芯片(SoC),包括QPG6200J、QPG6200M和QPG6200N(注:信息源自Qorvo官方新闻稿)。这一扩展标志着Qorvo在智能家居与工业物联网领域的进一步突破,通过ConcurrentConnect™技术与超低功耗架构,为多协议设备提供无缝互操作性与高效能支持。

双城启幕,共探软件定义未来——MATLAB EXPO 2025中国用户大会即将开启沪京双城科技盛宴

北京,2025年5月19日——在数字化浪潮重塑产业的当下,MathWorks正式公布MATLAB EXPO 2025中国用户大会的革新布局。这场年度技术盛会将于5月20日登陆上海国际会议中心,5月27日移师北京国家会议中心,首创"沪京双城"联动态势。本届大会聚焦"软件定义产品"的产业革命,通过50+深度技术研讨与行业实践案例,系统展示MATLAB®和Simulink®在智能驾驶、新能源系统、脑科学计算、无人机集群等前沿领域的技术突破,汇聚全球500强企业技术领袖、科研院所专家及创新团队,共同解构数字化工程转型的底层逻辑与实施路径。

康盈半导体扬州基地投产:国产存储产业链再添“芯”动能

在全球半导体产业加速重构的背景下,中国存储企业正通过技术创新与产业链整合抢占战略高地。2025年5月16日,康盈半导体扬州存储模组智造基地正式投产,标志着其在存储领域的全产业链布局迈出关键一步。这一项目的落地,不仅为国产存储技术自主可控注入新动能,也为区域经济转型升级提供了示范样本。