完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
|
相关推荐
11 个讨论
|
|
|
|
|
|
|
|
|
额,没人吗?我也纠结啊
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
前些天刚写过..NEC跟TC9012感觉就差一个引导码..
复制给你 我把判断引导码改短了 应该是都能用的 我试过 #include #define uchar unsigned char #define uint unsigned int ***it wela=P2^7; ***it dula=P2^6; ***it lcden=P1^6; ***it lcdrs=P2^1; ***it lcdrw=P1^5; uchar t=0,flag=0,i=0,j=0,k=0,l,jsok=0,value; uchar code table_shu[]={"0123456789ABCDEF"}; uchar table[32];//定义一个数组用来存每次的脉冲的时间,以便判断接受的是1或者是0,因为要储存,不可以定义为code类型 uchar table_4[3]; uchar table_8[7]; void delay(uchar z) { uchar x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } void write_com(uchar com) { lcdrs=0; //写命令 P0=com; delay(5); lcden=1; delay(5); lcden=0; } void write_data(uchar dat) { lcdrs=1; //写数据 P0=dat; delay(5); lcden=1; delay(5); lcden=0; } void init() { ET0=1; //定时器0开中断 EX0=1; //外部中断0开中断 IT0=1;//设置中断方式为下降沿触发 EA=1;//总中断打开 TMOD=0x02;//设置定时器0的工作方式为方式2,8位自动重装,低八位取自高8位 TH0=6; TL0=6;//低八位到达256时候+1,这样每250微秒则进1 TR0=1;//定时器开始计时 wela=0; dula=0;//防止1602电流不够 lcdrw=0; //写操作 lcden=0; write_com(0x38); //初始化 write_com(0x0f); write_com(0x06); write_com(0x80); write_com(0x01); //清屏 } void sjcl() //数据处理 { k=1; for(l=0;l<4;l++) { value=0; for(j=0;j<8;j++)//记录8位数 { value=value>>1; if(table[k++]>=7)//如果时间大于1.5毫秒则记为1,判断是0是1 value=value|0x80;//低位在前 } table_4[l]=value; } for(l=0;l<4;l++) //接收到的数据为16进制的2位数,将其拆分 { table_8[2*l]=table_4[l]/16; table_8[2*l+1]=table_4[l]%16; } } void main() { init(); while(1) { if(jsok==1) //接受完毕 { jsok=0; sjcl(); write_com(0x80); for(l=0;l<8;l++) { write_data(table_shu[table_8[l]]); } } } } void zhongduan0() interrupt 0 { if(flag==1)//因为中断程序要尽可能的短,每次进来储存时间以便接受完计算真实值 { if(t>=10)//红外的引导码要判断,否则会出错 i=0; table[i++]=t; if(i==33)//从0开始记录33个数据,记录完后,结束记录 { flag=0;//为下一次接受做准备 jsok=1;//接受完毕 } t=0;//每次记录1个数据后把时间计数位清零 } if(flag==0)//第一次进入中断 { flag=1;//下一次中断不会再进来 t=0;//开始第一次的计时 } } void timer0() interrupt 1 { TH0=6; TL0=6; t++; } |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
准备做一个电子diy将太阳能和led结合起来,大家有什么好的创意吗?
3596 浏览 0 评论
24616 浏览 180 评论
1658 浏览 0 评论
5804 浏览 1 评论
分享一个比较好的编码器模式的程序 自己曾经做过倒立摆的程序 亲测好用
9573 浏览 24 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 01:07 , Processed in 1.025725 second(s), Total 68, Slave 53 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3679