基于ARM7和MX618芯片实现无中心呼叫控制协议数字化系统设计

发布者:心愿实现最新更新时间:2020-07-23 来源: elecfans关键字:ARM7  MX618芯片  无中心呼叫控制协议  数字化系统 手机看文章 扫描二维码
随时随地手机看文章

引 言

无中心移动通信系统是我国专业移动通信系统的重要组成部分。它使用单工对讲方式工作,工作频率在915.012 5~916.087 5 MHz之间。该系统具有无中心组网、数字选呼、自动接续、多址用户多信道共用、链路分散控制等诸多技术特点,拥有广阔的实际应用前景和深入开发潜力。该系统网络结构图如图1所示。目前我国的900 MHz无中心移动通信系统尚处在以模拟话音加数字信令为主导技术的模拟阶段。针对无中心呼叫控制协议的数字化研究尚处于空白。

基于ARM7处理器和MX618芯片实现无中心呼叫控制协议数字化系统设计

无中心系统的数字化是将语音和控制信令进行数字化编码,以二进制码流形式传播。本系统平台使用CML公司MX618芯片进行语音编码,MX7041芯片对语音和信令进行4FSK基带调制,ARM7处理器作为系统的运算控制核心。在此开发环境下,本文以数字无中心呼叫控制层协议为研究对象,提出并设计了一套基于无中心体制的呼叫控制协议数字化解决方案。该方案已应用于数字无中心对讲机的嵌入式系统开发中。


1、 数字无中心呼叫控制协议概述

ETSITS 102490-DPMR标准描述了无中心系统的协议分层结构,如图2所示。呼叫控制协议处于无中心系统协议栈第三层,位于数据链路层之上,应用层之下,是无中心系统的控制核心。

它为整个系统提供基本通话的建立、保持、拆线;点对点通话以及组呼;通话对象的选择;迟后进入、呼叫转移等功能的支持。同时为承载数据、语音业务的数据链路层以及实施具体功能的应用层提供接口,并且需要提供完备的上下层通用接口为将来的协议升级预留空间。


呼叫控制协议的设计包括呼叫控制流程、呼叫控制信令的设计以及后期的程序实现编码,继而形成独立的呼叫控制协议功能模块。


2、 呼叫控制流程的设计

按照数字无中心对讲机的工作原理,设计了一套符合实际应用的呼叫控制流程。呼叫控制流程描述了通信终端从通话建立到通话终结过程中产生的一系列动作和事件。


处于待机状态的移动台A和移动台B在控制信道守候。当移动台A按呼叫键呼叫移动台B,A在控制信道广播发送针对B的呼叫建立请求信令,并转到选择的通话信道接收。B收到呼叫建立请求信令后若同意建立连接则转到信令中标识的通话信道,同时在此通话信道向A发送确认信令。A接收到确认信令后,双方都进入可通话状态。若A按下PTT会向B发送语音头帧+语音帧。


松开PTT后,发送尾帧表示此次A方的通话结束。B此时进行语音帧的接收直至收到尾帧,A,B都进入可通话状态。之后双方重复如上过程进行通话。一旦A按下拆线键,就会向B发送拆线信令,双方回到待机状态。此流程如图3所示。

3、 呼叫控制协议的设计和实现

呼叫控制信令和随路信令分别在控制信道和通话信道进行传输。根据无中心多信道选址移动通信系统体制,控制信令传输通道(控制信道)与通话信道完全分开,它整合若干条通话线路的控制信令,独占一条公共的控制信道进行传送控制信令。


3.1 信道

控制信道控制信道主要用于广播传输呼叫建立信令以及作为其他用途的信令的发送通道。控制信道的服务体制采用顺序等待制原则,待前一条信令在控制信道中传送完成后,接续的信令才能正常传送。否则,进行等待直到判断出控制信道空闲。


