IDSP系统课程设计---------调制解调器系统设计II目录引言.............................................................-1-一、设计目的和任务...........................................-1-二、设计内容与要求...........................................-2-三、设计方案...................................................-2-3.1、系统整体的结构图.........................................-2-3.2、工作原理..................................................-3-3.2.1.调制-4-3.2.2.解调..................................................-4-3.3、硬件原理图.................................................-6-四、系统实现..................................................-12-4.1、硬件部分.................................................-12-4.2、软件部分.................................................-12-4.2.1、调制程序.............................................-12-4.2.2、解调程序.............................................-15-4.3、结语.....................................................-21-五、心得体会..................................................-22--1-引言FSK(Frequency-shiftkeying):频移键控频移键控是利用载波的频率变化来传递数字信息。它是利用基带数字信号离散取值特点去键控载波频率以传递信息的一种数字调制技术。是信息传输中使用得较早的一种调制方式,它的主要优点是:实现起来较容易,抗噪声与抗衰减的性能较好。在中低速数据传输中得到了广泛的应用。最常见的是用两个频率承载二进制1和0的双频FSK系统,即2FSK系统。二进制频移键控(2-FSK)频移键控是利用两个不同频率f1和f2的振荡源来代表信号1和0,用数字信号的1和0去控制两个独立的振荡源交替输出。技术上的FSK有两个分类,非相干和相干的FSK。在非相干的FSK,瞬时频率之间的转移是两个分立的频率。在另一方面,在相干频移键控或二进制的FSK,是没有间断期在输出信号。在数字化时代,电脑通信在数据线路(电话线、网络电缆、光纤或者无线媒介)上进行传输,就是用FSK调制信号进行的,即把二进制数据转换成FSK信号传输,反过来又将接收到的FSK信号解调成二进制数据,并将其转换为用高,低电平所表示的二进制语言,这是计算机能够直接识别的语言。随着现代通信技术的发展,软件化的通信思想趋于成熟。用DSP芯片或者通用CPU芯片作为无线通信的硬件平台,而尽可能多的用软件来实现通信功能,是现代通信领域广泛使用的方法。随着DSP芯片性价比的提高,其在通信、自动控制、仪器仪表等许多领域的应用也越来越广泛。一、设计目的和任务目的:通过本课程的实践,能进一步掌握高级语言程序设计基本概念,掌握基本的程序设计方法;通过设计一个完整的小型程序,初步掌握开发软件所需的需求定义能力、功能分解能力和程序设计能力、代码调试技能;学习编写软件设计文档;为未来的软件设计打下良好的基础。《DSP系统课程设计》是一项实践性和综合性都比较强的课程。通过本课程的学习,可以掌握典型DSP芯片的结构、原理和典型应用,既能巩固《数字信号处理基础》、《DSP原理及应用》、《通信原理》中相关的基础理论知识,又为日后从事相关系统开发设计奠定一定的基础。任务:利用所学知识,设计一个基于DSP的二进制频移键控(2FSK)调制解调系统。了解掌握2FSK调制与解调原理,熟悉Protel99、CCS2.2等软件开发环境,完成对2FSK调制与解调电路设计和仿真,分析仿真结果。-2-二、设计内容与要求绘制具备AD功能的DSP最小系统电路图,设计基于DSP的2FSK调制解调程序。设计2FSK调制解调的DSP程序,并给出相应的仿真结果。1.了解和熟悉DSP综合试验箱的结构原理和设置;存储器、逻辑控制等模块的原理和配置。2.开发工具熟悉DSP开发系统的连接;进一步熟悉CCS2.2开发环境的使用方法。3.DSP结构进一步熟悉DSP的硬件构造,特别是DSP外围存储单元及接口电路的设计。4.DSP最小系统设计绘制DSP最小系统电路图:外围存储器及ADC电路的设计。5.2FSK调制及解调理解2FSK调制及解调的原理,设计2FSK调制及解调的方案,给出具体的实现思路。6.FIR滤波器计算FIR实现所需的参数。7.FIR滤波器实现编写FIR滤波器实现的DSP程序。8.2FSK调制及解调实现给出2FSK调制及解调实现流程图,编写相关DSP实现程序。9.仿真验证2FSK调制及解调的DSP程序,给出相应的仿真结果。10.完成课程设计报告。三、设计方案3.1、系统整体的结构图图.1系统整体结构图-3-3.2、2FSK工作原理二进制频移键控的基本原理:用数字基带信号来控制高频载波频率的变化,使载波的频率在1f和2f之间变化。二进制频移信号可以看成两个不同载波的二进制振幅键控信号的叠加。若二进制基带信号的符号1对应于载波频率1f,符号0对应于载波频率2f,则二进制频移键控信号的时域表达式:nnbnbnFSKtnTtgatnTtgaS)cos(])([)cos()]([212(1)(1)式中,PPan110发送概率为发送概率为,bTttg010)(其他,112f,222f,na是na的反码,bT为码元持续时间,通常情况下,)(tg为单个矩形脉冲。二进制频移键控(2FSK)是数字通信中常用的一种调制方式,其调制与解调的方法有很多种。采用数字信号处理来实现二进制频移键控信号的数字调制与非相干数字解调,大大地降低了硬件电路的复杂程度,提高了系统的灵活性,能够满足二进制频移键控各种传输协议的要求。一个简易的2FSK工作原理如图2所示。在发送方,输入的基带数据信号经过调制和发送带通滤波器产生信道可传输的频带信号,送人信道;在接收端,接收带通滤波器除去带外所附加的噪声,将信号送入解调器(由延迟单元、乘法器和低,通滤波器构成),经过低通滤波器除去产生的高频信号,经取样判决得到输出数字序列,完成信号传输。输入数字序列低通滤波器调制器接收带通滤波器输出数字序列发送带通滤波器乘法器噪声信道延时K个采样点解调器图2.2FSK系统工作原理图3.2.1、2FSK调制2FSK调制就是把输人数字序列变成适合于信道传输的变频正弦波,所以2FSK的DSP实现关键就是产生正弦或余弦波形。产生正弦波的方法有差分迭代法、泰勒级数展开法、查表法等多种方法。本文中调制采用查表法产生正弦波。☞调制算法2FSK调制采用查表法,可以实现较好的实时性,特别适用于通信载波的生成。在DSP的程序存储空间,使用Q15定点数格式在[0,2π]上以2π/N的相位间隔固化N点正弦值,以供查表(这些值可由MATLAB软件首先计算好),在此取N=12。这样对于F0和F1的取样间隔分别为:”时发送数据“”时发送数据“1,2192/3212/110,1192/1612/00FsFNiFsFNi(2)使用DSP定时器T0,用来实现对数据解调DAC输出速率的控制。这样,如要实现12Kbps的-4-数传输速率,需要将DSP定时器T0的溢出率设置为192KHz。❖调制主程序流程图本文使用查表法提供2FSK调制所需要的两路正弦波,即sin0_table和sin1_table,当发送的数据为0时是发送sin0的数据,当发送的数据为1是发送sin1的数据。初始化完后,接收数据,判断“0”或“1”,打开中断,则定时器每隔一个周期产生一次中断,中断服务程序则完成一个采样点的输出。一个码元周期结束后,关中断,判断下一个发送数据,继续循环。主程序流程如右图3所示图图3.调制主程序流程3.2.2、2FSK解调采用软件化设计思想,解调器也可以采用DSP编程来实现。FSK解调有相干解调和非相干解调,虽然相干解凋抗干扰性能好,但他要求设置与发送设备中的高频载波同频同相的本地参考载波,使设备复杂,因此一般数字调频系统都采用非相干解调。常用的非相干解调算法有过零检测法和包络检测法以一种新的可用DSP软件实现的FSK非相干解调算法,即正交自延时FSK解调算法。☞解调算法针对小型通信系统,可以采用一种算法简单、占用存储空间小的2FSK信号差分检波解调算法,本文即采用的这种实时性较高的2FSK信号差分检波解调算法,它是模拟信号解调电路用到的差分检波原理在2FSK信号数字解调中的具体实现。算法的基本思想是已调信号和它的2/的延时信号相乘,然后经过低通滤波,根据滤波结果的符号判断发送信号的值,从而实现信号的解调。算法原理图如下图4所示。信号放大判决延时K个采样点乘法器低通滤波器输入)(nX)(nh)(nS)(knS)(nV)(nU)(nY输出图4.2FSK解调算法原理图延时等待(AR7=0?)关中断设置中断程序入口地址查找表的首地址初始化定时器和IMR寄存器开中断关中断接收要发送的数据NY-5-在接收端,接收带通滤波器输出信号采样值)(nS经延时器延迟k个采样点得到)(knS。k要小于每个二进制码元周期内的采样点数,使得)(nS和)(knS是属于同一个二进制码元的采样值。)(nS和)(knS相乘后的输出样值:)(nh)]24cos()2[cos(22])(2sin[)2sin(2)()()(sFkTsFnTsFkTAsTknFsFnTAknSnSnV(3)前面一部分是仅与k有关的常数。后面一部分是与n有关的高频分量,可通过对称系数低通滤波器h(n)来滤除。低通滤波器h(n)的截止频率设为12KHz,对称系数经Matlab计算求得:h0=0.00018497,h1=0.26316,h2=0.19272,h3=0.22079,通过该低通滤波器后得到:”发送数据“”发送数据“1),12cos(220),02cos(22)2cos(22)(skTFAskTFAsFkTAnU————————(4)k的选择是设计解调器的关键,应使差值:|)2cos()2cos(|)(10sskTFkTFkd———————(5)最大,以利于正确区分两种频率,降低判决的误码率。根据实际的测试得到,当k=2时,可以得到较好的区分度。经过低通滤波后的数据U(n)经过判决算法后,可以得到最终所要的解调数据Y(n)。-6-系统12个采样数据表示一个码元,当判决算法连续判决12个采样数据(一个码元包含的采样点)满足预设阈值之后,确定一个码元的状态。假设如下判决算法中用都得变量:LPFOUT→滤波器输出,DATA_THD→幅度判决的阈值,DEC_DATA_CURR→当前采样点判决值,DEC_DATA_BE→前一次采样点判决值,DEC_NUM→判决用计数器,DEC_NUM_X→周期计数器。判决算法流程图如下图所示:图图5.判决算法流程图3.3、硬件原理图♣音频接口原理图LPFOUT0?LPFOUT——滤波器输出DATA_THD——幅度判决的阈值DEC_DA