vivo手机遥控空调方法如下:
方法一、进入智慧生活APP--智能遥控,可选择拍照添加或手动添加,点击已添加的空调设备遥控器进入即可遥控该空调,若需要经常使用该设备可选择相应的遥控器长按,选择下方“桌面快捷”,可添加快捷方式到桌面(此方法适用支持红外遥控功能的机型);
注:目前支持红外遥控功能的机型有:iQOO Neo7、X Fold+、iQOO 10、iQOO 10 Pro、iQOO Neo6 SE、X80系列、iQOO Neo6、X Fold、X Note、iQOO 9 Pro、X70系列。
方法二、通过智慧生活进行控制:开启手机蓝牙,进入“智慧生活”--首页--添加设备--扫描设备后点击连接,或者点击该页面右上角扫描包装盒上的二维码连接,连接成功后即可进行遥控;
注:支持智慧生活的机型可到应用商店搜索下载“智慧生活”,无法搜到则代表机型暂不支持。
方法三、使用手机下载空调对应的APP软件,然后将手机和空调连接在同一个局域网上,即可实现手机遥控空调。
注:以上方法均需要看空调是否支持该功能,详见空调说明书。
#include<reg51h>
#include
<intrinsh>
#define
uchar
unsigned
char
#define
uint
unsigned
int
#define
ulong
unsigned
long
#define
Nop()
{_nop_();
_nop_();
_nop_();
_nop_();
_nop_();}
volatile
ulong
IRcode=0x00000000;
//32位的键代码
volatile
ulong
Irdcode=0x00000000;
volatile
uint
customcode=0x0000;
//16位用户码
volatile
uint
time_us=0x0000;
//两个下降沿之间的时间
volatile
uchar
timeH,timeL;
//保存TH1
TL的值
uchar
Lcustomcode;
//低8用户码
uchar
Hcustomcode;
//高8
uchar
datacode;
//8位键数据码
uchar
mycode;
uchar
Rdatacode;
//8位键数据反码
uchar
uc1ms;
uchar
uc10ms;
uchar
uc3ms;
uchar
ucDispTime;
uchar
ucDispOrder;
uchar
ucDispCon;
uchar
ucSpeakerTime;
unsigned
char
code
LedData[16]
=
{
0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
unsigned
char
code
LedCon[2]
=
{0x8f,0x4f};
unsigned
char
ucDispData[2];
//
存放显示数据
sbit
led1
=
P3^7;
sbit
led2
=
P3^6;
sbit
power=P1^0;
//电源开关
sbit
BEEP=
P2^1;
bit
NewIRcode=0;
//指示当处理完了32位码后,就有了新的遥控码
bit
DataRight=0;
//为1时读取数据正确
bit
bSampleOk;
bit
bSampling;
bit
b10msInt;
bit
b1msInt;
bit
bKeySound;
bit
b1msMain;
bit
IR_E;
//表示有新的遥控键控下就更新扫描数据
bit
b3msint;
void
SendDataToDispDevice();
void
Ir_process();
void
display();
void
beeping();
/
晶振为12
MHZ/
/定时器1,12
MHZ最大定时为6553ms/
//------------------------------------------------------------------------------
void
init()
{
IP=0x09;
//定时器1,外部中断0优先级高
TMOD=0x11;
//定时器0,工作方式1
;
定时器1,工作方式1
TCON=0x01;
//外中断0下降沿触发,(包括TR1=0,TR0=0)
TH0=0xff;
//初始化定时器0,定时02ms
TL0=0x47;
TH1=0x00;
//初始化定时器1
TL1=0x00;
EA=1;
//开全中断
ET0=1;
//开放T0中断
ET1=1;
//开放T1中断
EX0=1;
//开放INT0
TR1=0;
TR0=1;
}
//--------------------------------------
void
TimeProg(void)
{
b1msMain
=
b1msInt;
b1msMain=0;
b10msInt
=
0;
if(b1msInt
==
1)
{
b1msMain=1;
if(++uc10ms
==
10)
{
uc10ms
=
0;
b10msInt
=
1;
if(bKeySound==1)
{
beeping();
bKeySound=0;
}
}
}
}//void
TimeProg(void)
//-------------------------------------interrupt0-------------------------------------
void
IR_ISR()
interrupt
0
using
1
//遥控器中断处理函数
{
static
uchar
cn;
TR1=0;
timeH=TH1;
timeL=TL1;
TH1=0;
TL1=0;
TR1=1;
//开定时器中断1
time_us=(unsigned
int)timeH;
time_us=time_us<<8;
time_us=time_us|timeL;
if(time_us>12200&&time_us<13000)
{cn=1;IRcode=0;}
//遇到引导码,就把cn清0,IRcode清0
//引导码的时间长度为9ms+45ms
if(cn<34)
{
if(time_us>950&&time_us<1120)
//0
{
IRcode=IRcode|0x00000000;
if(cn<33)
IRcode=IRcode>>1;
}
else
if(time_us>1920&&time_us<2120)
//1t
>
1950
&&
t
<
2150
{
IRcode=IRcode|0x80000000;
if(cn<33)
IRcode=IRcode>>1;
}
//else
if(time_us>10000&&time_us<11000)
{Irdcode=IRcode;cn=34;
}
//遇到重复码
//cn用于记录接收到的数据位
}
cn++;
if(cn==34)
{
NewIRcode=1;
TR1=0;
Irdcode=
IRcode;
cn=0;
}
//读完32位码,则有新码产生
}
//--------------------------------------timer_ISR------------------------------
void
Timer0_ISR()
interrupt
1
using
2
//定时器0中断函数
{
TR0=0;
TH0=0xff;
//初始化定时器0,定时02ms
晶振为110592
MHZ
TL0=0x47;
TR0=1;
if(++uc1ms
==
5)
{
uc1ms
=
0;
b1msInt=1;
if(++uc3ms==8)
{
uc3ms=0;
b3msint=1;
SendDataToDispDevice();
//n
ms送一次显示
}
}
}//void
Timer0IntProg()
interrupt
1
using
1
void
Timer1_ISR()
interrupt
3
using
3
//定时器1中断函数
{
TR1=0;
TH1=0x00;
//初始化定时器1
TL1=0x00;
TR1=1;
}
//--------------------SendDataToDispDevice----------
void
SendDataToDispDevice()
{
unsigned
char
n;
//watchdog();
if(++ucDispOrder
>=
2)
ucDispOrder
=
0;
//
下一显示巡回
//
下面为发送控制数据
位控
if(ucDispOrder==0)
{led1=0;
led2=1;
Nop();
Nop();
}
if(b3msint==1)
{if(ucDispOrder==1)
{led2=0;
led1=1;
Nop();
Nop();
}
}
//
下面为发送显示数据
n
=
LedData[ucDispData[ucDispOrder]];
P0=n;
}
//void
SendDataToDispDevice()
//------------------------------------main()----------------------------------------------
void
main()
{
init();
beeping();
while(1)
{
TimeProg();
Ir_process();
display();
}
}
void
Ir_process()
{
if(NewIRcode==1)
//如果有新的遥控码就读
{
NewIRcode=0;
//读完之后清零,表示新码已读
customcode=(Irdcode>>16);
//取红外码中的按码键
//取低8位用户码
Lcustomcode=customcode>>8;//取低8位按码键
datacode=(unsigned
char)(customcode&0x00ff);
//取高8位按码键
Rdatacode=Lcustomcode;
//取低8位按码键的反码
if(~Rdatacode!=datacode)
{
DataRight=0;
Irdcode=0;
datacode=Rdatacode=0;
}
//校验用户码,反码
else
{
DataRight=1;
IR_E=1;
mycode=datacode;}
if(DataRight==1)
{
bKeySound
=
1;DataRight=0;
}
}
}
void
display()
{
/
unsigned
char
a[2];
a[0]
=
mycode
&
0x0f;
mycode
=
mycode
>>
4;
a[1]
=
mycode
&
0x0f;
ET0
=
0;
ucDispData[0]
=
a[0];
ucDispData[1]
=
a[1];
ET0
=
1;/
if(IR_E==1)
{
ET0
=
0;
ucDispData[0]
=
mycode
&
0x0f;
mycode
=
mycode
>>
4;
ucDispData[1]
=
mycode
&
0x0f;
IR_E=0;
ET0
=
1;
}
}
//
void
delay(unsigned
char
x)
//x014MS
{
unsigned
char
a;
while(x--)
{
for
(a
=
0;
a<13;
a++)
{;}
}
}
//
void
beeping()
{
unsigned
char
i;
for
(i=0;i<100;i++)
{
delay(4);
BEEP=!BEEP;
//BEEP取反
}
BEEP=1;
//关闭蜂鸣器
}
Find X6是一款OPPO的手机,它支持红外线功能。要打开Find X6的红外功能,您可以按照以下步骤进行 *** 作:
1 打开Find X6的控制中心。可以通过从屏幕顶部向下滑动来访问控制中心。
2 在控制中心中查找“红外”选项。如果在默认的控制中心中没有找到此选项,则可以单击“自定义”按钮,然后添加“红外”选项。
3 单击“红外”选项,打开红外功能。
4 如果您之前的 *** 作没有起作用,您也可以尝试在设置中打开红外功能。打开设置应用程序,在“设备”或“连接和共享”选项卡中查找“红外”选项。在该选项下,您可以启用或禁用红外功能。
请注意,使用红外功能需要您的手机与其他设备有相应的互通性,因此请确保您要控制的设备也支持红外线功能。希望这些步骤能够帮助您打开Find X6的红外功能。
#include <reg51h>
#include <intrinsh>
#define uchar unsigned char
#define uint unsigned int
sbit IRIN = P3^2; //遥控输入脚
sbit BEEP = P3^7; //蜂鸣器
sbit RELAY= P3^6; //继电器
uchar IR_buf[4]={0x00,0x00,0x00,0x00};//IR_buf[0]、IR_buf[1]为用户码低位、用户码高位接收缓冲区
// IR_buf[2]、IR_buf[3]为键数据码和键数据码反码接收缓冲区
uchar disp_buf[2]={0x10,0x10}; //显示缓冲单元,初值为0x10(即16),指向显示码的第16个"-"
uchar code seg_data[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xbf};
//0~F和"-"符的显示码(字形码)
/以下是014ms的x倍延时函数/
void delay(uchar x) //延时x014ms
{
uchar i;
while(x--)
for (i = 0; i<13; i++);
}
/以下是延时函数/
void Delay_ms(uint xms)
{
uint i,j;
for(i=xms;i>0;i--) //i=xms即延时约xms毫秒
for(j=110;j>0;j--);
}
/以下是蜂鸣器响一声函数/
void beep()
{
BEEP=0; //蜂鸣器响
Delay_ms(100);
BEEP=1; //关闭蜂鸣器
Delay_ms(100);
}
/以下是显示函数/
void Display()
{
P0=(seg_data[disp_buf[0]]);
P2=0x7f;
Delay_ms(1);
P0=(seg_data[disp_buf[1]]);
P2=0xbf;
Delay_ms(1);
}
/以下是主函数/
main()
{
EA=1;EX0=1; //允许总中断中断,使能 INT0 外部中断
IT0 = 1; //触发方式为脉冲负边沿触发
IRIN=1; //遥控输入脚置1
BEEP=1; RELAY=1; //关闭蜂鸣器和继电器
P0=0xff; P2=0xff; //P0和P2口置1
Display(); //调显示函数
while(1)
{
if(IR_buf[2]==0x02) //02H键(键值码为02H)
RELAY=0; //继电器吸合
if(IR_buf[2]==0x01) // 01H键(键值码为01H)
RELAY=1; //继电器关闭
Display();
}
}
/以下是外中断0函数/
void IR_decode() interrupt 0
{
uchar j,k,count=0;
EX0 = 0; //暂时关闭外中断0中断请求
delay(20); //延时20014=28ms
if (IRIN==1) //等待 IRIN低电平出现
{
EX0 =1; //开外中断0
return; //中断返回
}
while (!IRIN) delay(1); //等待IRIN变为高电平,跳过9ms的低电平引导码
for (j=0;j<4;j++) //收集四组数据,即用户码低位、用户码高位、键值数据码和键值数码反码
{
for (k=0;k<8;k++) //每组数据有8位
{
while (IRIN) //等待IRIN变为低电平,跳过45ms的高电平引导码信号。
delay(1);
while (!IRIN) //等待IRIN变为高电平
delay(1);
while (IRIN) //对IRIN高电平时间进行计数
{
delay(1); //延时014ms
count++; //对014ms延时时间进行计数
if (count>=30)
{
EX0=1; //开外中断0
return; //014ms计数过长则返回
}
}
IR_buf[j]=IR_buf[j] >> 1; //若计数小于6,数据最高位补"0",说明收到的是"0"
if (count>=6) {IR_buf[j] = IR_buf[j] | 0x80;} //若计数大于等于6,数据最高位补"1",说明收到的是"1"
count=0; //计数器清0
}
}
if (IR_buf[2]!=~IR_buf[3]) //将键数据反码取反后与键数据码码比较,若不等,表示接收数据错误,放弃
{
EX0=1;
return;
}
disp_buf[0]=IR_buf[2] & 0x0f; //取键码的低四位送显示缓冲
disp_buf[1]=IR_buf[2] >> 4; //右移4次,高四位变为低四位送显示缓冲
Display(); //调显示函数
beep(); //蜂鸣器响一声
EX0 = 1; //开外中断0
}
以下文件是51单片机实现遥控解码,通过数码管显示键码的程序,P0口驱动数码管段选,p26和p27为数码管位选,接收头连到P32口。此程序以通过验证,可以直接编译使用,另外还有一个继电器和蜂鸣器的控制,不用可以屏蔽掉。
;
; 描述:
; 遥控键值读取器
; 数码管显示, P0口为数码管的数据口
;
;
;遥控键值解码-数码管显示
;/
#include <reg51h>
#include <intrinsh>
void IR_SHOW();
void delay(unsigned char x);//x014MS
void delay1(unsigned char ms);
void beep();
sbit IRIN = P3^2;
sbit BEEP = P3^7;
sbit RELAY= P1^3;
sbit GEWEI= P2^7;
sbit SHIWEI= P2^6;
unsigned char IRCOM[8];
unsigned char code table[16] =
{0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
main()
{
IE = 0x81; //允许总中断中断,使能 INT0 外部中断
TCON = 0x1; //触发方式为脉冲负边沿触发
delay(1);
IRIN=1;
BEEP=1;
RELAY=1;
for(;;)
{
IR_SHOW();
}
} //end main
void IR_IN() interrupt 0 using 0
{
unsigned char i,j,k,N=0;
EA = 0;
I1:
for (i=0;i<4;i++)
{
if (IRIN==0) break;
if (i==3) {EA =1;return;}
}
delay(20);
if (IRIN==1) goto I1; //确认IR信号出现
while (!IRIN) //等 IR 变为高电平
{delay(1);}
for (j=0;j<4;j++)
{
for (k=0;k<8;k++)
{
while (IRIN) //等 IR 变为低电平
{delay(1);}
while (!IRIN) //等 IR 变为高电平
{delay(1);}
while (IRIN) //计算IR高电平时长
{
delay(1);
N++;
if (N>=30) {EA=1;return;}
}
IRCOM[j]=IRCOM[j] >> 1;
if (N>=8) {IRCOM[j] = IRCOM[j] | 0x80;}
N=0;
}//end for k
}//end for j
if (IRCOM[2]!=~IRCOM[3]) {EA=1;return;}
IRCOM[5]=IRCOM[2] & 0x0F;
IRCOM[6]=IRCOM[2] & 0xF0;
IRCOM[6]=IRCOM[6] >> 4;
beep();
EA = 1;
}
void IR_SHOW()
{
P0 = table[IRCOM[5]];
GEWEI = 0;
SHIWEI = 1;
delay1(4);
P0 = table[IRCOM[6]];
SHIWEI = 0;
GEWEI = 1;
delay1(4);
}
void beep()
{
unsigned char i;
for (i=0;i<100;i++)
{
delay(5);
BEEP=!BEEP;
}
BEEP=1;
}
void delay(unsigned char x)//x014MS
{
unsigned char i;
while(x--)
{
for (i = 0; i<13; i++) {}
}
}
void delay1(unsigned char ms)
{
unsigned char i;
while(ms--)
{
for(i = 0; i<120; i++)
{
_nop_();
_nop_();
_nop_();
_nop_();
}
}
}
你问的是小米电脑有没有红外线遥控功能怎么用?小米电脑没有红外线遥控功能,但是可以自己安装。
1、一般来说,红外连接,首先正确安装笔记本电脑的红外驱动程序,在WIN98系统里红外设备是即插即用设备,一般在BIOS里开启红外功能后系统即可自动完成红外驱动程序和红外应用程序的安装。
2、安装完成后,在任务栏双击红外通讯图表打开“红外线监视器”程序,通过更改设置将其击活,使之处于搜索其他红外设备的状态,就可以进行连接了。
首先你要确定你的手机是否支持 红外功能。 有了红外才能用手机遥控。
这些手机有红外功能:小米4, 三星S4/S5/Note3/Note4,金立F301,HTC One,中兴星星1号/2号
推荐个最好用的手机遥控软件酷控,好了,我教给你怎么做。
先下载这个软件,各大应用市场都有;
2打开以后选择电视选项;
3在品牌列表中,选择你家电视的品牌,一定对应哦!这里以海信为例;
4 看到蓝色遥控器了吗?点一点,如果有反映的话,就点下面的保存;
5这样就OK拉,就可以遥控你家电视了。
对了这个软件还有个很有意思的很实用的功能,能很精准的一键换台换节目,
点下图中的“奔跑吧兄弟”,就能跳台,而且此时此刻就在播,很精准,很有意思,去试试吧。
希望能采纳啊!亲
以上就是关于手机怎么设置可以遥控空调全部的内容,包括:手机怎么设置可以遥控空调、求51单片机红外摇控接收c程序,并在数码管上显示键值出来、findx6红外怎么打开等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)