网站设计公司哪家,如何用php做网站管理系统,帝国cms做门户网站,又拍网站怎么做摘 要: 传统风扇无法根据周围环境的温度变化进行风速的调整#xff0c;必须人为地干预才能达到需求 。 本文基于单片机的智能风扇主要解决以往风扇存在的问题#xff0c;其有两种工作模式: 手动操作模式和自动运行模式#xff0c;人们可以根据需要进行模式选择。 在自动运行… 摘 要: 传统风扇无法根据周围环境的温度变化进行风速的调整必须人为地干预才能达到需求 。 本文基于单片机的智能风扇主要解决以往风扇存在的问题其有两种工作模式: 手动操作模式和自动运行模式人们可以根据需要进行模式选择。 在自动运行模式下风扇随周围环境温度的变化而自主调节风速可实现 “ 温度高风速大; 温度低风速小”。 同时智能风扇在两种模式中都配置了定时功能用户可以根据需要选择不同的定时时间 。 本次设计中对风扇的控制采用了触摸屏面板和无线通信技术这将给用户带来便利。 关键词: 单片机; 智能风扇; 风速调整; 工作模式; 定时 在我们国家电风扇是 80 年代才流行的一种家用小型电器作为传统的清凉和解暑工具电风扇具有价格低廉占据空间少等特点。 受消费水平的制约大多数家庭尤其在中小型城市和农村风扇仍旧会占有很大的市场份额。 然而由于其功能单一且耗电量大极大地限制了电风扇的发展空间。 近年来单片机凭借其小巧、 抗干扰能力强 、 且易操作 、 成本低等特点已经深入各领域使用很广泛。 随着大型集成电路技术的进一步成熟单片机的性能仍在快速地提高未来单片机技术及传感器技术等的发展必将给电风扇的进一步发展带来突破性的变化。对于目前风扇的发展采用单片机技术和传感器技术可以使风扇的功能更加完善、使用更加人性化。 传统的风扇尤其是夏天晚上风扇以不变的风速工作这样会使老年人和小孩着凉、 感冒因为传统风扇风速的大小无法根据周围环境温度的变化作出调整所以迫切需要一款能够满足现代人生活的风扇。 1 硬件电路设计与实现 1 1 系统整体设计 系统整体框图如图 1 所示 。 本设计的整体思路: 系统设计主要包括两部分: ( 1 ) 终端( 接收命令) 部分: 温度传感器 ds18b20实时采集周围的温度将微处理器读取的温度值实时显示在 LCD1602 上 。 无线收发模块通过串口与 51 单片机通信将从 stm32 发来的数据读给 51单片机。 51 单片机根据其接收的命令控制与其相连的外设 。 2 ) 控制端( 发送命令) 部分: 通过对 STM32 编程在 TFTLCD 模块上做一个智能风扇系统的功能 界面通过触摸模块界面的功能按钮产生相应的数据。 产生的数据通过串口发送给无线收发模块无线收发模块将从串口传来的数据发送出去。 同时与 stm32 单片机连接的 DHT11 实时读取周围环境的温湿度其中 stm32 通过单总线通信方式访问DHT11将读取的温湿度数据实时显示在 LCD 上 。 1 2 各部分电路设计 1 2 1 51 单片机最小系统电路 单片机最小应用系统即用很少的电路元件组成可以让单片机正常运行的系统。 对于 51 单片机其最小系统一般包括: 微处理器、 晶振电路 、 复位电路 、电源电路。 ( 1 ) 按键复位电路: 由按键 、10 uf 电容和电阻组 成用来对单片机本身和其扩展模块进行复位使程序重新执行。 ( 2 ) 晶 振 电 路: 51 单 片 机 的 晶 振 一 般 取11 0592 MHz这样可以准确 产 生 9600 bps 和19200 bps产生的波特率用于串口通信 。 外部晶振电路结合单片机内部电路产生单片机正常工作的时钟单片机代码的执行都基于晶振电路产生的时钟频率。 ( 3 ) 电源电路: 51 单片机采用 5 V 供电由外部提供电源。 1 2 2 液晶 LCD1602 显示电路 液晶 LCD1602 是数字式的因此和单片机连接的电路简洁易编写程序。 液晶 LCD1602 与 51 单片机的通信使用 8 位数据口采用并行方式每次传输 8 bit 的数据 。 本次设计中 LCD1602 第一行显示周围环境温度温度显示只有整数位。 第二行显示风扇的风速级别风扇未开启时显示为 ; 风扇正常工作时显示的风速级别在数字 1 3 之间 。 1 2 3 温度采集电路 在 proteus 仿真软件上搭建的 ds18b20 温度采集电路如图 2 所示 。 由于其与单片机通信采用单总线方式故只含数据端口 DQ 。 1 2 4 电机驱动模块电路 本次设计中采用 51 单片机的定时器模拟 PWM波输出数字信号并利用电机驱动模块 L298N 来驱 动 12 V 的直流电机通过改变 PWM 波的高电平所占的比例来实现风扇风速的调节。 实际生活中由于风扇只往一个方向转所以对 L298N 模块的配置如图 3 所示 。 1 2 5 串口通信电路 在多机通信系统中单片机之间的数据交换一般多采用串行通信方式。 本次系统中串口电路包括两部分: 一部分是 stm32 与 ZigBee 节点的串口通信电路: 系统设计中 stm32 通过其串口的 TX 端发送数据给 ZigBee 模块 ZigBee 模块只需要从串口的 X端读取数据故只使用了一条数据线连接电路图如图 4 所示 。 另外一部分是 51 单片机与 ZigBee 节点的串口通信电路: 系统设计中 ZigBee 模块从串口TX 端发送数据给 51 单片机 51 单片机从串口的X 端读取数据故只使用了一条数据线连接电路图如图 5 所示 。 在实际的硬件电路测试中发现两个单片机系统在进行数据通信时必须要共地否则数据传输出错或无法接收到数据。 2 软件设计与实现 程序的编写都使用的是 C 语言 C 语言程序本身不取决于硬件资源基本上稍做修改就可以将用户程序从不同的硬件系统平台上移植。 2 1 主程序设计 主程序是整个设计的中心它是将各个子模块通过逻辑判断相互结合起来构成的。 由于基于单机的智能风扇系统采用无线通信方式故主程序 为两部分: 一部分是执行控制命令端的主程序这一部分的程序设计是以对 51 单片机编程为基础构成的主要包括: 风扇模式选择及风速调节、51 单片机与 ZigBee 模块之间的数据通信、 51 单片机定时读取ds18b20 采集的温度值 、 LCD1602 显示温度值及风扇的风速档位、 定时器模拟 PWM 波输出等该主程序流程图如图 6 所示 。 另一部分是发送控制命令端的主程序这一部分的程序设计是以对 stm32 单片机编程为基础构成的主要包括: TFTLCD 触摸屏界面设计与显示、 DHT11 采集温湿度 、stm32 与 ZigBee模块之间的数据通信等该主程序流程图如图 7 所示。 22 触摸屏界面以及 LCD 显示子程序设计 该部分完成的主要功能包括: 汉字 、 字符串的显示图片的加载与显示触摸屏触摸的实现。 完成这些功能涉及的知识特别多包括 TFTLCD 显示 、SPI通信、 触摸屏的触摸实现 、 内存管理 、 SD 卡 、 FATFS文件系统模块、 汉字显示原理以及汉字字库的制作 、图片的解码等相关知识。 该部分的设计流程图如图8 所示 。 2.3 51 单片机读取 ds18b20 采集的温度子程序 设计 通过单总线方式 51 单片机与 ds18b20 进行数据通信由于 stc89c52 单片机在硬件上不支持单总线通信方式故选取编程的方法来演示单总线通信方式来完成对温度传感器的访问。 单总线协议规定了以下时序: 初始化时序 、 读数据时序、 写命令时序 。 全部时序都将控制器作主机单总线器件( 例如: 传感器等) 作从机。 特别要说明的是: 每次命令和数据的交换都是主机自动开启写时序若单总线器件回复数据则在结束写命令后主设备要开始读时序完成数据的接收。 该部分程序设计的流程图如图 9 所示 。