基于Linux系统嵌入式网络电话设计
时间:2022-03-22 09:11:10 浏览次数:次
摘要:嵌入式系统是面向用户,面向产品,面向应用的,所有嵌入式系统产品一旦进入市场,便具有较强的生命力。该文对基于Linux系统嵌入式网络电话设计进行了研究。
关键词:嵌入式;Linux系统;网络电话
中图分类号:TP393文献标识码:A 文章编号:1009-3044(2010)01-216-02
网络和通信技术的发展正日新月异地改变着人们的生活,移动通信提供了各种服务功能。然而,手机的初衷仍旧是在移动通话上。如果在固定电话上实现各种手机功能,对于大多数家庭和企事业单位的办公仍旧是十分便利的,更为吸引人的是,目前可视电话的应用和普及很少,手机的可视应用还没有成熟,对于固定电话来说是一个新的增值服务。于是,开发一个集普通电话、PDA、可视功能和网络功能于一身的商务电话是有着很大的市场潜力。本文以I型机产品为例,I型机定位于低端市场,成本低,功能较少,没有实现可视功能。
1产品需求
1.1用户功能需求
I型机从用户使用的功能需求上分为三个模块,分别是电话功能,信息管理功能,信息交换功能。
1) 电话功能模块。实现普通电话通信功能。包括接听电话,拨打电话,来电显示,已拨电话号码显示,自动应答录音和双工语音同步录音功能,即在打电话的过程中可以录下一方或双方的语音。
2) 信息交换模块实现网络信息、浏览和接收功能。包括短信息,传真,email的接收和发送,网页浏览。
3) 信息管理模块PDA功能。提供智能化,信息化,人性化的信息集中管理。包括记事本,电话地址簿,短消息,email,语音提示输入等等功能。
1.2 系统硬件需求
1)CPU:该系统的设计因成本和市场定位较低,选用了NEC的VR4181芯片。
64-bit带有固化LCD控制器的NEC VR4181是一个基于MIPS RISC CPU核心的高度集成的system-on-chip设备。它最初是为了基于手提PC应用的Windows CE而设计的,包含这种设备所需的所有典型功能。因此,NEC在Vr4181 system-on-chip中包括了以下集成外设:LCD控制器;Compact Flash接口;能源管理单元;DMA、中断控制、定时器、实时时钟;16550兼容的串行接口;IrDA 1. 0接口;键盘接口;接触面板接口;USB功能接口;音频I/O的A/D和D/A转换器。VR4181开发板有main board和debug board,开发板提供了串口、并口和以太网口,主要用于和上机的联机调试。
2)系统外设需求
存储设备:8M的RA M和16M的闪存。用于存储系统映像和预留用户空间。
液品显示:16灰度级的160*240的液晶显示屏
手写输入:整合一套完整的手写输入设备
扩展键盘:4*4键盘阵列,VR4181提供了键盘接口
调制解调器:提供RS232接口的调制解调器用于数据的A/D , D/A转换
1.3系统软件需求
1) 嵌入式操作系统
在VR4181开发套件中提供了WinCE和Linux两种操作系统的演示程序。I型机采用了VR4181提供的Linux作为嵌入式操作系统,该系统提供了支持该平台的启动程序,内核映像,和磁盘ROM映像。
2) 设备驱动程序在Linux中,只提供了与Debug Board相关的驱动,包括键盘驱动,LCD驱动,串口和以太网口的驱动,但与Modem的通信驱动仍旧需要自己开发。
3) 可视化开发平台在开发过程件,采用miniGUI作为开发环境,经过汉化的miniGUI 可以开发发出短小而美观的用户界面和应用程序。
4) 应用程序包含各种PDA应用的软件,包括:记事本,通讯录,email,收发短消息,传真等。
2 技术方案
2.1工作原理
I型机从系统开发角度分析,首先需要解决机器工作状态的问题。原因是:单纯的电话是由模拟芯片实现的,没有更多的智能设备;而整个机器的信息交换和信息管理模块都可以看作是一个小型计算机。如何将智能化的计算机模块和电话模块融合以及机器的各种工作状态的确定,是技术方案设计的关键。从另一个角度分析,电话属于模拟部分,而计算机属于数字部分,两个独立的模块如何集成也是关键。
在设计过程中,我们采用了语音仍旧走模拟通路,其它信息、走数字通路的方案,这主要因为将语音数字化将增大系统的开销,尽管有modem芯片可以处理语音,传真功能,但实际效果并不好,为了保证语音的质量,保留了模拟语音的通路。其余的信息,如短消息、传真都直接经modem来转换。确立了工作模式,模拟部分和数字部分也就相对独立了。电话线上输入的信号莫过于电话振铃,短信振铃或传真。每个信号在编码时是不同的,可以根据信号振铃来区分信号的类型。如果信号是电话,就和原来的通话一样,如果是传真或短消息,则通过modem转换为数字信号,由PDA模块处理。由于对短信的编码模式现在还没有确定,这个需要和电信局开通短信服务的部门协调确定才能制定。如果需要,在接入口要加入一个硬件开关来区分信号,或直接接至modem来识别。在实现录音功能上,采用了现有的自动应答录音模块,但这个只有对方的录音信息,为了实现双向录音,将语音信号输入到VR4181上的声音输入口,通过软件实现录音功能。
2.2工作状态描述
I型机工作状态划分为初始待机态,工作态两种状态:初始待机态描述:初始待机态简称待机态,是机器没有任何触发事件时的状态,可以认为机器上电自检,系统启动,在等待超时后进入的休眠态。任何事件触发都先将VR4181从休眠中唤醒,LCD显示部分恢复初始显示时的等待状态。工作态描述:是指机器由等待状态收到事件触发后响应事件所处的状态。从通信线路占用角度分为:占线工作态和非占线工作态。
1) 占线工作态描述:该状态是指在电话线路上有信号输入或输出时的状态。该状态分为信号输入态和信号输出态。这两个状态又分为许多不同的工作状态。信号输入态包括:来电振铃,来电短信,来电传真,来电录音。信号输出态包括:摘机态和非摘机态。摘机态包括:摘机拨号态,摘机接听态,摘机录音态。非摘机态包括:发送短信,发送传真,浏览网页。
2) 非占线工作态描述:该状态指没有通信的情况下,PDA工作态。如:查找,编辑,浏览等状态。
2.3系统工作流程
系统加电后,完成初始化,包括Linux Kernel的加载,MiniGUI的启动,与外设通一讯端口的打开以及寄存器的初始化。初始化完成后,主进程进入IDLE状态,等待事件(Event)触发。事件总的分为两类:线路触发事件和用户触发事件。对于两种类型的事件,分别进行相应的处理。即采用事件触发机制进行正常工作。整个程序的流程,就是对不同时间的响应。两类事件的本质区别在于一个是用户主动触发,一个是线路被动触发,所以工作流程有很大区别。
1) 线路触发事件
系统保留两个标志位:是否设置成传真机、是否录音。在需要判断的地方,读取相应的标志位,即可以决定程序的流程。
2) 用户触发事件
上网功能包含了浏览网页和email收发,因为它们都属于网络协议中应用层的部分,它们的具体内容不影响程序的整体流程。
3 Linux平台的移植
一个嵌入式系统在硬件平台确定后,操作系统的选用就非常关键了,目前wince是很成熟但很昂贵的产品,而Linux便宜但需要进一步完善。出于成本考虑,I型机选用Linux操作系统。在VR4181开发板中附带了与平台相关的Linnx。如何将Linux移植到硬件平台呢,首先在调试的主机和目标机器之间必须连接通信,可以通过HUB将主机和目标机器连成网络,通过文件传输协议FTP来传送,同时将debug board上的串口连至主机的串口上。
将Linux刷入闪存中,系统就可以正常启动。但启动后的系统是很简易的,并不能用作产品。将一个Linux系统完整应用到产品中,必须添加相应的驱动程序,由于使用modem进行通信,在系统初始化时,必须有相应的驱动程序初始化添加的硬件设备:而在上层应用软件的编写上,需要解决的问题是,可视化界面,应用程序与系统集成。可视化界面采用miniGUI,首先可以选用将主机与debug board连接起来,通过超级终端就可以将代码刷到debug board上的FLASH中,这样系统就可以启动。
在开发套件中提供的Linux系统包括三个文件,以两种格式提供,一种是bin文件,即二进制文件,它必须通过以太网下载到目标机器上;一种是.abx (Absolute Binary Data)文件,是纯二进制文件格式的ROM镜像文件,通过自带的PMON调试监控器下载。这两种文件都可以刷入到存贮器中,我们通过PMON调试监控器下载这三个文件。
这三个文件中,vrboot.abx的大小是1k,是针对硬件平台的启动代码,负责初始化系统并加载Linux内核。Vmlinux.abx就是Linux的内核映像文件,大小为1.467k,它是一个针对VR4181硬件平台而开发的嵌入式Linux系统。文件:omdisk.abx是rom映像文件,其大小为6.922k,包含一些上层应用程序的示例。三个文件只需9k左右就可以构建一个微小系统。
在超级终端上就会显示出将vrboot.abx刷入以bfc40000de为起始地址的闪存的过程。以同样方法设置跳线和闪存地址,将其余两个文件业刷入闪存中,重新启动目标板,就会看到系统启动后的Linux系统。ROM映像文件可以是独立的程序,开发人员在自己的开发平台上编译调试后,做成ROM映像文件可以直接刷入闪存中。
目前嵌入式系统的发展已经显示出强劲的发展势头。在市场需求方面,嵌入式系统的发展空间很大,在平台研究方面,还有很多差距,特别是Linux系统要想真正自由地运用到各个嵌入式系统中,从平台到驱动,以及可视化,中文化等方面还存在许多问题需要解决,这也是国内研究嵌入式系统的热点。
参考文献:
[1] 王刚,赵跃龙.基于嵌入式网络视频监控系统的设计[J].安防科技,2007,(1).
[2] 蔚承英,陈勇刚,杨利平,等.基于GPRS和嵌入式计算机的远程监控系统研究[J].安防科技,2008,(2).
[3] 田年杰,田庆华.一种基于uClinux的网络视频监控系统设计[J].安徽广播电视大学学报,2004,(4).
推荐访问: 网络电话 嵌入式 设计 系统 Linux[基于Linux系统嵌入式网络电话设计]相关文章
- 基于嵌入式通用型交通倒计时的研究
- 基于Nios II嵌入式软核处理器的液晶显示模块接口的实现
- 基于Proteus的嵌入式应用系统仿真中的源码调试
- 基于WEB结构自动化的嵌入式测试平台设计
- 基于嵌入式车载安全预警系统设计
- 学习设计还是学育设计?
- 案例式教学在工程设计软件教学中的探索与研究
- 在高职院校机械基础课程中设计开发及应用微课的几点思考
- 现代工业设计理念在机床设计中的运用
- 大学校园文化景观设计理念
- 2016年全国大学生工业设计大赛
- 高速公路移动通信系统设计方案研究
- 基于层次分析法的家具设计方案评价模型
- 现代远程开放教育省开课网考系统顶层设计及分层设计研究
- 浅析建筑结构中的人防设计与抗震设计
- 在全市卫生健康系统安全稳定工作视频会议上的讲话
- 电力系统分析课程综合改革探索
- 工作过程系统化课程开发研究与实践
- 试论系统工程理论\方法在企业战略分析中的应用
- STOCK给煤机常见故障处理及系统维护
- TEDS系统故障的原因分析、处理措施及改进建议
- 拼墙系统的颜色校正和多层图像处理系统设计
- 银行排队问题分析及系统优化策略研究
- 关于对系统芯片FPGA验证系统进行软件调试环境的几点认识
- 基于工作过程系统化的应用型民办院校会计学专业人才培养模式设计
- 上一篇:数字化时代学生角色的转变
- 下一篇:中小学网络中心机房建设实例