- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
红外解码显示在数码管上(Infrared decoding is displayed on the digital tube)
红外解码显示在数码管上(Infrared decoding is displayed on the digital tube)
/ ***************************************************************************
标题:NEC红外线接收实验引用延时
效果:运行程序,按遥控器按键,在数码管上显示相应的地址码-控制码(以16进制显示)
分两段,前段是地址码,后段为控制码,用点隔开,显示两字节,忽略反码
工作于:ly5a-l2a开发板
作者:林洋电子吧
网站:
****************************************************************************** /
#包括 reg51. H
/ / IO引脚定义:
公司smg_q = P1 ^ 0;/ /定义数码管阳级控制脚(千位)
公司smg_b = P1 ^ 1;/ /定义数码管阳级控制脚(百位)
公司smg_s = P1 ^ 2;/ /定义数码管阳级控制脚(十位)
公司smg_g = P1 ^ 3;/ /定义数码管阳级控制脚(个位)
/ ********数据定义************************************************************* /
公司hwx P3 ^ = 3;//红外接收数据引脚,
编码字符表[ ] = { 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,
0x88,0x8c,0xc6,0xa1,0x86,0x8e };//共阳数码管段值表0-9 A-F
unsigned char ly_disdate [ 4 ] = { 0,0,0,0 };//显示缓冲
unsigned char ly_lhj [ 4 ];//保存NEC的四个字节数据
unsigned char ly_ct = 0;
点ly_flag = 1;//成功接收标志
/ /函数声明:
无效display();/ /定义显示函数,直接显示缓冲区数值
无效延迟(空);
delay100us虚空(void);
/ ***********主函数开始******************************************************** /
1 / ***********外中断入口函数,P33引脚,红外线接收IC数据脚************************** /
hongwai虚空(void)中断2
{
无符号字符;
/ **************开始判断是否为NEC波形引导码的前9ms和后4.5ms ****************************** /
ly_ct = 0;//计数时间清0
而(!hwx)
delay100us();/ /调用0.1ms延时计数,ly_ct每调用一次加1
如果(ly_ct<80 | | ly_ct 100)/ NEC引导码前9ms,ly_ct约等于90,给个误差值,用80-100之间来判断
返回;
ly_ct = 0;
而(hwx){
delay100us();
如果(ly_ct 50)/ NEC引导码引导码的后4.5ms,ly_ct约45
返回;
}
如果(ly_ct<40)/ NEC引导码引导码的后4.5ms,ly_ct约45
返回;
/ ***********开始接收四个字节内容************************************** /
为(i = 0;i 4);
+ +){
对于(IA = 0;IA 8);
而(!hwx);/ /低电平开始,不处理只等待高电平接收
ly_ct = 0;
而(hwx){ //高电平开始,
delay100us();
如果(ly_ct 20)
返回;
}
/ /高电平结束,判断数据1或0向变量移入
ly_lhj [我] = 1;//数据由高位移入低位
如果(ly_ct 10)/时间量Th1高于10,即高于1ms判断为1
ly_lhj [我] | = 0x80;
}
}
ly_flag = 1;//接收成功
TF1 = 0;
}
/ /显示函数,参数为显示内容,只显示两位数
无效display()
{
smg_q = 0;//选择千位数码管
P0 =表[ ly_disdate [ 0 ] ];//
delay();/ /
P0 = 0xff;/ /
smg_q = 1;//
smg_b = 0;//选择百位数码管
P0 =表[ ly_disdate [ 1 ] ] | 0x80;/ /加上小数点
delay();/ /延时
P0 =
您可能关注的文档
- 看透js《燕渡寒潭装修日记》之三十九(Thirty-nine see JS diary of Yan Du Han Tan decoration).doc
- 真三国无双4秘籍 攻略(True Three Kingdoms 4 Cheats).doc
- 真心话大冒险出题(True words, big adventure, test questions).doc
- 真心话大冒险游戏(Big adventure game).doc
- 真心话大冒险的恶搞题库(True words, big adventure, KUSO, question bank).doc
- 真正的生命 在一个当下(Real life is in the present).doc
- 真空管太阳能集热器(Vacuum tube solar collector).doc
- 眼部识别算法实现(Eye recognition algorithm).doc
- 睡眠与健康(Sleep and health).doc
- 睡神唐堂的科学走路八法(Tang Tang walk eight Morpheus scientific method).doc
文档评论(0)