通话信道通话信道负责传送呼叫建立后双方的语音、数据,同时通话信道也用于传输随路信令。随路信令包括了通话过程中一系列必要的控制信令。通话信道的服务体制采用呼损制原则,两台终端设备建立连接并占用一条通话信道后,此信道不能再被其他终端使用,直到终端拆线并释放次通话信道。


如图4所示,频率为915.012 5 MHz的控制信道只用于通信双方传输呼叫建立信令,通话信道则可以传输拆线信令、应答信令等随路信令。移动台在两种信道间转换,通话时守候在通话信道,通话结束或待机时返回控制信道。

无中心多信道选址移动通信系统的信道间隔为12.5 kHz时,系统共有158个信道。其中第一个信道915.012 5 MHz为控制信道,所有的呼叫信令都在该信道发出,其余157个为通话信道。呼叫控制的流程由控制信道和通话信道中控制信令的传输而贯通。由此,如何制定控制信令,如何处理通话信令流程中的所有状态转移事件便成为呼叫控制协议设计的主要内容。


3.2 无中心呼叫控制信令的设计

呼叫控制信令是无中心系统中各种状态转换的控制信号,传递系统消息和命令。呼叫控制信令按照功能分为呼叫建立请求信令、呼叫应答信令、拆线信令、语音始发信令、语音终结信令。


3.2.1 控制信令的帧结构

无中心系统基本的数据传输单位是帧。呼叫控制信令由两种帧结构构成,头帧和尾帧。

头帧中包含了信令中大部分的控制信息,其帧结构如下:

前导码:用于接收机的同步。

帧同步:头帧的识别和同步。

头帧类型:4 b,标识头帧类型,是头帧的主要标识,也是信令的主要标识,其取值为:0000通话起始信令;0001呼叫建立请求信令;0010拆线请求信令;0011ACK信令;0100禁发和还原信令;0101禁收发信令。

接收方ID:被叫方移动台ID号,通过空中接口对7位数字呼号编码得到。

发送方ID:主叫方移动台ID号,通过空中接口对7位数字呼号编码得到。

通信模式:用于区别语音通信或者数据传输。

通信格式:用于区别全呼通信、点对点通信。

呼叫信息:11 b,用于区别单呼、组呼以及ACK信令的定义。


尾帧补充在头帧之后构成完整的信令或单独构成通信结束的信令,其帧结构如下:

尾帧同步码:4 b,用于尾帧的发现和同步,固定为7D DF F5。

尾帧类型:2 b,尾帧的主要标识。00表示普通尾帧;01表示带有状态信息的尾帧。

ACK请求:2 b,标识是否需要被呼方发送ACK信号。

Tx等待:4 b,标识是否需要一段时间来强制让收到该尾帧的用户的PTT失效,以便允许用户发送插入请求。

状态信息:5 b,用户根据需要自己定义,共32种状态信息。


3.2.2 呼叫控制信令的内容

呼叫建立请求信令是用户发起呼叫时向被叫方以广播方式发送的控制信息。该信令的组成为:头帧(建立请求)+尾帧。

呼叫应答信令是被叫方接收到呼叫建立请求信令后,向主叫方发送的反馈控制信息。该信令结构为:头帧(ACK)。

语音始发信令先于语音传送,用于标识实际语音即将到来,它的结构为:头帧(通信起始)。

语音终结信令表示语音传输告一段落,它的位置在语音数据块之后。语音终结信令结构为:尾帧(通信结束)。

拆线信令是当通信一方希望结束通话时所发送的通话结束信号,用于告知对方通话即将结束。拆线信令结构为:头帧(拆线)+尾帧+头帧(拆线)+尾帧。


3.3 应用状态机实现呼叫控制协议

数字无中心呼叫控制协议利用有限状态机的设计方案进行描述和实现。有限状态机克服了纯硬件数字系统顺序控制方式不灵活的缺点,它能够架构性能良好的时序逻辑模块,以事件驱动的简易方式来解决复杂的程序流程问题。其可靠性优势明显,是目前嵌入式领域控制程序的通用解决方式。


