基于STM32的温湿度检测和无线的传输.doc
《基于STM32的温湿度检测和无线的传输.doc》由会员分享,可在线阅读,更多相关《基于STM32的温湿度检测和无线的传输.doc(42页珍藏版)》请在沃文网上搜索。
1、 毕 业 设 计(论文) 题 目:基于STM32的温湿度检测和无线的传输学 院: 信息工程与自动化 专 业: 自 动 化 学生姓名: 指导教师: 日 期: 基于STM32的温湿度检测和无线的传输摘 要随着嵌入式技术的发展,单片机技术进入了一个新的台阶,目前除最早的51单片机现在有了STM32系列单片机以AMR的各系列单片机,而本次毕业设计我采用STM32单片机来完成,目的是实现温湿度的采集和数据的无线传输,温湿度的采集是作为自动化学科中一个必须掌握的检测的技术,也是一项比较实用的技术。而无线的传输时作为目前一项比较前沿的技术来展开学习的,所有的新新产业中都追求小规模高效率,而无线的技术可以降低
2、传统工程的工程量,同时可以节省大量由排线、线路维修、检测上的一些不必要的障碍和消耗。同时,在实时运行阶段也可以明显体现它的便携性,高效性和节能性。本次设计目的是做出成品,并能采集实时数据传输至上位机。 关键词:嵌入式技术;电路设计;STM32;cc1020无线传输;sht10温湿度采集;程序设计引 言 我的毕业设计做的是温湿度数据的采集和无线的传输。温湿度的采集的用途是非常的广泛的,比如说化工业中做酶的发酵,必须时刻了解所发酵酶的温湿度才可以得到所需酶。文物的保护同样也离不开温、湿度的采集,不仅在文物出土的时刻,在博物馆和档案馆中,空气湿度和和空气质量条件的优劣,是藏品保存关键,所以温湿度的检
3、测对其也是具有重要意义的。最后就是大型机房的温湿度的采集,国家对此有严格标准规定温湿度的范围,超出此范围会影响服务器或系统的正常工作等等。所以温湿度的检测是目前被广泛运用。此次设计的芯片采用的是STM32,由于STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M3内核。按性能分成两个不同的系列:STM32F103“增强型”系列和STM32F101“基本型”系列。增强型系列时钟频率达到72MHz,是同类产品中性能最高的产品;基本型时钟频率为36MHz,以16位产品的价格得到比16位产品大幅提升的性能,是16位产品用户的最佳选择。两个系列都内置32K到12
4、8K的闪存,不同的是SRAM的最大容量和外设接口的组合。时钟频率72MHz时,从闪存执行代码,STM32功耗36mA,是32位市场上功耗最低的产品。同时在编程方面STM32也具有和其他单片机的优势之处,如51单片机必须从最底层开始编程,而STM32所有的初始化和一些驱动的程序都是以模板的形式提供给开发者,在此开发者只需要了些其他的模块功能和工作方式和少量的语法知识便可以进行编程,此优势不但节约了时间,也为STM32的发展做出了强有力的铺垫,而且STM32目前是刚刚被作为主流开发的单片机,所以其前景是无可估量的,这次毕业设计也是看好了其优越的发展趋势来选择的。无线通信是采用CC1020模块来实现
5、的,大家都清楚现在的IT市场中 “无线”这个词是很热门的,各种蓝牙、WI-FI、ZIG-BEE、3G渐渐的步入我们的生活中,人们都在不断向往着便携化,简洁化。而以上只是其一,在没无线的时代我们的计算机或是各种检测设备都需要用大把的I/o总线进行连接,这样不但占用的很大的地盘,也在这些线路上花费了大把的资金,若这些线路中的某个部分发生短路或者是老化可能造成不堪的后果,所以用无线取代有线也是电子行业发展的必然趋势,对其前景的了解和应用学习是非常有价值的。其应用领域:车辆监控、遥控、遥测、小型无线网络、无线抄表、门禁系统、小区传呼、工业数据采集系统、无线标签、身份识别、非接触RF智能卡、小型无线数据
6、终端、安全防火系统、无线遥控系统、生物信号采集、水文气象监控、机器人控制、无线232数据通信、无线485/422数据通信、数字音频、数字图像传输、无线称重等LCD1602的使用,这里使用1602的目的是为了可以得到实时的温湿度的数据,即为了在温湿度模块程序编写完成后烧入芯片可知其工作状态也可以作为一个读书的路径来使用。之后是上下位机之间的数据接收,由于自动化本来就是为了实现自动控制,虽然此次设计只做了单方面的数据采集,但是这里连接上位机的目的就是使将来对此数据进行一个可控的操作返回至下位机对现场温湿度进行控制,在这里只是作为一种设想,在此次设计中未得实现。1芯片模块1.1 STM32介绍1.1
7、.1 ARM公司的高性能”Cortex-M3”内核 1.25DMips/MHz,而ARM7TDMI只有0.95DMips/MHz 1.1.2 一流的外设 1s的双12位ADC,4兆位/秒的UART,18兆位/秒的SPI,18MHz的I/O翻转速度 1.1.3低功耗 在72MHz时消耗36mA(所有外设处于工作状态),待机时下降到2A1.1.4最大的集成度 复位电路、低电压检测、调压器、精确的RC振荡器等 1.1.5简单的结构和易用的工具 1.1.6 STM32F10x重要参数: 2V-3.6V供电 容忍5V的I/O管脚 优异的安全时钟模式 带唤醒功能的低功耗模式 内部RC振荡器 内嵌复位电路
8、工作温度范围: -40o至+85oC或105oC 1.1.7 STM32F101性能特点 36MHz CPU多达16K字节SRAM 1x12位ADC温度传感器 1.1.8 STM32F103性能特点 72MHz CPU多达20K字节SRAM 2x12位ADC 温度传感 PWM定时器 CAN USB1.2 STM32芯片选型1.2.1选型原则首先STM32芯片拥有很多种型号不同的型号的管脚数量或管脚功能分布是不同,我们在选择的时候必须本着节约的原则和廉价的原则(设计不必用好),管脚的分配容易适应所需模块。1.2.2 所选型号STM32C8t6或STM32C8t7这两块芯片功能相同且均为48脚芯片
9、出去两对供电口和两对板内供电和地剩余40脚这里分配的是温湿度采集模块占用个2脚,CC1020模块占用7个脚,1602占用13脚,按钮电路占用4脚、JATG电路占用5个脚、MAX232电路占用4个脚芯片管脚如下图所示。1.2.3选用转接板由于在本次设计是第一次设计PCB板,可能会存在无法避免的错误,为了节约时间和减少开销则选用一块核心板来直插功能板,此转接板型为清风板资料如下:一、【清风核心板】功能列表(V0.9)采用 STM32F101C8,但封装采用 LQFP48,根据需要可以焊接 STM32F103 1、芯片资源: 1) 64KFLASH 2) 10k ram3) 通用定时器3个 4) 2
10、路 SPI 5) 2路 I2C 6) 3路 USART 7) 12位同步 ADC10通道 8) GPIO37 9) CPU频率 36MHz 10)工作电压 2.0-3.6V 11)封装 LQFP48 2、板子功能 1)流水灯,两路,分别使用 PA0和 PA1 2)电源指示灯3)上电复位电路 4) 按键复位电路 5)BOOT0和 BOOT1跳线设置 6)VDDA/VSSA和 VDD/VSS分离,可跳线短接 7)外接 8M晶振和 32768晶振 8)所有 IO通过排针外连,方便扩展和使用 9)内置 10Kram,我想跑个小型的 OS应该没有问题,这里定时器应该会用到。 10)核心板可直接用于目标板
11、。二、QFHXB原理图和 PCB图丰1.3 SHT1X/7X温湿度模块1.3.1 SHT1X/7X介绍 SHT1x7x系列单片集成传感器是Sensirion公司最近推出的一种可以同时测量湿度、温度和露点的传感器,不需外围元件直接输出经过标定了的相对湿度、温度及露点的数字信号,可以有效解决传统温、湿度传感器的不足。SHT1x7x系列单片集成传感器是利用CMOSensTM技术制造的,如图1所示。1.3.2 SHT1X基本工作原理和数据处理算法内部集成了湿度敏感元件和温度敏感元件、放大器、一个14 b的AD转换器、标定数据存储器以及数字总线接口以及稳压电路。由于温度传感器和湿度传感器在硅片上是紧靠在
12、一起,可以精确地测定露点,不会因为两者之间的温度差而引入误差;直接通过AD据是存放在芯片上OTP存储器中的标定系数,输出是经过标定的数字信号,可以确保传感器的性能指标一致性、稳定性好、成本低、使用方便。SHT1x7x系列电源电压适用范围宽:2455 V。测量精度高:湿度的精度为35,温度的精度为05(在20时)。待机时电流低于3A。传感器的数字输出是通过两线数字接口直接连到微处理器上去,便于进行系统设计。管脚描述如表1所示。SHT1x7x送出的温度、湿度数据必须经过转换,才能表示实际的温度和湿度,其公式如下1: 其中:TC表示摄氏温度;RHTrue表示相对湿度。d1,d2和温度分辨率有关,C1
13、,C2,C3,t1,t2和湿度的分辨率有关,其对应关系如表2和表3所示。 1.3.3 温湿度模块的选型这里选用的是SHT10,应为此型号精度在同类产品中是最低的同时价钱也是最便宜的,作为开发和设计用是最合适的,模块如右图所示1.4无线传输模块1.4.1 CC1020介绍RF1020SE模块是采用基于CC1020无线通信芯片的无线收发一体模块,作为微功率无线模块,直线通信距离可达600米左右。CC1020具有低电压供电、低电流消耗、高灵敏度等特点,适合微功率远距离的无线传输领域,如无线称重等。CC1020基本特点:(1) 频率范围为402 MHz -470MHz工作(2) 高灵敏度(对12.5k
14、Hz信道可达-118dBm)(3) 可编程输出功率,最大10dBm(4) 低电流消耗(RX:19.9mA)(5) 低压供电(2.3V到3.6V,推荐3.3V)(6) 数据率最高可以达到153.6Kbaud(7) SPI接口配置内部寄存器(8) 标准 DIP 间距接口,便于嵌入式应用(9) 开阔地直线通信距离可达600米左右 1.4.2 CC1020基本工作原理CC1020是一种理想的超高频单片收发器芯片。主要用于ISM(工业、科研及医疗)频带和在426/429/433/868/915MHz频带的SRD(Short Range Device近距离设备)中,也可经编程后用于频率为402MHz470
15、MHz和 804MHz940MHz的多信道设备。CC1020主要的工作参数可通过串行总线接口编程,例如输出功率、频率及AFC。在接收模式下,CC1020可看成是一个传统的超外差接收器。RF输入信号经低噪声放大器(LNA和LNA2)放大后,翻转经过积分器(I和Q)产生中频IF信号。在中频处理阶段,I/Q信号经混合滤波、放大后经ADC转化成数字信号。然后进行自动获取控制、信道滤波、解调和二进制同步化处理,在DIO引脚输出数字解调数据,DCLK引脚获取同步数字时钟数据。RSSI为数字形式,并可通过窜行接口读出。RSSI还可作为可编程的载波检测指示器。在发送模式下,合成的RF信号直接馈送到功率放大器P
16、A。射频输出是FSK信号,此信号是由馈送到DIO引脚的数字比特流通过FSK调制产生的。可使用一个高频滤波器来得到高斯频移键控GFSK。芯片内部的收/发开关电路使天线容易接入和匹配。1.5 显示模块1.5.1 1602介绍工业字符型液晶,能够同时显示16x02即32个字符。(16列2行)实图如下所示1.5.2 1602各管脚功能1602字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线 VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完全一样,其中: 引脚符号功能说明1VSS一般接地2VDD接电源(+5V)3V0液晶显示器对比度调整端,接正电源时对
17、比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。4RSRS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。5R/WR/W为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。6EE(或EN)端为使能(enable)端,下降沿使能。7DB0底4位三态、 双向数据总线 0位(最低位)8DB1底4位三态、 双向数据总线 1位9DB2底4位三态、 双向数据总线 2位10DB3底4位三态、 双向数据总线 3位11DB4高4位三态、 双向数据总线 4位12DB5高4位三态、 双向数据总线 5位13DB6高4位三态、 双
18、向数据总线 6位14DB7高4位三态、 双向数据总线 7位(最高位)(也是busy flag)15BLA背光电源正极16BLK背光 电源负极寄存器选择控制表 RSR/W操作说明00写入指令寄存器(清除屏等)01读busy flag(DB7),以及读取位址计数器(DB0DB6)值10写入数据寄存器(显示各字型等)11从数据寄存器读取数据注:关于E=H脉冲开始时初始化E为0,然后置E为1,再清0. busy flag(DB7):在此位为被清除为0时,LCD将无法再处理其他的指令要求。2硬件设计2.1运用软件 2.1.1 protel 99se 软件图标如右图所示,软件界面如下图所示。2.1.2 D
19、XP 2004软件图标如右图所示,软件界面如下图所示。2.2原理图设计 2.2.1原理图元件库的建立 1)建立原理图元件库选择如上图选项便可建立新的原理图元件库2)库建好后在底板空白处按P键选择如图选项,然后拖一个随意的矩形出来作为元件(最好可以放得下芯片上所有的管脚)之后再空白处按P键选择Pin,放下模块所具有的管脚数(在放下管脚之前可以先按TAB键对管脚的名称和标号已近类型进行编辑) 以上四个步骤是画原理图库的基本流程,下图是管脚编辑画面。3)所作图应重命名保存并保存在易找到的地方 下图为重命名这里最好改为自己所画芯片名称,保存方法(略)4)所画原理图库展示2.2.2 原理图建立1)点击如
20、下图选项(得到空白图纸)2)调用原理图按照如下步骤如右图所添加的图库基本上存于DXP程序子文件夹中的原理图库,或者是自己所创建的原理图库,其路径如图所示3)插入元件完成以上步骤后在LIBRARIES窗口中便会多出很多的原理图元件选择所需元件点击Place xxxx。元件插入效果如下图2.2.2 电路设计所有元件插入完毕后,根据模块所给资料将其内部电路连接,这里分别介绍个别模块的电路分析。Aea 1)首先是LCD1602的电路设计如上图这里要说明的是5V的电位上拉,由于STM32芯片标准电压为3.3V,1602的工作电压为5V,当工作时GPIO口输出的电压为3.3V,但1602识别电压为5V,这
21、时317脚没有电位上拉则1602的工作将不正常。而加入10K的上拉电阻是为了防止5V的电压直接供入芯片使芯片烧毁。图中的变阻器是用来控制字体的对比度的,TLP521-1光耦是用来控制1602背光的开关的,这里我一直给光耦的1,2管脚一直供电3.3V,而回路PB2当保持在3.3V电压时光耦不工作,当使PB2口处于低电平时1,2脚导通光耦工作使3,4脚导通,1602中BLA口上原本供有5V电压,这时管偶导通使BLK口接地形成回路背光点亮。2)SHT1X电路设计这里还是这个3.3V的上拉电阻比较重要,由于此模块直接供电3.3V当数据采集返回后电平明显不足3.3V如果不上拉而返回数据,则误差会非常大,
22、100nF的电容即用于消除干扰。3)电源设计电源模块用了1个5V模块然后接3.3V模块这样2个点位的电压都可以供人了,固态电容和普通电容都是用来抗燥的,不多做解释,这里的发光二极管做电源指示灯。4)JTAG电路设计同样是做了一个电位上拉5)MAX232电路照说明书无可解释6)开关电路10K电阻接地作为复位电路使用,开关接通对GPIO供电置于高电平断开后等于接地返回低电平 7)CC1020电路CC1020为3.3V供电并且不需要任何外接可以直接插入CPU使用8)CPU 电路管脚分布参照清风板管脚说明原则是对照各模块管脚功能依依分配2.2.3 原理图完成绘制原理图时注意事项:1) 电路连线要用WI
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 STM32 温湿度 检测 无线 传输
