当前位置:首页 > 智能硬件 > 智能硬件
[导读]本文所进行是为提高ADC转换的精度、加快工作速度的研究,主要介绍AVR单片机的SPI与MAX187的接口设计,提供了软件编程实现。

摘  要:本文所进行是为提高ADC转换的精度、加快工作速度的研究,主要介绍AVR单片机SPI与MAX187的接口设计,提供了软件编程实现。
关键字:SPI、AVR单片机、MAX187

1、AVR单片机的SPI接口

    SPI(Serial Peripheral Interface---串行外设接口)总线系统是一种同步串行外设接口,允许MCU与各种外围设备以串行方式进行通信、数据交换,广泛应用于各种工业控制领域。基于此标准,SPI系统可以直接于各个厂家生产的多种标准外围器件直接接口。SPI接口通常包含有4根线:串行时钟(SCK)、主机输入/从机输出数据线(MISO)、主机输出/从机输入数据线(MOSI)和低电平有效的从机选择线SS。在从机选择线SS使能的前提下,主机的SCK脉冲将在数据线上传输主/从机的串行数据。主/从机的典型连接图如图(1)所示: 
           
                      图(1)主/从机的连接图

    串行外设接口SPI允许ATmega16和外设之间进行高速的同步数据传输。ATmega16 SPI的特点如下:全双工,3线同步数据传输,主/从机操作,LSB首先发送或MSB首先发送,7种可编程的比特率,传送中断结束,写碰撞标志检测,可以从闲置模式唤醒,作为主机时具有双速模式(CK/2)。

    如图(2)所示,系统包括两个移位寄存器和一个主时钟发生器。通过将需要的从机的SS引脚拉低,主机启动一次通信过程。主机和从机将需要的数据放到相应的移位寄存器,主机在SCK引脚上产生时钟脉冲以交换数据。主机的数据从MOSI移出,从从机MISO移入。从机的数据从MISO移出,从从机MOSI移入。主机通过将从机的SS拉高实现与从机的同步。 
      

             图(2)SPI 主机 - 从机的互连

    下面将介绍SPI的几个特殊寄存器:

1.1   SPI的控制寄存器—SPCR


    SPIE 为SPI 中断使能,置位后,只要 SPSR 寄存器的 SPIF 和 SREG 寄存器的全局中断使能位置位,就会引发SPI 中断。SPE 置位将使能 SPI,DORD 置位时数据的 LSB首先发送;否则数据的 MSB首先发送。MSTR置位时选择主机模式,否则为从机。CPOL置位表示空闲 SCK 为高电平;否则空闲时 SCK为低电平。CPHA决定数据是在 SCK的起始沿采样还是在 SCK 的结束沿采样。通过对SPR1、SPR0进行设计,确定主机的 SCK 速率。

1.2 SPI的状态寄存器—SPSR

    SPIF 为中断标志位,串行发送结束后,SPIF 置位。若此时寄存器 SPCR 的SPIE 和全局中断使能位置位,SPI中断即产生。进入中断例程后SPIF将自动清零。在发送当中对SPI数据寄存器SPDR写数据将置位WCOL,SPI2X置位后 SPI 的速度加倍。

1.3   SPI的数据寄存器—SPDR 

    SPDR 数据寄存器为读/写寄存器,用来在寄存器文件 SPI移位寄存器之间传输数据。写寄存器将启动数据传输,读寄存器将读取寄存器的接收缓冲器。SPI 系统的发送方向只有一个缓冲器,而在接收方向有两个缓冲器。也就是说,在发送时一定要等到移位过程全部结束后才能对 SPI 数据寄存器执行写操作。而在接收数据时,需要在下一个字符移位过程结束之前通过访问SPI 数据寄存器读取当前接收到的字符。否则第一个字节将丢失。

    在本设计中所使用的串行ADC芯片,选用了MAXIM公司MAX187。在AVR单片机SPI主机的控制下,完成对MAX187转换后的数据读操作。

