基于STM32的农业灾害监测系统研究通信工程专业

上传人:文*** 文档编号:63377283 上传时间:2022-03-18 格式:DOCX 页数:37 大小:2.01MB
收藏 版权申诉 举报 下载
基于STM32的农业灾害监测系统研究通信工程专业_第1页
第1页 / 共37页
基于STM32的农业灾害监测系统研究通信工程专业_第2页
第2页 / 共37页
基于STM32的农业灾害监测系统研究通信工程专业_第3页
第3页 / 共37页
资源描述:

《基于STM32的农业灾害监测系统研究通信工程专业》由会员分享,可在线阅读,更多相关《基于STM32的农业灾害监测系统研究通信工程专业(37页珍藏版)》请在装配图网上搜索。

1、第一章 绪论1.1课题来源及研究目的和意义农业的智慧,是农业生产的发展的潮流.中国是一个农业大国,在传统意义上,每年耕地盖率正在下降,年轻一代渴望在农村耕种。对于自动化和机械化智慧,农业可以被认为是非常紧迫的。更有效地利用有限的耕地和更少的资源不仅是可持续发展的必要条件,也是我们社会现代化的具体体现。智慧农业是源于物联网技术兴起浪潮或世界物联网具体表现的众多“智慧”产品之一。农业生产。它主要利用物联网技术,即农业温室中的环境信息由相应的传感器模块测量,然后将信息收集在控制中心。通过有线网络在现场建立数据网络或手动测量数据是传统智能农业检测系统在大多数情况下获得环境参数的一种方式。智能农业利用物

2、联网技术建立一个网络,利用各种传感器和无线传输设备,可以及时呈现各种环境参数。真实和自动的方式,以及无缝连接用户和产品。如果继续采用标签技术,它还将能够建立现代农业农产品的可追溯平台,实现对食品安全和产品可追溯系统的有效控制农场。1.1.1.提高农业生产效率物联网技术在农业中的使用显着提高了农业部门的管理水平,提高了农业生产效率。在农业生产过程中,利用各种远程数据传输,构成了监管的科学依据。自动化农业生产环境。持续优化作物生长环境为作物提供了最佳的生长环境,提高了质量和产量,从而提高了农业生产的效率。1.1.2.保障食品安全性在现代农产品安全体系中,有一个农产品和食品的可追溯系统,集成了电子标

3、签,条形码,物联网,GPRS和计算机的应用。 ,允许监测农产品的质量,可追溯性和可视化,并允许农产品从农田转移到餐桌。为了确保整个加工过程的有效监控,可以可靠地管理农产品并显着提高食品安全的可靠性。1.2 国内外在该方向的研究现状及分析1.2.1 国外农业发展形势随着全球气候恶化,各种环境问题得不到解决,可持续经济已成为现代农业发展的主要趋势。近年来,世界发达农业国家在可持续农业经济方面做了大量尝试:生态农业,能源农业和智能农业已成为经济发展的新趋势。可持续农业。目前,农业的基本国情分为三类:第一土地少的人缺乏资源,第二是缺乏劳动力和人力资源缺乏,第三是土地和劳动力。现代农业表现在以下几个方面

4、:1.2.1.1农业生产智能化GPS技术使得开发高智能拖拉机成为可能,不仅可以精确定位和区分行进方向,还可以将GPS数据传输到农场信息采集中心,误差小于2.5厘米。因此,坐标的温度和湿度,土壤的化学成分和排水沟的位置形成了最佳的农业计划,包括种子,肥料和农药的使用量。这种智能拖拉机可以通过在屏幕前执行简单操作轻松执行一系列任务,这不仅加快了工作速度,还减少了种子,农药和化肥的浪费。生产不仅可以增加20,而且可以节省50的投资。在美国,Valmont和ARS联合开发了一种用于智能作物灌溉的红外水分仪。如果该装置安装在灌溉机上,则每6秒钟测量一次植物的温度值。该值小于设定值。此时,信息中心提供启动

5、灌溉系统的说明。收获作物时,准确的生产统计数据是一项庞大而复杂的任务。美国研究所已开发出一种可在收割机收割过程中准确收集的生产计数器。根据生产数据和这些数据,建立每个地区的生产统计数据,工作人员可以使用这些生产表制定下一年的生产计划。1.2.1.2农业生产机械化根据作物的生长规律, 机械化耕作的农业生长是在人工调节的生态环境中进行的, 如光强、温度和土壤湿度、空气湿度和土壤的温度和养分组成, 是高新技术的完全应用, 完全或部分不具备现代农业的地形、季节和其他自然条件。具有机械化、智能化、高进、规模化、高产、高质量、高产等特点。现代智能农业在荷兰、德国、日本、法国、美国等其他发达农业国家得到了大

