基于物联网的数据采集系统设计 联系客服

发布时间 : 星期二 文章基于物联网的数据采集系统设计更新完毕开始阅读95dd821b5fbfc77da369b115

南通职业大学电子信息工程学院毕业论文

先将一线总线拉至低电平480μs以上,然后释放总线15~60μs,读取总线状态,若总线为低电平,表示DS18B20有响应信号,主从机联络成功,可以开始后面的操作。 DS18B20 收到低电平初始化信号后,会发出 60~240μs 的低电平应答信号,为了保证可靠联络,MCU等待应答的持续时间不能小于240μs,当MCU主机在设定时间内不能检测到有效应答信号,可以返回重发,或者发出错误提示信息。

(2)读/写时隙时序

读/写时隙时序是指MCU对DS18B20读写一个位数据(“0”或“1”)的操作时序。是一线器件软件编程的核心,关系到能否可靠访问一线器件,因此编程时严格按照MAXIM 公司提供的时序图编写。DS18B20的基本操作流程如图4-1所示。

开始温度转换初始化DS18B20复位DS18B20读DS18B20序列号DS18B20是否存在YN有无中断YN调用中断子程序调用显示子程序

发送跳过ROM指令图4-1 DS18B20操作流程图

4.2 DS1302时钟采集程序设计

DS1302的控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操作,控制字节总是从最低位开始输出。

4.2.1数据输入输出(I/O)

在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。

4.2.2 DS1302的寄存器

13

南通职业大学电子信息工程学院毕业论文

DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字。

此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发 寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写(除充电寄存器外)所有寄存器内容。DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0H~FDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。下图为DS1302实时显示流程图。

开始变量初始化使DS1302不具备写保护复位产生一个高电平写1302地址延时一段时间向该地址写数据地址增加Y复位产生一个高电平写1302地址延时一段时间将该地址的数据读出地址增加Y显示数据数据写完了吗?N数据读完了吗?N

图4-2 DS1302实时时间流程图

14

南通职业大学电子信息工程学院毕业论文

4.3 nRF905程序设计

I/O、USART、SPI初始化,nRF905配置寄存器初始化是否完成一帧的接收?Y根据帧标志完成不同功能配置NDR是否为高?Y从SPI口读取数据,置低AM,DRN向nRF905写地址和数据nRF905设置成发射模式结束发送将接收到的有效数据组帧发送到PC机

图4-3 主程序流程图

NRF905处于低电流模式NTRX_CE=HI?NRF905处于低电流模式Y激活nRF905接收SPI接口加载地址和有效载荷数据TRX_CE=HI?NRF905发现和接收频率相同的载波时,CD置高NNnRF905是否接收到有效的地址?YY激活nRF905传输nRF单片机进入TX模式在前导码后DR设置为低NNTRX_CE=HI?AUTO_RETRAN=HI?AM被置高Y接收数据YAM被置低NnRF905是否接收到有效的数据包?YDR被置高YNDR和AM被置低MCU通过SPI接口读出有效数据TRX_CE=HI?进入低电流模式图4-4 nRF905数据传输流程图 图4-5 nRF905数据接收流程图

15

南通职业大学电子信息工程学院毕业论文

4.4 A/D数据采集程序设计 芯片的简单接口程序框图:

写操作开始DRDY为低电平高 CS状态低ADS12X接收指令寄存器的内容ADS12X 对规定寄存器进行写操作升DRDY为高电平完

读操作开始DRDY为低电平高 CS状态低连续读操作不ADS12X是接收指令寄存器的内容SDIO为输出引脚是不SDOUT有效SDOUT有效ADS12X由SDOUTADS12X由SDIO引脚输出规定寄存引脚输出规定寄存器中的数据器中的数据SDOUT返回高阻状态SDIO 返回高阻状态升DRDY为高电平升DRDY为高电平完

4-6 芯片的简单接口程序框图

16