微机式医学仪器设计实验教材实验

上传人:第*** 文档编号:119319993 上传时间:2020-01-12 格式:DOC 页数:17 大小:1.40MB
返回 下载 相关 举报
微机式医学仪器设计实验教材实验_第1页
第1页 / 共17页
微机式医学仪器设计实验教材实验_第2页
第2页 / 共17页
微机式医学仪器设计实验教材实验_第3页
第3页 / 共17页
微机式医学仪器设计实验教材实验_第4页
第4页 / 共17页
微机式医学仪器设计实验教材实验_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《微机式医学仪器设计实验教材实验》由会员分享,可在线阅读,更多相关《微机式医学仪器设计实验教材实验(17页珍藏版)》请在金锄头文库上搜索。

1、实验四 生物信号的数据采集一、实验要求 利用8位串行控制模数转换器TLC0832做A/D转换器,采用实验板上的电位器,或其它信号(如心电仿真仪信号)提供模拟量输入,编制程序,将模拟量转换成二进制数字量。存放在RAM区,以供查阅。二、实验目的1、 熟悉串行外围设备接口SPI总线技术的结构和原理。2、 掌握8位串行控制模数转换器TLC0832的转换性能及编程。3、 掌握TLC0832与80C51单片机的接口方法。4、 通过实验了解如何使用单片机进行数据采集。 三、 实验设备 1 机 一台 2 实验面包板 一个 3 80C51仿真器 一套 4 元件:TLC0832 一片 4 导线 若干四、实验说明一

2、个微处理器系统中除了作为核心部件的微处理器外,多少要使用一些外围设备(通常被简称为“外设”)。微处理器外设之间的连接方式基本上可以分为并行和串行2大类,也就是通过并行或串行接口连接。并行接口设备使用了多根数据线,一次同时可以传递多个BIT的数据,所以传递速度较快,单器件之间的连线复杂。而串行接口设备仅使用了一根数据线,每次只能传递一个BIT的数据,所以传递速度较慢,但由于使用串行接口的系统中器件之间的连线比较简单,在微型化的系统中倍受重视。随着器件时钟速度的不断提高,串行接口的数据交换率同样可以做得很高。另外基于异步串行接口电路的技术的器件因其相当高的效率,在DSP 系统中被广泛采用。(1)S

3、PI总线介绍串行外围设备接口SPI(serial peripheral interface)总线技术是Motorola公司推出的一种同步串行接口。SPI总线是一种三线制同步式串行总线,其物理结构是相当典型的。因其硬件配备(在各种串行接口中)较为“完整”,所以,与SPI有关的软件就相对简单,使CPU有更多的时间处理其他事务。它基本上由3根连线构成,即:DI,DO,CLK,故称为三线制串行总线。除了这3条基本信号线以外,当系统使用多个SPI器件时,为区别各个器件,往往还要加上一条片选信号线“/CS”。使用了/CS信号后,所有的SPI器件可以使用公共的DI,DO,CLK信号,而只有/CS有效的芯片才

4、被主控器件操纵。各信号线的意义为:信号符号信号名称信号意义DI数据输入线外设的数据输入端,其电平表示当前输入的数据DO数据输出线外设的数据输出端,其电平表示当前输出的数据CLK时钟信号主控器件提供的同步时钟,以保证数据的正确/CS片选信号用来选通所操纵的器件除了上述引线之外,由于各种外设控制功能的不同,采用SPI接口,有时还要添加一些辅助的控制线,例如复位信号、中断信号等。(2)实际SPI器件TLC0832实际的SPI器件品种繁多,本次实验使用的TLC0832是一种基于SPI接口的双路A/D转换器。该器件的详细资料参见参考文献1和文献2TLC0832是一种2通道逐次逼近似方式的A/D转换器。基

5、本性能如下: 8位分辨率 可以“满量程”工作或使用5V基准电压 单通道或多路器选择的双通道,可单端或差分输入选择 当时钟频率为250kHz时,转换时间为32ms 总非调整误差为1LSB TLC0832的引脚及其功能:实验用的TLC0832芯片为8脚的“双列直插”(DIP)式封装。其引线方式参见下图。各引脚的意义参见下表:序号引脚名称意义1/CS片选信号。当该信号为高电平时,芯片未被选中,所有信号引线均为高阻态。芯片的任何功能必须当该信号为低电平时方能实现。2CH0模拟通道0的输入端。可以作为独立的输入通道使用,也可以由程序控制,与CH1配合实现差分输入方式。3CH1模拟通道1的输入端。可以作为

6、独立的输入通道使用,也可以由程序控制,与CH0配合实现差分输入方式。4GND地线。5DI数据输入端。来自主控器件(CPU)的控制命令由此输入。6DO数据输出端。转换结果由此输出。7CLK时钟信号。8VCC/REF电源/参考电压输入端。TLC0832的动作时序:TLC0832的动作时序见下图。图中可见TLC0832的全部动作过程。应当注意以下要点:1 任何有效操作均必须在/CS为低电平时才能实现。所以,开始对TLC0832作任何操作都必须首先将/CS由高电平置为低电平,一次完整的操作结束后,应当及时地将/CS置为高电平;2 时钟信号CLK是由主控器件(CPU)主动提供的,它控制了转换的节拍;3

7、一个完整的转换过程分2个基本步骤:A. 由CPU向器件发出控制命令;B. CPU从器件读出转换后的数据;4 控制命令由CPU通过DI线向器件发出,包括3个BIT。第1个BIT为启动位,后2个BIT为配置位;5 2个BIT的配置位的名称为SGL/DIF和ODD/EVEN,共同决定了器件的输入性质(参见附表);6 CLK信号是由CPU操纵下“人为制造”出高低电平变化而形成的。每当需要向器件写入命令时,应当首先将所需要的数据加到DI脚上,然后让CLK由低电平向高电平变化(上升沿),这时器件会自动保持DI上的数据,之后,应当将CLK恢复到低电平,以便下一个节拍的操作;7 由器件中读出数据时有些不同,此