6、规模发展。随着各种技术的不断进步, 现代智能农业的特殊优势与成为广大市民农业生产的未来有关。1.2.1.3农业经营产业化传统农业将从原有仅仅是产销、农贸变成产供销、农工贸、农科教有机结合和相辅相成的经营机制。现代的农产品市场对食品安全越来越严格,要求农产品在耕种、生产、加工、包装、储运、销售等环节技术水平提高、经营透明化、运作效率高,所以农业产业化是新时代农业的必经之路。1.2.1.4.农业生产方式和经营目标更为广泛现代农业生产将结合更多的元素。拓展农业的生产方式以及经营目标,例如:以环保与可循环经济为目标的生态农业、以观光旅游为副业或主业的观光农业、以供市区市民娱乐性劳作或者一家人进行农家乐

7、的悠闲郊区农业等新的农业新模式将不断开发、推广。1.2.2 国内农业发展形势中国正出于转型期,转向现代农业进军的重要时期。在这一时段里,随着人均GDP突破1万美元的小康阶段,人们对与物质生活的追求也随之提高了。发展智慧农业的目标是实现增收增产、节省资源、统一耕种、保证食品安全。智慧农业还可以调整农村的收入结构,实现科技改变农业,并在改善水土平衡、保持气候良好、调节地理环境、改进生态平衡等方面做出重要贡献,具有重大的生态效益和社会效益。第二章 系统整体设计方案2.1系统功能该系统有两个主要任务, 测试任务和传输任务, 分别由不同的设备负责相应的功能。本文的智能农业设计以嵌入式系统为基础, 实现了

8、棚内的遮阳板和洒水控制, 以及对温度和湿度的实时监测,土壤水分、照明强度和降水。同时, 通过无线收发器模块, 收集遥控器末端的数据传输和相应的控制操作。在本设计中, 棚内的温度和湿度、发光强度、土壤湿度、发光强度等环境数据都设置了阈值, 再次设定了阈值, 将自动做出相应的报警或浇水操作。2.2工作原理上述大棚中所有的相关数据信息主要是通过多个传感器来对相应的。光照传感器、温湿度传感器、土壤湿度传感器、雨滴传感器等进行数据采集得到的,并将采集到的数据通过ESP8266无线传感网络传输到STM32F407VET6上,以此实现对各数据信息的远距离传输. 而后ESP8266模块将各数据信息从STM32

9、F407VET6控制系统通过网络上传到上位机,实现实时检测功能,调控指令通过 ESP8266 模块传输至STM32F407VET6,再通过STM32F407VET6传输至对应模块来实现相关设备的调控功能。本设计农植物生长环境全参数的采集,并设定了预定值,当某个环境参数超过它对应的设定值,系统将响起警报信号并发送对应的警报信号给人机交互界面。整个系统设计为三层:感知层、传输层、人机交互层。第一层:感知层,也就是各种传感器,负责收集农植物大棚各种环境参数;第二层:传输层,把传感器收集到的数据汇集到单片机内部进行处理,然后通过传输层显示在人机界面;第三层:人机交互层,良好的人机交互层能把上传数据呈现

10、在用户面前,并根据用户的操作发送指令给单片机,让单片机做出反应。图2-1 系统框架图如图2-1所示,本次论文设计的系统采用的处理内核是ARM32位的Cortex-M4 CPU的STM32最小系统板STM32F407VET6。根据DHT11的主要参数,包括:(1)湿度的测量范围为20%-95%,测量误差为+-5%;(2)温度测量范围为0摄氏度到50摄氏度,测量误差为+-2度(3)湿度测量精度为1%,温度测量精度为1摄氏度。用于测量光照强度的BH1750FVI模块,光照强度测量范围为1lx-65535lx,精度为1lx,最小误差变动在+-20%;用于测量雨水的模块,有TTL数字输出和AO输出两种模

