vx编译器
1. 求程控交换PCM编译码实验的毕业设计
程控交换原理实验系统及控制单元实验
一、 实验目的
1、熟悉该程控交换原理实验系统的电路组成与主要部件的作用。
2、体会程控交换原理实验系统进行电话通信时的工作过程。
3、了解CPU中央集中控制处理器电路组成及工作过程。
二、 预习要求
预习《程控交换原理》与《MCS-51单片计算机原理与应用》中的有关内容。
三、 实验仪器仪表
1、主机实验箱 一台
2、三用表 一台
3、电话单机 四台
四、 实验系统电路组成
(一)电路组成
图1-1是该实验系统的原理框图
图1-1 实验系统的原理框图
图1—2是该实验系统的方框图,其电路的组成及主要作用如下:
1、用户模块电路 主要完成BORSCHT七种功能,它由下列电路组成:
A、 用户线接口电路
B、 二\四线变换器
C、 PCM编译码电路
用户线接口电路 二/ 四线变换器 二/四线变换器 用户线接口电路
用户1 PCM CODEC电路 PCM CODEC电路 用户3
用户线接口电路 二/ 四线变换器 二/ 四线变换器 用户线接口电路
用户2 PCM CODEC电路 PCM CODEC电路 用户4
时钟信号电路 控制、检测电路 输出显示电路 二次稳压电路
多种信号音电路 CPU中央处理器 键盘输入电路 直流电源
图1-2实验系统方框图
2、交换网络系统 主要完成空分交换与时隙交换两大功能,它由下列电路组成:
A、空分交换网络系统
B、时隙交换网络系统
3、多种信号音电路 主要完成各种信号音的产生与发送,它由下列电路组成:
A、450Hz拨号音电路
B、忙音发生电路
C、回铃音发生电路
D、25Hz振铃信号电路
4、CPU中央集中控制处理器电路 主要完成对系统电路的各种控制,信号检测,号码识别,键盘输入信息,输出显示信息等各种功能。
5、系统工作电源 主要完成系统所需要的各种电源,本实验系统中有+5V,-5V,+12V,-12V,-48V等5组电源,由下列电路组成:
A、内置工作电源:+5V,+12V,-12V,-48V
B、稳压电源: -8V,-5V
控制部分就是由CPU中央处理系统、输入电路(键盘)、输出电路(数码管)、双音多频DTMF检测电路、用户环路状态检测电路、自动交换网络驱动电路与交换网络转换电路、扩展电路、信号音控制电路等电路组成。
下面简要说明各部分电路的作用与要求:
1、键盘输入电路:主要把实验过程中的一些功能通过键盘设置到系统中。
2、显示电路: 显示主叫与被叫电路的电话号码,同时显示通话时间。
3、输入输出扩展电路:显示电路与键盘输入电路主要通过该电路进行工作。主要芯片是D8155A,SN74LS240,MC1413。
4、双音多频DTMF接收检测电路:把MT8870DC输出的DTMF四位二进制信号,接收存贮后再送给CPU中央集中控制处理系统。
5、用户状态检测电路:主要识别主、被叫用户的摘挂机状态,送给CPU进行处理。
6、自动交换网络驱动电路:主要实现电话交换通信时,CPU发出命令信息,由此电路实现驱动自动交换网络系统,其核心集成电路为SN74LS374,D8255A,GD74LS373等芯片。
7、信号音控制电路:它完全按照CPU发出的指令进行操作,使各种信号音按照系统程序进行工作。
8、振铃控制电路:它也是按照CPU发出的指令进行工作,具体如下:
(A)不振铃时,要求振铃支路与供电系统分开。
(B)振铃时,铃流送向话机,并且供电系统通过振铃支路向用户馈电,用户状态检测电路同时能检测用户的忙闲工作状态。
(C)当振铃时,用户一摘机就要求迅速断开振铃支路。
(D)振铃时要求有1秒钟振、4秒钟停的通断比。
以上是CPU中央集中控制处理系统的主要工作过程,要全面具体实现上述工作过程,则要有软件支持,该软件程序流程图见图1—4。
图1-3 键盘功能框图
对图1-3所示的键盘功能作如下介绍:
“时间”: 该键可设置系统的延时时间。如久不拔号、久不应答、位间不拔号的延时,缺省值为10秒,可选择的时间值有10秒、30秒、1分钟。按一次该键则显示下一个时间值,三个值循环显示,当按下“确认”键时,就选定当前显示值供系统使用,按“复位”键则清除该次时间的设定。
“会议电话”: 该键为召开电话会议的按键。电话会议设置用户1为主叫方,其他三路为被叫方,只能由主叫方主持召开会议,向其他三路发出呼叫。电路完全接通或者接通两路后,主叫方能和任一被叫方互相通话。除“复位”键外,其他键均推失去功能。会议结束后,可按“复位”键重启系统。
“中继”: 该键为局内交换切向中继交换的功能按键,按下此键,再按“确认”键进行确认,则工作模式由局内交换切换为中继交换,显示器循环显示“d”,此时方可通过中继拨打“长途”电话。按“复位”键重启系统,进入正常局内交换模式。
“确认”: 该键完成对其他功能键的确认,防止误按键,在键盘中除“复位”键外,其他功能键都必须加“确认”键才能完成所定义的功能。
“复位”: 该键为重启系统按键。在任何时候或者系统出现不正常状态时都可按下此键重启系统(有用户通话时,会中断通话),所有设置均为默认值。
图1-5是显示电路工作示意说明图。
主叫号码显示 计时显示 被叫号码显示
图1-5 显示电路
开 始
NO
有用户呼叫吗?
呼叫�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1 YES
去 话 接 续
向主叫送拨号音
NO
第一位号码来了吗?
拨号开始�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1 YES
停送拨号音,收存号码
内 部 处 理
拨号完毕�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1
被叫闲吗? NO
YES
来 话 接 续 向主叫送忙音
向被叫送铃流,向主叫送回铃音
被叫应答否? NO
主叫挂机否?
应答�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1 YES
停送铃流,回铃音,接通电路 YES
话终挂机否?
挂机�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1 YES
拆线(释放复原)
结 束
图1-4 程序工作流程示意图
五、实验内容
1、测量实验系统电路板中的TP91~TP95各测量点电压值,并记录。
2、从总体上初步熟悉两部电话单机用空分交换方式进行通话。
3、初步建立程控交换原理系统及电话通信的概念。
4、观察并记录一个正常呼叫的全过程。
5、观察并记录一个不正常呼叫的状态。
图1-6 呼叫识别电路框图
五、 实验步骤
1、接上交流电源线。
2、将K11~K14,K21~K24,K31~K34,K41~K44接2,3脚;K70~K75接2,3脚;K60~K63接2,3脚。
3、先打开“交流开关”,指示发光二极管亮后,再分别按下直流输出开关J8,J9。此时实验箱上的五组电源已供电,各自发光二极管亮。
4、按 “复位”键进行一次上电复位,此时,CPU已对系统进行初始化处理,数码管循环显示“P” ,即可进行实验。
5、将三用表拔至直流电压档,然后测量TP91,TP92,TP93,TP94,TP95的电压是否正常:TP91为-12V,TP92为-48V,TP93为+5V,TP94为+12V,TP95为-5V。(-48V允许误差±10%,其它为±5%)
6、将四个用户接上电话单机。
7、正常呼叫全过程的观察与记录。(现以用户1为主叫,用户4为被叫进行实验)
A、 主叫摘机,听到拨号音,数码管显示主叫电话号码“68” 。
B、 主叫拨首位被叫号码“8”,主叫拨号音停,主叫继续拨完被叫号码“9”。
C、 被叫振铃,主叫听到回铃音。
D、 被叫摘机,被叫振铃停,主叫回铃音停,双方通话。数码管显示主叫号码和被叫号码,并开始通话计时。
E、 挂机,任意一方先挂机(如主叫先挂机),另一方(被叫)听到忙音,计时暂停,双方都挂机后,数码管循环显示“P” 。
8、不正常呼叫的自动处理
A、 主叫摘机后在规定的系统时间内不拨号,主叫听到忙音。(系统时间可以设置,在系统复位后按“时间”可循环显示“10”,“30”,“100”,分别表示10秒,30秒,1分钟,选定一个时间,按“确定”即系统时间被设置,在复位状态时,系统时间默认为10秒。)
B、 拨完第一位号码后在规定的系统时间内没有拨第二位号码时,主叫听到忙音。
C、 号码拨错时(如主叫拨“56” ),主叫听到忙音。
D、 被叫振铃后在规定的系统时间内不摘机,被叫振铃音停,主叫听到忙音。
六、 实验注意事项
对实验系统加电一定要严格遵循先打开系统工作电源的“交流开关”,然后再打开直流输出开关J8,J9。实验结束后,先分别关直流输出开关J8,J9。最后再关“交流开关”,以避免实验电路的器件损坏。
七、 实验报告要求
1、画出实验系统电路的方框图,并作简要叙述。
2、对正常呼叫全过程进行记录。
实验二 用户线接口电路及二\四线变换实验
一、实验目的
1、全面了解用户线接口电路功能(BORST)的作用及其实现方法。
2、通过对MH88612C电路的学习与实验,进一步加深对BORST功能的理解。
3、了解二\四线变换电路的工作原理。
二、预习要求
认真预习程控交换原理中有关用户线接口电路等章节。
三、实验仪器仪表
1、主机实验箱 一台
2、电话单机 二台
3、20MHz示波器 一台
4、三用表 一台
四、电路工作过程
在现代电话通信设备与程控交换机中,由于交换网络不能通过铃流、馈电等电流,因而将过去在公用设备(如绳路)实现的一些用户功能放到“用户电路”来完成。
用户电路也可称为用户线接口电路(Subscriber Line Interface Circuit—SLIC)。任何交换机都具有用户线接口电路。
模拟用户线接口电路在实现上的最大压力是应能承受馈电、铃流和外界干扰等高压大电流的冲击,过去都是采用晶体管、变压器(或混合线圈)、继电器等分立元件构成,随着微电子技术的发展,近十年来在国际上陆续开发多种模拟SLIC,它们或是采用半导体集成工艺或是采用薄膜、厚膜混合工艺,并已实用化。在实际中,基于实现和应用上的考虑,通常将BORSCHT功能中过压保护由外接元器件完成,编解码器部分另单成一体,集成为编解码器(CODEC),其余功能由所谓集成模拟SLIC完成。
在布控交换机中,向用户馈电,向用户振铃等功能都是在绳路中实现的,馈电电压一般是-60V,用户的馈电电流一般是20mA~30 mA,铃流是25HZ,
90V左右,而在程控交换机中,由于交换网络处理的是数字信息,无法向用户馈电、振铃等,所以向用户馈电、振铃等任务就由用户线接口电路来承担完成,再加上其它一些要求,程控交换机中的用户线接口电路一般要具有B(馈电)、O(过压保护)、R(振铃)、S(监视)、C(编译码)、H(混合)、T(测试)七项功能。
模拟用户线接口电路的功能可以归纳为BORSCHT七种功能,具体含义是:
(1)馈电(B-Battery feeling)向用户话机送直流电流。通常要求馈电电压为—48伏,环路电流不小于18mA。
(2)过压保护(O-Overvoltage protection)防止过压过流冲击和损坏电路、设备。
(3)振铃控制(R-Ringing Control)向用户话机馈送铃流,通常为25HZ/90Vrms正弦波。
(4)监视(S-Supervision)监视用户线的状态,检测话机摘机、挂机与拨号脉冲等信号以送往控制网络和交换网络。
(5)编解码与滤波(C-CODEC/Filter)在数字交换中,它完成模拟话音与数字码间的转换。通常采用PCM编码器(Coder)与解码器(Decoder)来完成,统称为CODEC。相应的防混叠与平滑低通滤波器占有话路(300HZ~3400HZ)带宽,编码速率为64kb/s。
(6)混合(H-Hyhird)完成二线与四线的转换功能,即实现模拟二线双向信号与PCM发送,接收数字四线单向信号之间的连接。过去这种功能由混合线圈实现,现在改为集成电路,因此称为“混合电路”。
(7)测试(T-Test)对用户电路进行测试。
模拟用户线接口功能见图2—1。
铃流发生器 馈电电源
发送码流
过 振 低通 编
a 压 测 铃 馈 混 码
模
拟 保 试 继 电 合 平衡 器
用 (编码信号)
户 护 开 电 电 电 网络 解
线
b 电 关 器 路 路 码
路 低通 器
接收码流
测试 振铃控台 用户线
总线 制信号弹 状态信号
图2-1 模拟用户线接口功能框
(一)用户线接口电路
在本实验系统中,用户线接口电路选用的是MITEL公司的MH88612C。MH88612C是2/4线厚膜混合用户线接口电路。它包含向用户话机恒流馈电、向被叫用户话机馈送铃流、用户摘机后自行截除铃流,摘挂机的检测及音频或脉冲信号的识别,用户线是否有话机的识别,语音信号的2/4线混合转换,外接振铃继电器驱动输出。MH88612C用户电路的双向传输衰耗均为-1dB,供电电源+5V和-5V。其各项性能指标符合邮电部制定的有关标准。
(1)该电路的基本特性
1、向用户馈送铃流
2、向用户恒流馈电
3、过压过流保护
4、被叫用户摘机自截铃
5、摘挂机检测和LED显示
6、音频或脉冲拨号检测
7、振铃继电器驱动输出
8、语音信号的2/4线转换
9、能识别是否有话机
10、无需偶合变压器
11、体积小及低功耗
12、极少量外围器件
13、厚膜混合型工艺
14、封装形式为20引线单列直插
图2-2是它的管脚排列图
(2)MH88612C引出端功能的说明
0脚:IC Internal Connection:空端。
1脚:TF Tip Feed: 连接外接二极管作为保护电路连到-48V和地。。
2脚:IC Internal Connection:空端。
3脚:VR Voice Receive(input): 四线语音信号的接收端。
4脚:VRef Voltage Reference:设置向用户电话线送恒流馈电的参考电压,恒流通过VRef调节;也可接地,一般为21mA环流。
5脚:VEE 负供电电源,通常为-5V DC。
6脚:GNDA 供电电源和馈电电源的地端,模拟接地。
7脚:GS Gain setting(input):低电平时直接接收附加增益为-0.5 dB,
此增益除编解码增益设置之外的,高电平时为0dB。
8脚:VX Voice Transmit(output):四线语音信号的发送端。
9脚:TIP 连接用户电话的“TIP”线。
10脚:RING 连接用户电话的“RING”线。
11脚:RF Ring Feed:外部连接至振铃继电器。
12脚:VDD 正供电电源,通常为+5V DC。
13脚:RC Relay Control(input)振铃继电器控制输入端,高电平有效
14脚:RD 振铃继电器驱动输出端,外接振铃继电器线圈至地端,内部有一线圈感应箝位二极管。
15脚:RV Ring Feed Voltage:用户线铃流源输入端,外部连接至振铃继电器。
16脚:VRLY 振铃继电器正供电电源,能常为+5V DC。
17脚:IC Internal Connection:空端。
18脚:VBat 用户线馈电电压,通常为-48V DC
19脚:CAP 连接外部电容作为振铃滤波控制连电阻到地。
20脚:SHK 摘挂机状态检测及脉冲号码输出端,摘机时输出高电平。
(3)用户线接口电路主要功能
图2-3是MH88612C内部电路方框图,其主要功能说明如下:
TF VR
TIP
RING VX
RF
RV
VRLY
RC
VRef
RD CAP
SHK
图2-3 MH88612C内部电路方框图
1、向用户话机供电,MH88612C可对用户话机提供恒流馈电,馈电电流由VBAT以及VDD供给。恒定的电流为25 mA。当环路电阻为2KΩ时,馈电电流为18 mA,具体如下:
A、 供电电源VBat采用-48V;
B、 在静态情况下(不振铃、不呼叫),-48V电源通过继电器静合接点至话机;
C、 在振铃时,-48V电源通过振铃支路经继电器动合接点至话机;
D、 用户挂机时,话机叉簧下压馈电回路断开,回路无电流流过;
E、 用户摘机后,话机叉簧上升,接通馈电回路(在振铃时接通振铃支路)回路。
2、MH88612C内部具有过压保护的功能,可以抵抗保护TIP- -RING端口间的瞬时高压,如结合外部的热敏与压敏电阻保护电路,则可保护250V左右高压。
3、振铃电路可由外部的振铃继电器和用户电路内部的继电器驱动电路以及铃流电源向用户馈送铃流:当继电器控制端(RC端)输入高电平,继电器驱动输出端(RD端)输出高电平,继电器接通,此时铃流源通过与振铃继电器连接的15端(RV端)经TIP––RING端口向被叫用户馈送铃流。当控制端(RC端)输入低电平或被叫用户摘机都可截除铃流。用户电路内部提供一振铃继电器感应电压抑制箝位二极管。
4、监视用户线的状态变化即检测摘挂机信号,具体如下:
A、用户挂机时,用户状态检测输出端输出低电平,以向CPU中央集中控制系统表示用户“闲”;
B、用户摘机时,用户状态检测输出端输出高电平,以向CPU中央集中控制系统表示“忙”;
5、在TIP––RING端口间传输的语音信号为对地平衡的双向语音信号,在四线VR端与VX端传输的信号为收发分开的不平衡语音信号。MH88612C可以进行TIP––RING端口与四线VR端和VX端间语音信号的双向传输和2/4线混合转换。
6、MH88612C可以提供用户线短路保护:TIP线与RING线间,TIP线与地间,RING线与地间的长时间的短路对器件都不会损坏。
7、MH88612C提供的双向语音信号的传输衰耗均为-dB。该传输衰耗可以通过MH88612C用户电路的内部调整,也可通过外部电路调整;
8、MH88612C的四线端口可供语音信号编译码器或交换矩阵使用。
由图1-1可知,本实验系统共有四个用户线接口电路,电路的组成与工作过程均一样,因此只对其中的一路进行分析。
图2-4是用户1用户线接口电路的原理图:
图2-4 用户线接口电路电原理图
为了简单和经济起见,反映用户状态的信号一般都是直流信号,当用户摘机时,用户环路闭合,有用户线上有直流电流流过。主叫摘机表示呼叫信号,被叫摘机,则表示应答信号,当用户挂机时,用户环路断开,用户线上的直流电流也断开,因此交换机可以通过检测用户线上直流电流的有无来区分用户状态。
当用户摘机时,发光二极管D10亮表示用户已处于摘机状态,TP13由低电平变成高电平,此状态送到CPU进行检测该路是否摘机,当检测到该路有摘机时,CPU命令拨号音及控制电路送出f=450HZ,U=3V的波形。
此时,在TP12上能检测到如图2—5所示波形
TP12
0 2VP-P t
f = 400~450Hz
图2-5 450Hz拨号音波形
当用户听到450HZ拨号音信号时,用户开始拨电话号码,双音多频号码检测电路检测到号码时通知CPU进行处理,CPU命令450HZ拨号音发生器停止送拨号音,用户继续拨完号码,CPU检测主叫所要被叫用户的号码后,立即向被叫用户送振铃信号,提醒被叫用户接听电话,同时向主叫用户送回铃音信号,以表示线路能够接通,当被叫用户摘机时,CPU接通双方线路,通信过程建立。一旦接通链路,CPU即开始计时,当任一方先挂机,CPU检测到后,立即向另一方送忙音,以示催促挂机,至此,主、被叫用户一次通信过程结束。
通过上述简单分析,不难得出各测量点的波形。
TP11:通信时有发送话音波形;拨号时有瞬间DTMF波形;不通信时则此点无波形。
TP12:通信时有接收话音波形:摘机后拨号前有450HZ拨号音信号;不通信时则此点无波形。
TP13:摘挂机状态检测测量点
挂机:TP13=低电平。
摘机:TP13=高电平。
TP14:振铃控制信号输入,高电平有效。即工作时为高电平,常态为低电平。
由于4个用户线接口电路的测量点相同,故对其它三个用户线接口电路的测量点就不一一叙述,波形均相同,即:
TP11=TP21=TP31=TP41
TP12=TP22=TP32=TP42
TP13=TP23=TP33=TP43
TP14=TP24=TP34=TP44
(二)二\四线变换电路
在该实验系统中,二\四线变换由用户线接口电路中的语音单元电路实现,图2-6为电路的功能框图,该电路完成二线–––单端之间信号转换,在MH88612C内部电路中已经完成了该变换。
T
TR
R
图2-6 二/四线变换功能框图
二\四线变换的作用就是把用户线接口电路中的语音模拟信号(TR)通过该电路的转换分成去话(T)与来话(R),对该电话的要求是:
1、将二线电路转换成四线电路;
2、信号由四线收端到四线发端要有尽可能大的衰减,衰减越大越好;
3、信号由二线端到四线发端和由四线收端到二线端的衰减应尽可能小,越小越好;
4、应保持各传输端的阻抗匹配;
以便于PCM编译码电路形成发送与接收的数字信号。
五、实验内容
1、参考有关程控交换原理教材中的用户线接口电路等单节,对照该实验系统中的电路,了解其电路的组成与工作过程。
2、通过主叫、被叫的摘、挂机操作,了解B、R、S等功能的具体作用。
六、实验步骤
1. 接上交流电源线。
2. 将K11~K14,K21~K24,K31~K34,K41~K44接2,3脚;K70~K75接2,3脚;K60~K63接2,3脚。
3. 先打开“交流开关”,指示发光二极管亮后,再分别按下直流输出开关J8,J9,此时实验箱上的五组电源已供电,各自发光二极管亮。
4. 按“复位”键进行一次上电复位,此时,CPU已对系统进行初始化处理,显示电路循环显示“P”,即可进行实验。
5. 用户1,用户3接上电话单机。
6. 用户电话单机的直流供电(B)的观测。(现以用户1为例)
1) 用户1的电话处于挂机状态,用三用表的直流档测量TP1A,TP1B对地的电压,TP1A为-48V,TP1B为0V,它们之间电压差为48V。
2) 用户1的电话处于摘机状态,用三用表的直流档测量TP1A,TP1B对地的电压,TP1A为-10V左右(此时的电压与电话的内阻抗有关,所以每部电话的测量值不一定相同),TP1B为-3.7V左右。
以上给出的电压值只是作为参考。
7. 观察二/四线变换的作用。
1) 用正常的呼叫方式,使用户1、用户3处于通话状态。
2) 当用户1对着电话讲话时(或按电话上的任意键),用示波器观察TP11上的波形,为语音信号(或双音多频信号),不讲话时无信号。
3) 当用户1听到用户3讲话时(或用户3按电话上任意键),用示波器观察TP12上的波形,为语音信号(或双音多频信号),对方不讲话时无信号。
4) 用示波器观察TP1A。不管是用户1讲话还是用户3讲话(或按电话上的任意键)此测试点都有语音波形(或双音多频信号)。
8. 摘、挂机状态检测的观测。
1) 当用户1的电话摘机时,用示波器测量TP13为高电平(4V左右)。
2) 当用户1的电话挂机时,用示波器测量TP13为低电平(0V左右)。
9. 被叫话机振铃(R)的观测。
1) 用户1处于挂机状态,用户3呼叫用户1,即用户3拨打“68”,使用户1振铃。
2)当用户1的电话振铃时,用示波器观察TP14,振铃时TP14为高电平(3V左右);不振铃时TP14为低电平(0V左右)。
七、实验注意事项
当实验过程中出现不正常现象时,请按一下“复位”键,以使系统重新启动。
八、实验报告要求
1、画出本次实验电路方框图,并能说出其工作过程。
2、画出各测量点在各种情况下的波形图。
2. Microsoft VBScript 编译器错误 错误 '800a0400'
晕,这是加密后的代码吧?
3. 如何编译hi3520d sdk
第一章 Hi3520D_SDK_Vx.x.x.x版本升级操作说明
如果您是首次安装本SDK,请直接参看第2章。
第二章 首次安装SDK
1、hi3520D SDK包位置
在"hi3520D_V100R001***/01.software/board"目录下,您可以看到一个 hi3520D_SDK_Vx.x.x.x.tgz 的文件,
该文件就是hi3520D的软件开发包。
2、解压缩SDK包
在linux服务器上(或者一台装有linux的PC上,主流的linux发行版本均可以),使用命令:tar -zxf hi3520D_SDK_Vx.x.x.x.tgz ,
解压缩该文件,可以得到一个hi3520D_SDK_Vx.x.x.x目录。
3、展开SDK包内容
返回hi3520D_SDK_Vx.x.x.x目录,运行./sdk.unpack(请用root或sudo权限执行)将会展开SDK包打包压缩存放的内容,请按照提示完成操作。
如果您需要通过WINDOWS操作系统中转拷贝SDK包,请先运行./sdk.cleanup,收起SDK包的内容,拷贝到新的目录后再展开。
4、在linux服务器上安装交叉编译器
1)安装uclibc交叉编译器(注意,需要有sudo权限或者root权限):
进入hi3520D_SDK_Vx.x.x.x/osdrv/toolchain/arm-hisiv100nptl-linux目录,运行chmod +x cross.install,然后运行./cross.install即可。
2) 安装glibc交叉编译器(注意,需要有sudo权限或者root权限,暂时不支持glibc版本):
进入hi3520D_SDK_Vx.x.x.x/osdrv/toolchain/arm-hisiv200-linux目录,运行chmod +x cross.install,然后运行./cross.install即可。
3) 执行source /etc/profile, 安装交叉编译器的脚本配置的环境变量就可以生效了,或者请重新登陆也可。
5、编译osdrv
参见osdrv目录下readme
6、SDK目录介绍
hi3520D_SDK_Vx.x.x.x 目录结构如下:
|-- sdk.cleanup # SDK清理脚本
|-- sdk.unpack # SDK展开脚本
|-- osdrv # 存放操作系统及相关驱动的目录
| |-- busybox # busybox源代码
| |-- drv # drv源代码
| |-- kernel # linux内核源代码
| |-- pub # 编译好的镜像、工具、drv驱动等
| |-- rootfs_scripts # rootfs源代码
| |-- toolchain # 交叉编译器
| |-- tools # linux工具源代码
| |-- uboot # uboot源代码
| `-- Makefile # osdrv Makefile
|-- package # 存放SDK各种压缩包的目录
| |-- osdrv.tgz # linux内核/uboot/rootfs/tools源码压缩包
| |-- mpp.tgz # 媒体处理平台软件压缩包
| `-- image # 可供FLASH烧写的映像文件,如内核、根文件系统
|-- scripts # 存放shell脚本的目录
|-- mpp # 存放媒体处理平台的目录
|-- component # 组件源代码
|-- extdrv # 板级外围驱动源代码
|-- include # 对外头文件
|-- ko # 内核模块
|-- lib # release版本库以及音频库
|-- tools # 媒体处理相关工具
`-- sample # 样例源代码
第三章、安装、升级hi3520DDEMO板开发开发环境
# 如果您使用的hi3520D的DEMO板,可以按照以下步骤烧写u-boot,内核以及文件系统,以下步骤均使用网络来更新。
# 通常,您拿到的单板中已经有u-boot,如果没有的话,就需要使用仿真器进行烧写。
# 更详细的操作步骤及说明,请参见01.software\board\documents目录下的《Linux开发环境用户指南》。
# 以下操作假设您的单板上已经有u-boot,使用网口烧写uboot、kernel及rootfs到Flash中。
# Demo单板默认为从SPI Flahs启动。
1、配置tftp服务器
# 可以使用任意的tftp服务器,将package/image_uclibc(或image_glibc)下的相关文件拷贝到tftp服务器目录下。
2、参数配置
# 单板上电后,敲任意键进入u-boot。设置serverip(即tftp服务器的ip)、ipaddr(单板ip)和ethaddr(单板的MAC地址)。
setenv serverip xx.xx.xx.xx
setenv ipaddr xx.xx.xx.xx
setenv ethaddr xx:xx:xx:xx:xx:xx
setenv netmask xx.xx.xx.xx
setenv gatewayip xx.xx.xx.xx
ping serverip,确保网络畅通。
3、烧写映像文件到SPI Flash
以16M SPI Flash为例。
1)地址空间说明
| 1M | 4M | 11M |
|---------------|---------------|---------------|
| boot | kernel | rootfs |
以下的操作均基于图示的地址空间分配,您也可以根据实际情况进行调整。
2)烧写u-boot
sf probe 0
mw.b 82000000 ff 100000
tftp 0x82000000 u-boot-hi3520D.bin
sf probe 0
sf erase 0 100000
sf write 82000000 0 100000
reset
3)烧写内核
mw.b 82000000 ff 400000
tftp 82000000 uImage_3520d
sf probe 0
sf erase 100000 400000
sf write 82000000 100000 400000
4)烧写文件系统
mw.b 82000000 ff b00000
tftp 0x82000000 rootfs_3520d_64k.jffs2
sf erase 500000 b00000
sf write 82000000 500000 b00000
5)设置启动参数
setenv bootargs 'mem=64M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=jffs2 mtdparts=hi_sfc:1M(boot),4M(kernel),11M(rootfs)'
setenv bootcmd 'sf probe 0;sf read 0x82000000 0x100000 0x400000;bootm 0x82000000'
sa
4、启动新系统
reset # 重启进入新系统。
第四章、开发前环境准备
1、管脚复用
与媒体业务相关的管脚复用都在mpp/ko_hi3520D目录下的sh脚本中配置,如果与实际情况不符请直接修改,此脚本被load3520D调用,在加载mpp内核模块之前被执行;
mpp之外的其他管脚复用统一在uboot中配置,详细说明请参见《U-boot移植应用开发指南》。
第五章、使用SDK和DEMO板进行开发
1、开启Linux下的网络
# 设置网络
ifconfig eth0 hw ether xx:xx:xx:xx:xx:xx;
ifconfig eth0 xx.xx.xx.xx netmask xx.xx.xx.xx;
route add default gw xx.xx.xx.xx
# 然后ping一下其他机器,如无意外,网络将能正常工作。
2、使用NFS文件系统进行开发
# 在开发阶段,推荐使用NFS作为开发环境,可以省去重新制作和烧写根文件系统的工作。
# 挂载NFS文件系统的操作命令:
mount -t nfs -o nolock -o tcp xx.xx.xx.xx:/your-nfs-path /mnt
# 然后就可以在/mnt目录下访问服务器上的文件,并进行开发工作。
3、开启telnet服务
# 网络正常后,运行命令 telnetd& 就可以启动单板telnet服务,然后才能使用telnet登录到单板。
4、运行MPP业务
# 在单板linux系统下,进入mpp/ko目录,加载KO
cd mpp/ko
./load3520D -i
# 进入各sample目录下执行相应样例程序(sample需要先在服务器上成功编译过)
cd mpp/sample/vio
./sample_vio 0
第六章 地址空间分配与使用
1、DDR内存管理说明
1)所有DDR内存中,一部分由操作系统管理,称为OS内存;另一部分由MMZ模块管理,供媒体业务单独使用,称为MMZ内存。
2)OS内存起始地址为0x80000000,内存大小可通过bootargs进行配置,例如第三章中的setenv bootargs 'mem=64M ... ',表示分配给操作系统内存为64M,您可以根据实际情况进行调整。
3)MMZ内存由MMZ内核模块管理(mpp/ko_hi35xx目录下的mmz.ko),加载mmz模块时,通过模块参数指定其起始地址及大小,例如:
insmod mmz.ko mmz=anonymous,0,0x84000000,186M:jpeg,0,0x8fa00000,5M anony=1 || report_error
表示mmz两块区域,区域一的名称为anonymous,起始地址为0x84000000,大小为186M;区域二的名称为jpeg,起始地址为0x8fa00000,大小为5M。
您可以通过修改mpp/ko_hi35XX目录下load3520D脚本中的mmz模块参数,来修改其起始地址和总大小。
4)请注意MMZ内存地址范围不能与OS内存重叠。
2、DEMO板DDR内存管理示意
1) 以容量为256MBytes的DDR内存为例,以下为根据本文档和SDK默认配置得到的内存管理示意图:
DDR:
-----|-------| 0x80000000 # Memory managed by OS.
64M | OS |
| |
-----|-------| 0x84000000 # Memory managed by MMZ block anonymous.
187M | MMZ |
| |
-----|-------| 0x8fa00000 # Memory managed by MMZ block jpeg.
5M | |
| |
-----|-------| 0x8ff00000 # Not used.
1M | |
| |
-----|-------| 0x90000000 # End of DDR.
注意:
(1)用户在配置启动参数时需要设置OS的管理内存为64M,“setenv bootargs 'mem=64M ...”。
(2)系统启动后,配置load3520D的脚本中mmz的管理内存为191M,“insmod mmz.ko mmz=anonymous,0,0x84000000,186M:jpeg,0,0x8fa00000,5M anony=1 || report_error”。