第十一章 基于PSoC的通信的实现.ppt
第11章 基于PSoC的通信电路的实现Chapter 10 Realization of Communication Circuit On PSoC,基于PSoC的通信电路的实现-前言,本章通过三个实例介绍了PSoC3/5在通信电子线路方面的应用。这三个实例主要包括:压控振荡器VCO的实现、幅度调制AM的实现、频率调制FM解调的实现。这三个实例是PSoC3/5在通信电子线路方面的典型应用,这些实例中也代表了当今最新的应用发展趋势。读者通过本章内容的学习,将进一步掌握PSoC在通信电子线路设计方面的高级应用方法和设计技巧。,压控振荡器VCO的实现,压控振荡器(Voltage Controlled Oscillator,VCO)就是通过电压来控制振荡器的工作频率。本节将介绍使用PSoC实现VCO。图11.1给出了基于PSoC的VCO实现结构图。输出频率由下式计算:(1),压控振荡器VCO的实现,图11.1 基于PSoC的VCO实现结构,压控振荡器VCO的实现-创建和配置工程,1打开软件PSoC Creator,在软件的Start Page界面下,点击Create New Project创建一个新的工程。2在New Project窗口,根据目标器件PSoC3/5,选择Empty PSoC3/5 Design模板,并将工程命名 VoltageControlledOscillator。选择工程保存路径,点击“OK”按钮;,压控振荡器VCO的实现-创建和配置工程(添加并配置IDAC模块),下面给出添加并配置IADC的步骤,主要步骤包括:1拖动IADC器件并将其放置于原理图内(Component Catalog-Analog-DAC-Current DAC(8-bit)。2双击原理图内的DAC_1器件打开配置窗口。3如图11.2,按如下方式,在Configure标签内进行配置:,压控振荡器VCO的实现-创建和配置工程(添加并配置IDAC模块),Name:IDAC Data_Source:CPU or DMA IDAC_Range:0-255uA(1uA/bit)IDAC_Speed:Low Speed Initial_Value:120 其余选项均为默认值。,压控振荡器VCO的实现-创建和配置工程(添加并配置IDAC模块),图11.2 IDAC配置界面,压控振荡器VCO的实现-创建和配置工程(添加并配置比较器模块),下面给出添加并配置比较器的步骤,主要步骤包括:1拖动比较器并将其放置于原理图内(Component Catalog-Analog-Comparator。2双击原理图内的CMP器件打开配置窗口。3如图11.3,按如下方式,在Configure标签内进行配置:Name:CMP 其余选项均为默认值。其余选项均为默认值。,压控振荡器VCO的实现-创建和配置工程(添加并配置比较器模块),图11.3 比较器配置模式,压控振荡器VCO的实现-创建和配置工程(添加模拟端口),下面给出添加并配置模拟引脚的步骤,主要步骤包括:1拖动模拟端口器件并将其放置于原理图内(Component Catalog-Ports and Pins-Analog Pin)。2双击原理图内的Pin_1器件打开配置窗口。,压控振荡器VCO的实现-创建和配置工程(添加模拟端口),如图11.4所示,按如下方式进行配置:Type标签下,参数如下配置:Name:Cint Number of Pins:1 Analog:选中该选项 Digital Output:选中该选项 HW Connection:选中该选项 其余选项均为默认值General标签下,参数如下配置:Drive Mode:Open Drain,Drives Low 其余选项均为默认值,压控振荡器VCO的实现-创建和配置工程(添加模拟端口),图11.4 引脚配置界面,压控振荡器VCO的实现-创建和配置工程(添加时钟输入源),下面给出添加并配置时钟输入源的步骤,主要步骤包括:1拖动模拟端口器件并将其放置于原理图内(Component Catalog-System-Clock)。2双击原理图内的Clock_1器件打开配置窗口。3如图11.5所示,按如下方式进行配置:,压控振荡器VCO的实现-创建和配置工程(添加时钟输入源),图11.5 时钟源配置界面,压控振荡器VCO的实现-创建和配置工程(添加频率输出端口),下面给出添加并配置频率输出端口的步骤,主要步骤包括:1拖动两个数字端口器件并将其放入原理图中(Component Catalog-Ports and Pins-Digital Output Pin)。2按如下方式配置两个数字端口dPort_LSB和dPort_MSB:Number of Pins:1,压控振荡器VCO的实现-创建和配置工程(添加频率输出端口),在TYPE标签栏下,按如下配置参数:Name:Fout Digital Output:选中 HW Connection:选中 其它按照默认参数设置在General标签栏下,按照如下配置参数:Drive Mode:Strong Drive 其它按照默认参数设置,压控振荡器VCO的实现-创建和配置工程(添加模拟电压输入端口),下面给出添加并配置模拟引脚的步骤,主要步骤包括:1拖动模拟端口器件并将其放置于原理图内(Component Catalog-Ports and Pins-Analog Pin)。2双击原理图内的Pin_1器件打开配置窗口。3按如下方式进行配置:,压控振荡器VCO的实现-创建和配置工程(添加模拟电压输入端口),Type标签下,参数如下配置:Name:Vin Number of Pins:1 Analog:只选中该选项 其余选项均为默认值General标签下,参数如下配置:Drive Mode:High Impedence Analog 其余选项均为默认值,压控振荡器VCO的实现-创建和配置工程(配置引脚),下面给出配置管脚的步骤,主要步骤包括:1从Workspace Explore,双击PSoCRocks.cydwr文件2点击pin标签。3如图11.6,按照如下方式进行配置:Cint连接到P05 Vin连接到P06 Fout连接到P07,压控振荡器VCO的实现-创建和配置工程(配置引脚),图11.6 引脚配置,压控振荡器VCO的实现-创建和配置工程(创建函数文件),其主程序主要完成以下功能:启动IDAC;设置IDAC电流为100uA;启动比较器。下面给出创建函数文件的步骤,主要步骤包括:1打开Workspace Explorer窗口中现有的main.c函数文件。2输入下面的main.c代码。,压控振荡器VCO的实现-编程及调试,下面给出添加并配置开发板的步骤,主要步骤包括:1使用USB电缆连接CY8CKIT-001开发板的USB接口到电脑USB的接口;2将0.1uF的电容连接到P05和地之间;3连接VR到P06;4给开发板进行供电;5使用前述方法进行编程。,压控振荡器VCO的实现-编程及调试,6编程结束之后,拔下USB电缆。7保存并且关闭工程。图11.7 VCO的输出和输入电压的关系8调整开发板上VR的输出,用示波器观察振荡器的输出频率的变化,图11.7给出了其中的变化。,压控振荡器VCO的实现-编程及调试,图11.7 VCO的输出和输入电压的关系,幅度调制AM的实现,幅度调制是模拟通信中常用的一种模拟信号远距离传输的方式,即使用一个载波信号对一个基带信号进行调制,这样,载波信号的幅度就随着基带信号进行变化。如图11.8,给出了基于PSoC实现调幅的原理图结构,该设计使用100kHz的载波信号对500Hz的基带信号进行幅度调制。图11.9给出了AM调制前后的频谱图。,幅度调制AM的实现,图11.8 AM的实现原理图,幅度调制AM的实现,图11.9 调制前后信号频谱图,幅度调制AM的实现-创建和配置工程,1打开软件PSoC Creator,在软件的Start Page界面下,点击Create New Project创建一个新的工程。2在New Project窗口,根据目标器件PSoC3/5,选择Empty PSoC3/5 Design模板,并将工程命名Mixer_AmpModulation。选择工程保存路径,点击“OK”按钮;,幅度调制AM的实现-创建和配置工程(添加并配置混频器),下面给出添加并配置混频器的步骤,主要步骤包括:1拖动VADC器件并将其放置于原理图内(Component Catalog-Analog-Mixer)2双击原理图内的Mixer_1器件打开配置窗口。图11.10 混频器配置界面3如图11.10,按如下方式,在Configure标签内进行配置:,幅度调制AM的实现-创建和配置工程(添加并配置混频器),LO_Freq:LO Freq 100kHz or greater Minimum_Vdda:2.7V or greater Mixer_Type:Multiply(Up)Mixer Power:High Power,幅度调制AM的实现-创建和配置工程(添加并配置混频器),图11.10 混频器配置界面,幅度调制AM的实现-创建和配置工程(添加并配置混频器),图11.11 放大器配置界面,幅度调制AM的实现-创建和配置工程(添加并配置参考源),下面给出添加并配置参考源的步骤,主要步骤包括:1拖动模拟端口器件并将其放置于原理图内(Component Catalog-Analog-Amplifiers-Opamp)。2双击原理图内的Opamp_1器件打开配置窗口。,幅度调制AM的实现-创建和配置工程(添加并配置参考源),3如图11.11所示,在Basic标签内按如下方式进行配置:Name:Opamp_Buffer Mode:Follower Power:High Power 其余选项均为默认值 该放大器的输出连接到混频器的Vref端。,幅度调制AM的实现-创建和配置工程(添加并配置带通滤波器网络),下面给出添加并配置参考源的步骤,主要步骤包括:1拖动模拟端口器件并将其放置于原理图内(Component Catalog-Analog-Amplifiers-Opamp)。2双击原理图内的Opamp_1器件打开配置窗口。,幅度调制AM的实现-创建和配置工程(添加并配置带通滤波器网络),3如图11.12所示,在Basic标签内按如下方式进行配置:Name:Opamp_Filter Mode:OpAmp Power:High Power 其余选项均为默认值 如图11.13,该放大器和电容电阻构成有源带通滤波器电路。提供了100kHz的带通滤波器,10kHz的通带范围。,幅度调制AM的实现-创建和配置工程(添加并配置带通滤波器网络),图11.12 放大器配置界面,幅度调制AM的实现-创建和配置工程(添加并配置带通滤波器网络),图11.13 带通滤波器的结构,幅度调制AM的实现-创建和配置工程(添加并配置载波信号源),下面给出添加并配置时钟输入源的步骤,主要步骤包括:1拖动模拟端口器件并将其放置于原理图内(Component Catalog-System-Clock)。2双击原理图内的Clock_1器件打开配置窗口。3如图11.14所示,按如下方式进行配置:,幅度调制AM的实现-创建和配置工程(添加并配置载波信号源),在Configure Clock标签内,按照如下参数设置;Name:Clock_Carrier Frequency:100kHz Tolerance:-5%-5%其余按默认参数设置;在Advanced标签内,按照如下参数设置:Sync with BUS_CLK:不选中;,幅度调制AM的实现-创建和配置工程(添加并配置载波信号源),图11.14 时钟源配置界面,幅度调制AM的实现-创建和配置工程(添加并配置模拟输入/输出端口),按照图11.15所示,添加并配置模拟输入/输出端口,并完成所有元件的连接。,图11.15 引脚配置,幅度调制AM的实现-创建和配置工程(添加并配置模拟输入/输出端口),下面给出配置管脚的步骤,主要步骤包括:1从Workspace Explore,双击PSoCRocks.cydwr文件2点击pin标签。3如图11.15,按照如下方式进行配置:Pin_InputSignal连接到P04 Pin_Offset连接到P37 Pin_MixerOut连接到P05 Pin_OpampNeg连接到P03;Pin_AM_Out连接到P01;,幅度调制AM的实现-创建和配置工程(创建函数文件),其主程序主要完成以下功能:启动混频器和运算放大器。下面给出创建函数文件的步骤,主要步骤包括:1打开Workspace Explorer窗口中现有的main.c函数文件。2输入main.c代码。,幅度调制AM的实现-创建和配置工程(编程及调试),下面给出添加并配置开发板的步骤,主要步骤包括:1使用USB电缆连接CY8CKIT-001开发板的USB接口到电脑USB的接口;2按照引脚分配完成信号的连接;3按照图11.13,连接完成外部的R1,C1,R2,C2;,幅度调制AM的实现-创建和配置工程(编程及调试),4给开发板进行供电;5使用前述方法进行编程。6编程结束之后,拔下USB电缆。7输入基带信号到P04。8用示波器观察AM信号,图11.16给出了AM的波形图;思考:如何实现AM信号的解调?详见光盘设计说明和详细的设计文档。,幅度调制AM的实现-创建和配置工程(编程及调试),图11.16 AM调制信号波形图,频率调制FM解调的实现,调频信号FM的解调常用的有斜率检测法(Slope Detection),这是一种传统的模拟解调方法。还有一种方法是使用一个单稳多谐振荡器,从信噪比SNR和总谐波失真THD来说,这是一种最好的方法。该设计使用单稳多谐振荡器的方法实现FM的解调。,频率调制FM解调的实现-传统斜率检测法实现FM信号的解调(实现原理),图11.17给出了传统斜率检测法的实现原理图。,图11.17 斜率检测法实现原理,频率调制FM解调的实现-传统斜率检测法实现FM信号的解调(实现原理),一个FM信号可以用下式描述:(1)其中:,频率调制FM解调的实现-传统斜率检测法实现FM信号的解调(实现原理),对(1)式进行微分得到:(2)所需要的信号的幅度表示为(3)图11.18给出了基于PSoC实现传统FM解调的原理图。,频率调制FM解调的实现-传统斜率检测法实现FM信号的解调(实现原理),图11.18 传统FM解调的原理,频率调制FM解调的实现-传统斜率检测法实现FM信号的解调(限制器的设计),图11.19给出了限制器的符号及其配置界面。限制器电路是FM解调器的第1级。一个限制器用于消除小噪声,这些噪声以摆动的幅度存在。限制器的输出是一个恒定幅度的方波。使用比较器来实现限制器功能。,频率调制FM解调的实现-传统斜率检测法实现FM信号的解调(限制器的设计),图11.19 限制器的配置,频率调制FM解调的实现-传统斜率检测法实现FM信号的解调(微分电路的设计),如图11.20给出了使用外部元件构成的微分电路,频率范围在150kHz-350kHz。微分电路的设计是非常重要的,这是由于THD取决于微分器的线性度。图11.21给出了FM信号和微分信号的波形。,频率调制FM解调的实现-传统斜率检测法实现FM信号的解调(微分电路的设计),图11.20 微分电路的结构,频率调制FM解调的实现-传统斜率检测法实现FM信号的解调(微分电路的设计),图11.21 FM和微分信号的波形,频率调制FM解调的实现-传统斜率检测法实现FM信号的解调(包络检波器的设计),微分器的输出的幅度摆动和基带信号成正比。然后,送到包络检测器,或者幅度解调器来恢复原始信号。常用的包络检波器使用二极管、电阻和电容。在PSoC设备中,不使用外部的元件实现包络检波器。图11.22,给出了包络检波器的原理图。,频率调制FM解调的实现-传统斜率检测法实现FM信号的解调(包络检波器的设计),图11.22 包络检波器的原理,频率调制FM解调的实现-传统斜率检测法实现FM信号的解调(低通滤波器的设计),如图11.23给出了使用外部元件构成的低通滤波器的原理图。,图11.23 低通滤波器的实现原理,频率调制FM解调的实现-使用单稳多谐振荡器的FM解调的实现(实现原理),图11.24给出了单稳态多谐振荡器的FM解调实现原理图。,图11.24单稳态多谐振荡器的FM解调原理,频率调制FM解调的实现-使用单稳多谐振荡器的FM解调的实现(实现原理),图11.25 基于PSoC的单稳多谐振荡器FM的解调,图11.25 基于PSoC的单稳多谐振荡器FM的解调,频率调制FM解调的实现-使用单稳多谐振荡器的FM解调的实现(单稳多谐振荡器的设计),一个单稳多谐振荡器使用PSoC的比较器和少量的无源元件构成。如图11.26所示,整个电路偏置为Vdda/2。所以单稳多谐振荡器的输出在GND和VDD之间切换(由于PSoC不接受负电压)。单稳态电路的稳定状态是逻辑高(VDD)。电容充电到电压Vdda/2加上二极管的膝点电压为止。比较器的正输入电压等于(3Vdda)/4。这时比负端电压要高,这是由于肖特基二极管有一个低的膝点电压。,频率调制FM解调的实现-使用单稳多谐振荡器的FM解调的实现(单稳多谐振荡器的设计),图11.26 单稳态触发器的原理,频率调制FM解调的实现-使用单稳多谐振荡器的FM解调的实现(单稳多谐振荡器的设计),图11.27给出了单稳态多谐振荡器的波形。在PSoC3/5中使用UDB实现数字化的差分器。PSoC Creator库中的定制的移位寄存器可以实现这个目的。,图11.27 单稳态多谐振荡器的波形,频率调制FM解调的实现-使用单稳多谐振荡器的FM解调的实现(单稳多谐振荡器的设计),图11.28给出了定制移位寄存器的符号描述。,图11.28 定制移位寄存器的配置选项,频率调制FM解调的实现-使用单稳多谐振荡器的FM解调的实现(单稳多谐振荡器的设计),图11.29给出了通用移位寄存器的配置选项。从图中,可以看出通用移位寄存器可以配置成8位或16位。元件支持左移或者右移操作模式,包括串入串出模式,串入并出模式。并入并出模式和并入串出模式。元件的并行输出可以用作延迟元件。,频率调制FM解调的实现-使用单稳多谐振荡器的FM解调的实现(单稳多谐振荡器的设计),图11.29 通用移位寄存器选项,频率调制FM解调的实现-使用单稳多谐振荡器的FM解调的实现(单稳多谐振荡器的设计),图11.30给出了数字触发器电路的结构原理。通用移位寄存器配置成串入并出模式。通用移位寄存器在该设计中用于延迟元件,其触发宽度可以通过修改移位寄存器的延迟实现。在这个例子中,为了实现脉冲宽度为600ns,移位寄存器的时钟选择5MHz。输出从第三级引出,所以延迟为:(1/5MHz=200ns)*3=600ns 注意名字为“Pin_Trigger_Out”的引脚与触发器输出连接,必须配置成open drain low驱动模式。,频率调制FM解调的实现-使用单稳多谐振荡器的FM解调的实现(单稳多谐振荡器的设计),图11.30 数字触发电路的结构,频率调制FM解调的实现-使用单稳多谐振荡器的FM解调的实现(单稳多谐振荡器的设计),图11.31给出了Pin_Trigger_Out引脚的配置界面。,图11.31 Pin_Trigger_Out引脚的配置界面,频率调制FM解调的实现-使用单稳多谐振荡器的FM解调的实现(单稳多谐振荡器的设计),图11.32给出了限制器的输出和单稳态多谐振荡器的输出波形。,图11.32限制器的输出和单稳多谐振荡器的输出波形,频率调制FM解调的实现-使用单稳多谐振荡器的FM解调的实现(单稳多谐振荡器的设计),图11.33给出了单稳态的输出和低通滤波器的输出。,图11.33 低通滤波器的输出,