11、式,第一种是检测是否有雨滴,第二种模式是检测雨滴的大小;土壤湿度模块同是有AO输出与DO输出,当湿度值低于设定值时,DO输出高电平,高于设定值时,DO输出低电平。这四个传感器收集到的数据汇集到STM32单片机进行分析处理,然后把分析后的结果通过ESP8266模块发送给指定的连接上位机。由上位机操控水泵洒水等操作。第三章 系统硬件设计本设计将系统分为硬件和主控两部分,其中的硬件部分包括空气温湿度传感器、土壤湿度传感器、光照传感器、无线传输模块。主控部分采用的是ST公司的STM32F407VET6。3.1 STM32 简介就是指ST公司开发的32位微控制器。在如今的32位控制器当中,STM32是为

12、是领跑者,拥有出众的性能、灵活且丰富的内设。优点是高性价比和低能耗,大受工程师和市场的青睐。STM32的多系列,可以满足市场的各种需求,从内核上分有 Cortex-M0、M3、M4 和 M7,内核又可以分为主流、高性能和低功耗。F4 代表了高性能,基于 Cortex-M4 内核,主频 180M。特点为高性能、低成本、低功耗。本文使用STM32F407VET6,主要参数如下:图3-1 STM32F407VET6主要参数3.1.1 STM32F407VET6 命名解释家族STM32表示32bit的MCU产品类型F表示基础型407表示具体特性:高性能V表示引脚数目:V表示100pin,其他的 C表示

13、48,R表示64,Z表示144。Z表示144,B表示208,N表示216E表示FLASH大小:E表示512KB, C表示 256,E表示 512,I表示2048。T表示封装:T表示QFP封装,这个是最常用的封装。6表示温度:6表示温度等级为A :-4085,7代表-40105。3.1.2 开发板介绍图3-2 STM32F407VET6 开发板原理图此开发板选择了STM32F407VET6作为MCU,这个芯片配置非常强大,他拥有资源:集成了ARM32位Cortex-M4 CPU与FPU,自适应实时加速器,允许零等待状态从闪存到执行区域,频率高达168M HZ,拥有储存器保护单元,集成FPU和DP

14、S指令。拥有的资源如下:具有192+4KB SRAM、512KB FLASH、3个SPI、3个串口、1个标准2.0 USB(带DMA)、1个用于外接HS ULPI USB、1个10/100M以太网MAC控制器、一个8至12位并行摄像机接口、3个AD(12bit、1us、分时24道)、2个12bit的DA、2个全双工I2S、3个IIC、1个SDIO接口、2个CAN、140个IO口。详细见下图3-3。 图3-3 STM32F407VET6资源ST(意法半导体)推出了以基于ARM® Cortex-M4为内核的STM32F4系列高性能微控制器。他采用了90 纳米的NVM 工艺与ART(自适应实

15、时存储器加速器,Adaptive Real-Time MemoryAccelerator)。ART技术使得程序零等待执行。提升程序执行的效率。将Cortext-M4的性能发挥到了极致,使得STM32 F4系列可达到210DMIPS168MHz。在 CPU 运行时, 作用自适应实时加速器可以完全释放 cortex-m4 内核的性能允许的频率 (168Mhz)。在闪存中运行的程序,能达到相当于零等待周期的性能。STM32F4系列微控制器集成了单周期DSP指令和FPU(floating point unit,浮点单元),提升了计算能力,可以进行一些复杂的计算和控制。图 3-4 STM32F407VE

16、T6 正面引脚图使用的STM32 芯片是封装好的成品,由内核和片上外设组成。与将他电脑 类比,内核与外设就如同电脑上的 CPU 与主板、显卡、内存、硬盘的关系,内核即为CPU。由 ARM 公司设计。芯片不由ARM 公司生产,ARM 公司出售其芯片技术授权。;片生产厂商们如 ST、TI、Freescale,主要负责 在内核之外设计部件并生产整个芯片.内核之外的部件被称为片上外设。 如 GPIO、USART(串口)、I2C、SPI 等都叫做片上外设。具体见图 6-3。图 3-5 STM32 芯片架构简图集成了新的DSP和FPU指令,拥有168MHz的高速性能可以使数字信号控制器应用和产品开发达到了

17、新的水平。从而提升控制算法的代码效率、执行速度。先进技术和工艺-存储器加速器:自适应实时加速器(ART Accelerator )- 多重AHB总线矩阵和多通道DMA:可实现程序执行和数据传输的并行处理。数据传输速率很快- 90nm工艺高性能- 210DMIPS168MHz- 因为采用了ST的ART加速器,程序从FLASH运行基本等于0等待更多的存储器- 多达1MB FLASH (将来ST计划推出2MB FLASH的STM32F4)- 192KB SRAM:128KB 在总线矩阵上,64KB在专为CPU使用的数据总线上高级外设能与STM32F2兼容- USB OTG高速 480Mbit/s-