2、  MAX187的介绍

    MAX187是美信公司推出的12位A/D转换芯片,内部含有采样/保持电路,单5 V操作电源,转换速度为8.5μs,具有片上4.096 V参考电压,模拟量输入范围为0~VBEF。三线串行接口,兼容SPI,QSPI,MicroWire总线。

    MAX187用采样/保持电路和逐位比较寄存器将输入的模拟信号转换为12位的数字信号,其采样/保持电路不需要外接电容。MAX187有2种操作模式:正常模式和休眠模式,将置为低电平进入休眠模式,这时的电流消耗降到10μA以下。置为高电平或悬空进入正常操作模式。 

    完整的操作时序如图(3)所示。使用内参考时,在电源开启后,经过20 ms后参考引脚的4.7μF电容充电完成,可进行正常的转换操作。A/D转换的工作过程是:当为低电平时,在下降沿MAX187的T/H电路进入保持状态,并开始转换,8.5μs后DOUT输出为高电平作为转换完成标志。这时可在SCLK端输入一串脉冲将结果从DOUT端移出,读入单片机中处理。数据读取完成后将置为高电平。要注意的是:在置为低电平启动A/D转换后,检测到DOUT有效(或者延时8.5μs以上),才能发SCLK移位脉冲读数据,SCLK至少为13个。发完脉冲后应将置为高电平。


图(3)SPI/Microwire 串行接口时序图 (CPOL = CPHA = 0)

3、  串行ADC接口设计与实现

    MAX187电源需要加去耦合电容,常见的方法是用一个4.7μF电容和一个0.1μF电容并联。为保证采样精度,最好将MAX187与单片机分开供电。4脚为参考端接一个4.7μF的电容,这是使用内部4.096 V参考电压方式。输入模拟信号的电压范围为0~4.096 V,如模拟输入电压不在这个范围要外加电路进行电压范围的变换。MAX187只有一路模拟输入通道,如输入为多路信号,要外加多路模拟开关。如图(4)所示,Vinp为模拟信号的输入端,经过MAX187转换后得到12的数据,通过SCLK、CS、DOUT分别与AVR单片机SPI的SCK、SS、MISO相接,在单片机的控制下对数据进行读取。


图(4)MAX187的硬件接线图

程序设计:

     程序采用ATmega16编制,在ATmanAvr环境下调试通过。程序的基本思想是:定义PB7脚为时钟SCLK,PB6为数据DOUT,PB4为片选。片选有效后延时8.5μs以上确保转换完成,在时钟SCLK的作用下从数据输出端读出转换的数据后存入两个无符号字符变量中,将这2个字符变量拼成一个16位无符号整形变量作用函数返回值返回,返回值的低12位有效。

#define   ss     4    //PB4

#define   mosi   5    //PB5

#define   miso   6    //PB6

#define   sck    7    //PB7

PORTB = 0x4f; DDRB = 0xb0;//对PB口的初始化

void spi_init(void)

{

       SPSR = 0x0;

       SPCR = 0x50;

}

unsigned int  ADC_MAX187(void)

{

 static uint temp,temp1;

 PORTB&=~(1<<sck);

 PORTB&=~(1<<ss);

 delay_nus(10);      //延时10uS

 while(!PORTB&(1<<miso));

 SPDR=0x00;

 while(!SPSR&(1<<SPIF));

 PORTB&=~(1<<sck);

 temp=SPDR;

 temp=(uint)temp<<8;

 SPSR=0x00;

 while(!SPSR&(1<<SPIF));

 temp1=SPDR;

 temp=(uint)((temp|temp1)&0x7fff)>>3;

PORTB|=(1<<ss);

 return (temp);

}

4、  总结

    本系统充分利用了AVR单片机的SPI模块和MAX187是具有兼容SPI串行接口的A/D转换器。本设计的串行ADC接口具有体积小、速度快、精度高等优点。适用于仪器仪表、传感器、工程检测等方面。

参考文献

1、Atmel corporation.ATmega16L Datasheet [DBOL]. http://www.atmel.com
2、马潮. ATmega128原理与开发应用指南上.北京:北京航空航天大学出版社.2004
3、http://www.ouravr.com
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