1、概要设计基于zigbee的温度监测系统设计与实现大学论文 基于zigBee的温度监测系统设计与实现MainDisplay概要设计总页数16无生效日期2013.12.20编制修 改 履 历修改编号日期修改人版本号修改内容1VER0.1.0初始做成目 录1 文档概述 41.1 文档目的和范围 41.2 术语/缩略语 41.3 参考文档 42 模块概述 42.1 模块功能定义 42.2 模块结构 52.3 模块动作时序 63 接口说明 63.1 数据结构定义 63.2 函数 73.2.1 模块间接口函数 73.2.2 模块内接口函数 121 文档概述1.1 文档目的和范围该项目主要描述Main LC
2、D显示模块,ZigBee无线数据传输模块,DHT11温湿度数据采集模块,ARM数据处理模块的外部接口函数和内部实现函数,还有各模块之间的连接。1.2 术语/缩略语序号术语/缩略语说明1LCD液晶显示2DHT11温湿度无线传感器3SPI串行外围设备接口4Uart 通用异步接收/发送装置1.3 参考文档列出所参考的式样或者文档等序号文档名作者时间版本1LPC111X中文手册2LPC1100中文手册3DHT11说明书最新版4QAZ2000透传模块说明书5Keil_uvision_4使用手册6ILI932x数据手册7W25X16中文手册8nxplpc11xx文件详解2 模块概述 项目的开发环境是Kei
3、l uVision4 ,采用的开发语言主要为C语言,还有部分汇编语言。本设计主要分四部分,第一部分是以ARM Cortex-M0 系列的 LPC1114为核心处理器;第二部分是以DHT11为温度传感器,用以采集节点处的温度;第三部分是以zigbee(CC2530)为路由器和协调器,路由器用以发送采集到后经过处理器处理后的数据到协调器,协调器再把数据传送到ARM主处理器上;第四部分为显示器模块。2.1 模块功能定义 序号功能点功能点详细内容1LCD显示模块通过内部函数把经过处理器处理后的数据显示出来2主节点数据处理模块处理经由协调器传输到ARM处理器的数据3初始化显示器将各子节点的温度初始化,并
4、显示初始界面4中断查询当子节点数据变化时,主节点能及时捕捉到5读数据从寄存器读取数据6写数据向寄存器内写入数据7温度采集采集节点处的温度,并将数据传输到ARM处理器8子节点数据无线发送将经ARM处理器处理后的数据无线发送出去9主节点数据无线接收捕捉子节点无线发送出去的数据10Uart初始化初始化Uart模块2.2 模块结构画出模块间结构及模块内结构图。对于模块内细分的小模块也最好列表说明各小模块的功能。模块名称模块类型概要说明LCD_Init接口液晶显示器初始化W25X16_Init接口W25X16初始化LCD_Clear接口全屏显示白色UART_init接口初始化串口LCD_DisplayO
5、n接口开启显示器LCD_DisplayOff接口关闭显示器LCD_XYRAM接口设置显存区域LCD_SetC接口设置TFT屏起始坐标LCD_Clear内部模块清屏TFTLCD_ShowString内部模块显示字符串LCD_Show_hz内部模块显示16*16点阵中文delay内部模块短暂延时LCD_WR_DATA内部模块给ILI9325的寄存器写数据LCD_WR_REG内部模块确定给哪个寄存器写数据LCD_RD_DATA内部模块读取ILI9325的寄存器里的数据LCD_ShowChar内部模块显示16*16点阵英文字符LCD_ShowNum内部模块显示字数2.3 DHT11模块动作时序DHT1
6、1接收到开始信号触发一次温湿度采集,如果没有接受到主机发送开始信号,DHT11不会主动进行温湿度。通讯过程如下图所示:3 接口说明3.1 函数给出模块所有对外接口的函数声明及说明。函数说明的方式可以参见下面的形式。3.1.1 模块间接口函数3.1.1.1 LCD_Init函数名LCD_Init文件名./main.c功能概要液晶显示屏初始化记述形式LCD_Init();参数类型变量名I/O说明void-返回值类型void说明值- -详细说明LCD初始化处理函数,提供给main函数模块调用。使用注意事项无3.1.1.2 LCD_Clear函数名LCD_Clear文件名./main.c功能概要全屏显
7、示白色记述形式Void LCD_Clear(uint16 color)参数类型变量名I/O说明voidcolor-颜色值返回值类型void说明值-详细说明清除LCD屏幕,让LCD不显示任何信息使用注意事项在LCD初始化之后调用3.1.1.3 UART_init函数名UART_init 文件名./main.c功能概要初始化UART口记述形式void UART_init(uint32 baudrate)参数类型变量名I/O说明Uint32baudrate-引脚ID号返回值类型void说明值-详细说明初始化UART口使用注意事项无3.1.1.4 TIM32B0_init函数名TIM32B0_init
8、文件名./ct.c功能概要初始化TIM32B0记述形式void TIM32B0_init(void)参数类型变量名I/O说明-返回值类型-说明值-详细说明初始化TIM32B0 使用注意事项无3.1.1.5 UART_send_byte函数名 UART_send_byte文件名./uart.c功能概要串口发送字节数据记述形式void UART_send_byte(uint8 byte)参数类型变量名I/O说明Uint8byte-字节熟返回值类型void说明值-详细说明串口发送字节数据使用注意事项无3.1.1.6 RH函数名RH文件名./main.c功能概要读温度湿度 记述形式void RH(vo
9、id)参数类型变量名I/O说明void-返回值类型void说明值-详细说明读取温湿度数据使用注意事项无3.1.1.7 PIOINT1_IRQHandler函数名PIOINT1_IRQHandler文件名./main.c功能概要中断函数记述形式void PIOINT1_IRQHandler(void)参数类型变量名I/O说明void-返回值类型void说明值-详细说明确定往哪个寄存器写数。使用注意事项寄存器号是16位数,8位连接方式需要写两次3.1.1.8 UART_IRQHandler函数名UART_IRQHandler文件名./main.c功能概要串口中断函数记述形式void UART_IR
10、QHandler(void)参数类型变量名I/O说明-返回值类型viod说明值-详细说明串口中断函数 将数据发送出去使用注意事项无3.1.2 模块内接口函数3.1.2.1 LCD_RD_DATA函数名LCD_RD_DATA文件名./ili9325.c功能概要读寄存器16位数据记述形式uint16 LCD_RD_DATA(void)参数类型变量名I/O说明-返回值类型Uint16 说明值MAINLCDSUCCESS正常结束MAINLCDFAILED异常结束详细说明读寄存器16位数据使用注意事项传入参数的范围3.1.2.2 LCD_RD_DATA函数名LCD_RD_REG_DATA文件名./ili
11、9325.c功能概要选择寄存器号记述形式uint16 LCD_RD_REG_DATA(uint16 REG)参数类型变量名I/O说明Uint16REG-选择寄存器号返回值类型Uint16说明值MAINLCDSUCCESS正常结束MAINLCDFAILED异常结束详细说明先选择寄存器号,再从里面读数据 使用注意事项无3.1.2.3 delay函数名delay文件名./ili9325.c功能概要延时函数记述形式void delay(uint32 i)i=i*1000;while(i0) i-; 参数类型变量名I/O说明Uint32i-延时时长返回值类型void说明值-详细说明短暂延时,为LCD初始
12、化时序服务 使用注意事项无3.1.2.4 LCD_WR_DATA函数名LCD_WR_DATA文件名./ili9325.c功能概要给ILI9325的寄存器写数据 记述形式void LCD_WR_DATA(uint16 val)参数类型变量名I/O说明Uint32val-写数据的位数返回值类型void说明值-详细说明写16位数据,学习板上的LCD采用8位连接,所以,16位数据分两次写进寄存器,先写高位,再写低位。使用注意事项使用时需要先使用LCD_WR_REG(reg)选择要把数据写到哪个寄存器里面。3.1.2.5 LCD_WR_REG函数名LCD_WR_REG文件名./ili9325.c功能概要
13、确定往哪个寄存器写数记述形式void LCD_WR_REG(uint16 reg)参数类型变量名I/O说明Uint16reg-寄存器ID号返回值类型void说明值-详细说明确定往哪个寄存器写数。使用注意事项寄存器号是16位数,8位连接方式需要写两次3.1.2.6 LCD_WR_REG_DATA函数名LCD_WR_REG_DATA文件名./ili9325.c功能概要先选择寄存器号,再写数据到里面记述形式void LCD_WR_REG_DATA(uint16 REG, uint16 VALUE)参数类型变量名I/O说明Uint16REG-寄存器号Uint16VALUE数据值返回值类型viod说明值-详细说明先选择寄存器号,再写数据到里面使用注意事项无
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1