还剩36页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊毕业设计(论文)
1.绪论
1.1数据采集数据采集系统数据采集是指从传感器和其它待测设备等模拟和数字被测单元中自动采非电量或者电量__送到上位机中进行分析处理数据采集系统是结合基于计算机或者其他专用测试平台的测量软硬件产品来实现灵活的、用户自定义的测量系统数据采集系统在今日广泛用于工业和生活的各个方面,使生产效率大大的提高,生活品质有所提高
1.2__R单片机简述本设计主要采用ATMEL公司生产的ATmega64型单片机__R单片机是由ATMEL公司挪威设计中心利用ATMEL公司的Flash新技术所研发出的的RISC精简指令集的告诉8位单片机相对于更早出的51单片机来说,其具有的优势特征更为明显首先,__R单片机简便易学,便于升级,费用低廉在__的时候可以降低__成本其次,__R单片机是高速嵌入式单片机、低功耗、保密性能好再者,其具有的I/O口功能强劲,具有A/D转换等电路最后,其具有强大的定时器/计数器及通讯接口
1.3当今数据采集器和以太网的发展前景和趋势数据采集系统是对传感器或所需测量或处理__进行采集、数字化、存储、分析和显示的一个完整__处理链路近20年来,与数据采集系统相关的PC技术及数字__处理得到了飞速的发展,处理速度提高了三个数量级,PC总线的带宽获得了500倍的提高,同时系统工程师的设计难度、系统设计成本都随着技术的进步和工艺的提高大大降低另外,U__和以太网接口等接口技术正在数据采集系统中的得到越来越广泛的使用PC、笔记本电脑甚至PDA基本都配有以太网、U__或IEEE1394接口,数据采集系统越来越得到用户的青睐仅仅经过不到20年的发展时间,以太网经历了非常令人惊讶的变革它的运行速度已经提高了两个数量级,从10Mbps到100Mbps在到了1000Mbps,乃至最近出现的10Gbps的以太网原型以太网具有低功耗、传输速度高、易于__和兼容性好等多方面的优势由于它支持几乎所有流行的网络协议所以在商业系统中被广泛采用以太网和数据采集的有机结合,必然能够在今后无论是人类生活还是工业制造等方面展现其便捷、安全、实时的优越性
1.4设计目的和意义随着科学技术的快速发展,信息化应用得更加广泛,数据采集业得到了很大程度的应用,并且也是现在信息技术中不可或缺的部分并且数据采集还是连接外界信息与计算机之间的枢纽网络科技在近代迅速发展,人们的生活以太网是应用最广泛的计算机网络技术,几乎所有的编程语言如VisualC++、J__a、VisualBasic等都支持以太网的应用__随着Internet/Intranet的发展,以太网已渗透到各个角落,网络上的用户已解除了资源地理位置上的束缚,可远程的查看数据,控制机器本课题将数据采集与以太网有机的__,其具有的实时采集性能采集数据后通过以太网的传输和计算机的显示,能够给人们以直观的理解并且大大节约了工作人员的时间,提高了工作的效率和数据的准确性
2.本课题中多路数据采集系统需达到的指标选择__R单片机并设计相应电路选择合适的以太网控制芯片并设计其周边电路,做到简洁,稳定选择合适的液晶显示器作为本地显示,必须考虑技术和经济可行性对模拟__的采样率须大于5KHz对数字__的采样率须大于10KHz须通过UDP协议将数据包发送至网络终端程序内建Web服务器,可由普通PC浏览器对其进行访问
3.元器件的选择和及原理图设计
3.1系统的硬件结构本设计数据采集系统以一片低功耗的ATmega64__R单片机为核心,配以LDO低压差线性稳压器为电源电路供电,通过单片机内置数字和模拟通道将数据采集__送入单片机内处理,采用同时配以ENC28J60以太网芯片,为采集系统提供应用于以太网连接的接口,如图
3.1所示图
3.1硬件总体框图考虑到数据采集工作需要长时间的不断电的进行的实际情况,即需要大量的时间的供电,为了降低使用的成本,所以本设计选择采用Atmel公司所生产的ATmega64系列的单片机该芯片特性A 高性能、地同好的8位__R微处理器B 先进的RISC结构C 非易失性程序和数据存储器D JTAG接口(与IEEE___
9.1标准兼容)图
3.2所示为Atmega64芯片的管脚分布图图
3.2Atmega64芯片管脚图Atmega64芯片的功能如下VCC数字电路的电源GND地端口A~端口E端口A~端口E都为8位双向I/O口,具有可编程的内部上拉电阻其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流在复位过程中,即使系统时钟还未起振,其处于高阻状态端口F作为A/D转换器的模拟输入端当不使用A/D转换器时,端口F为8位双向I/O口,具有可编程的内部上拉电阻其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流作为输入使用时,若内部上拉电阻使能,则端口被外部电路拉低时将输出电流在复位过程中,即使系统时钟还未起振,端口F处于高阻状态如果JTAG接口使能,即使复位出现引脚PC7TDI、PC5TMS与PC4TCK的上拉电阻被激活除去移出数据的TAP态外,TD0引脚为高阻态端口F也是JTAG接口端口G端口G为5位双向I/O口,具有可编程的内部上拉电阻其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流在复位过程中,即使系统时钟还未起振,端口G处于高阻状态复位输入引脚持续时间超过最小门限时间的低电平将引起系统复位XTAL1反向振荡放大器与片内时钟操作电路的输入端XTAL2反向振荡放大器的输出端__CC__CC是端口F与A/D转换器的电源不使用ADC时,该引脚应直接与VCC连接使用ADC时应通过一个低通滤波器与VCC连接PENSPI串行编程模式的编程使能引脚在上电复位时保持该引脚为低,芯片进入SPI串行编程模式,在正常工作时,PEN无效
3.
1.3电气特性Atmega64芯片的电器特性如下表
3.1所示设计时,根据其电器特性来确定所需要的电源等设备表
3.1绝对极限值工作温度-55°C~+125°C存储温度-65°C~+150°C引脚上的电压,除了相对于地-
1.0V~VCC+
0.5V引脚上的电压,相对于地-
1.0V~+
13.0V最大工作电压
6.0V每个I/O引脚上的DC电流
40.0__DC电流VCC和GND引脚之间
200.0__
3.2电源模块硬件设计
3.
2.1低压差线性稳压器电源芯片简介 如图
3.3所示,电源模块使用的是LDO1117-
3.3V电源芯片LDO是一种低压差线性稳压器线性稳压器使用在其线性区域内运行的晶体管或FET,从应用的输入电压中减去超额的电压,产生经过调节的输出电压图
3.3低压差线性稳压器电路图低压降线性稳压器的成本低,噪音低,静态电流小的突出优点并且它需要的外接元件也很少,通常只需要一两个旁路电容非常适合本课题设计的要求
3.
2.2电源模块特性此稳压源输入最高电压16V提供固定电压输出
1.2V、
1.5V、
1.8V、
2.5V、
3.3V、5V和可调电压输出输出电压精度可控制在1%范围内较宽输出电流范围1__~1A非常好线性调整率和负载调整率低开启电压提供封装SOT-223,TO-
2523.
2.3低压差线性稳压器电性参数表
3.2为LDO1117-
3.3V的电性参数,本设计根据其参数来选定其作为电源模块表
3.2LDO1117-
3.3V电性参数电性参数符号测试条件最小典型最大单位输出电压VOVin=
5.3VIout=10__Tj=25℃1%
3.
2673.
33.333VVin=
4.6V∼12VIout=1__∼1A5%
3.
1353.
33.465输出电流IoutVin=
5.3VTj=25℃11000__输出电压温度影响系数ΔVo/ΔTVin=
5.3VIout=1__,ΔT=0℃∼125℃
1.5mV/℃线性输入调整率ΔVo/ΔVinVKA=VREFΔVin=
4.8V∼10V3578mV/V负载能力调整率ΔVo/ΔIoutΔIout=1__∼800__Vin=
4.8V
0.
30.45mV/__最小维持电流Iout(min)
0.51__静态电流IqVin10V510__开启压降VdIout=
0.1A
11.1VIout=
0.5A
11.2VIout=1A
11.3V
3.3__X3232串口模块硬件设计
3.
3.1__X3232收发器介绍在设计本课题时,考虑到其需要进行以太网数据通信,因此选择加入__X3232收发器,将IPV4地址写于串口内,使得数据通信能够进行虽然这块芯片只写入一次,但是其是整个系统中,以太网数据通信不可或缺的一部分__X3232收发器采用专有的低压差发送器输出级,利用双电荷泵在
3.0V至
5.5V电源供电__X3232能够实现真正的RS-232性能器件仅需四个
0.1μF的外部小尺寸电荷泵电容__X3232确保在120kbps数据速率下维持RS-232输出电平__X3232具有2路___和2路驱动器
3.
3.2__X3232管脚功能图
3.4为__X3232的管脚分布图,其管脚功能如下表
3.3所示图
3.4__X3232芯片管脚图表
3.3__X3232管脚说明引脚名称功能1C1+倍压电荷泵电容的正端2V+电荷泵产生的+
5.5V3C1-倍压电荷泵电容的负端4C2+反相电荷泵电容的正端5C2-反相电荷泵电容的负端6V-电荷泵产生的-
5.5V714T-OUTRS-232发送器输出813R_INRS-232___输入912R_OUTTTL/CMOS___输出1011T_INTTL/CMOS发送器输入15GND地16Vcc+
3.3V至+
5.5V供电电源
3.4以太网模块硬件设计
3.
4.1ENC28J60芯片概述ENC28J60芯片,由Microchip公司出品本课题中涉及的与以太网的各项数据通信都是由这块芯片完成的图
3.5以太网芯片管脚图ENC28J60是带有行业标准串行外设接口(SerialPeripheralInte_____,SPI)的__以太网控制器,如图
3.5它可作为任何配备有SPI的控制器的以太网接口ENC28J60符合IEEE
802.3的全部规范,采用了一系列包过滤机制以对传入数据包进行限制它还提供了一个内部D__模块,以实现快速数据吞吐和硬件支持的IP校验和计算与主控制器的通信通过两个中断引脚和SPI实现,数据传输速率高达10Mb/s两个专用的引脚用于连接LED,进行网络活动状态指示
3.
4.2以太网控制器特性IEEE
802.3兼容的以太网控制器集成__C和10BASE-TPHY___和冲突抑制电路支持一个带自动极性检测和校正的10BASE-T端口支持全双工和半双工模式可编程在发生冲突时自动重发可编程填充和CRC生成可编程自动拒绝错误数据包最高速度可达10Mb/s的SPI接口
3.
4.3缓冲器特性8KB发送/接收数据包双端口SRAM可配置发送/接收缓冲器大小硬件管理的循环接收FIFO字节宽度的随机访问和顺序访问(地址自动递增)用于快速数据传送的内部D__硬件支持的IP校验和计算
3.
4.4介质访问控制器(__C)特性支持单播、组播和广播数据包可编程数据包过滤,并在以下__的逻辑“与”和“或”结果为真时唤醒主机-单播目标地址-组播地址-广播地址-__gicPacket-由64位哈希表定义的组目标地址-多达64字节的可编程模式匹配(偏移量可由用户定义)环回模式
3.
4.5物理层(PHY)特性整形输出滤波器环回模式
3.
4.6工作特性两个用来表示连接、发送、接收、冲突和全/半双工状态的可编程LED输出使用两个中断引脚的七个中断源25MHz时钟带可编程预分频器的时钟输出引脚工作电压范围是
3.14V到
3.45VTTL电平输入温度范围-40°C到+85°C(工业级),0°C到+70°C(商业级)(仅SSOP封装)28引脚SPDIP、SSOP、SOIC和QFN封装
3.5数据采集模块本设计拥有对外部数字及模拟__进行采集的功能,其中,数字采集模块用于采集外部的数字__,模拟采集模块用于采集外部的模拟__,在这一章节中将对以上两者加以详细说明数字通道方面,主要采集外部传感器所发生的方波__,本设计可以根据实际情况,分别对外部__的上升沿,下降沿,上下边沿或低电平进行检测,同时驱动内部定时器或计数器进行定时测量或计数测量一个完善的数字通道应当具有对单片机I/O口的保护措施,在本设计中,在每一个数字通道中使用了一个RC滤波器对电路进行滤波,同时还运用了一个TVS二极管对电路进行保护,以防止瞬间高压脉冲模拟通道则要比数字通道复杂一些,不但要考虑信道的带宽问题,还需要考虑__的失真,阻抗匹配,噪声引入等问题在这里使用的单片机的AD采样速率为200KSPS,在这样的速度下,并不需要考虑太多的信道带宽问题关于__的阻抗匹配方面,使用了一个高带宽的运算放大器,用作电压跟随器,使得电路的输入电阻可以变得非常大但是在电压更随器的输入端,应增加一稳压二极管,可以最大限度地保护运放和单片机在此选用ADI公司生产的型号为AD8627的高精度、低功耗、满摆幅放大器ad8627它是单运放、具有极低的偏置电流(最大1pa);用5v-26v单电源供电或±
2.5v-±13v电压供电;最大失调电压为500μv,如此低的噪声完全可以满足一般使用的需求
4.系统软件设计系统软件主要分为以下模块采集数据、数据处理、以太网驱动、网络协议等其中数据采集和以太网驱动为底层软件,而数据处理及发送则相对为高层的软件以下是程序主流程图
4.1数据采集模块编写出具采集模块采集外部的数字和模拟__其中,数字__的采集主要以定时器为核心,定时采集单片机I/O口的高低电平,随后存储于内存变量中,以备以后更深入的处理;模拟__的采集则以单片机集成的ADC模块为核心,通过触发__,对模拟通道的模拟量进行数字转换,得到的数据存储于内存中,此处的触发__可以由单片机内部的定时器产生,亦可以由外部__触发,如此灵活的设计,将会大大方便以后__电路与此采集模块的接口设计
4.2数据处理模块编写数据处理主要对数字和模拟__进行处理首先,数字__的处理以平滑,加权平均为主,使得处理后的数据具有一定的稳定性而模拟__的处理主要运用平均,取中值等算法,以处理由于噪声或硬件__抖动而产生的误差
4.3以太网发送数据模块编写以太网发送数据模块是此设计中最重要的一部分,它是外部网络设备和单片机交换信息的桥梁,在这里将重点说明其工作方式以太网发送数据模块的软件主要分为5部分,SPI总线通信协议,ENC28J60芯片驱动程序,IP协议栈,UDP协议栈和TCP协议栈,他们的关系如图
4.1所示在此,SPI总线通信协议将在PC上的初始化驱动程序输入ENC28J60芯片ENC28J60芯片驱动程序作为最底层的程序,主要负责单片机和ENC28J60以太网芯片的通讯,包括数据包的发送,数据包的接收,对芯片的初始化,设置__C(物理)地址等操作IP协议栈,即InternetProtocol,是为计算机网络相互连接进行通信而设计的协议它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则它把各种不同“帧”统一转换成“IP数据包”格式,使所有各种计算机都能在因特网上实现互通UDP协议栈,即UserDatagramProtocol,是OSI参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务UDP协议栈的主要作用是将网络数据流量压缩成数据报的形式一个典型的数据包就是一个二进制数据的传输单位每一个数据报的前8个字节用来包含报头信息,剩余字节则用来包含具体的传输数据TCP协议栈,即Tran__issionControlProtocol它是一种面向连接(连接导向)的、可靠的、基于字节流的运输层通信协议通过完成以上四部分的程序编写,既可以将单片机接入以太网,在下面的章节中,将详细叙述这四部分的实现方式
4.
3.1SPI总线通信协议SPI(SerialPeripheralinte_____)是一种高速,全双工,同步的通信总线,并且仅占用芯片的四个管脚,因此能为PCB布线节省空间,提供方便SPI是一个环形总线结构,采用主从连接方式,同时由SS(CS)、SCK、SDI、SDO四根数据线如图
4.2所示,来完成片选,时钟__和数据收发SPI模块为了和外设进行数据交换,根据外设工作要求,其输出串行同步时钟极性和相位可以进行配置,时钟极性(CPOL)对传输协议没有重大的影响如果CPOL=0,串行同步时钟的空闲状态为低电平;如果CPOL=1,串行同步时钟的空闲状态为高电平时钟相位(CPHA)能够配置用于选择两种不同的传输协议之一进行数据传输如果CPHA=0,在串行同步时钟的第一个跳变沿(上升或下降)数据被采样;如果CPHA=1,在串行同步时钟的第二个跳变沿(上升或下降)数据被采样SPI主模块和与之通信的外设音时钟相位和极性应该一致#0;MASTERSLAVESSSCKSDISDO图
4.2SPI通信方式
4.
3.2ENC28J60芯片驱动程序的编写程序中,共运用了以下函数对ENC28J60进行通讯操作enc28j60ReadBuffer当有外部数据包从以太网接口被ENC28J60捕获后,如此数据包的目的__C地址与ENC28J60被初始化时写入的__C地址相同,那么ENC28J60将会将此数据包放入缓冲区,此函数正是用于读取ENC28J60的缓冲区数据enc28j60WriteBuffer当需要ENC28J60向外发送数据时,由于单片机SPI的传输速率往往小于以太网的传输速率,所以在ENC28J60中需要一个缓冲区,以存储将要向外发送的数据,此函数正是写用于向ENC28J60缓冲区写入数据所用enc28j60SetBank当缓冲区数据被发送后或读取后,需要清空缓冲区以为下一次接收或发送做准备,此函数用于清空ENC28J60的缓冲区enc28j60Read在ENC28J60芯片工作时,会存在着许多的状态,而这些状态也是单片机需要实时监控的,在此,这个函数用于读取ENC28J60的当前状态enc28j60WriteENC28J60在初始或发送数据时也有许多参数需要配置,为此需要编写一写ENC28J60状态的函数,用于控制ENC28J60,这正是此处enc28j60Write的作用enc28j60PhyWrite在以太网中的每一个连接设备都需要一个唯一的,固定的__C地址,此地址使得每一个设备能够过滤网络中其它并不发往自己的数据包,以减轻自己、处理器的运算量此函数用于将固定的__C地址在初始化时写入ENC28J60芯片中enc28j60Init此函数用于初始化ENC28J60芯片,包括__C地址的写入,功能状态的配置,以及外部LED显示方式等enc28j60PacketSend当在缓冲区中写入一个完整的TCP或UDP包时,就需要将其通过ENC28J60发送,此函数正是用来发送一个数据包enc28j60PacketRe__ive当有外部数据包从以太网接口被ENC28J60接收后,如此数据包的目的__C地址与ENC28J60被初始化时写入的__C地址相同,那么ENC28J60将会将此数据包放入缓冲区,此函数正是用于读取ENC28J60的缓冲区中的数据包enc28j60_reset在上电后,单片机完成自己的所有初始化操作后,再初始化ENC28J60前需要复位ENC28J60芯片,以使得ENC28J60到达一个确定的初始状态有时,在系统的工作中,当检测到ENC28J60芯片异常时,也需要对其进行复位,在此使用enc28j60_reset函数对ENC28J60芯片进行复位
4.
3.3IP协议栈的软件编写IP协议是TCP/IP协议族中最为核心的协议它提供不可靠、无连接的服务,也即依赖其他层的协议进行差错控制在局域网环境,IP协议往往被封装在以太网帧中传送而所有的TCP、UDP、ICMP、IGMP数据都被封装在IP数据报中传送其数据报结构如图
4.3所示,功能描述如表
4.1所示图
4.3IP数据报结构表
4.1IP数据报描述字段名长度(字节)描述版本号1/2(4比特)标识用来产生数据报的IP版本相对于IPv4,该号为4这个字段确保可能运行不同IP版本的的设备之间的兼容性头部长度(IHL)1/2(4比特)以32比特的字来定义IP首部的长度服务类型(TOS)1一个用于携带提供服务质量特征信息的字段,如IP数据报的优先交付该字段并没有如初始定义被广泛使用,它的含义被一个称为区分服务的技术而重新定义使用总长度(TL)2指定了IP数据报的总长度,按字节计由于这个字段是16比特宽,一个IP数据报的最大长度是65535字节,尽管大多数都小得多标识2以便交付过程中在路由器上必须要分片时使用接收方使用该字段来重新组装报文而不会意外地把来自不同报文的分片混在一起需要该字段是因为分片可能来自混合在一起的多个报文,因为来自于任一台设备的IP数据报可以被无序地接收标志3/8(3比特)3个控制标志,两个用于管理分片,一个是预留的片偏移15/8(13比特)当一个报文出现分片时,该字段指定了在这个分片中的数据位于报文中的偏移量,或位置,偏移值以8字节为单位(64比特)第一个分片的偏移量是0生存期(TTL)1该字段指定了数据报在网络上允许存活的时间,以路由器跳数计每个路由器在发送数据报前会减少这个字段的值(减1)如果TTL字段减到0,该数据报被认为历经了一条太长的路由,则被丢弃协议1标识在数据报中携带的较高层协议(通常是一个运输层协议或封装的网络层协议)表3说明了该字段的协议值,这些值最初由IETF“地址分配”标准RFC1700定义,现在由因特网地址分配委员会(IANA)维护头部校验和2检验和在头部上进行计算,提供传输中基本的差错保护它不是数据链路层技术如以太网等常用的较复杂的循环冗余检测(CRC)码;它只是一个16比特检验和它通过把首部字节分为两个字(一个字是两字节)然后相加而计算得到所有头部(不是数据)被计算检验和在每一跳,设备收到数据报都要做检查和计算,如果两个检验和不相同,它认为数据报损坏将其丢弃源地址4它是数据报的发起者的32比特IP地址注意即使中间设备如路由器可能处理该数据报,它们通常不把它们的地址放入该字段,这个地址总是最初发送该数据报的设备的地址目的地址4它是数据报的期望接收方的32比特IP地址同样,即使如路由器等设备可能是数据报的中间目标,该字段总是用于定义最终目的地选项可变的一种或几种类型的选项可能被包含在某个IP数据报标准首部的后面数据可变的这时在数据报中要传输的数据它是一个完整的较高层报文或报文的一个分片
4.
3.4UDP协议栈的软件编写UDP是一种不可靠的、无连接的数据报服务源主机在传送数据前不需要和目标主机建立连接数据被冠以源、目标端口号等UDP报头字段后直接发往目的主机这时,每个数据段的可靠性依靠上层协议来保证在传送数据较少、较小的情况下,UDP比TCP更加高效UDP数据报结构如图
4.4所示,其功能如表
4.2所示图
4.4UDP数据报结构表
4.2UDP数据报报头描述字段名长度(字节)描述源端口号16标识源端的应用进程目标端口号16标识目标端的应用进程长度16标明UDP头部和UDP数据的总长度字节校验和16用来对UDP头部和UDP数据进行校验和TCP不同的是,对UDP来说,此字段是可选项,而TCP数据段中的校验和字段是必须有的
4.
3.5TCP协议栈的软件编写TCP是一种可靠的、面向连接的字节流服务源主机在传送数据前需要先和目标主机建立连接然后,在此连接上,被编号的数据段按序收发同时,要求对每个数据段进行确认,保证了可靠性如果在指定的时间内没有收到目标主机对所发数据段的确认,源主机将再次发送该数据段TCP数据报结构如图
4.5所示,其结构描述如表
4.3图
4.5TCP数据报结构表
4.3TCP数据报报头描述字段名长度(字节)描述源端、目标端口号16TCP协议通过使用端口来标识源端和目标端的应用进程端口号可以使用0到65535之间的任何数字在收到服务请求时,操作系统动态地为客户端的应用程序分配端口号在服务器端,每种服务在Well-KnowPort为用户提供服务顺序号32用来标识从TCP源端向TCP目标端发送的数据字节流,它表示在这个报文段中的第一个数据字节确认号32只有ACK标志为1时,确认号字段才有效它包含目标端所期望收到源端的下一个数据字节头部长度4给出头部占32比特的数目没有任何选项字段的TCP头部长度为20字节;最多可以有60字节的TCP头部URG1紧急指针(urgentpointer)有效ACK1确认序号有效PSH1接收方应该尽快将这个报文段交给应用层RST1重建连接SYN1发起一个连接FIN1释放一个连接窗口大小16此字段用来进行流量控制单位为字节数,这个值是本机期望一次接收的字节数TCP校验和16对整个TCP报文段,即TCP头部和TCP数据进行校验和计算,并由目标端进行验证紧急指针16它是一个偏移量,和序号字段中的值相加表示紧急数据最后一个字节的序号选项32可能包括窗口扩大因子、时间戳等选项
5.调试
5.1调试所使用的工具调试中,主要使用到线形稳压电源,示波器,__源,万用表,网络交换机,PC电脑等设备其中线形稳压电源使用__固纬公司生产的型号为GPD-3303D,示波器使用美国泰克公司生产的4000系列示波器,__源使用北京普源公司生产的DG1022任意函数波形发生器,网络交换机使用__TP-LINK公司生产的TL-SF1024D24__换机,PC电脑使用ThinkPadX200笔记本电脑
5.2调试计划对此设计的调试过程出要从硬件和软件两方面展开硬件方面主要以电源电压,各芯片电流,单片机工作情况,以太网芯片工作情况,串行通讯芯片工作情况等方面展开同时软件部分的调试主要配合PC展开,通过协议分析软件对以太网数据包的抓取,分别对IP协议包,UDP协议包,TCP协议包等通讯数据进行分析在本次调试中,共制作了5个设计模块,在调试过程中,会分别对5个模块进行测试,并列出其测试结果,以验证测试结果的真实性
5.3硬件调试过程
5.
3.1低压差线形稳压器(LDO)的调式当输入电压为5V时,根据LDO数据手册的描述,其输出电压应为
3.3V,现对5个模块的测试结果如下表
5.1所示表
5.15个模块的电压测试结果模块号输入电压(V)输出电压(V)
15.
03.
30125.
03.
30935.
03.
29845.
03.2__
55.
03.310由此可见,输出电压均在
3.300V处浮动,极差为
0.021V,可以稳定地向后续电路供电,调试通过
5.
3.2单片机的调试单片机是一个较为复杂的元器件,而在此只需确定单片机正常工作即可,因此,在调试中,分别向5个测试模块中的单片机写入同一个输出1KHz方波的基本程序,观察其输出的__,同时还须观察16MHz晶体出的震荡频率,现将测试结果整理如下表
5.2所示表
5.2单片机测试结果模块号1KHz处输出频率(KHz)晶体出振荡频率(MHz)
11.
00116.
00121.
00216.
00330.
99916.
00040.
99815.
99951.
00015.999由此表格可见,单片机在各频率输出端的__频率与计算值非常相近,这也能够证明单片机已正常工作,调试通过
5.
3.3SPI总线的调试SPI总线的调试用到了4根单片机的引脚,且为时序电路,因此无法用万用表这样的工具分析在此,运用了美国泰克公司生产的4000系列示波器,SPI的通讯过程如图
5.1所示图
5.1SPI通讯过程从图中可以看出SPI的数据输出和数据输入两个管脚均有__,且时序符合SPI通讯协议,调试通过
5.
3.4以太网芯片调试此处的调试主要以软件调试为主,将在下一章节详细描述
5.4软件调试过程软件调试主要以以太网传输性能为主,包括IP数据包,ARP协议,ping包测试,UDP协议,TCP协议和Web服务器等,其中,IP数据包,ARP协议,ping包测试,UDP协议和TCP协议使用科来网络分析系统进行详细分析,Web服务器则使用PC电脑的IE浏览器进行验证
5.
4.1以太网IP数据包的调试在此处以及下文中任何关于以太网的调试中,探头的IP地址始终被设置为
10.
82.
0.28,__C地址设置为74-EA-3F-10-00-08,同时,PC的IP地址设置为
10.
82.
0.3,PC的__C地址为F0:DE-F1-0E-EA-BE图
5.2IP数据包调试如图
5.2所示,图中清楚地可以看到一个完整的IP数据包的结构以及其数据其目标地址为F0:DE-F1-0E-EA-BE,也就是PC的__C地址,其源地址为74-EA-3F-10-00-08,也就是本设计的地址,协议类型0x0800,代表IPv4在程序中,checksum函数用于计算IP包中的校验位,以配合PC检测出传输中的错误
5.
4.2ARP协议的调试ARP协议的测试主要用PC中arp/a命令验证,如图
5.3图
5.3ARP协议测试结果
5.
4.3模块Ping包调试Ping包得测试主要以ping
10.
82.
0.28–t命令进行测试,如图
5.4图
5.4ping包测试从图中可以看到,在进行73次ping包的过程中,没有一次漏包,由此可见,模块性能良好
5.
4.4UDP协议调试模块会定时向指定的PC发送UDP数据包,在这里,适用科来网络分析系统进行抓包分析,图
5.5为一个完整的UDP数据包=图
5.5UDP协议调试
5.
4.5TCP协议调试TCP协议较UDP而言相对较复杂,有着几次握手的过程,从分析软件中,可以清楚得看出这一过程,见图
5.6图
5.6TCP协议调试
5.
4.6内置Web服务器的调试通过TCP协议,内建的Web服务器就可以被IE浏览器浏览,浏览页面见图
5.7图
5.7web服务器调试
5.
4.7数字采集通道的调试通过对数据采集通道加入脉冲__,网页上就会显示其数据,如图
5.8所示图
5.8数字采集通道调试
5.5调试总结各个部分的调试非常顺利,均达到了预期的目标,实现了基本功能但还有很多不人性化的地方需要进行调整,例如Web界面过于简单等电路原理图硬件实物图7。