实验四 Δ-∑调制及可编程比较器设计实验.doc_第1页
实验四 Δ-∑调制及可编程比较器设计实验.doc_第2页
实验四 Δ-∑调制及可编程比较器设计实验.doc_第3页
实验四 Δ-∑调制及可编程比较器设计实验.doc_第4页
实验四 Δ-∑调制及可编程比较器设计实验.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验四 -调制及可编程比较器设计实验一、 实验目的:1、学习-调制的工作原理并采用PSOC单片机编程实现-调制器。2学习比较器的工作原理并使用PSOC单片机进行可编程比较器设计。二、实验原理:(一)-调制 -调制器是一项广泛应用于ADC和其他应用上面的技术。它有着低成本、高动态变化范围和在转变低频输入信号上有很好的灵敏性。-调制器被用于连接数字与模拟信号(高精度分辨率)的转换。-调制器是集成化的转换器,通常被用于高分辨率的过采样,噪声整形,求平均值和抽样等。一个-调制器有两个主要组成部分:一个调制器和一个抽取器。调制器将输入模拟信号转变为高速数据流(过采样),低分辨率串行比特流(通常为1bit),平均值为输入信号的平均值。这个比特流通过抽取过滤器转换成高分辨率,低数据流的数字输出。抽取过滤器是综合降低取样频率取样器和低通滤波器的平均值得到的数字输出。该实验需要一个模拟信号刺激来检验-调制器的运行。这个输入信号是由先前的实验中产生的正弦信号波。该部分所有的实验操作均建立在Lab7D实验的基础上。-调制器是一个基本数字触发器的复合信号设计的一个构建模块。接下来的实验将进一步的探索它的运行功能。(二)PSOC3中的-调制器结构在PSOC3中的-调制器有如下拓扑结构。 图6-1 PSOC3中的-调制器结构该DSM(Delta Sigma Modulator)中含有一个三阶的调制器,接着是一个四阶的抽取器。调制器有一个高阻抗缓冲区接着是RC滤波器。l 调制器用测温格式发送出高数据速率比特流l 调制器的输出被传送给可以将测温输出转换成二进制补码的模拟接口,然后将其传送到抽取器。l 抽取器采用4bit二进制补码,提供一个低数据速率的更高分辨率(用户可选择)的输出。可使用电位计来提供一个可变输入给DSM.(三)比较器 比较器的基本原理实际上就是一个加上一个微分的输入和非常大的开环增益的放大器。高增益使放大器在比较它的输入方面变得十分灵敏。如下图所示,事实上当Vp大于Vn时输出被驱动到正电极。相反地,当Vp小于Vn时输出被驱动到负电极。那么当Vp等于Vn时又是怎么样呢?“Vp等于Vn”不是一个专业系统工程师所采用的,“Vp等于Vn”准确的定义应该是它存在于“Vp小于Vn”转变为“Vp大于Vn”(或者说是,“Vp大于Vn”转变为“Vp小于Vn”)的短时间内。在这非常小的转换范围下(通常为50uV)输出为线性变化。对于理想比较器而言,这种转换范围几乎为零。在负极输入端设置一个参考临界电压值,另一端加模拟信号。当输入值超过临界值时,输出为逻辑高电平。(四) PSOC中的模拟比较器 PSoC提供了最多4个比较器,其特点主要有:n 输入偏置小于5mV;n 轨至轨共模输入范围Vssa-Vcca;n 通过使用快速、慢或超低功耗在速度和功耗之间进行权衡;n 比较器输出能布线到查找表(Look Up Table,LUT),执行简单的逻辑功能,然后也能布线到数字模块;n 比较器的正输入可以选择穿过一个低通滤波器;n 比较器输入能连接到GPIO,DAC输出和SC模块输出;n 到比较器的正和负输入来自模拟全局总线,模拟复用线,模拟本地总线和高精度的参考源。 从比较器的输出能布线到两输入LUT的任何一个,LUT的输出布线到UDB数字系统接口。下图给出了模拟比较器的结构图: 图 放大器结构 PSoC包含4个LUT。LUT有两个输入,一个输出。LUT由比较器驱动。LUT的输出布线到UDB阵列的数字系统接口。从UDB阵列的数字系统接口,这些信号能连接到UDB,DMA控制器,I/O或者中断控制器。LUT控制字写入寄存器,用于设置输出的逻辑功能。下表给出了LUT功能和程序字的输入。 LUT和程序字 三、实验器材: 序号名 称型号与规格数 量备注1PSOC开发板CY8CKIT-03012电脑1四、实验内容:1构造一个-调制器 2设计一个仅电平值在两个阀值范围之间的比较器5、 实验步骤:(一)构造一个-调制器步骤一:建立一个新工程l 命名为Lab9Al 打开原理图编辑框放置一个-ADC用户模块并命名为ADC 设置如Figure 2所示参数l 放入一个Analog Pin并配置到P02端口,并连在ADC的输入端,再放入一个LCD模块,LCD模块选择P26:0口配置好的原理图如下:l 用跳线连接电位器的划片P65和P02。注:因电位计在LCD那块小板子上,因此应将主板上与LCD板上的P65连接,又需要与P65接的端口比较多,端口不够用,则需要将主板上的P65引出来接到有多个针的地方进行中转一下。l build工程。步骤二:编写程序代码l 打开main.cl 添加代码启动ADC模块,LCD模块 l 在控制循环中添加代码开始运行ADC转换,读出ADC转换结果并显示在LCD上。l 主程序:#include #include int main() uint32 ADCOUT; ADC_Start(); LCD_Char_Start(); LCD_Char_Init(); LCD_Char_PrintString(ADC Convert); /* CyGlobalIntEnable; */ /* Uncomment this line to enable global interrupts. */ for(;) 。 l 根据下面的流程图在控制循环即上面(。)处添加代码开始运行ADC转换,读出ADC转换结果并显示在LCD上ADC_StartConvert();LCD_Char_PrintNumber(ADCOUT);LCD_Char_Position(1,0);ADCOUT = ADC_GetResult32();ADC_IsEndConversion(ADC_WAIT_FOR_RESULT); l build工程,下载并运行步骤三:连接P65端与万用表,调整电位计并将P65的电压值和与之对应的LCD上显示的值记录在后面的表格中,共记录五组。(二)可编程比较器基本功能测试步骤一:新建一个工程,命名为Lab9Bl 在原理图编辑框中放置Voltage DAC模块与Comparator模块,按照下图进行配置lll 放置一个OutputPin,驱动模式设为strong,将端口配置为P00l 放置一个vref模块,双击,在VRef name处选择0.256Vl 放置一个clock模块,将时钟频率改为24MHZ配置好的原理图如下图所示: 步骤二:编写程序代码 在主函数中添加运行比较器的程序 #include #include int main() /* Place your initialization/startup code here (e.g. MyInst_Start() */ Comp_1_Start();VDAC8_Start(); /* CyGlobalIntEnable; */ /* Uncomment this line to enable global interrupts. */ for(;) 。 根据如下流程图在for循环即(。)处添加代码让VDAC产生正弦波并运行比较器 float DACVAL; int i;VDAC8_SetValue(DACVAL); for(i=0;i255;i+)DACVAL = 100 + 100*sin(2*3.14159*i/255);步骤三:创建并考入程序,在板子上做相应连接并用示波器检测P00口输出波形,本实验的结果将从运行范围为0V至1.024V的DAC8模块产生的正弦信号与参考值0.256V进行比较,高于0.256V为高电平,否则为低电平。六、实验注意事项及规范1.实验开始前检查并关闭电源,检查实验器材是否齐全。2.实验过程中,接线时注意安全,严格按照接线

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论