资源简介

STM32F030 + PWM 驱动红外管 带38K调制 软件自定义数据长度、格式、脉宽。红外遥控。

资源截图

代码片段和文件信息


#include “ir.h“

#include “irhardware.h“

#include “sysdata.h“

u8 IRCodeBuf[][6] =
{
{0x660x400x660xFF0xFF0xe7} //off

};


s32 IRWriteData(u8 data)
{
for(s32 i = 0 ; i < 8 ; i ++)
{
if(data & 0x01) IRHardwareWrite(21756);
else  IRHardwareWrite(11256);

data >>= 1;
}
return 0;
}

//state:0-开始脉冲 1:结束/间隔脉冲
s32 IRWriteState(u8 state)
{
switch(state)
{
case IR_START:
IRHardwareWrite(841448);
break;
case IR_REPEAT:
IRHardwareWrite(57656);
break;
default : return -1;
}
return 0;
}

void IRInit(void)
{
IRHardwareInit(4802250);
}

void IRWrite(s32 data)
{
IRHardwareStop();

IRWriteState(IR_START);
IRWriteState(IR_START);
for(s32 i = 0; i < 6 ; i ++) IRWriteData(IRCodeBuf[data][i]);
IRWriteState(IR_REPEAT);
IRWriteState(IR_START);
for(s32 i = 0; i < 6 ; i ++) IRWriteData(~IRCodeBuf[data][i]);
IRWriteState(IR_REPEAT);
IRHardwareSend();
}








 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       5419  2018-09-11 15:32  IRHardware.c

     文件        274  2016-09-28 12:43  IRHardware.h

     文件        236  2018-09-11 15:31  IR.h

     文件        989  2018-09-11 15:31  IRDriver.c

----------- ---------  ---------- -----  ----

                 6918                    4


评论

共有 条评论