首页 经典红外线控制程序的pdf文档 ht6221运用参考2

经典红外线控制程序的pdf文档 ht6221运用参考2

举报
开通vip

经典红外线控制程序的pdf文档 ht6221运用参考2 HT6221 发码的接收 HT6221 发码的接收 文件编码:HA0040s 简介: HT6221 的应用电路图如下: � � � � � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ...

经典红外线控制程序的pdf文档 ht6221运用参考2
HT6221 发码的接收 HT6221 发码的接收 文件编码:HA0040s 简介: HT6221 的应用电路图如下: � � � � � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ! " # � � � � � � $ � $ � � � � % & ' " ! ( ) ' * " + , � ! - , � � � � . � � � � . � � � � � � � � � � � � � � � � � � � � � � � HT6221 发码的接收 HT6221是Holtek公司生产的多功能编码芯片,采用PPM(Pulse Position Modulation)进行编码,1.12ms 为 0,2.24ms 为 1,如下图: / � � " / / 0 " , / # ! - ! * . " ) , # * 1 � � � ( + 2 * # ! - ! * . " ) , # * 1 � � ( + 2 � % & * ' ! ) " � % & * ' ! ) " � � � � ( + 每发送一个码,HT6221 会先送出一个 9ms 的头码和 4.5ms 的间隙,然后依次送出 16 位的地址 码(18ms~36ms)、8 位数据码(9ms~18ms)和 8 位数据反码,如下图: � � � � � ( + � � ( + � � ( + � � ( + � � ( + 1 � � � � � � 3 � � � � � 3 � � � � � * 2 � % & 4 5 * # 6 - 7 * ' ! ) " � ( + � � ( + � � ( + � ( + � � � ( + � � � � ( +� � � � ( + 本文主要介绍用 HT48R30A-1 来进行解码的程序。HT6221 通过红外发射管发出信号,红外接收 管接到 HT48R30A-1 的外部中断输入脚。 ;File name:6221receiver.asm ;作者: KELVEN ;说明: 程序开始时,先清除 RAM 区,然后打开主中断、外部中断及定时计数器中断。通 ;过计算中断之间的时间间隔来解码,当接收到有效码后,会置标志位。在主程序中判 ;断标志位是否置位来判断有效码的接收。掩膜选择系统时钟为 4000kHz。 include ht48r30a-1.inc ; *********************************************** ; * Filename : 6221RECEIVER.asm * ; * Function : DECODER HT6221 * ; * Microprocessor : HT48R30A-1 * ; * Crystal : 4MHz * ; *********************************************** data .section 'data' card_no0 equ [060h] ; card_no1 equ [061h] card_no2 equ [062h] card_no3 equ [063h] ;记录最终的数据 temp equ [07eh] cint db ? ;记录收数据 bit 个数的变量 HT6221 发码的接收 count db ? count_buf db ? int_acc db ? ;中断保护变量 right_tou dbit y_bit dbit ;----------------------------------------- code .section at 0000 'code' org 00h jmp start org 04h ;中断入口地址 jmp do_wai org 08h jmp do_tmr ;有 time 中断发生 org 20h start: set pgc ;中断口设为输入状态 call init mov a, 81h ;fsys/4 1M mov tmrc, a mov a, 56 mov tmr, a ;200µs 中断一次 mov a, 6 mov intc, a set tmrc.4 ;------------------------------------------------------ sleep: set intc.0 snz y_bit ;判断是否有外部中断发生? jmp sleep ;没有外部中断发生则继续等待 call decode_1 ;解码 snz right_tou ;解码不正确,返回重来 jmp start mov a, cint sub a, 32 ;准备收数据的 bit 个数 snz c ;判断数据是否已收完 jmp sleep clr tmrc ;收码完毕 clr intc cpla card_no2 xor a, card_no3 ;校验所收码是否正确 HT6221 发码的接收 snz z jmp error1 jmp start ;正确 error1: jmp start ;错误 ;--------------------------------- do_wai : clr tmrc.4 clr intc.0 mov int_acc, a ;入中断保护,push acc 值暂存 mov a, count mov count_buf, a clr count set y_bit over_int: mov a, 56 mov tmr, a mov a, int_acc ;pop acc 值 set tmrc.4 set intc.0 reti ;---------------------- do_tmr: inc count reti ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ decode_1 proc clr intc.0 clr y_bit snz right_tou jmp judge_touma mov a, count_buf sub a, 4 snz c jmp error ;data 值小于 200µs*4=800µs 判断错误 mov a, count_buf sub a, 13 sz c jmp error ;data 值大于 200µs*13=2.6ms 判断错误 mov a, count_buf ;data 值大于 200µs*8=1.6ms sub a, 8 ;c=1, data=1 ;data 值小于 200µs*8=1.6ms c=0, data=0 rrc card_no3 HT6221 发码的接收 rrc card_no2 rrc card_no1 rrc card_no0 inc cint ;记录收到的 BIT 位数 ret error: clr count clr right_tou ret judge_touma: clr right_tou ;头码判断 13.50ms mov a, count_buf sub a, 70 ;200*70=14ms sz c ret ;头码大于 14ms 判断错误 mov a, count_buf sub a, 63 ;63*200=12.6ms snz c ret ;头码小于 12.6ms 判断错误 set right_tou ret decode_1 endp ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ;Function : init ;Purpose : clear ram value ;Parameter: ;Return : ;Modified : acc, status ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ init proc clr intc ;清中断 mov a, 20h mov mp0, a mov a, 5fh mov temp, a ram_clr: ;清 RAM clr r0 inc mp0 sdz temp jmp ram_clr ret init endp
本文档为【经典红外线控制程序的pdf文档 ht6221运用参考2】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_709141
暂无简介~
格式:pdf
大小:158KB
软件:PDF阅读器
页数:5
分类:互联网
上传时间:2011-01-07
浏览量:22