nec码红外遥控完整编码.docx

上传人:b****7 文档编号:25327999 上传时间:2023-06-07 格式:DOCX 页数:9 大小:16.46KB
下载 相关 举报
nec码红外遥控完整编码.docx_第1页
第1页 / 共9页
nec码红外遥控完整编码.docx_第2页
第2页 / 共9页
nec码红外遥控完整编码.docx_第3页
第3页 / 共9页
nec码红外遥控完整编码.docx_第4页
第4页 / 共9页
nec码红外遥控完整编码.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

nec码红外遥控完整编码.docx

《nec码红外遥控完整编码.docx》由会员分享,可在线阅读,更多相关《nec码红外遥控完整编码.docx(9页珍藏版)》请在冰豆网上搜索。

nec码红外遥控完整编码.docx

nec码红外遥控完整编码

nec码红外遥控完整编码

红外遥控编码程序如下:

NEC.SECTION'DATA'

a_REM_CODEDB?

;KEYDATACODE

a_CUSTOMER_1DB?

;遥控器头码(客户码)低八位

a_CUSTOMER_2DB?

;遥控器头码(客户码)高八位

#defineCUS_6221_100110100b;1234H

#defineCUS_6221_200010010b;@------------------------------------------------

NEC_CODE.SECTION'CODE'

;@*************SUBROUTINE[xx]:

SendRemoteCode************

;;遥控码发送:

SEND_REMOTE_CODE:

clrWDT;清除进位标志,检测遥控发送的有效的按

SZfg_SendActive;SZ表示以0结尾的字符串

JMPREADY_SEND;跳转到READY_SEND模块

ret

READY_SEND:

NEC_CODE:

movA,a_KEY_NUM;将数值发送到寄存器A中,直接寻址

movM_TBLP,A

TABRDLa_REM_CODE;查表专用指令

;读取遥控头码(客户码)低八位数值MOVA,CUS_6221_1

MOVa_CUSTOMER_1,A

MOVA,CUS_6221_2

MOVa_CUSTOMER_2,A

以上为READY_SEND运行模块,同时是为后面NEC码发送的准备;首先将一个按键的数值已以直接寻址方式发送到寄存器A中,将寄存器A的是发送到M_TBLP中,然后查表a_REM_CODE,将CUS_6221_1的值发送到寄存器中,在赋值给遥控器头码(客户码)低八位a_CUSTOMER_1,同理,将CUS_6221_2赋值给遥控器头码(客户码)低八位a_CUSTOMER_2,随后即开始发送NEC遥控码。

NEC引导码发送并开始编译:

;;---StartingsendNECRemotecode---SEND_NEC:

;CheckNoKeyCodeffH

SIZAa_REM_CODE;取出变量的大小

JMPLEADNEC_CODE;跳转指令

Ret;返回地址出栈,从而实现转移到返回地址

LEADNEC_CODE:

;1InstructionCycle=8.79us

clrpn_IR;HighLevel9ms(455KHz:

1023Cycle)

movA,002d;[(3*168)+5]*2=1018

mova_SR13,A

LEADIND_CODE_00:

movA,168d

movM_ACC,A

LEADIND_CODE_01:

SDZM_ACC;结果为零,则跳过下一条指令JMPLEADIND_CODE_01

SDZa_SR13

JMPLEADIND_CODE_00

NOP2

NOP2

NOP;空操作指令,占用一个机器周期,用于延时或程序指令的对齐

setpn_IR;置位标志,即将某一位置1clrwdt

movA,001d;LOWLevel2.5ms(284Cycle)

mova_SR13,A;[(4*69)+5]*1=281

LEAD_CODE_04:

movA,70d

movM_ACC,A

LEAD_CODE_05:

NOP

SDZM_ACC

JMPLEAD_CODE_05

SDZa_SR13

JMPLEAD_CODE_04

clrwdt

SZfg_REPEAT;CHECKREPEATKEYJMPREPEAT_CODE

movA,001d;LOWLevel2.0ms(227Cycle)

mova_SR13,A;[(4*55)+5]*1=225

LEAD_CODE_06:

movA,53d

movM_ACC,A

LEAD_CODE_07:

NOP

SDZM_ACC

JMPLEAD_CODE_07

SDZa_SR13

JMPLEAD_CODE_06

clrwdt

nop2

;------------------------

;;客户码编译:

CUSNEC_CODE:

movA,002d

mova_SR13,A

MOVA,OFFSETa_CUSTOMER_1MOVM_MP0,A

CUSTOM_PRO:

movA,008d

mova_SR11,A;8databitnop

CUSTOM_BIT_BL;0.56ms->63Cycle

clrpn_IR;[(3*20)+2]=62

movA,20d

CUSTOM_BIT_BL_1:

SDZM_ACC

JMPCUSTOM_BIT_BL_1

clrwdt

Nop

CUSTOM_BIT_BH:

;'0'0.56ms->63Cycle

setpn_IR;'1'1.68ms->191Cycle

nop

rrM_INDIRECT1;

movA,18d

SZM_INDIRECT1.7;

movA,61d

CUSTOM_BIT_BH_0:

SDZM_ACC

JMPCUSTOM_BIT_BH_0

clrwdt

SDZa_SR11

JMPCUSTOM_BIT_BL

INCM_MP0

SDZa_SR13

JMPCUSTOM_PRO