18、IEEE1588,以太网MAC 10/100- PWM高速定时器:168MHz最大频率- 加密/哈希硬件处理器:32位随机数发生器(RNG)- 带有日历功能的32位RTC:平均值:70mA,峰值: 200mA正常模式下=平均: 12mA,峰值: 200mA待机:200uA, 工作温度-40125存储环境温度:40,相对湿度:90%R.H.尺寸板载PCB天线:14.3mm*24.8mm*1mm;串口透传传输速率110-921600bpsTCP Client5个软件参数无线网络类型STA/AP/STA+AP安全机制WEP/WPA-PSK/WPA2-PSK加密类型WEP64/WEP128/TKIP/

19、AES网络协议IPv4, TCP/UDP/FTP/HTTP3.2.6.2 ESP8266 硬件介绍图4-11 ESP8266PCB原理图VCC接3.3V电源,GND接地,CH_PD拉高,即可正常工作。UTXD接单片机的RX脚,URXD接单片机的TX脚,其他的引脚可以不用理会。详情参考表格2。表格4-12 Pin脚定义PINFunctionDescription1URXD1) UART_RXD,接收;2) General Purpose Input/Output:GPIO3;2UTXD1) UART_TXD,发送;2)General Purpose Input/Output:GPIO1;3)开机

20、时禁止下拉;5RESET(GPIO 16)外部Reset信号,低电平复位,高电平工作(默认高);6GNDGND8VCC3.3V,模块供电;14CH_PD1) 高电平工作;2) 低电平模块供电关掉;3.2.6.3 EPS8266的应用简介ESP8266模块支持STA/AP/STA+AP 三种工作模式。(1)STA模式:ESP8266模块经由路由器连接到Internet,移动电话或计算机通过Internet对设备进行远程控制。(2)AP模式:ESP8266模块作为接入点,允许移动电话或计算机直接与模块通信,实现无线局域网控制。(3)STA + AP模式:两种模式共存的模式,即可以通过互联网控制实现

21、连续控制,操作实用。图 4-13 串口调试界面 图4-14 TCP调试界面客户端和服务器必须安装在同一网络上(在路由器上或同时在模块上)。该设计是使计算机作为安装在模块上(该PC连接到WiFi模块,例如Esp8266)的客户端,并且该模块作为服务器,AT命令设定服务器模式和辅助模块之间debugging tcp连接模块。3.3 硬件设计3.2.7.1JTAG设计JTAG(Joint Test Action Group;联合测试行动小组)是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试。标准的JTAG接口是4线:TMS、TCK、TDI、TDO,分别为模式选择、时钟、数据

22、输入和数据输出线。图3.2 JTAG原理图3.2.7.2温湿度传感器模块为了测量的准确性和多通道数据采集,这里选择3片dht11连接到stm32芯片上,由芯片上的IO引脚作为3片dht11的器件数据及时钟选择端口。电路图设计如图4-5所示:第四章 系统软件设计4.1 程序流程图及开发环境搭建5-1 程序运行流程图4.2开发环境4.2.1 KEIL5 的介绍本系统编程用的是C语言,编程软件用的是KEIL5,在单片机编程中,较为主流的编程软件,它拥有流畅的用户界面和强大的仿真功能。因为使用的传感器以及其他模块众多,因此把各个模块的功能与初始化都封装成了函数并分别存在了不同文档之中,这样不仅使得代码

23、雅观整洁,而且调用的时候也十分方便。子程序中包括DHT11温湿度模块、雨滴传感器、土壤湿度模块、光照强度模块和ESP8266WIFI模块等。与之前的版本不同,KEIL 5分成MDK CORE和Soft和Software Packs两个部分。MDK Core主要包括KEIL5 IDE集成开发环境和ARM Compiler5。Software Packs则可以在不更换MDK Core的情况下,单独管理设备支持包和中间件更新包(即Device、CMSIS和Middleware)。4.2.2 J-LINK 的连接与设置J-Link-OB是SEGGER开发的自主调试调试器下载器。它通常是在大公司的评估板

