;芯片为EM78P153
;P64,P65接晶振,振荡模式为4MHz晶振
;看门狗关,指令周期为2个CLOCK,P63为复位脚
;*******************IO口的定义*********************
PORT6 EQU 0X06
IOC60 EQU 0X06
;**************特殊功能寄存器的定义******************
TCC EQU 0X01
PC EQU 0X02
PSW EQU 0X03
IOCD0 EQU 0X0D
IOCE0 EQU 0X0E
IOCF0 EQU 0X0F
RF EQU 0X0F
;***************用户自定义的寄存器*******************
COUNTER EQU 0X10
CODE1 EQU 0X11
CODE2 EQU 0X12
CODE3 EQU 0X13
CODE4 EQU 0X14
LP_CNT0 EQU 0X15
LP_CNT1 EQU 0X16
TEMP EQU 0X17
TEMPCODE EQU 0X18
REPEAT_COUNTER EQU 0X19
SEND_DATA EQU 0X1A
USER_CODE EQU 0X1B
FLAG EQU 0X1C
;*******************FLAG位定义**********************
C EQU 0
Z EQU 2
TCIF EQU 0
LEAD EQU 0
REPEAT EQU 1
INPUT EQU 1
OUTPUT EQU 0
ORG 0X000
NOP
NOP
NOP
NOP
JMP 0X50
;********************表格转换子程序程序******************
TABLE_CONVER:
CLR TEMP
TABLE_CONVER_1:
MOV A,TEMP
CALL TABLE_CONVERSION_IN
BC PSW,Z
XOR A,CODE3
JBC PSW,Z
JMP EXIT_5
INC TEMP
JMP TABLE_CONVER_1
EXIT_5:
CALL TABLE_CONVERSION_OUT
RET
;**********************表格转换程序IN*********************
TABLE_CONVERSION_IN:
ADD PC,A
RETL 0XD0 ;KEY_1
RETL 0X58 ;KEY_2
RETL 0XD8 ;KEY_3
RETL 0X90 ;KEY_4
RETL 0X18 ;KEY_5
RETL 0X98 ;KEY_6
RETL 0XE0 ;KEY_7
RETL 0X68 ;KEY_8
RETL 0XE8 ;KEY_9
RETL 0X28 ;KEY_0
RETL 0X20 ;KEY_3D
RETL 0XA0 ;KEY_MUTE
RETL 0X40 ;KEY_VOCAL
RETL 0XE2 ;KEY_VOL+
RETL 0XA2 ;KEY_VOL-
RETL 0X52 ;KEY_TUNE FWD
RETL 0X22 ;KEY_TUNE REV
RETL 0X12 ;KEY_STOP
RETL 0X80 ;KEY_<|
RETL 0X82 ;KEY_|>
RETL 0X02 ;KEY_OK
RETL 0XF0 ;KEY_TUNER
RETL 0X78 ;KEY_AM/FM
RETL 0XF8 ;KEY_SAVE
RETL 0X50 ;KEY_AUDIO
;**********************表格转换程序OUT*********************
TABLE_CONVERSION_OUT:
MOV A,TEMP
ADD PC,A
RETL 0X35 ;KEY_1
RETL 0X2D ;KEY_2
RETL 0X25 ;KEY_3
RETL 0X1D ;KEY_4
RETL 0X34 ;KEY_5
RETL 0X2C ;KEY_6
RETL 0X24 ;KEY_7
RETL 0X1C ;KEY_8
本文关键字:程序 义隆单片机,单片机-工控设备 - 义隆单片机
上一篇:EM78系列8位单片机指令集