单片机发射红外c语言程序,STC单片机51简单的红外遥控发射程序C语言

本文提供了一个使用STC15W102单片机的红外发射C语言程序,详细阐述了如何实现38KHz的红外遥控信号发射,包括0和1的编码方式以及起始码、结果码、用户识别码、数据发送等关键步骤。
摘要由CSDN通过智能技术生成

/*功能说明:红外发射,用于遥控复制或自制发射器*/

//这里采用1T周期的stc15w102单片机,烧录时晶振选33,要在精准选外部晶振的芯片

#include

#include

#include

#define uint unsigned int

#define uchar unsigned char

sbit s1=P3^5; //红外LED

void Delay13us()//@33MHz //产生载波38KHZ

{

unsigned char a;

for(a=104;a>0;a--);

}

void Delay3000ms()//@33MHz 单片机小精灵生成,STC软件生成较长延时时测试不准

{

unsigned char a,b,c,d;

for(d=186;d>0;d--)

for(c=14;c>0;c--)

for(b=86;b>0;b--)

for(a=109;a>0;a--);

}

void L(){ //红外0 以低电平0.565ms,高电平0.565ms表示0

uchar j;

for (j=0;j<43;j++) {s1=~s1;Delay13us();} //低电平0.565ms载波,模拟38KHZ

for (j=0;j<43;j++) {s1=1;s1=1;Delay13us();} //高电平0.565ms无载波

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值