收藏 分销(赏)

基于51单片机红外发射与接收C程序.doc

上传人:w****g 文档编号:2487336 上传时间:2024-05-30 格式:DOC 页数:6 大小:175.04KB
下载 相关 举报
基于51单片机红外发射与接收C程序.doc_第1页
第1页 / 共6页
基于51单片机红外发射与接收C程序.doc_第2页
第2页 / 共6页
基于51单片机红外发射与接收C程序.doc_第3页
第3页 / 共6页
基于51单片机红外发射与接收C程序.doc_第4页
第4页 / 共6页
基于51单片机红外发射与接收C程序.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、(完整word)基于51单片机红外发射与接收C程序 基于51单片机红外发射与接收程序实验证明,效果非常好。红外发射程序includereg51.h#include#define uchar unsigned char#define uint unsigned intsbit key1=P33;sbit key2=P34;sbit key3=P35;sbit LED=P10; /发射指示灯sbit out=P37;uchar i,a,num1;void init()/初始化作用key1=1;key2=1;key3=1;void delay(uchar aa)uchar bb,cc;for(bb=

2、aa;bb0;bb-)for(cc=200;cc0;cc-);void delayms(uchar aa)/延时程序for(a=aa;a0;a-)_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();void khz(uchar aa)/是发射38KHZ的程序for(a=aa;a0;a-) /这个for语句可以得到准确的26。3波特率out=0;i=7;/低了17uswhile(i0)i-;/ 38kHZ out=1;/高了9us 17+9=26us 比26.3快一点点/khz(116);/3.028ms 精确的时间/k

3、hz(64);/2.006ms/khz(40); /1.052ms/delayms(125);/2.012ms 这里是一些时间的介绍/delayms(65);/1。054ms/delayms(93);/1.5msvoid fashu(uchar num)khz(116);/发射3ms 38khzdelayms(125);for(num1=8;num10;num1-) /原来用的是a 后来出错,肯定在这里!khz(40);if(num0x01)delayms(93);/delay 1。5mselsedelayms(65);/delay 1msnum=num1;khz(20);void tishi

4、() LED=0;delay(50);LED=1;delay(50);LED=0;delay(50);LED=1;void keyscan()/按键扫描if(key1=0)_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();if(key1=0)while(!key1);fashu(0xf3);tishi();if(key2=0)_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();if(key2=0)while(!key2);fashu(0x3f

5、);tishi();if(key3=0)_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();if(key3=0)while(!key3);fashu(0xf5);tishi();void main()init();while(1)keyscan();红外接收程序#includereg51。h#includedefine uchar unsigned char#define uint unsigned intsbit led1=P10;sbit led2=P11;sbit led3=P12;sbit in=P32;uch

6、ar i,a,num;bit fleg;void init()fleg=1;in=1;EA=1;EX0=1;IT0=1;void delayms(uchar aa)for(i=aa;i0;i-)_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();void main()init();/delayms(45);/0.642ms/delayms(35);/0。502ms/delayms(115);/1.623ms/delayms(72);/1。02ms/delayms(84);/1.188ms/delayms(31);/0.446mswhile(1);vo

7、id sieasdf() interrupt 0EX0=0;for(a=5;a0;a-)delayms(35);/延时0。5ms 判断5次 50。52.5msif(in)fleg=0;if(fleg)delayms(72);/延时1ms 判断是不是高电平了if(in)delayms(115);/延时让它超过2ms; 2.5+1+1.623=5.123ms 开始读数据delayms(118);/若偏移一位,可以去掉。for(a=8;a0;a)while(!in);delayms(86);/延时1。188ms 判断IO高低,从而得0或1num=num1;if(in)num=num0x80;delayms(31);/延时0。6ms 因为上面延时1。2ms+0。6 刚好跳过1。5msP2=num;fleg=1;EX0=1;

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 研究报告 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服