电子产业一站式赋能平台

PCB联盟网

搜索
查看: 2232|回复: 2
收起左侧

单片机C语言实例-391-无线遥控接收模块实验

[复制链接]
发表于 2022-4-18 10:11:55 | 显示全部楼层 |阅读模式
单片机C语言实例-391-无线遥控接收模块实验

#include "reg52.h"
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar i,j;
sbit P2_7=P2^7;
sbit fmq=P3^6;
sbit P3_7=P3^7;
sbit D0=P1^0;
sbit D1=P1^1;
sbit D2=P1^2;
sbit D3=P1^3;
void delay1ms(unsigned int i)
{

unsigned char j;
while(i--)
{
for(j=0;j<115;j++)          //1ms基准延时程序
{
  ;
}


}

}

void delay500us()
{

unsigned char j;

for(j=0;j<57;j++)          //500us基准延时程序
{
  ;
}
}

void beep()        //产生1KHZ频率声音的函数
{
        fmq=0;
        delay500us();
        fmq=1;
        delay500us();       

}
void beep1()
{
uint k;
for(k=0;k<500;k++)
{
beep();

}
fmq=1;
delay1ms(500);

}





void main(void)
{
P2_7=0;//开数码管显示 选通左右侧的数码管
P0=0xc0; //初始显示数字0
P3=0xff; //P3口设置为输入状态 先全部写1

while(1){



//i=i&0x0f; //和0x0f相与 屏蔽高四位,读取无线遥控码

if (D0==1)//如果是0x04,则代表无线遥控器的按键A按下,执行显示
{
P0=0x88; //字母A的字型码
beep1();
}
if (D1==1)//如果是0x01,则代表无线遥控器的按键b按下,执行显示
{
P0=0x83;//字母b的字型码
fmq=1;
}
if (D2==1)//如果是0x08,则代表无线遥控器的按键C按下,执行显示
{
P0=0xc6;//字母C的字型码
P3_7=0;//继电器吸合
}
if (D3==1)//如果是0x02,则代表无线遥控器的按键d按下,执行显示
{
P0=0xa1;//字母d的字型码
P3_7=1; //继电器释放
}
}
}


更多详情参考附件文档
+08:00C132联盟网1269.png
游客,如果您要查看本帖隐藏内容请回复

回复

使用道具 举报

0

主题

26

帖子

77

积分

一级会员

Rank: 1

积分
77
发表于 2022-4-18 11:27:13 | 显示全部楼层
谢谢分享!
回复 支持 反对

使用道具 举报

0

主题

13

帖子

50

积分

一级会员

Rank: 1

积分
50
发表于 2022-5-9 19:13:35 | 显示全部楼层

谢谢分享!
回复 支持 反对

使用道具 举报

发表回复

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

本版积分规则

关闭

站长推荐上一条 /1 下一条


联系客服 关注微信 下载APP 返回顶部 返回列表