单片机原理及其应用 中佳西安外事学院工学院 【摘要】本文介绍了CIRRUS LOGIC公司生产的16位A/D转换芯片cs5523的主要特性以及和STC89C52RC单片机的接1:I电 路,并设计了A/D转换程序,供大家参考。 【关键词】高精度串行A/D;CS5523;单片机 1.引言 在工业控制过程、医疗器械及 仪器仪表等许多应用中,对系统的 速度、功耗及成本等性能的要求越 来越高。为了满足这些要求,迫使 设计工程师进一步求助数字电路、 尤其是模数转换器ADC。这些集成 化的ADC包括了完整的前端系统, 保证了低电压、低功耗方式工作, 在更大程度上降低系统成本。下面 介绍一种高精度、硬件电路简单、 计量精确、抗干扰性好、性能稳 定可靠、性价比高的A/D转换芯片 CS5523。 2.CS5523简介 CS5523是CIRRUS LOGIC公司生 产的l6位高精度串行A/D芯片。其 内部结构框图如图1所示。 CS5523芯片内集成了一个仪表 放大器、一个可编程增益放大器、 多路开关、数字滤波器、自校正和 系统校正电路。通过简单的串行连 接,CS5523可方便地由MCU控制, 以实现多通道高精度的A/D转换。 主要特性如下: ●底输入电流(1OOpA)和用斩 波器稳定的一仪器放大器; ●可升级的输入跨距(双极/单 级); 图1 图2 网氩_ 晖·3/2012 —49— 》》》鬯子 界 ·宽VREF输入范围(+1伏至+5 和CS5523的通信采用采用串行通信 伏); if(((wByte<<i)&Ox80) 方式。STC89C52RC的P10 ̄PI3口对 ==Ox80)e4阶Delta—Sigma模/数转换 CS5523进行控制及数据传输。图3为 器: { SPISI=1: STC89C52RC操作CS5523的总的时序 03线制串行接口; ●系统校准和自校准; 图,对CS5523的操作软件都是以时 ) e1se 序图为基础编写的。这里,只给出 了几个基本的读写数据和命令的子 e8个可选择的输出率; { ●单电源+5V供电; 程序,仅供参考。CS5523总的控制 ●低功耗;5.5mW; 程序是在这几个子程序基础上实现 024脚SSOP{DPDIP两种封装。 的,这里不做介绍。 3.C85523在MCS-51单片机系统 uchar SPIHostReadByte 0 中的应用 { 3.1硬件接口 uchar idata i,rByte: CS5523以串行接口方式与单 rByte=0: 片机接口。CS5523的SDI、SDO、 for(i=0:i<8:i++) SCLK、CS引脚分别和STC89C52RC { 单片机的P10~Pl3口相连。图2是 SPISCK=0: CS5523与STC89C52RC单片机接口的 SPISCK=1: 硬件原理图。 rByte<<=l: 单片机通过P10 ̄PI3口来控制 rByte=SPISO: CS5523,并读取转换结果。图2中 ) 采用32.768KHz ̄b部时钟。CS5523 return rByte: 的模拟信号有单端输入和差分输入 ) 两种,这里采用单端输入方式。 VOid AIN1一、AIN2一、AIN3一、AIN4一分另0 SPIHostWriteByte(uchar 接地。外部模拟信号的调理和放大 wByte) 电路,以及基准电压电路这里不作 { 为重点,并未给出。 uehar idata i: 3.2软件设计 for(i=0:i<8:i++) 如图2所示,单片机STC89C52RC { 图3 一50一 问菽 墨·3,2O12 SPISI=0: ) SPISCK=0: SPISCK=l: ) ) void Cs5523ReadAdData() { uchar i: SPISCK=0: NOP: if(PartSelect==1) { CS1=0: CS2=1: ) else if(PartSelect:=2) { CS1=1: CS2=0: ) else { CS1=l: CS2:1: ) PerfOrmCOnver=0x98: SPI_HostWriteByte(Perform Conver):