李颖
(丹东市中等职业技术专业学校,辽宁丹东 118000)
基于单片机的家用电器无线管理系统的设计
李颖
(丹东市中等职业技术专业学校,辽宁丹东 118000)
本系统主要实现了家用电器的无线控制功能,利用无线电数据收发技术,控制远程主机继电器的开关。本设计分为遥控器和控制主机两部分,都使用stc89c52单片机作为控制核心,遥控器负责将按键的键值发送给设定的主机,当主机接收到数据后,判断数据是否发送给自己,然后根据接收的键值执行不同的操作,当接收键值并验证正确后,控制主机将数据反送回遥控器,由遥控器判断数据是否发送成功。
遥控器 家用电器 单片机 温度传感器
随着家用电器的普及,人们已经不单单追求“能用”,而是更加注重用户体验,所以现在很多家电厂商推出各种高端的产品,家用电器正在向着智能化的方向发展。基于单片机的家用电器无线管理系统的设计是一种家用电器无线控制器的实现方案,通过这个方案,可以进一步实现远程的控制。
本设计分为遥控器和控制主机两部分,都使用stc89c52单片机作为控制核心,遥控器负责将按键的键值发送给设定的主机,当主机接收到数据后,判断数据是否发送给自己,然后根据接收的键值执行不同的操作,当接收键值并验证正确后,控制主机将数据反送回遥控器,由遥控器判断数据是否发送成功。
2.1 单片机最小系统的实现
STC89C52单片机是C51核心的单片机,较传统MSC-51单片机增加了一些功能,其内置复位电路,具有8KB的Flash存储空间和512B的RAM空间。
单片机的最小工作电路中Download为单片机的下载端口,即单片机的串口。单片机内置复位电路,复位口RST内置一个下拉电阻,在设计复位电路时,单片机只需要外面提供一个电容即可,通过这个电容可以控制单片机的复位延时时间,所以使用的电容C3为0. 1uF的,只需要很短的复位延时即可。
2.2 无线模块nRF24L01电路的实现
为了实现通信的可靠性和稳定,选择数字式的无线数据收发芯片作为无线通信的数据传输环节,nRF24L01为NORDIC公司生产的一个无线数据传输芯片,数据传输于2.4G全球开放ISM频段,无需入网许可证。nRF24L01适用于多种无线通信的场合,如无线数据传输系统、无线鼠标、遥控玩具等。
高频通信的天线设计是需要专业环节下进行的,天线模型建立后还需要进行频谱仪测试,所以设计过程繁琐,同时nRF24L01封装为QFP封装,焊接难度大,因为天线和封装的缘故,在不要求尺寸的应用中通常使用的是nRF24L01的模块,模块自带天线,并将通信接口引出。与单片机通信使用的是SPI通信接口,可以直接和输出电流<10mA的5V端口相连。
nRF24L01模块的接口电路中,设计时选择一片AMS1117的稳压芯片,该芯片可以稳定提供500mA的供电电流,由于nRF24L01工作电流与工作状态有关,所以需要在AMS1117的输出端并联一个100uF的电容来保证供电电压的稳定性。
2.3 液晶显示电路的实现
液晶的接口电路里,VO为液晶自带的负压输出端口,通过Rp电位器调节液晶负压输入端口的电压值,负压决定液晶显示的对比度,负压绝对值越大,液晶的对比度也越大,为了实现良好的视觉效果,需要调整Rp电位器,以便液晶对比度合适。
2.4 时钟和温度电路的实现
如图1为PCF8563时钟芯片原理图,芯片内置晶振的起振电容,所以外面无需电容即可工作,但是由于晶振参数不一致,所以一般需要外置两个电容C14和C15,对晶振进行细微补偿。
图1 PCF8563时钟芯片原理图
图2 18B20温度传感器原理图
如图2为18B20温度传感器原理图,R4的作用是提高单片机IO的驱动能力,在数据线较长或者多颗18B20并联时,为数据线DQ提供驱动电流。
3.1 遥控器软件设计总体设计
遥控器软件流程为,系统上电后,遥控器首先进行初始化,初始化内部数据和硬件,之后对nRF24L01进行初始化操作。初始化结束后,处在待机状体,当检测到按键按下后,遥控器将按键键值包括地址和密码发送出去,当控制主机接受到数据后,密码地址验证正确后会将键值返回,此时为一个正确的收发控制循环,然后遥控器将待命,准备下一次发送。当遥控器多次为接受到返回数据时,证明系统出现了故障,此时进行报警操作。
3.2 控制主机软总体设计件
上电后系统首先进行的初始化后系统循环显示当前的温度,时间以及工作状态,当系统检测到数据接收时,将数据从nRF24L01内部将数据读取到单片机里,然后进行校验,当密码和地址都正确的时候,按照按键的键值控制主机将进行相应的操作,验证不正确的时候,系统将会把该次接收值摒弃,不进行任何操作。这样做的目的是为了使得整个系统稳定有序的工作。
3.3 无线模块nRF24L01控制程序设计
nRF24L01单次循环操作流程为:在空闲模式,单片机设置nRF24L01工作在接收模式,当接收到数据后nRF24L01的IRQ引脚输出低电平,单片机检测到该信号后,就可以直接从nRF24L01芯片内将接收的数据读取出来。
nRF24L01的通信接口为SPI,选择的单片机为STC89C52没有硬件SPI接口,所以需要由软件来模拟实现SPI通信,对于SPI通信,操作时序比较简单,单片机一直工作在主机模式,nRF24L01模块工作于从机模式。
对nRF24L01的控制,实际就是通过程序对nRF24L01内部寄存器的读写过程,论文已经叙述了SPI的通信接口时序,根据此时序可以完成SPI底层驱动程序的编写,底层的驱动包含对nRF24L01数据的读写,对nRF24L01寄存器的读写,利用这两个基本的读写操作函数,程序可以实现对nRF24L01芯片内固定地址数据进行单个读写或者连续读写操作。
3.4 时钟和温度程序设计
时钟信号线为SCL,时钟信号都是由主机来负责产生的,在本设计中STC89C52单片机作为通信主机,所以时钟信号线上的时钟信号需要由单片机来提供。
I2C时序对时钟信号的时间精度要求很低,所以I2C程序的难点在于如何控制同步信号上,同步信号包括起始信号,停止信号,以及应答信号。
[1]郝波.数字电路.北京:电子工业出版社,2003.
[2]张志利,蔡伟.基于AD590的温度测控装置研究[J].自动化与仪器仪表,2001.
[3]尹雪飞,陈克安.集成电路速查大全 陕西:西安电子科技大学出版社,1997.
[4]童诗白.模拟电子技术基础[M].第二版,北京.高等教育出版社,1998.
[5]段尚枢.运算放大器应用基础[M].第一版,哈尔滨工业大学出版社,1998.
[6]谢自美.电子线路设计.实验.测试.[M].第一版,华中理工大学出版社,1994.
[7]李勋,耿德根.AT89S52单片机应用技术[M].第一版,北京航空航天大学出版社.2002.6.
[8]金春林,张皆喜.51系列单片机C 语言编程与应用实例[M].清华大学出版社,第二版2003.11.
[9]马潮.高档8位单片机ATmega128原理与开发应用指南(上)[M].第一版.
李颖,女,汉族,1990年1月27日出生,教师,研究方向:电工电子。