找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2870|回复: 1
收起左侧

基于WIFI的家用电器远程控制系统设计(含程序,电路图,程序清单)

[复制链接]
ID:536018 发表于 2019-5-12 12:14 | 显示全部楼层 |阅读模式
已经调试,资料全面
成品手机APK控制界面
1.jpg
部分电路图
2.jpg 3.jpg 3.png
程序部分
按键功能子程序:
void Check_key(void)
{unsigned int row,col,tmp1,tmp2;
tmp1=0x10; // tmp1用来设置 P1口的输出,取反后使 P1.1~P1.7中有
一个为0
for(row=0;row<4;row++) //行检测
{P1=0x0f; //先将p1.0~p1.3置高
P1=~tmp1 ; //使p1.4~p1.7中有一个为 0
tmp1*=2 ; //tmp1左移一位
if((P1&0x0f)<0x0f) //检测 p1.0~p1.3中是否有一位为 0
{DelayMs (30);
if((P1&0x0f)<0x0f) //检测p1.0~p1.3中是否有一位为 0
只要有说明此行有按键按下,进入列检测
{tmp2=0x01; //tmp2用来检测哪一列为 0
for(col=0;col<4;col++) // 列检测
{if((P1&tmp2)==0x00) //该列如果为低电平则可以判定为列
{key_val=row*4+col; //获取键值,识别按键
while((P1&tmp2)==0x00);
return; } //退出循环
tmp2*=2 } //tmp2左移一位
while((P1&tmp2)==0x00)}}}}
    密码设置:按下设置键,输入旧密码,如果密码错累计输入错误三次,进行报警。如果输入正确,进行密码修改。确认后再次输入新密码,两次输入一样,则修改成功。如果两次输入的不一样,则修改失败,重新返回。
密码设置子程序:

if((sk[11]==1)&(cp[0]==0))
{GotoXY(0,0); print("old code:"); // 提示输入旧密码
pass=1;count1=0;count=0;
count7=1;count2=1;count6=0;sk[11]==0;}
if((count!=0)&(pass==1)&(cp[0]==0))
{pass0=0; //输出显示*
if(count==1){GotoXY(0,0); print("old code:*");}
if((count!=0)&(pass0==1)&(cp[0]==0))
{pass=0;
if(count==1){GotoXY(0,0); print("new code:*");}
if((sk[14]==1)&(count7==1)) //按键盘认键,校验旧密码
{                       //旧密码输入正确
if((password[0]==cq[0])&(password[1]==cq[1])&(password[2]==cq[2])&(passw
ord[3]==cq[3])&(password[4]==cq[4])&(password[5]==cq[5])&(pass==1)&(count>6)
{{GotoXY(0,0); print("new code:");
pass0=1;pass=0;
sk[14]=0;count=0;count7=0;
n=0;m=0;}
else
{GotoXY(0,0); print("old code wrong"); //旧密码输入错误
sk[14]=0;
count2=0;count7=0;
pass=0;m=0;}}
if(pa!=10)&(pass0==1)
{co[n]=pa;n++;pa=10;}}
if(sk[14]==1)
{if((n>7)&(count==6))
{GotoXY(0,0); print("set over!"); //旧密码输入正确,存新密码
}}


全部资料下载地址
基于WIFI的家用电器远程控制设计文档.7z (4.09 MB, 下载次数: 76)

回复

使用道具 举报

ID:1 发表于 2019-5-12 16:23 | 显示全部楼层
本帖需要重新编辑补全电路原理图,源码,详细说明与图片即可获得100+黑币(帖子下方有编辑按钮)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表