完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
各位高手我最近在做单片机红外遥控,仿照视频教程写的程序不知道哪里不对?以下是程序,烦请各位指教!
#include #define uchar unsigned char #define uint unsinged int uchar irtime; uchar startflag; uchar bitnum; uchar irreceok; uchar ircode[4]; uchar irdata[33]; uchar irprosok; //*************************************************************************** void timer0init(void) //计时器0初始化 { TMOD=0X02; TH0=0X00; TL0=0X00; ET0=1; EA=1; TR0=1; } //**************************************************************************** void int0init(void) //外部中断初始化 { IT0=1; EX0=1; EA=1; } //************************************************************************ void irpros(void) //取出irtime并解码 { uchar k,i,j; uchar value; k=1; for(j=0;j<4;j++) { for(i=0;i<8;i++) { value=value>>1; if(irdata[k]>6) value=value|0X08; } k++; } ircode[j]=value; } irprosok=1; } //*************************************************************************** void main() //主函数 {uchar j,k; timer0init(); int0init(); P2=0x00; while(1) { if(irreceok) { irpros(); irreceok=0; } if(irprosok) { P1=ircode[2] ; //想以8个led小灯显示遥控键值 irprosok=0; } } } //****************************************************************************** void timer0() interrupt 1 //定时器0中断服务函数 { irtime++; } //****************************************************************************** void int0() interrupt 0 //外部中断0服务函数 { if(startflag) { if(irtime>52) { bitnum=0; } } irdata[bitnum]=irtime; irtime=0; bitnum++; if(bitnum==33) { bitnum=0; irreceok=1; } else { startflag=1; irtime=0; } } |
|
相关推荐
8个回答
|
|
这么长的程序,一般先自己找下问题的所在,然后针对实际的问题提出,如果不是问题很明显,别人是很难花那么多心思给你找出问题点,最后等于没问!
|
|
|
|
嗯嗯,正是因为找了好多天找不出才问的,不过现在问题解决了,谢谢哈!谢谢您的建议啊!
|
|
|
|
嗯嗯,正是因为找了好多天找不出才问的,不过现在问题解决了,谢谢哈!谢谢您的建议啊!{:soso_e183:} |
|
|
|
楼主,加油。
|
|
|
|
{:soso_e100:}
|
|
|
|
|
|
|
|
|
|
|
|
发出来呗,谢谢!QQ:3206488218 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
494 浏览 0 评论
使用Keil建立完整的工程,并使用外部中断0触发数码管显示903
1050 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-使用AHT20进行环境监测之AHT20传感器介绍
1151 浏览 0 评论
887 浏览 0 评论
928 浏览 1 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11847 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-2 19:06 , Processed in 0.739060 second(s), Total 90, Slave 72 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号