已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式系统试验报告 1.红外遥控解码实验1.1 实验目的 了解红外遥控编码并用单片机捕捉信号及解码熟悉LCD1602的驱动 1.2 实验设备 T1838一体化红外接收头DT9122D芯片制作89S511.3 实验内容 红外一体化接收头接收到红外遥控发射器所发射的信号,并将此信号进行整形和反相送入单片机端口。经过软件译码,将译码结果(按键代码)昂数码管显示。1.4 实验预习要求 遥控编码知识ME850单片机开发实验仪集成有一路一体化红外接收头,并配有红外发射器,能够做红外接收与解码实验 了解简单的单片机的开发的环境 要有一定的C语言基础1.5 实验原理所谓解码就是能用单片机把以不同宽度的脉冲区别开来,一种比较好思路就是计算两次下降沿间隔时间,当单片机外部中断1口有下降沿时中断一次,并启动定时器,定时器定50us,当下次下降沿到来时我们计算定时器中断的次数,这样我们就能很好的区分不同宽度的脉冲了。1.6 实验步骤 将JP21的8个短接子全部用短接帽短接,使DG0-DG7与P2端口接通将JP22的9个短接子全部用短睫毛短接,使A-DP与P0端口接通,VCC向数码管模块供电将JP10的短接子用短接帽短接,使红外接头U16的数据线与P3.2端口接通。将JP24的短接子用短接帽短接,禁止LCD1602显示功能,否则数码管将不能正常显示。第一次使用遥控器要去下电池盖下的隔离胶片。1.7 实验电路原理分析ME850选用T1838一体化红外接收头,接受来自红外遥控器的红外遥控信号。T1838集成红外接收二极管、放大、解调、整形等电路在同一封装上。T1838负责红外遥控信号的解调,将调制在38KHZ上的红外脉冲信号解调并倒相输入到单片机的P3.2引脚,由单片机进行高电平与低电平宽度的测量T1838的输出端通过JP10与AT89S52的P3.2连接,既可以受用中断的方式也可以使用查询方式来编程1.8 实验参考程序分析#include#define uint unsigned int#define uchar unsigned charsbit ir=P33;/红外端口sbit dm=P14;/数码管段码控制位sbit wm=P15;/数码管位码控制位sbit led_cs=P16;/LED控制位sbit rs=P35;/1602数据命令选择端sbit en=P34;/1602使能信号uchar num;uchar key_code=0;/遥控键值uchar new_code=0;/有无新按键uint buf_key_code=0;/键值暂存uchar key_bit_count=0;/键编码脉冲计数uint count=0;/定时中断次数计数uint buf_count=0;/定时中断计数暂存uchar common_code_count=0;/前导码脉冲计数uchar ir_status=0;/脉冲接收器所处的状态,0:无信号,1:系统码接收区,2:数据编码接收区uchar code table=EE01 DEMO:IR;uchar code table1=code:;uchar code table2=0,1,2,3,4,5,6,7,8,9,;void delay_10us(unsigned char y)/延时子程序10us unsigned char x; for(x=y;x0;x-); void delay_ms(uint z)/延时子程序1ms uint x,y; for(x=z;x0;x-) for(y=113;y0;y-); void init(void)/初始化 ir=1; /红外端口写1 led_cs=0; /关闭LED EA=1; /开总中断 TMOD=0x02; /定时器0,模式2,8位自动装载模式 TH0=0Xd1; /定时50us TL0=0Xd1; IT1=1; /INT1下降沿触发 ET0=1; /允许定时器中断 EX1=1; /允许外部中断 /* 定时器中断*/void time0() interrupt 1/定时器中断 count+;/定时器中断次数累加/* 外部中断,红外解码程序*/void int1() interrupt 2/外部中断 TR0=1;/开定时器中断 if(count12&count12&buf_count210&buf_count=25)/若收完26个脉冲 ir_status=2;/数据解码标记 common_code_count=0;/系统码计算清零 buf_count=0;/中断计数暂存清0 else if(buf_count40&buf_count12&buf_count32) buf_count=0; common_code_count+;/每收到一个信号自加1 else if(ir_status=2)/进入数据编码接收 if(key_bit_count40&buf_count=1; buf_key_code|=0x80;/收到1 key_bit_count+;/数据脉冲累加 else if(buf_count12&buf_count=1;/收到0 key_bit_count+; else /若收完8位数据则做以下处理 ir_status=0;/接收状态返回到空闲 key_code=buf_key_code; key_bit_count=0; buf_key_c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025 年大学汉语国际教育(汉语国际教育)试题及答案
- 新版安全防范的试题及答案
- 母婴食品考核试题题库及答案解析(版)
- 小学六年级安全课课件
- 产科应急预案演练目录(3篇)
- 企业管理中如何看待HRBP的作用
- 城市轨道交通运营管理的规范化策略探究
- 中小企业实施绩效管理面临的问题与对策
- 人力资本管理解(HCM)决方案
- 2025年钳工中级考试题库及答案
- 城市供热热力管网课程设计
- 高铁变电所高压电器的运行与维护-避雷器的运行与维护
- 工程验收单 Microsoft Word 文档
- 生物信息学-生物信息数据库及其信息检索教学课件
- 2023年云南大理州建设投资(集团)有限公司招聘笔试题库含答案解析
- 农场问题分析
- FZ/T 54082-2015锦纶6膨体长丝(BCF)
- 小学数学西南师大六年级上册七负数的初步认识 《正负数》
- 针灸治疗急症精选课件
- 《爆破安全技术》课件
- 毛衫吓数工艺
评论
0/150
提交评论