您现在的位置: 主页 > MCU > 单片机应用 > 用51单片机解码的12通道315M遥控器DIY -
本文所属标签:
为本文创立个标签吧:

用51单片机解码的12通道315M遥控器DIY -

来源: 网络用户发布,如有版权联系网管删除 2018-09-08 

[导读] 本文通过单片机进行12通道解码。

 本文通过单片机进行12通道解码。

本文引用地址: http://www.21ic.com/app/mcu/201705/717729.htm

20161021095821254.jpg

原理图

20161021095822221.jpg

PCB

20161021095823444.jpg

内部结构

20161021095824684.jpg

面板:红色指示灯为巡检指示灯,绿色指示灯为通道工作指示灯。

程序代码:

#include

sfr WDT_CONTR=0xe1;//看门狗初始化

#define uchar unsigned char

#define uint unsigned int

#define uint unsigned int

sbit run=P3^7;

sbit out=P3^2;

sbit out1=P3^3;

sbit out2=P3^4;

sbit out3=P3^5;

bit bzw;

bit bzw1;

bit bzw2;

bit bzw3;

void jsdb();

void shuchu();

void delay(uint k);

/*********************************************************/

void main()

{

P1=0xff;

out=1;

out1=1;

out2=1;

out3=1;

WDT_CONTR=0x35; //启动看门狗

while(1)

{

run=1;

delay(1000);

delay(1000);

delay(1000);

delay(1000);

delay(1000);

delay(1000);

run=0;

delay(200);

jsdb();

shuchu();

WDT_CONTR=0x35;

}

}

/********************************************************/

void jsdb()

{

switch(P1)

{

case 0x1f:bzw=1;break;//out 1号键

case 0x2f:bzw1=1;break;//out1 2号键

case 0x3f:bzw2=1;break;//out2 3号键

case 0x4f:bzw3=1;break;//out3 4号键

default:{bzw=0;bzw1=0;bzw2=0;bzw3=0;}break;

}

}

void shuchu()

{

if(bzw)

{

delay(100);

out=~out;

run=1;

delay(500);

run=0;

delay(500);

run=0;

delay(500);

bzw=0;

}

if(bzw1)

{

delay(100);

out1=~out1;

run=1;

delay(500);

run=0;

delay(500);

run=1;

delay(500);

bzw1=0;

}

if(bzw2)

{

delay(100);

out2=~out2;

run=1;

delay(500);

run=0;

delay(500);

run=1;

delay(500);

bzw2=0;

}

if(bzw3)

{

delay(100);

out3=~out3;

run=1;

delay(500);

run=0;

delay(500);

run=1;

delay(500);

bzw3=0;

}

}

void delay(uint k)

{

uint i,j;

for(i=0;i {

for(j=0;j<121;j++)

{;}}

}



              查看评论 回复



嵌入式交流网主页 > MCU > 单片机应用 > 用51单片机解码的12通道315M遥控器DIY -
 

"用51单片机解码的12通道315M遥控器DIY -"的相关文章

网站地图

围观()