24、(“集成”)上设计的。这就是为什么后缀是“OB”。名为“J-Link-OB”的模拟下载调试器具有USB通信功能,能与PC通信。另一端通过SWD / JTAG模式与兼容设备通信,以执行调试任务。 ,下载和调试。所有内置微控制器系列如ARM7 9 11,Cortex-M0 M1 M2 M3 M4 A5 A8 A9与SWD接口均支持J-LINK。关于J-LINK的使用,需要用杜邦线把J_Link 和开发板的 JTAG/SWD 连接起来。如下图所示:图5-3 STM32F407VET6开发板相关引脚原理图图5-4 J-LINK相关引脚原理图PA13 、PA14的复用功能是和 J_Link里面的SWDI

25、O和SWCLK 引脚是一样的。然后PA13 PA14 接到 JTAG/SWD 的7 9 引脚。也就是说。J_Link里面的SWDIO和SWCLK 用串口线和开发板的JTAG/SWD 的7 9 引脚直接相连。高电平和接地可看JTAG原理图。4.2.3 CH340G USB转串口自行开发系统USB-TTL / STC-ISP采用USB接口,解决了缺乏串口的问题,允许笔记本给单片机STC系列节目的用户的问题。关于CH340G的使用,首先需要安装它的相关驱动:CH341SER.exe,图5-5 CH340G驱动安装驱动安装完成后,按照下面的接线图接好线即好:图5-6 接线图4.3 主要模块程序设计软件

26、设计部分,包括两大部分:初始化和功能性设计。4.3.1 系统初始化(1) 时钟的初始化时钟是MCU的命令源和STM32具有三个不同的时钟源来驱动系统时钟:时钟振荡器HSI,时钟HSE振荡器和PLL时钟。外部晶体HSE /谐振器:所述HSI时钟信号由一个8 MHz的内部振荡器可以由2被用作分割后的PLL输入由两个时钟源产生的高速的外部时钟信号生成HSE陶瓷,外部用户时钟HSE。我选择了PLL时钟。主PLL乘以HSI时钟除以2或HSE乘以可配置分频器的PLL2时钟。 PLL2和PLL3通过可配置的分频器由HSE同步。所述PLL(时钟源,分频器,乘法器等的选择)的配置必须在每个PLL的激活之前完成,

27、并且一旦其输入时钟是稳定的。启用PLL后,这些设置将不会更改。更改输入PLL时钟源时,必须在选择新时钟源后禁用原始时钟源(通过时钟配置寄存器的PLLSRC位) (RCC_CFGR)。当PLL准备就绪时,中断时钟寄存器(RCC_CIR)可以产生中断。(2)初始化I / O.每个GPI端口/ O具有两个32位的配置寄存器(GPIOx_CRL,GPIOx_CRH),2个32位数据寄存器(GPIOx_IDR和GPIOx_ODR),寄存器32个比特/复位(GPIOx_BSRR)和一个16位的复位寄存器(GPIOx_BRR)。还有一个32位锁定寄存器(GPIOx_LCKR)。浮动输入,输入/输出,输入/输

28、出,模拟输入,漏极开路输出,推挽输出,推挽复用,开漏多路复用功能:每个GPIO端口位可单独在几种模式由软件进行设置。每个端口位I / O可以自由编程,但端口的寄存器作为32位字(半字访问或字节不允许I / O应该可用)。该GPIOx_BSRR和GPIOx_BRR寄存器允许读/编辑所有GPIO寄存器独立访问,有没有危险产生的读访问和修改之间的IRQ。下图显示了I / O端口位的基本结构。(3) 串口初始化在这种设计中,收发器通过串口传输到STM32,其最基本的参数是波特率。 STM32串口必须打开串口时钟,设置相应的IO端口模式,并配置波特率,数据位长,奇偶校验等信息。具体步骤如下。串行时钟被激

29、活。串行端口用作STM32的器件,其时钟由器件时钟使能寄存器控制,串行端口1为APB2ENR寄存器的第14位。除了激活APB2ENR中的串行端口1时钟外,其他串行端口的时钟使能位位于APB1ENR寄存器中。串口复位。当器件发生异常时,可以使用复位寄存器中的相应位设置复位器件,然后重新配置器件进行返工。通常,当初始配置设备时,首先执行设备重置操作。通过配置APB2RSTR寄存器的第14位来实现复位串行端口1。设置串口波特率。每个串行端口都有自己独立的波特率寄存器USART_BRR,它提供不同的波特率。串口控制。每个系列STM32端口的具有3.许多串行端口配置由这三个寄存器中定义的三个USART_