;;---------------------------;;数据码编译:

DATA6NEC_BIT:

movA,002d

mova_SR13,A

DATA_PRO:

movA,008d

mova_SR11,A;8databit

nop

DATA_BIT_BL:

;0.53ms->60Cycle

clrpn_IR;[(3*19)+2]=59

movA,20d

DATA_BIT_BL_1:

SDZM_ACC

JMPDATA_BIT_BL_1

clrwdt

nop

DATA_BIT_BH:

;'0'0.53ms->60Cycle

setpn_IR;'1'1.58ms->179Cycle

nop

rra_REM_CODE;

movA,18d

SZa_REM_CODE.7

movA,61d

DATA_BIT_BH_0:

SDZM_ACC

JMPDATA_BIT_BH_0

clrwdt

SDZa_SR11

JMPDATA_BIT_BL

CPLA_REM_CODE

SDZa_SR13

JMPDATA_PRO

;0.53ms->60Cycle

clrpn_IR;[(3*19)+2]=59

movA,20d

DATA_BIT_BL_2:

SDZM_ACC

JMPDATA_BIT_BL_2

clrwdt

setpn_IR

;---FrameDelayTimeProcess---

movA,004d;Repetitiontime=108ms(12286Cycle)

mova_SR13,A;ScanKey=2471Cycle

;SendCode=7349Cycle

FDTP_LOOP_01:

;12286-2471-7349=2466

movA,152d;[(4*152)+5]*4=2452

movM_ACC,A

FDTP_LOOP_02:

nop

SDZM_ACC

JMPFDTP_LOOP_02

clrwdt

SDZa_SR13

JMPFDTP_LOOP_01

movA,3d

movM_ACC,A

FDTP_LOOP_03:

SDZM_ACC

JMPFDTP_LOOP_03

NOP2

ret

;--------------------------------;;重复码编译:

REPEAT_CODE:

;0.56ms->63Cycle

clrpn_IR;[(3*20)+2]=62

movA,19d

REP_BIT_BL_3:

SDZM_ACC

JMPREP_BIT_BL_3

clrwdt

setpn_IR

;---RepeatFrameDelayTimeProcess---

movA,016d;Repetitiontime=108ms(12286Cycle)

mova_SR13,A;ScanKey=2471Cycle

ndRepeatCode=1390Cycle;Se

REP_DELAY_02:

;12286-2471-1390=8425

movA,130d;[(4*130)+5]*16=8400

movM_ACC,A

REP_DELAY_03:

nop

SDZM_ACC

JMPREP_DELAY_03

clrwdt

SDZa_SR13

JMPREP_DELAY_02

movA,07d

movM_ACC,A

REP_DELAY_04:

SDZM_ACC

JMPREP_DELAY_04

NOP2

ret

%%%%%%%%%%%%%%%%%%%%RemoteTableArray%%%%%%%%%%%%%%%%%%%%%%%%%

org300h

DW00ffh;;Key00:

---:

00DW0000h;;Key1:

---:

01DW0001h;;Key2:

:

02DW0002h;;Key3:

:

03DW0003h;;Key4:

:

04DW0004h;;Key5:

:

05DW0005h;;Key6:

:

06DW0006h;;Key7:

:

07DW0007h;;Key8:

:

08DW0008h;;Key9:

:

09DW0009h;;Key10:

:

10DW000ah;;Key11:

:

11DW000bh;;Key12:

:

12DW000ch;;Key13:

:

13DW000dh;;Key14:

:

14DW000eh;;Key15:

:

15DW000fh;;Key16:

:

16DW0010h;;Key17:

:

17DW0011h;;Key18:

:

18DW0012h;;Key19:

:

19DW0013h;;Key20:

:

20DW0014h;;Key21:

:

21DW0015h;;Key22:

:

22DW0016h;;Key23:

:

23DW0017h;;Key24:

:

24DW0018h;;Key25:

:

25DW0019h;;Key26:

:

26

DW001ah;;Key27:

:

27DW001bh;;Key28:

:

28

001ch;;Key29:

:

29DW

DW001dh;;Key30:

:

30DW001eh;;Key31:

:

31DW001fh;;Key32:

:

32DW0020h;;Key33:

:

33DW0021h;;Key34:

:

34DW0022h;;Key35:

:

35DW0023h;;Key36:

:

36DW0024h;;Key37:

:

37DW0025h;;Key38:

:

38DW0026h;;Key39:

:

39DW0027h;;Key40:

:

40DW0028h;;Key41:

:

41DW0029h;;Key42:

:

42DW002ah;;Key43:

:

43DW002bh;;Key44:

:

44DW002ch;;Key45:

:

45DW002dh;;Key46:

:

46DW002eh;;Key47:

:

47DW002fh;;Key48:

:

48

0030h;;Key49:

:

49DW

DW0031h;;Key50:

:

50DW0032h;;Key51:

:

51DW0033h;;Key52:

:

52DW0034h;;Key53:

:

53DW0035h;;Key54:

:

54DW0036h;;Key55:

:

55DW0037h;;Key56:

:

56DW0038h;;Key57:

:

57DW0039h;;Key58:

:

58DW003ah;;Key59:

:

59DW003bh;;Key60:

:

60DW003ch;;Key61:

:

61DW003dh;;Key62:

:

62DW003eh;;Key63:

:

63DW003fh;;Key64:

:

64END

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1