51单片机错误大神指点小弟,好几处傻瓜错误实在不知道错在哪?

哪位大神帮小弟看一下这段代码是网上载的,我大概修改了一下几个数值因为我觉得原来的错的,结果红外发射模块发射不了用原来载下来的数值执行起来也是不荇,小弟这里没示波器这份代码小弟很详细的给它添加了很多注释,只求有心的前辈帮一下小弟帮忙看一下哪里不对。。 38k + NEC协议。。作者没有使用循环去发送 用户码 用户反码 键码 键反码,所以代码看起来比较多其实是很少的。。

捣鼓了我好几天了一直不知道為什么不行啊啊啊啊啊啊 拜托前辈了!帮了小弟这个忙,什么都好说

if (flag==1) //如果是待发送的有效数据flag=1就在此产生载波(亮灭交变)
OP=~OP; //产生方波其实就是调制后的高电平哈
//发送9ms的起始码
//发送4.5ms的结果码,并是载波模式无效也就是发送4.5ms的低电平
//发送十六位地址的前八位,iraddr存的是地址碼
//一个周期里规定先以高电平开始在以低电平结束。先发送0.56ms的38KHZ“1”的红外波(即编码中0.56ms的高电平)
flag=0; //因为发送的 0所以调制后就是一连串連续的低电平,所以 flag=0,载波模式无效
//发送十六位地址的后八位
//发送八位数据的反码
//到这边一帧的数据已经按照 38K + NEC发送出去了

哪位大神帮小弟看一下这段代码是网上载的,我大概修改了一下几个数值因为我觉得原来的错的,结果红外发射模块发射不了用原来载下来的数值执行起来也是不荇,小弟这里没示波器这份代码小弟很详细的给它添加了很多注释,只求有心的前辈帮一下小弟帮忙看一下哪里不对。。 38k + NEC协议。。作者没有使用循环去发送 用户码 用户反码 键码 键反码,所以代码看起来比较多其实是很少的。。

捣鼓了我好几天了一直不知道為什么不行啊啊啊啊啊啊 拜托前辈了!帮了小弟这个忙,什么都好说

if (flag==1) //如果是待发送的有效数据flag=1就在此产生载波(亮灭交变)
OP=~OP; //产生方波其实就是调制后的高电平哈
//发送9ms的起始码
//发送4.5ms的结果码,并是载波模式无效也就是发送4.5ms的低电平
//发送十六位地址的前八位,iraddr存的是地址碼
//一个周期里规定先以高电平开始在以低电平结束。先发送0.56ms的38KHZ“1”的红外波(即编码中0.56ms的高电平)
flag=0; //因为发送的 0所以调制后就是一连串連续的低电平,所以 flag=0,载波模式无效
//发送十六位地址的后八位
//发送八位数据的反码
//到这边一帧的数据已经按照 38K + NEC发送出去了

我要回帖

更多关于 单片机错误 的文章

 

随机推荐