30、CR1控制寄存器。图4.3 USART_CR寄存器各位描述不使用该寄存器的高18位,低14位用于配置串行端口功能。 UE是串行端口使能位,通过它来启用串行端口。 M是用于选择字长的位。如果该位为0,则串行端口设置为8个字加n个停止位。停止位数(n)根据参数确定。 USART_CR2的位13:12。默认值为0. PCE是检查的启用位。如果值为0,则禁用验证,否则启用验证。 PS是校验位的选择。如果设置为0,则为偶校验,否则为奇校验。 TXIE是发送缓冲区的空白中断使能位。将此位设置为1.当USART_SR的TXE位为1时,将产生串行端口中断。 TCIE是传输完成终止的激活位。将此位设置为1.当U

31、SART_SR的TC位为1时,将产生串行端口中断。 RXNEIE是接收缓冲区中非空中断的激活。将此位设置为1.当USART_SR中的ORE或RXNE位为1时,将生成串行端口中断。 TE是发送使能位,如果没有1,则使能串口发送功能。 RE是接收使能位,用法与TE相同。数据的传输和接收。 STM32通过USART_DR数据寄存器发送和接收,USART_DR数据寄存器是一个包含TDR和RDR的双寄存器。将数据写入该寄存器时,串行端口会自动发送,收到收据时,也会出现在该寄存器中。该寄存器的每个位的描述如下所示:图4.4 USART_DR寄存器各位描述 串口状态。串口的状态可以通过状态寄存器USART_

32、SR读取。USART_SR的各位描述如下图所示: 图4.5 USART_SR寄存器各位描述 4.3.2功能性设计4.3.2.1 土壤湿度传感器,雨量传感器程序设计土壤湿度和雨量传感器都是用的模拟量采集,我们使用STM32F407VET6的ADC采集口采集土壤湿度和雨量数据AD采集的程序设计:STM32F4XX系列的ADC都是12位的逐次趋近型模数转换器。ADC(模数转换器)的位数决定了它的精度,ADC的位数分为8位、12位、16位,也就说它们精度范围是分别是0256、04096、065536。而它的转换范围是03.6V,当你需要把你采集的数据用电压来表示的话,假设你采集的数据为X(04096)

33、,那么此时你输出的电压为(X/4096)*3.6。同时每个ADC有19个复用通道,可以测量16个外部源、两个内部源和一个VBAT通道的信号,可以在4个不同的模式下进行转换。ADC的转换结果放在一个左对齐或者右对齐的16位的数据寄存器(注入数据寄存器和规则数据寄存器)中。值得一提的是,ADC具有看门狗的功能,可以通过检测输入电压来判断是否超过设定的上下限值。因为在大多数情况下,都是直接调用STM32F4XX芯片的库函数,因此这里重点介绍ADC采集的4个模式:单次转换模式、连续转换模式、扫描模式和不连续采样模式。单次转换模式:在此模式下,ADC仅初始化转换。要启动它,将ADC_CR2寄存器的ADO

34、N位置1(仅适用于普通通道)或将CONT设置为0以使用外部触发启动。完成此选定频道的转换后,有两种情况:该通道首先是一个普通通道,然后转换后的数据存储在16位ADC_DR寄存器中,转换完成后,ADC_SR状态寄存器的EOC位被激活。在此过程中,如果启用EOCIE,将生成中断。第二,如果信道是一个喷射通道,转换后的数据被存储在ADC_DRJ1 16位寄存器,并且一旦转换完成的寄存器位JEOC ADC_SR条件将被激活。如果设置了JEOCIE位,它将完成。将产生中断。(1)连续转换模式在此模式下,ADC将在完成转换后立即启动下一个新转换。当ADC_CR2控制寄存器的CONT位被激活时,外部触发可以

35、启动该模式;当ADC_CR2控制寄存器的SWSTRT位被激活时,该模式可以直接启动,但它适用于普通通道。每个转换后,如果正常信道组被转换时,最后的转换后的数据被存储在寄存器16个ADC_DR比特和EOC是每次转换后设置为1,并且当EOCIE位被置位,产生一个中断。(2)扫描模式该模式用于扫描一组模拟通道,并通过激活ADC_CR1寄存器中的SCAN位将其激活。当使能扫描模式时,ADC会将所有选定的通道转换为ADC_SQRx(正常通道)或ADC_JSQR(注入通道)寄存器,并在每次转换后自动转换下一个通道。如果设置了CONT,则当正常通道转换为最后一个通道时,转换将从第一个转换恢复。一旦ADC_C

36、R2状态寄存器的DMA位置1,ADC在每次转换后通过DMA DMA将数据从正常通道组传输到SRAM,并将它们存储在ADC_DR寄存器。当EOCS ADC_SR参数被设置为零时,注入通道的数据在当EOCS设定转换的每个正常序列的末端总是存储在寄存器ADC_JDRx,注入通道的数据总是每个正常频道转换结束。存储在ADC_JDRx注册表中。(3)批量采样模式该模式通过将ADC_CR1寄存器中的DISCEN位置1来激活该模式,这需要单独讨论规则数据和注入的输入。规则组:该模式将包含作为所选转换序列一部分的n个转换的短序列转换为ADC_SQRx寄存器。通过覆盖ADC_CR1寄存器中的DISCNUM位可以

37、覆盖n的值。发生外部触发时,ADC_SQRx寄存器中选择的n个跳变将被触发,直到转换结束。注入组:当发生外部触发事件时,ADC_JSQR寄存器中选择的序列将逐个转换,直到最后一个转换为止。以下是AD采集程序的描述:4.3.2.2温湿度传感器采集程序设计DHT11使用的是单总线接口进行数据传输顾名思义,单个总线接口只有一条数据线,它补充了系统中数据的交换和控制。器件(主器件或从器件)通过漏极开路或三态端口连接到数据线,以允许器件在没有数据发送时释放总线,其他器件使用总线(见下图)。 。单总线通常需要一个大约4.7k的外部电阻电阻,因此当总线空闲时其状态为高电平。主设备和从设备之间的通信可以分三步

38、完成:1线设备的初始化,1线设备的识别和数据交换。由于这些是主从结构,因此从机只能在主机调用从机时响应。因此,主机对1线设备的访问必须严格遵守单总线命令的顺序,即初始化,ROM,命令,控制功能。如果序列混乱,1线设备将不响应主机(搜索ROM命令,警报搜索命令除外)。4.3.2.3 TCP的程序设计1.TCP的简单分析本设计使用的是ESP8266WIFI模块来构建局域网,在这里就涉及到TCP与UDP。典型的TCP/IP模型分为4层:应用层、传输层、网络互联层和主机到网络层:(1)主机 - 网络层:包括设备和主机 - 网络层。该层的目的是为上层提供访问接口,该接口可以通过该接口传输IP数据包,以不

39、同的网络协议实现。方法不同。(2)网络互连层:该层构成整个TCP / IP协议模型的核心。它负责调整要在数据包中发送的数据并将其发送到目标地址。要获得高速传输,必须对数据包进行分组。可能需要通过不同的路径转发来自每个组的数据包,这意味着不同组之间发送目标地址的顺序不是发送顺序,因此有必要对不同的顺序进行排序现在的群体。网络互连层(也称为IP层)定义数据包的格式和IP协议。(3)传输层:传输层主要用作源地址的对等层和TCP / IP模型中的目的地址之间的会话桥。该层有两种协议,一种是传输控制协议,另一种是用户数据报协议(TCP和UDP)。两者都是常用的数据传输协议,区别在于TCP是双向,可靠,面

40、向连接的协议,而UDP是单向,不稳定,无连接的协议。它主要用于数据不丢失的场景以及不需要对其进行排序和控制的场景,例如视频流。(4)应用层:在理想的TCP / IP模型中,理想OSI模型的会话层表示层的功能被合并到该层中。基于TCP和UDP,应用层有许多协议,如基于TCP的文件传输协议,Telnet协议,超文本传输协议等。基于UDP的协议包括FTP,SNMP,DNS,NFS,SAMBA等的简化版本和TCP。可以使用UDP实现的协议,例如P2P协议。图5-6 TCP/IP参考模型的层次结构在了解TCP / UDP之后,我们介绍了ESP8266的三种模式:STA / AP / STA + AP,基

41、于TCP网络传输。因此,我们将详细介绍TCP。 TCP提供八位位组流服务,面向连接的服务,可靠的传输服务,缓冲区传输,全双工传输和流量控制。TCP数据传输基于IP结束数据格式分为两部分:头部和数据。图5-7 TCP数据在IP协议中的格式主机A和主机B要用TCP进行数据传输的话,首先要进行“握手”,也就是常说的三次握手。图5-8 三次握手过程主机A先传输SYN到主机B,而这里SYN包含了A想要连接的主机端口以及ISN(初始的序列,下面的ISN同义)。主机B响应,这里SYN数据段为主机B的ISN,ACK(应答)段为主机A发送的ISN+1.主机A把主机B发送的SYN数据段+1后作为ACK返回给了主机