8、时应当首先将CLK置为高电平,然后,再将CLK由高电平置为低电平,在由高电平向低电平变化的“下降沿”后,器件的DO端会出现有效的数据信号。CPU可以在此时检测DO端的状态,读出有效的数据;8 命令BIT发送之后,便可以开始读出转换结果,事实上,器件内部的逐次近似转换过程是在CLK的控制下一拍、一拍地进行,每一拍完成一个BIT的转换,转换的结果同时就出现在DO上,这就是所谓的“外部时钟方式”。特点是简单,但是对于外部时钟的“占空比”有较严格的控制,否则精度将受到影响有些串行A/D器件内部自己配备了时钟系统,无须CPU的CLK信号,而是利用自身的时钟系统完成转换,这样的器件精度比较有保障。使用这种

9、器件时,在启动器件开始转换后,CPU应当等待“转换完成(EOC)”信号,当EOC出现后,才开始读取数据;9 数据读出时,器件首先以“高位在前”(MSB-First)方式输出数据,然后再以“低位在前”(LSB-First)方式输出数据。事实上,应用系统的设计人员可以根据自己的需要选择适当的方式读取数据,如果只需要MSB-First方式,则启动转换后只需要8个CLK就可以完成全部操作,这时,从图中的第12个CLK后面的操作可以不必进行;10 全部操作完成后应当将/CS置为高电平。使用TLC0832需要注意: TLC0832要求在转换数据时CLK占空比为40%60%,否则会导致转换结果不正确,CLK

10、可由单片机的一根I/O口线驱动,用软件控制脉冲的频率和占空比。TLC0832的模拟输入信号的的功能比较齐备,可以通过控制命令灵活地配置为差分或单端方式。即,2个输入通道CH0和CH1可以作为一对差分输入的互补信号线,也可以配置为各自独立的单端输入信号线。请注意以下要点:1、 配置命令由信号SGL/DIF 和ODD/EVEN 2个BIT组成,排列顺序是SGL/DIF在前,ODD/EVEN在后,2个控制BIT组合的意义参见附表;2、 差分输入方式是指一对大小相同方向相反的输入方式,它需要2个输入端,而且这2个输入端有极性之分;3、 单端输入实际上也需要2个输入端,一个是信号端,另一个是参考端,即所

11、谓的“地”。但是应当注意,地线作为参考端被假定为稳定不变的,输入信号完全由输入端上的电压变化而决定; 4、 TLC0832配置为差分输入方式时只能组成一路输入;配置为单端输入方式时,可以提供2路独立的输入。TLC0832 输入信号地址控制逻辑表地址选择通道号操作意义SGL/DIFODD/EVENCH0CH1LLH HLHLH+CH0 为正极性,CH1 为负极性的差分输入方式CH0 为负极性,CH1 为正极性的差分输入方式选择 CH0 的单极性,单通道方式选择 CH1 的单极性,单通道方式 H = 高电平, L = 低电平, or + = 所选择的输入端的终端极性五、实验电路及连线LC0832与

12、51系列微处理器的连接相当简单,具体的参考电路参见下图:实验中,我们采用选择 CH0 的单极性,单通道方式。因此,CH1端应接地,CH0端为输入电压。我们采用通过可调电位器的方法改变输入电压,以观察A/D转换结果。配置命令由信号SGL/DIF 和ODD/EVEN 2个BIT组成,在本实验中应设置为:SGL/DIF =1;ODD/EVEN=0六、软件流程及编程1、A/D转换的软件流程图图中绘出了A/D转换的基本过程。必须说明,这个流程图并不是最优化的,而仅仅表现了A/D转换的主要步骤。流程图的右侧绘出了每个步骤相应的注释。图中使用了sCLK子程序,该子程序的流程图附在本小节的后部。这里应当注意的

13、是,sCLK子程序中使用了2个延时子程序,DELAY1和DELAY2,其目的是为了调整时钟信号的频率和占空比,实际的延时子程序可以用不同长度的循环来实现,或者简单地插入若干个NOP来解决。具体的延时长度应当视实际需要而定。延时时间的确定原则在于使得CLK信号处于高电平和低电平的时段基本相等,而且必须考虑到sCLK子程序返回后,A/D程序进行其它操作时CLK处于低电平的时段长度。2、A/D转换程序:( 见源程序文件TLC0832.ASM)BEGIN: CLRP1.4; /CS=0,选通器件SETBP1.1;DI=1,置启动条件CALLSCLK;发出一个时钟SETBP1.1;DI=S/D=1,送控

14、制命令的第1个BITCALLSCLK;发出一个时钟CLRP1.1;DI=O/E=0,送控制命令的第2个BITMOVA, #00H;设存放转换结果的寄存器A初值MOV R0, #08H ;读8位BITGETDATA:CALLSCLK;发出一个时钟MOVC, P1.0;由DO读出一个BIT,检测DO的状态RLCA;将读出的BIT用于字节输出到指定的BYTE,选通器件DJNZR0, GETDATA;读完8次了吗?未读完,继续SETBP1.4;/CS=1. 读完,放弃对于器件的控制 SJMP$ ;SCLK入口 SCLK:SETBP1.2;CLK=1,发出时钟的高电平NOP;适当延时片刻NOPNOPNOPCLRP1.2;CLK=0,发出时钟的低电平NOP;适当延时片刻NOPNOP

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号