欢迎来到天天文库
浏览记录
ID:40633959
大小:21.50 KB
页数:3页
时间:2019-08-05
《单片机系列C51红外解码程1》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、单片机系列C51红外解码程序单片机系列C51红外解码程序是针对9ms起始码和4.5ms结束码的红外信号。晶振用的是11.0592M的。#include#includesfrp0=0x80;sfrp3=0xb0;sbitp32=p3^2;unsignedchardm,i,j,k;unsignedchardataa[4];//定义4个数组,用来存储代码voidds0_9ms(void){unsignedcharj,k; for(j=18;j>0;j--) for(k=20;k>0;k--);}voidds1ms(void){unsigne
2、dchari,j;for(i=2;i>0;i--) for(j=230;j>0;j--);}voidds4_5ms(void){unsignedchari,j; for(i=10;i>0;i--) for(j=225;j>0;j--);}voidds2s(void){unsignedchari,j,k;for(i=200;i>0;i--) for(j=200;j>0;j--) for(k=10;k>0;k--);}voidmain(){IT0=1;EX0=1;EA=1;dm=0;ds2s();p0=0;while(1);}voidt0(void)interrupt
3、0using2//外部中断0的函数 { EA=0; for(k=0;k<10;k++) { ds0_9ms(); if(p32==1){k=10;break;} elseif(k==9) { while(p32==0); ds4_5ms(); for(i=0;i<4;i++) { for(j=1;j<=8;j++) { while(p32==0); ds0_9ms(); if(p32==
4、1) {ds1ms(); dm=dm
5、0x80; if(j<8)dm=dm>>1; } else if(j<8)dm=dm>>1; } a=dm; dm=0; } for(i=0;i<4;i++) { p0=a; ds2s(); } } }p0=0;EA=1;}
此文档下载收益归作者所有