c语言sscanf函数的用法是什么
270
2022-10-27
基于MT9075数字中继接口功能的设计
1、MT9075芯片简介[1]
3)处理机接口,A0~A5,DO~D7,CS,R/W 等。MT9075与处理机的接口可采用两种接法:INT或MOT,这里采用INT接法。MT9075的地址线A0~A4、DO~D7直接与S3C44B0的相应的地址线和数据线相连,作为S3C44B0的一个外部扩展器件占用一定的地址空间。S3C44B0通过片选信号NGCS5和/RD、/WR读写信号对MT9075进行控制。[3]
图1 MT9075 电路图
3、软件部分设计
软件分别从对MT9075的读写控制、初始化处理以及数字中继处理程序三方面进行介绍。MT9075分配的地址是S3C44B0的NGCS5下的一部分地址,其基地址为0a000000,定义如下:
#define MT9075_ADDR1 (*(volatile unsigned char *) 0x0a000011)
3.1 对MT9075的读写控制
对MT9075的读写控制主要分为2个步骤:第一步选择要读写的控制字页号,第二步对该页内的控制字进行读写控制操作。如对MT9075进行软复位,代码如下所示:
MT9075_Page = 0x01; //选择Page 01H(Master Control 1)
MT9075_ADDR1 = 0x20; //对Page 01H下的控制字Mode Selection Control Word(11H)//进行写操作设置MT9075软件复位,写入控制字0x20
3.2 对MT9075的初始化处理
为使代码简洁,用一个函数代替了上面对MT9075读写控制的两个步骤,函数如下:
Control_9075 (PageNo, RegAddr, Wdata)
{ MT9075_Page = PageNo;
RegAddr = Wdata; }
对MT9075的初始化代码如下:
Control_9075 (0x01,MT9075_Addr1, 0x20);
Control_9075 (0x01,MT9075_Addr11, 0xff);
Control_9075 (0x01,MT9075_Addr10, 0xc8);
Control_9075 (0x01,MT9075_Addr1, 0x82);
Control_9075 (0x01,MT9075_Addr15, 0x02);
Control_9075 (0x02,MT9075_Addr8, 0xa0);
Control_9075 (0x02,MT9075_Addr3, 0x04);
Control_9075 (0x01,MT9075_Addr10, 0x8c);
Control_9075 (0x01,MT9075_Addr2, 0x9f);
Control_9075 (0x05,MT9075_Addr1, 0xff);
Control_9075 (0x05,MT9075_Addr2, 0xff);
。。。 。。。 。。。 。。。
Control_9075 (0x05,MT9075_Addr15, 0xff);
3.3 数字中继处理程序
在实现过程中,信令部分是自己设计的一个简单协议,不是标准的E1信令。信令在DSTo和DSTi的第16时隙中传输,同步信令在第0时隙中传输,主叫方的信令通过接口线传输到达被叫中继,存入被叫方MT9075的寄存器中,被叫方CPU通过读取寄存器中的信令内容来执行相应的操作,被叫方信令到达主叫方和这个过程相反。图2为一用户通过数字中继呼叫另一用户的示意图。此图假定被叫方不忙,若此过程中任一时刻被叫方忙,则发送被叫忙的信息给主叫方,让主叫方关闭已开通道等待下次呼叫。图3为数字中继处理程序的基本流程图。
图2 数字中继呼叫示意图
4、结束语
应用以上方案设计的数字中继续接口电路的硬件软件都已调试通过,工作稳定,能够满足用户的正常使用。用单片MT9075可以同时实现30对用户的交换工作,考虑到用户不在同时通话,即可以非常方便的实现更多用户的交换工作。
图3 数字中继处理程序基本流程图
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~