一个用应广双核单片机做的红外遮挡开光(反射式)全部代码。
ir_sw equ pb.1
ir_input equ pa.0
ir_output equ pa.6
byte ir_new
byte ir_old
byte ir_enable
byte i
byte ir_new1
byte ir_new2
byte ir_new3
goto main0
goto main1
//----------------fppa0-------------------
main0:
.adjust_otp_ihrcr 8mips// ihrc/2 = 8mips, watchdog disable, ram 0,1 temporary be used
sp = 0x30
disgint
inten = 0
mov a,0b000_11_111 //disable timer
mov t16m,a
set1 pbc.1
set0 ir_sw
set0 pac.0
set1 pac.6
set0 ir_output
delay 200
ir_new = 0
ir_old = 0
ir_enable = 0
mov a,0
mov intrq,a
set1 fppen.1 //eanble fppa1
ir_enable = 1
i = 20
while(i)
{
delay 200
i--
}
if(ir_input)
{
ir_old = 1
}
else
{
ir_old = 0
}
ir_enable = 0
i = 5
while(i)
{
delay 200
i--
}
clkmd.1 = 1 //enable watch dog
main0_loop:
wdreset
call check_ir
if(ir_new != ir_old)
{
if(ir_new != 1)
{
tog ir_sw
}
ir_old = ir_new
}
i = 100
while(i)
{
delay 200
i--
}
goto main0_loop
check_ir:
ir_enable = 1
i = 20
while(i)
{
delay 200
i--
}
if(ir_input)
{
ir_new1 = 1
}
else
{
ir_new1 = 0
}
i = 5
while(i)
{
delay 200
i--
}
if(ir_input)
{
ir_new2 = 1
}
else
{
ir_new2 = 0
}
i = 5
while(i)
{
delay 200
i--
}
if(ir_input)
{
ir_new3 = 1
}
else
{
ir_new3 = 0
}
if((ir_new1 == ir_new2) && (ir_new2 == ir_new3))
{
ir_new = ir_new1
}
else
{
ir_new = ir_old
}
ir_enable = 0
i = 20
while(i)
{
delay 200
i--
}
ret
//----------------fppa1-------------------
main1:
sp = 0x38
delay 200
main1_loop: //output 38k ir signal
if(ir_enable)
{
set1 ir_output
delay 33
set0 ir_output
delay 67
}
else
{
set0 ir_output
delay 10
}
goto main1_loop
湃睿与海致智造签订战略合作协议推进数字化解决方案
硬件设备发生冲突的基本原理
德索分享HSD插头插座连接器的常见故障
虚拟助手、Daydream VR、AI与机器学习:Google的当下和未来
Linux系统下VPN服务器配置方法介绍
双核单片机红外遥控码代码
中国(广东)车联网大会丨德赛西威斩获车联网荣誉
华为将携手全球运营商加速构建5G City
暖通渗漏源难定位?红外热像仪来支招!
Vayyar Imaging近日宣布推出高级护理智能家居设备新品
直播干货 |工业照明如何在红利政策支持下,更低成本实现节能低碳?
ELEXCON 2021丨雅特力展位速递,多图直击精彩现场
智能音箱是否言过其实沦为“人工智障”
Vishay将MCW 0406 AT系列精密宽端子薄膜片式电阻欧姆值降至业内最低
大兴机场防范鸟击明年启用探鸟雷达
氮化镓目前大规模商用的领域介绍
低非线性失真拓扑的7阶1-bit∑-△调制器的设计和仿真验证研究
为何如此火爆?华为p10:8G运存+麒麟960+2000万摄像和OPPO R11相比到底差哪了?
“绿色领跑者”美的:以绿色产品与绿色制造为可持续发展“破题”
led控制系统行业排名_led控制系统厂家排名