通信流程中状态的设计是呼叫控制层协议实现的关键。完整而合理的状态转移过程也是程序实现的重要前提。呼叫控制层状态应包括呼叫控制流程周期中的每个典型状况。并且状态之间应该可以转换,不应该存在不能达到的状态或不能进入再次过程的死状态,同时对于要描述的特性没有意义的多余状态也应该避免。


3.3.1 用户A与B通信流程状态事件机

根据呼叫控制流程和呼叫控制信令的特点以及无中心体制的技术规范,呼叫控制状态机中共设计了S0~S4共5个状态。S0(待机状态)表示移动终端空闲时的默认状态;S1(发起呼叫中状态)为呼叫发起方拨号后的呼叫等待状态,S1被叫进行中的状态为被叫方接收到呼叫建立请求后的判断等待状态;S2(呼叫已建立状态)表示呼叫已建立成功,正在等待下一步进行通话;S3(发话中状态)为用户按下对讲机PTT键后传送通话语音的状态;S4(收话中状态)为用户正在收听对方通话语音的状态。通话结束后双方返回到S0(待机状态)。该状态机考虑了呼叫控制实际应用中的技术细节,实现了每一个状态在各种动作、事件激励下的可预期性转移。状态机的具体内容如图5,图6所示(注:复位拆线后各状态均转换到待机状态)。

3.3.2 呼叫控制程序的实现

呼叫控制程序应用嵌入式C语言在ARM7处理器中开发。设变量ccl_state存储当前状态的代码,next_state存储下一状态代码,利用Switch_Case语句以及对事件判断的if条件语句即可实现复杂的多条件、多分支的呼叫控制状态机。

在程序的设计过程中加入了ARM定时器。定时器在嵌入式系统中起着十分关键的作用。为节省频率资源无中心体制加入了通话限时功能,在通话限时开始后,需要启动定时器计时。定时器到时后产生IRQ中断,执行终止通话操作。为增加程序的可靠性,防止死状态的产生,在程序中也要加入对定时器超时事件的判断动作。各状态(除待机状态)一旦处于等待下一步动作的状态时,需要立即启动定时器进行超时判断。例如,呼叫建立时通过定时器检测对方应答时间,超时则返回S0待机状态。


4 、呼叫控制协议的可行性和可靠性分析

呼叫控制流程、呼叫控制信令结构、呼叫控制的状态机三部分密不可分,构成了实现呼叫控制协议的基本要素。呼叫流程的设计考虑了无中心体制以及传统对讲机工作流程。


呼叫控制信令借鉴了ETSI TS 102 490-DPMR标准中数据链路层的信令帧结构并进行了改进。呼叫控制状态机应用UML模型设计了由通信事件、动作触发的五种可变迁状态。在逻辑上此呼叫控制协议充分模拟了实际应用中的呼叫控制的各种工作情景,理论上能够正确完成呼叫控制系统的功能。在实际嵌入式开发过程中,利用ARM7处理器的高速运行优势,在数据传输中对误码率要求严格的控制信令增加了数据链路层的差错控制编码,CRC循环冗余校验,汉明纠错编码,交织抑制连续突发干扰纠错编码,保证了控制信的准确传输。


令此外在呼叫控制程序中增加了防死状态的定时器中断,提高了程序的运行可靠性。本呼叫控制协议已实际应用到实验室数字无中心对讲机的样机开发中,运行稳定。


5 、结 语

随着各种数字技术的迅猛发展,模拟的无中心系统在当前的技术环境下已显得捉襟见肘,对其进行全面数字化改造将是未来专网无线通信领域的重要工作内容。呼叫控制协议的数字化标准尚无正式版本推出,本文介绍的呼叫控制协议已应用到数字无中心对讲机的产品开发中,运行稳定,在功能上有待根据实际需求进行进一步的扩容和改进。

关键字:ARM7  MX618芯片  无中心呼叫控制协议  数字化系统 引用地址:基于ARM7和MX618芯片实现无中心呼叫控制协议数字化系统设计

上一篇:ARM异常中断的原因及处理措施
下一篇:基于FIE8100 SoC平台实现Linux软件开发套件的设计

推荐阅读最新更新时间:2024-10-13 13:16

ARM7 2131 BEEP程序分析
ARM7 BEEP程序分析 在原理图上我们看到蜂鸣器是接到了P07口上,短接好接口。 #include config.h #define BEEP 1 7 // P0.7控制蜂鸣器,低电平蜂鸣 包含一个config.h的头文件,里面主要是定义了数据类型的时钟频率等。 void DelayNS (uint32 dly) { uint32 i; for ( ; dly 0; dly--) for (i=0; i 50000; i ); } 写了一个延时函数。 主函数如下: int main (void) { PINSEL0 = 0x00000000; // 设置管脚连接GPIO IO0DIR = BEEP; // 设置B
[单片机]
基于ARM7与虚拟仪器的串口通信方案
引言 LPC213X系列是NXP公司开发的基于ARM7TDMI-S核 ,拥有ARM体系结构v4版本的嵌入式单片机,因其优异的性能而广泛应用于自动控制、通信等领域,并逐步成为各种仪器仪表的首选控制芯片之一。虚拟仪器(labview)是美国NI公司推出的图形化编程软件,包含了丰富的处理函数和各种算法。目前大部分虚拟仪器要求配以不同总线标准的NI数据采集卡与之配套使用;而由单片机控制的仪表仪器大多自成系统,不能和虚拟仪器配接,这样的系统,其数据分析功能和图形化处理能力有限。如果能将性能优越的LPC213X系列与LabView图形化软件技术结合应用在以嵌入式单片机为控制核心的虚拟仪器仪表系统中,则不仅能发挥嵌入式单片机实时性强等优
[单片机]
基于<font color='red'>ARM7</font>与虚拟仪器的串口通信方案
基于μC/OSII和ARM7 中断机制的IRQ中断响应机制改进及优化
如今,在嵌入式处理器芯片中,以ARM7为核心的处理器是应用较多的一种。它具有多种工作模式,并且支持两种不同的指令集(标准32位ARM指令集和16位Thumb指令集)。μC/OSII是专为嵌入式应用设计的抢占式、多任务实时操作系统,可用于各类8位、16位和32位单片机或DSP。μC/OSII向ARM7移植具有得天独厚的优点,因此,“μC/OSII+ARM7”成为广泛应用的一款平台。 不管是哪种型号的ARM处理器,也无论该嵌入式系统中是否有操作系统,在计算机与外界实时交互的过程中,中断技术都是一项关键的技术。当外部事件发生时,CPU必须及时响应中断以实现对相应事件的处理,因此能否中断嵌套是影响嵌入式系统实时性能的主要因素。 1
[单片机]
基于μC/OSII和<font color='red'>ARM7</font> 中断机制的IRQ中断响应机制改进及优化
浅谈数字化宽带测向系统中的相位差测量及误差
  引言   在 电子 对抗领域中辐射源测向是一个基本问题。能发射电离辐射的物质或装置。从广义上讲,凡能释放各种电离辐射的物质或装置(如宇宙射线)均可视为辐射源。但习惯上用于 探伤、放射治疗和辐射加工等的放射性深度较高的放射源称为辐射源。 干涉仪 测向体制的主要优点是精度高和工作频率范围宽,但目前使用的干涉仪系统还存在不足,主要包括:(1)在被动制导等领域中测向精度仍然不够:(2)对现代雷达使用的宽带脉压信号适应能力有限;(3)有待进一步提高系统的工作频率范围。针对上述问题,本系列论文提出了数字化宽带测向系统的整体解决方案,重点讨论数字化相位差测量及误差分析、概率解模糊算法和在测向精度和工作频率范围约束下如何进行 天线 阵列基线设计
[测试测量]
浅谈<font color='red'>数字化</font>宽带测向<font color='red'>系统</font>中的相位差测量及误差
ARM7与FPGA在工业控制中的结合应用
工业控制中往往需要完成多通道故障检测及多通道命令控制(这种多任务设置非常普遍),单独的CPU芯片由于其外部控制接口数量有限而难以直接完成多路检控任务,故利用ARM芯片与FPGA相结合来扩展检控通道是一个非常好的选择。这里介绍用Atmel公司ARM7处理器(AT91FR40162)和ALTERA公司的低成本FPGA芯片(cyclone2)结合使用完成多通道检控任务的一种实现方法。 各部分功能简介 图1为此系统的结构连接框图。如图所示,ARM芯片与FPGA芯片之间通过数据总线、地址总线及读写控制线相连,而与终端PC则通过串口通信;FPGA与目标设备通过命令控制总线和故障检测总线相连。 图1 系统结构框图 1 故障
[单片机]
<font color='red'>ARM7</font>与FPGA在工业<font color='red'>控制</font>中的结合应用
ARM9处理器与ARM7处理器比较
摘要:ARM处理器是世界上最流行的嵌入式处理器,广泛应用于个人通信等嵌入式领域。ARM7处理器虽然功能强大,但是目前已经开始退出主流应用领域,代替它的是性能更加强大的ARM9系列处理器。介绍了ARM9处理器与ARM7处理器的不同之处,并且给出了ARM9的应用实例。 关键词:ARM9 ARM7 流水线 指令周期 ARM9系列处理器是英国ARM公司设计的主流嵌入式处理器,主要包括ARM9TDMI和ARM9E-S等系列。本文主要介绍它们与ARM7TDMI的结构以及性能比较。 以手机应用为例,2G手机只需提供语音及简单的文字短信功能,而目前的2.5G和未来的3G手机除了提供这两项功能外,还必须提供各种其他的应用功能。主要包括:(1
[应用]
arm7 力天电子lpc2148 GPIO之一蜂鸣器试验程序
实验利用P0.22的输出功能,控制蜂鸣器蜂鸣。程序设置PINSEL0使P0.22连接GPIO,并通过IO0DIR将其设置为输出状态;然后通过IO0DET和IO0CLR置位和清零P0.22口,控制蜂鸣器。 #include NXP/iolpc2148.h void Delay(unsigned long n); main() { PINSEL0=0x00000000; //设置引脚连接GPIO IO0DIR=1 22; //P0.7控制蜂鸣器, 设置为输出 while(1) { IO0SET=1 22; //蜂鸣器蜂鸣 Delay(100000); //延时 IO0CLR=1 22; //蜂鸣器停
[单片机]
<font color='red'>arm7</font> 力天电子lpc2148 GPIO之一蜂鸣器试验程序
基于ARM7 μC/OSII的数据采集系统设计
在一些工业现场中,设备长时间运行容易出现故障,为了 监控 这些设备,通常利用数据采集装置采集他们运行时的数据并送给 PC 机,通过运行在PC机上的特定软件对这些数据进行分析,以此判断当前运行设备的状况,进而采取相应措施。当前常用的数据采集装置,在其系统软件设计中,多采用单任务顺序机制。这样就存在系统安全性差的问题。这对于稳定性、实时性要求很高的数据采集装置来说是不允许的,因此有必要引入嵌入式操作系统。笔者以μC/OSII为操作系统平台,基于ARM7系列处理器,对一种高性能的数据采集系统开发进行了探索。 1μC/OSII嵌入式操作系统简介 嵌入式操作系统μC/OSII(microcontroller operating sy
[应用]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved