📄 ca745.lst
字号:
1 ;**************************************************
2 ;DEFINE THE SPECIAL REGISTER
3 ;**************************************************
4 0000 INDF EQU 0X00
5 0001 TCC EQU 0X01
6 0002 PC EQU 0X02
7 ;------------------------------------
8 0003 STATUS EQU 0X03
9 0000 C EQU 0 ;CARRY FLAG,1=CARRY
10 0001 DC EQU 1 ;AUXILIARY CARRY FLAG,1=AUXILIARY CARRY
11 0002 Z EQU 2 ;ZERO FLAG,1=LOGIC OPERATION IS ZERO
12 0003 P EQU 3 ;POWER DOWN BIT
13 0004 T EQU 4 ;TIME-OUT BIT
14 0005 PS0 EQU 5 ;
15 0006 PS1 EQU 6 ;PS1-PS0 PAGE SELECT BIT
16 0007 GP EQU 7 ;GENERAL READ/WRITE BIT
17 ;------------------------------------
18 0004 FSR EQU 0X04
19 ;------------------------------------
20 000F R3F EQU 0X0F
21 0000 TCIF EQU 0 ;TCC OVERFLOWING INTERRUPT FLAG
22 0001 ICIF EQU 1
23 0002 EXIF EQU 2 ;EXTERNAL INTERRUPT FLAG
24 ;------------------------------------
25 0005 P5 EQU 0X05
26 0001 SDA EQU 1
27 0002 SCK EQU 2
28 0003 SCE EQU 3
29 0006 P6 EQU 0X06
30 0001 Key_up EQU 1
31 0002 Key_down EQU 2
32 0006 _scl EQU 6
33 0007 _sda EQU 7
34 000B IOCB EQU 0X0B ;ENABLE THE WAKE-UP FUNCTION OF P6 PORT
35 000C IOCC EQU 0X0C
36 000D IOCD EQU 0X0D
37 ;-------------------------------------
38 000E IOCE EQU 0X0E ;WDT CONTROL REGISTER
39 0000 WUE EQU 0 ;ENABLE WAKE-UP FUNCTION OF P74~P75,0=ENABLE,1=DISABLE
40 0003 ROC EQU 3 ;R-OPTION SETTING,1=ENABLE,0=DISABLE
41 0004 SLPC EQU 4
42 0005 WDTE EQU 5 ;ENABLE WDT TIMER,0=DISABLE,1=ENABLE
43 0006 ODE EQU 6 ;OPEN-DRAIN OF P76 AND P77 PINS,0=DISABLE,1=ENABLE
44 ;---------------------------------------
45 000F IOCF EQU 0X0F ;INTERRUPT MASK REGISTER
46 0000 TCIE EQU 0 ;TCIF INTERRUPT ENABLE BIT,0=DISABLE,1=ENABLE
47 0001 ICIE EQU 1
48 0002 EXIE EQU 2 ;EXIF INTERRUPT ENABLE BIT,0=DISABLE,1=ENABLE
49 ;---------------------------------------
50 0001 CONT EQU 0X01
51 ;**************************************************
52 ;DEFINE THE GENERAL PURPOSE REGISTER
53 ;**************************************************
54 0010 COUNT EQU 0X10
55 0011 COUNT1 EQU 0X11
56 0012 TEMP EQU 0X12
57 0013 flag EQU 0X13
58 0000 ukey_dep EQU 0
59 0001 dkey_dep EQU 1
60 0002 inc_sta EQU 2
61 0003 dec_sta EQU 3
62 0004 inc_stop EQU 4
63 0005 dec_stop EQU 5
64 0014 count_dw EQU 0X14
65 0015 count_dw1 EQU 0X15
66 ;==========IIC=REG==========
67 0016 device_addr EQU 0x16
68 0017 word_addr EQU 0x17
69 0018 TXBUF EQU 0X18 ; TX buffer
70 0019 RXBUF EQU 0X19 ; RX buffer
71 ;===========================
72 001A A1 EQU 0X1A
73 001B A2 EQU 0X1B
74 001C A3 EQU 0X1C
75 001D A4 EQU 0X1D
76
77 001E rf_frequ EQU 0X1E
78 001F AA0 EQU 0X1F
79 0020 AA1 EQU 0X20
80 0010 div_l EQU COUNT
81 0011 b_div EQU COUNT1
82 0020 l_byte EQU AA1
83 001F yu EQU AA0
84 ;****************************************************
85 ; define the macro command
86 ;****************************************************
87 SDA_O MACRO
88 IOR P6
89 AND A,@0B01111111
90 IOW P6
91 ENDM
92 SDA_I MACRO
93 IOR P6
94 OR A,@0B10000000
95 IOW P6
96 ENDM
97
98 ;**************************************************
99 ;FOLLOWING IS THE PROGRAM AREA
100 ;**************************************************
101
102
103 ORG 0X000 ;
104 0000 1411 JMP MAIN
105
106 ORG 0X008 ;HARDWARE INTERRUPT ADDRESS
107 0008 1410 JMP HW_INT ;HARDWARE INTERRUPT
108
109 ORG 0X010
110
111 ;***************************************************
112 ;THE HARDWARE INTERRUPT PROGRAM(/INT)
113 ;USED REGISTER:
114 ;WRITE BY liguangtao
115 ;2005-08-16
116 ;***************************************************
117 0010 HW_INT:
118
119 0010 0013 RETI
120
121
122 ;***************************************************
123 ;THE MAIN PROGRAM
124 ;WRITE BY liguangtao
125 ;2005-08-16
126 ;***************************************************
127 0011 MAIN:
128 0011 0000 NOP
129
130 0012 105D CALL INIT_MCU
131
132 0013 MAIN_PROCESS:
133
134 0013 1015 CALL rf_adjust_process
135
136 0014 1413 JMP MAIN_PROCESS
137 ;********************************************************************************************
138 ;used: The RF-frequ adjusting process
139 ;reg:
140 ;wrt: ProBoy
141 ;date: 2001.07.03
142 ;********************************************************************************************
143 0015 rf_adjust_process:
144 0015 0C86 JBC P6,Key_down
145 0016 1433 JMP rf_adjust_inc_end
146 0017 0E46 JBS P6,Key_up
147 0018 145C jmp rf_adjust_process_end
148 0019 0C93 JBC flag,inc_sta
149 001A 1420 JMP data_adjust_inc
150 001B 0E53 JBS flag,dkey_dep
151 001C 141F jmp $+3
152 001D 0554 INC count_dw
153 001E 1454 jmp rf_adjust_process_end1
154 001F 0A53 BS flag,dkey_dep
155 0020 data_adjust_inc:
156 0020 0E93 JBS flag,inc_sta
157 0021 1427 JMP $+6
158 0022 0555 INC count_dw1
159 0023 1802 MOV A,@0x02
160 0024 0115 SUB A,count_dw1
161 0025 0E83 JBS STATUS,Z
162 0026 1435 JMP rf_adjust_dec_process
163 0027 00D5 CLR count_dw1
164
165 0028 0F13 JBS flag,inc_stop
166 0029 1435 JMP rf_adjust_dec_process
167 002A 055E INC rf_frequ
168 002B 107F CALL lcd_dis_data
169 002C 1015 CALL rf_adjust_process
170 002D 18CD MOV A,@205
171 002E 011E SUB A,rf_frequ
172 002F 0913 BC flag,inc_stop
173 0030 0C83 JBC STATUS,Z
174 0031 0B13 BS flag,inc_stop
175 0032 1435 jmp rf_adjust_dec_process
176 0033 rf_adjust_inc_end:
177 0033 0893 BC flag,inc_sta
178 0034 0853 BC flag,dkey_dep
179
180 0035 rf_adjust_dec_process:
181 0035 0C46 JBC P6,Key_up
182 0036 1451 jmp rf_adjust_dec_end
183 0037 0CD3 JBC flag,dec_sta
184 0038 143F JMP data_adjust_dec
185 0039 0E13 JBS flag,ukey_dep
186 003A 143D jmp $+3
187 003B 0554 INC count_dw
188 003C 1454 jmp rf_adjust_process_end1
189 003D 00D4 clr count_dw
190 003E 0A13 BS flag,ukey_dep
191 003F data_adjust_dec:
192 003F 0ED3 JBS flag,dec_sta
193 0040 1446 JMP $+6
194 0041 0555 INC count_dw1
195 0042 1802 MOV A,@0x02
196 0043 0115 SUB A,count_dw1
197 0044 0E83 JBS STATUS,Z
198 0045 145C JMP rf_adjust_process_end
199 0046 00D5 CLR count_dw1
200
201 0047 0F53 JBS flag,dec_stop
202 0048 145C JMP rf_adjust_process_end
203 0049 01DE DEC rf_frequ
204 004A 107F CALL lcd_dis_data
205 004B 1015 CALL rf_adjust_process
206 004C 041E MOV A,rf_frequ
207 004D 0953 BC flag,dec_stop
208 004E 0C83 JBC STATUS,Z
209 004F 0B53 BS flag,dec_stop
210 0050 145C JMP rf_adjust_process_end
211 0051 rf_adjust_dec_end:
212 0051 08D3 BC flag,dec_sta
213 0052 0813 BC flag,ukey_dep
214 0053 145C JMP rf_adjust_process_end
215 0054 rf_adjust_process_end1:
216 0054 1802 MOV A,@0x02
217 0055 0114 SUB A,count_dw
218 0056 0E83 JBS STATUS,Z
219 0057 145C jmp rf_adjust_process_end
220 0058 0E86 JBS P6,Key_down
221 0059 0A93 BS flag,inc_sta
222 005A 0E46 JBS P6,Key_up
223 005B 0AD3 BS flag,dec_sta
224 005C rf_adjust_process_end:
225 005C 0012 ret
226 ;***************************************************
227 ;INITIALIZE THE MCU
228 ;WRITE BY MARK.PENG
229 ;2003-12-14
230 ;***************************************************
231 005D INIT_MCU:
232 005D 0011 DISI ;DISABLE INTERRUPT
233 005E 1847 MOV A,@0B01000111 ;@0X07
234 005F 0002 CONTW
235
236 0060 1800 MOV A,@0B00000000 ;SET I/O DIRECTION,1=INPUT,0=OUTPUT
237 0061 0005 IOW P5
238 0062 18FF MOV A,@0B11111111
239 0063 0006 IOW P6
240
241 0064 18FF MOV A,@0XFF
242 0065 000B IOW IOCB
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -