当前位置:首页 > 基于物联网的智能仓储温湿度检测系统 - 图文
耦滤波。
串行接口(两线双向)
SHT10的串行接口,在传感器信号的读取及电源损耗方面,都做了优化处理;但与I2C接口不兼容.
串行时钟输入(SCK)
SCK用于微处理器与SHTxx之间的通讯同步。由于接口包含了完全静态逻辑,因而不存在最小SCK频率。
串行数据(DATA)
DATA三态门用于数据的读取。DATA在SCK时钟下降沿之后改变状态,并仅在SCK时钟上升沿有效。数据传输期间,在SCK时钟高电平时,DATA必须保持稳定。为避免信号冲突,微处理器应驱动DATA在低电平。需要一个外部的上拉电阻(例如:10kΩ)将信号提拉至高电平(参见图2)。上拉电阻通常已包含在微处理器的I/O 电路中。
串行时钟输入(SCK)
SCK用于微处理器与SHTxx之间的通讯同步。由于接口包含了完全静态逻辑,因而不存在最小SCK频率。 测量时序(RH 和T)
发布一组测量命令(‘00000101’表示相对湿度RH,‘00000011’表示温度T)后,控制器要等待测量结束。这个过程需要大约11/55/210ms,分别对应8/12/14bit测量。确切的时间随内部晶振速度,最多有±15%变化。SHTxx通过下拉DATA至低电平并进入空闲模式,表示测量的结束。控制器在再次触发SCK时钟前,必须等待这个“数据备妥”信号来读出数据。检测数据可以先被存储,这样控制器可以继续执行其它任务在需要时再读出数据。接着传输2个字节的测量数据和1个字节的CRC奇偶校验。uC需要通过下拉DATA为低电平,以确认每个字节。所有的数据从MSB开始,右值有效(例如:对于12bit数据,从第5个SCK时钟起算作MSB;而对于8bit 数据,首字节则无意义)。用CRC数据的确认位,表明通讯结束。如果不使用CRC-8校验,控制器可以在测量值LSB后,通过保持确认位ack 高电平,来中止通讯。在测量和通讯结束后,SHTxx自动转入休眠模式。 通讯复位时序
如果与SHTxx通讯中断,下列信号时序可以复位串口:当DATA保持高电平时,触发SCK时钟9次或更多。在下一次指令前,发送一个“传输启动”时序。这些时序只复位串口,状态寄存器内容仍然保留。
图3.3通讯复位时序图
(2)CC2530说明
CC2530 是用于2.4-GHz IEEE 802.15.4、ZigBee 和RF4CE 应用的一个真正的片上系统(SoC)解决方案。它能够以非常低的总的材料成本建立强大的网络节点。CC2530 结合了
领先的RF 收发器的优良性能,业界标准的增强型8051 CPU,系统内可编程闪存,8-KB RAM 和许多其它强大的功能。CC2530 有四种不同的闪存版本:CC2530F32/64/128/256,分别具有32/64/128/256KB 的闪存。CC2530 具有不同的运行模式,使得它尤其适应超低功耗要求的系统。运行模式之间的转换时间短进一步确保了低能源消耗。
CC2530F256 结合了德州仪器的业界领先的黄金单元ZigBee 协议栈(Z-Stack?),提供了一个强大和完整的ZigBee 解决方案。CC2530F64 结合了德州仪器的黄金单元RemoTI,更好地提供了一个强大和完整的ZigBee RF4CE 远程控制解决方案。 引脚描述
引脚名称 引脚 引脚类型 描述
AVDD1 28 电源(模拟) 2-V–3.6-V 模拟电源连接 AVDD2 27 电源(模拟) 2-V–3.6-V 模拟电源连接 AVDD3 24 电源(模拟) 2-V–3.6-V 模拟电源连接 AVDD4 29 电源(模拟) 2-V–3.6-V 模拟电源连接 AVDD5 21 电源(模拟) 2-V–3.6-V 模拟电源连接
AVDD6 31 电源(模拟) 2-V–3.6-V 模拟电源连接
DCOUPL 40 电源(数字) 1.8V 数字电源去耦。不使用外部电路供应。 DVDD1 39 电源(数字) 2-V–3.6-V 数字电源连接 DVDD2 10 电源(数字) 2-V–3.6-V 数字电源连接 GND - 接地 接地衬垫必须连接到一个坚固的接地面。 GND 1,2,3,4 未使用的引脚 连接到GND P0_0 19 数字I/O 端口0.0 P0_1 18 数字I/O 端口0.1 P0_2 17 数字I/O 端口0.2 P0_3 16 数字I/O 端口0.3 P0_4 15 数字I/O 端口0.4 P0_5 14 数字I/O 端口0.5 P0_6 13 数字I/O 端口0.6
P0_7 12 数字I/O 端口0.7
P1_0 11 数字I/O 端口1.0-20-mA 驱动能力 P1_1 9 数字I/O 端口1.1-20-mA 驱动能力 P1_2 8 数字I/O 端口1.2 P1_3 7 数字I/O 端口1.3 P1_4 6 数字I/O 端口1.4 P1_5 5 数字I/O 端口1.5 P1_6 38 数字I/O 端口1.6 P1_7 37 数字I/O 端口1.7 P2_0 36 数字I/O 端口2.0 P2_1 35 数字I/O 端口2.1 P2_2 34 数字I/O 端口2.2
P2_3 33 数字I/O 模拟端口2.3/32.768 kHz XOSC P2_4 32 数字I/O 模拟端口2.4/32.768 kHz XOSC RBIAS 30 模拟I/O 参考电流的外部精密偏置电阻 RESET_N 20 数字输入 复位,活动到低电平 RF_N 26 RF I/O RX 期间负RF 输入信号到LNA
RF_P 25 RF I/O RX 期间正RF 输入信号到LNA
XOSC_Q1 22 模拟I/O 32-MHz 晶振引脚1或外部时钟输入 XOSC_Q2 23 模拟I/O 32-MHz 晶振引脚2 模块说明
CC2530芯片系列中使用的8051 CPU内核是一个单周期的8051兼容内核。它有三种不同的内存访问总线(SFR,DATA 和CODE/XDATA),单周期访问SFR,DATA 和主SRAM。它还包括一个调试接口和一个18 输入扩展中断单元。
中断控制器总共提供了18 个中断源,分为六个中断组,每个与四个中断优先级之一相关。当设备从活动模式回到空闲模式,任一中断服务请求就被激发。一些中断还可以从睡眠模式(供电模式1-3)唤醒设备。
内存仲裁器位于系统中心,因为它通过SFR 总线把CPU 和DMA 控制器和物理存储器以及所有外设连接起来。内存仲裁器有四个内存访问点,每次访问可以映射到三个物理存储器之一:一个8-KB SRAM、闪存存储器和XREG/SFR 寄存器。它负责执行仲裁,并确定同时访问同一个物理存储器之间的顺序。
8-KB SRAM映射到DATA存储空间和部分XDATA存储空间。8-KB SRAM是一个超低功耗的SRAM,即使数字部分掉电(供电模式2 和3)也能保留其内容。这是对于低功耗应用来说很重要的一个功能。
32/64/128/256 KB闪存块为设备提供了内电路可编程的非易失性程序存储器,映射到XDATA 存储空间。除了保存程序代码和常量以外,非易失性存储器允许应用程序保存必须保留的数据,这样设备重启之后可以使用这些数据。使用这个功能,例如可以利用已经保存的网络具体数据,就不需要经过完全启动、网络寻找和加入过程。
时钟和电源管理
数字内核和外设由一个1.8-V 低差稳压器供电。它提供了电源管理功能,可以实现使用不同供电模式的长电池寿命的低功耗运行。有五种不同的复位源来复位设备。 外设
CC2530 包括许多不同的外设,允许应用程序设计者开发先进的应用。
调试接口执行一个专有的两线串行接口,用于内电路调试。通过这个调试接口,可以执行整个闪存存储器的擦除、控制使能哪个振荡器、停止和开始执行用户程序、执行8051 内核提供的指令、设置代码断点,以及内核中全部指令的单步调试。使用这些技术,可以很好地执行内电路的调试和外部闪存的编程。
设备含有闪存存储器以存储程序代码。闪存存储器可通过用户软件和调试接口编程。闪存控制器处理写入和擦除嵌入式闪存存储器。闪存控制器允许页面擦除和4 字节编程。 I/O控制器负责所有通用I/O引脚。CPU可以配置外设模块是否控制某个引脚或它们是否受软件控制,如果是的话,每个引脚配置为一个输入还是输出,是否连接衬垫里的一个上拉或下拉电阻。CPU 中断可以分别在每个引脚上使能。每个连接到I/O 引脚的外设可以在两个不同的I/O 引脚位置之间选择,以确保在不同应用程序中的灵活性。
系统可以使用一个多功能的五通道DMA控制器,使用XDATA存储空间访问存储器,因此能够访问所有物理存储器。每个通道(触发器、优先级、传输模式、寻址模式、源和目标指针和传输计数)用DMA 描述符在存储器任何地方配置。许多硬件外设(AES 内核、闪存控制器、USART、定时器、ADC 接口)通过使用DMA 控制器在SFR 或XREG 地址和闪存/SRAM 之间进行数据传输,获得高效率操作。定时器1 是一个16 位定时器,具有定时器/PWM 功能。它有一个可编程的分频器,一个16 位周期值,和五个各自可编程的计数器/捕获通道,每个都有一个16 位比较值。每个计数器/捕获通道可以用作一个PWM输出或捕获输入信号边沿的时序。它还可以配置在IR产生模式,计算定时器3 周期,输出是ANDed,定时器3 的
输出是用最小的CPU 互动产生调制的消费型IR 信号。
MAC定时器(定时器2)是专门为支持IEEE 802.15.4 MAC或软件中其他时槽的协议设计。定时器有一个可配置的定时器周期和一个8 位溢出计数器,可以用于保持跟踪已经经过的周期数。一个16 位捕获寄存器也用于记录收到/发送一个帧开始界定符的精确时间,或传输结束的精确时间,还有一个16 位输出比较寄存器可以在具体时间产生不同的选通命令(开始RX,开始TX,等等)到无线模块。定时器3 和定时器4 是8 位定时器,具有定时器/计数器/PWM 功能。它们有一个可编程的分频器,一个8 位的周期值,一个可编程的计数器通道,具有一个8 位的比较值。每个计数器通道可以用作一个PWM 输出。
睡眠定时器是一个超低功耗的定时器,计算32-kHz 晶振或32-kHz RC 振荡器的周期。睡眠定时器在除了供电模式3 的所有工作模式下不断运行。这一定时器的典型应用是作为实时计数器,或作为一个唤醒定时器跳出供电模式1 或2。
ADC支持7到12位的分辨率,分别在30 kHz或4 kHz的带宽。DC和音频转换可以使用高达八个输入通道(端口0)。输入可以选择作为单端或差分。参考电压可以是内部电压、AVDD 或是一个单端或差分外部信号。ADC 还有一个温度传感输入通道。ADC 可以自动执行定期抽样或转换通道序列的程序。
随机数发生器使用一个16 位LFSR 来产生伪随机数,这可以被CPU 读取或由选通命令处理器直接使用。例如随机数可以用作产生随机密钥,用于安全。
AES加密/解密内核允许用户使用带有128位密钥的AES算法加密和解密数据。这一内核能够支持IEEE 802.15.4 MAC 安全、ZigBee 网络层和应用层要求的AES 操作。 一个内置的看门狗允许CC2530 在固件挂起的情况下复位自身。当看门狗定时器由软件使能,它必须定期清除;否则,当它超时就复位它就复位设备。或者它可以配置用作一个通用32-kHz 定时器。
USART 0和USART 1每个被配置为一个SPI主/从或一个UART。它们为RX和TX提供了双缓冲,以及硬件流控制,因此非常适合于高吞吐量的全双工应用。每个都有自己的高精度波特率发生器,因此可以使普通定时器空闲出来用作其他用途。
无线设备
CC2530 具有一个IEEE 802.15.4 兼容无线收发器。RF 内核控制模拟无线模块。另外,它提供了MCU 和无线设备之间的一个接口,这使得可以发出命令,读取状态,自动操作和确定无线设备事件的顺序。无线设备还包括一个数据包过滤和地址识别模块。 4.系统软件设计
本系统软件设计基于T i公司推出的跟CC2530芯片配套的ZS T A CK协议栈和I A R集成开发环境。ZS T A CK协议栈运行在一个基于任务调度机制的OS A L操作系统上,O S A L通过触发任务的事件来实现任务调度OS A L中的任务以通过任务A PI将其添加到系统中,实现多任务机制。系统中传感器节点由CC243 0内部的MCU控制,定时向温湿度传感器SHT10发送读温度和湿度指令,S H T 1 1完成温度和湿度转换后会发出转换完成信号,M CU在接收到转换完成信号后,读取温湿度值,并将这些数据信号传送给协调器。协调器通过串口RS 232和上位机(PC)相连,通过人机交互的方式对整个区域的进行检测。为了实现这一功能,必须知道节点的长短地址对应表,这就需要节点在加入网络后发送自己的长短地址给协调器,协调器将长短地址对应列表存储起来,以便用户要求采集数据时依据地址表来采集每个传感器的数据。
(1)协调器节点设计
网络协调器主要负责网络的建立,信息的接收、汇总、处理及控制指令的发送。ZigBee网络最初由协调器发动并建立。协调器通过主动扫描选择一个合适信道,根据扫描的结果选择自己的PA N I D及0x 000 0作为自己的短地址,其网络层将通过向M A C层发送M LM ES
共分享92篇相关文档