基于avr单片机高速数据采集系统内容摘要:
下降沿到CLK启动时间5usCLXDATAtcxptcxltcxhtcxdltcxdh SPI和QSP通信模式简介这种模式经常用在各种不同的微处理器中的。 此时CONV接到任意的I/O口(在SPI中)或接到PCX脚(在QSPI中)。 CLK可以接到串行时钟接口,DATA接到串行数据输入引脚如MISO (masterin slave out)。 这段时间是在SPI和QSPI模式中触发CLK的CONV要保持低电平的最短时间。 系统拟采用的AVR公司的MEGA16单片机支持SPI的传输模式,所以此模式也可以选择作为数据采集系统的工作模式。 SPI/QSP模式 6N137芯片概述 6N137的结构6N137是一块支持LSTTL/TTL两种方式的高速光电隔离器。 其中包含了GaAsp的两极真空管和集成度一很高的检测器。 高度集成的检测器中的光电二极管检测收集光子后用高增益线性放大器放大。 整个过程维持常温,是实时且电压会自动补偿。 6N137这款片在。 交直流情况下都能进行隔离,也就是对LSTTL和TTL两种情况都是兼容的。 芯片的工作温度可以在0℃70℃之间。 当芯片接5V的供电电源时,在输入端有微小的输入如5mA时其输出端就会放大输出13mAo6N137的典型传输延迟时间时45ns。 12345678 6N137引角图(1)引脚功能:*;*,接地;*2. 脚ANODE;* 输出端; *;*;*. ;* 接电源。 (2)6N137特性:*速度可高达lOM bit/s;*5V供电,兼容LSTTL或TTL;*在高温下正常工作;*逻辑门电路输出;*超高隔离性能。 可见所选的隔离芯片有很好隔离性能,而且前面的A/D校准曲线表中的LCD数据是在通过这个隔离芯片以后测的,从表中的数据可以看到,隔离对数据的精确度基本没有影响。 也就是在正确保证了数据的有效性之外提供了很好的隔离性。 第4章 硬件电路设计完全隔离要求放大器两边的电源也必须隔离,因而电源同样设计为由不同绕线组引出的交流电处理而得。 其中AD620, OP07, AD7835以及6N137的输入部分单独使用两路士12V和5V模拟电压。 6N137的输出部分则使用另两路电源,从而将电源完全隔离开来。 电源电路图 前置电路的设计第一级AD620采用继电器RW1控制实现增益5,而当AD620开环时增益为1第二级OP07开环增益为1,而通过继电器RW2 – , ,5,10,1000。 放大电路图 A/D转换隔离电路设计经由前面二级放大后的模拟信号通过AD7835转换成数字信号,继而再通过光隔离芯片6N137进行隔离。 从图下可以看到,AD7835的CONY、DATA,和CLK 3个端口是要通过单片机控制的,所以将此3个端口的输出信号都接入光隔离芯片进行隔离。 因此,一路的信号需要3块隔离芯片。 特别注意器件的GND的设计,在光隔芯片的信号输入端全部选择接入变压器交流分压而得的模拟地,而在光隔芯片的信号输出端则全部选择接入由单片机提供的数字地,从而确保了信号在经过光隔离芯片后的完全隔离。 A/D转换隔离电路图 单片机控制电路设计而对于三路通道的而言,三片AD的CONV和CLK可由PBl和PBO共同控制,系统硬件设计及实现而数据DATA则可分别接到PDO、PD2这三个端口。 通过上面的硬件连接就能实现对三个通道的实时操作,可以同时采集三个通道的数据,而不用使用轮询的方式,就不会在数据变化较快时造成数据的丢失。 使整个数据采集系统的灵敏度有了很大的提高。 GND CONVGND DATAAin CLKVref +Vcc隔离PB1PD0PB0ADS7835CONVDATACLKATMEGA16 单片机控制简图 外设电路设计为便于调试与使用,系统带有四个按键和一块LCD液晶显示屏,LCD为5*7点阵字符型,可显示2行字符,每行20字符。 作为提供给用户的界面。 LCD采用标准接法,键盘通过三态缓冲隔离后可由总线读入。 PB0 PB1 PA7PA0按键地址选通 R/WE RS D7D0三态缓冲ATMEGA16 LCD和键盘电路图 总电路设计 总设计电路 各元件功能简述,本电路主要是由三路信号的流程模块组成,其三个模块的功能和组成都是相同,每个信号模块都是由AD620,0P07,ADS7835,6N137,继电器,电阻,电容,等元件组成。 AD620在电路中是对信号进行一级放大,继电器RW1是对6N137实现增益控制。 OP07是在一级放大以后进行二级放大,分别由RW2—RW6实现增益控制。 ADS7835是A/D转换芯片,主要功能是模拟信号变换成数字信号,在转换过程中实现了采集,量化,编码等工序。 6N137是一种光电隔离器,实现被采集信号与主控电路隔离,在系统中主要是发挥其隔离的功能。 在三个模块以外的电路中,ATMEGA16是系统的核心,主要功能有,对数据采集和传输的控制,提供系统时钟,实现采集数据的显示和保持控制,提供系统的调试。 LCD功能是通过对数字译码,对采集数据进行显示,达到系统与人的交互。 电源部分主要是由二极管,MC7415T,MC7405T组成。 二级管组成桥式整流,MC7415T和MC7405T是为系统提供+12V和5V的电压。 温度传感器采集环境中的温度,反映成为模拟电信号,模拟电信号输入AD620的VIN+和VIN端,由OUT端口输出,实现了增益为5的放大,然后再由继电器RW2RW6控制输入OP07进行二级放大,实A/D转换,模拟信号转换成数字信号,同时也由ATMEGA16控制,并经过6N137的隔离,.数字温度信号进入ATMEGA 16的PD0端,最后通过ATMEGA16的处理,由LCD的采集的温度进行显示,同时也用储存器进行储存.湿度和光度信号流程基本都是相同,具有相同的流程原理.第5章 软件设计初始程序主要是初始化器件的端口,设定芯片的工作方式进行,以及其他功能处理的初始设定。 开始初始化、参数设置消息循环、等待指令主要的中断有两种:定时中断和外部定时中断由定时器产生,作为定时采样时的触发信号和时标。 开始现场恢复I=1 to 3通道1开采样通道1,记录采样值采样值处理,存入Ram,或直接传到PCRam存满面换页或通知PC返回现场保护I=4NYYPC中断 外部中断因中断源不同而有所不同。 开始现场保护取中断源信息收取USB数据流指令分析设置解释执行指令并回复关中断进入键盘设置程序设置执行程序现场恢复返回读取采样值采样值处理;存入Ram或直接传到PC换页或通知PCRam存满。 带回复指令YN键盘中断AD中断 外部中断服务程序 SPI通信程序设计在设计中,我们模数转换的ADS7835芯片采取SPI的方式进行通讯,SPI通信程序如下:define LPT_PORT 0x378define CLR_WCK(X) {X=Xamp。 (~(10))。 outportb(LPT_PORT,X)。 } // define SET_WCK(X) {X=X | (10) outportb(LPT_PORT,X)。 }define CLR_BCK(X) {X=Xamp。 (~(12))。 outportb(LPT_PORT,X)。 } // define SET_BCK(X) {X=X | (12) outportb(LPT_PORT,X)。 }define CLR_DATA(X) {X=Xamp。 (~(13))。 outportb(LPT_PORT,X)。 } // define SET_DATA(X) {X=X | (13) outportb(LPT_PORT,X)。 }define FALSE 0define TRUE 1void test_m(){unsigned char data data = 0。 printf(“Please press enter to begin send data\n”)。 getch()。 printf(“Pull down WCK \n”)。 CLR_WCK(data)。 getch()。 printf(“Pull up WCK \n”)。 SET_WCK(data)。 getch()。 printf(“Pull down BCK \n”)。 CLR_BCK(data)。 getch()。 printf(“Pull up BCK \n”)。 SET_BCK(data)。 getch()。 printf(“Pull down DATA \n”)。 CLR_DATA(data)。 getch()。 printf(“Pull up DATA \n”)。 SET_DATA(data)。 getch()。 }// Note: the size of buffer to send must be dword multiple// size is the number of bytes to sendvoid short_delay(int n){int i。 for(i=0。 i {int temp =0。 })int send_spi_data(unsigned char *buffer, unsigned long size){unsigned char buff[1024]。 unsigned char *buf=buff。 unsigned char data。 int i,j,k。 data =0。 if((size%4)!=0) return FALSE。 memcpy(buff,buffer,size)。 do{SET_WCK(data)。 for(k=0。 k2。 k++){for(j=0。 j2。 j++){printf(“.”)。 for(i=0。 i8。 i++){if((*buf)amp。 0x80){SET_DATA(data)。 }else{CLR_DATA(data)。 }short_delay(1)。 // delay(1)。 SET_BCK(data)。 short_delay(1)。 // delay(1)。 CLR_BCK(data)。 short_delay(1)。 // delay(1)。 *buf=1。 }buf++。 size。 }// buf++。 // size。 CLR_WCK(data)。 }SET_WCK(data)。 }while(size0)。 return TRUE。 }/*void main(){int i。 unsigned char tmpdata[4]。 tmpdata[0] = 0x34。 tmpdata[1] = 0x12。 tmpdata[2] = 0x56。 tmpdata[3] = 0x78。 // for(i=0。 i500。 i++)for(i=0。 i50。 i++){send_spi_data(tmpdata,4)。 }// test_m()。 } 总程序 C语言源程序清单:include include include include include include include include int Send(char *buf){char *p=buf。 int length=(*p)+1。 do{if(inportb(Ox379)amp。 0x01) {outportb(Ox379,Oxfl)。 return 1。 } outportb(Ox3 7c, *p)。 p++。 length。 } while(length!=0)。 return 0。 }int Receive(char *buf){char *p=buf。 int length=*p=inportb(Ox37c)。 P++。 do{if(inportb(Ox379)amp。 0x01) {outportb(Ox379,Ox return 1。 } *p=inportb(Ox37c)。 P++。 length。 }while(length!=0)。 *p_=X01。 r。基于avr单片机高速数据采集系统
相关推荐
规模。 旅游业 作为一个 城市的旅游服务系统 ,具有 服务 性质 很强的商业性质。 所以,考虑系统面向的 对象 ,系统开发 后的应用对象需要进行必要的定位。 那么 它 需要具有 哪些特点呢。 1. 一般来讲, 旅游业 的规模决定 宣传网站 的大小。 而 旅游信息管理网站 面向的对象是 旅 客和 旅游业投资 者 , 其面对的范围是世界的每一个角落 , 数据量 宽而不繁 , 应满足各种不同需求
( Super_Pro1_Type) 名称 数据类型 长度 是否允许为空 Super_Pro1_ID int 4 否 Super_Pro1_Type nvarchar 50 是 Super_Company_Type nvarchar 50 是 表 4 商区信息表( Super_Area) 名称 数据类型 长度 是否允许为空 Super_Area_ID int 4 否
83。 14 谢 辞 16 参考文献 17 附 录 18 桂林电子科技大学课程设计(论文)报告用纸 第 1 页 共 26 页 引 言 脉搏波所呈现出来的形态、强度、速率和节律等方面的综合信息,能反映出人体心血管系统中许多生理疾病的血流特征。 本系统采用 STC89S51 单片机为核心而制作的一种实用型脉搏测量仪。 采用 HK2020A 集成化脉搏传感器作为传感器对人体的脉搏心率警醒数据采集。
导致片内基准源与外部参考源的短路。 如果 AREF 引脚没有联接任何外部参考源,用户可以选择 AVCC 或 作为基准源。 参考源改变后的 第一次 ADC 转换结果可能不准确,建议用户不要使用这一次的转换结果。 转化结果 转换结束后 (ADIF 为高 ),转换结果被存入 ADC 结果寄存器 (ADCL,ADCH)。 单次转换的结果如下: ADC=VIN * 1024/VREF 式中, VIN
DS18B20 中的每个器件上都有独一无二的序列号。 实际应用中不需要外部任何元器件即可实现测温。 测量温度范围在- 55。 C到+ 125。 C之间。 数字温度计的分辨率用户可以从 9位到 12 位选择。 内部有温度上、下限告警设置。 DS18B20 的数据输入 /输出端连接于 Atmega16L 的 PA7 引脚 ,电路原理如图 6所示。 AGND31X113X212R E
声传感器有一定的测量范围: ,精度为其所测距离 的 1%[8]。 淮南师范学院本科毕业论文(设计) 8 超声波测距 系统的任务是精确检测出测距仪与被测物体 的距离信息,根据检测出来的距离信息,机器人能自主或在用户的操纵下躲避障碍物。 本课题所设计硬件电路就是要实现机器人周围障碍物的距离信息的测量。 Polaroid 6500 系列超声波模块的原理分析 Polaroid 6500