42、B。在三次握手之后,主机A和主机B建立TCP连接,并且可以在两者之间发送和接收数据。主机A和主机B必须建立建立TCP连接的链路,并且必须断开连接(见下文)。图5-9 解除TCP连接的四次连接主机A通过TCP协议栈发送FIN字段。请求释放连接。主机B在确认了主机A的FIN后,在主机A发送的FIN+1,然后发送回去作为ACK信号。主机B发送FIN字段。主机A确认请求。2.IP地址说明要连接到Internet,设备或者主机必须配置好IP地址。Internet的IP地址在全世界是唯一的,因此这个IP地址就相当于设备的标识符,在同一个局域网里面,每个设备的标识符都要是独一无二的,所以无论是ESP8266

43、还是上位机,都需要设置好IP地址。一般IP地址格式为;类别+网络标识+主机标识。类别:用来区分IP地址的类型;网络标识:表示主机所在的网络;主机标识:表示主机在网络中的标识。ESP8266WIFI模块是使用串口与STM32F407VET6进行通讯,通过串口想ESP8266WIFI模块发送AT指令,来实现数据的传输。4.3.2.4水泵驱动模块程序设计L298N是属于H桥IC的专用驱动器IC。与L293D的不同之处在于其输出电流增加且功率增加。它的输出电流为2A,最大电流为4A,最大工作电压为50V。它可以驱动感性负载,如大功率直流电机,电机不到不是,电磁阀等由单片机控制。驱动直流电机时,可以直接

44、控制步进电机,电机可以前后旋转,只需要改变端子的逻辑电平即可。条目。该L298N芯片可以控制两个二相电机或三相电动机,输出电压可以达到50V,输出电压可直接经由饮食调整,该信号可以直接由所述单芯片微型计算机的IO端口设置和电路简单易用。L298N接受标准TTL逻辑VSS信号,可连接4.5至7V。 4针VS连接到电源电压,HIV HIV电压范围介于+2.5和46V之间。输出电流高达2A,可能会产生感性负载。 1英尺和15英尺管的发射器分开以接近电流采样电阻器以形成电流检测信号。 L298可以驱动2个电机,OUT1,OUT2和OUT3,OUT4可以单独连接到电机。我们选择在这个实验单元中驱动电机。

45、 5,7,10,12引脚连接到输入控制电平,以控制电机的正向和反向旋转。 EnA,EnB连接到控制设备以控制电机的失速。5-10 L298N逻辑功能表In3,In4的逻辑图与表1相同。由表1可知EnA为低电平时,输入电平对电机控制起作用,当EnA为高电平,输入电平为一高一低,电机正或反转。同为低电平电机停止,同为高电平电机刹停4.3.2.4有源蜂鸣器有源环的声音是固定的,工作电压是恒定的,并且关闭时间被改变以获得不同持续时间的声音,例如连续声音,短声和短声,慢慢声(类似于摩尔斯电报)报警信息。简单来说,有源蜂鸣器只发出一种声音,因为它的频率是固定的。它只能通过声音间隔的长度来区分。例如,闹钟如

46、下:滴滴滴滴滴滴第5章 系统测试5.1 系统的调试 5.1.1 接线说明图4- 系统接线图整体接线图如4- 所示,在接线时需要注意各模块的电源电压值以及引脚编号,接下来对各个模块的引脚接线进行说明。以STM32F407ZET6板为中心,其中PA8脚连接DHT11模块的DATA数据脚;PA4、PA5分别接雨滴传感器的DO、AO脚;PA9、PA10分别接ESP8266的RX、TX脚;PA6、PA7分别接光敏传感器BH1750的SCL、SDA脚;PC0、PC1分别接AO、DO脚;PA12接蜂鸣器的I/0脚。需要说明的是DHT11需要接5V的电源,不然内部电压不足将无法读取数据。5.1.2 调试的步骤硬件接线完毕通电后,把程序下载到STM32板子上,进入调试模式,调试之前先确定引脚是否接对,打开手机的TCP助手,连接上ESP8266的服务器,发送相关的指令,检查是否会得到回应。发送MODE1,调成模式1,再输入想要查询的相关数据,如:“TEMP”,查询温度。发送MODE2,调成模式2,手机TCP助手将每5秒收到相关的传感器参数,通过串口3返回的数据检查是否一致。37

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!