📄 hcs635.lst
字号:
00168 #define S3 PORTA,2 ; S3 BUTTON INPUT
00169
00170 #DEFINE RFEN PORTA,2 ; RF ENABLE OUTPUT
00171 #define RFENtris TRISA,2
00172 #DEFINE SHIFT PORTA,2 ; SHIFT BUTTON INPUT
00173
00174 ; ********* I/O PORT TRI-STATE VALUES **********************
00175
00176 RA_TRIS EQU B'00111100'
00177 ENDIF
00178 IFDEF P16F636
00179 ; _________
00180 ; Vdd | 1 14 | Vss
00181 ; S0 | 2 13 | S5
00182 ; S1 | 3 12 | S4 16F636
00183 ; S2 | 4 11 | S3/SHIFT/RFEN
00184 ; DATA | 5 10 | LED1n
00185 ; LED2n | 6 9 | RC1 (user)
00186 ; (user) RC3 | 7 8 | RC2 (user)
00187 ; ---------
00188 #define S0 PORTA,5 ; S0 BUTTON INPUT
00189 #define S1 PORTA,4 ; S1 BUTTON INPUT
00190 #define S2 PORTA,3 ; S2 BUTTON INPUT
00191 #define S3 PORTA,2 ; S3 BUTTON INPUT
00192 #define S4 PORTA,1 ; S4 BUTTON INPUT
00193 #define S5 PORTA,0 ; S5 BUTTON INPUT
00194
00195 #DEFINE RFEN PORTA,2 ; RF ENABLE OUTPUT
00196 #define RFENtris TRISA,2
00197 #DEFINE SHIFT PORTA,2 ; SHIFT BUTTON INPUT
00198
00199 #define LED PORTC,0 ; LED LINE
00200 #define RFOUT PORTC,5 ; RF DATA OUTPUT
00201
00202 ; ********* I/O PORT TRI-STATE VALUES **********************
00203
00204 RA_TRIS EQU B'00111111'
00205 RC_TRIS EQU B'00001110'
00206 ENDIF
MPASM 5.16 HCS635.ASM 4-16-2008 14:39:21 PAGE 6
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
00207 IFDEF P16F639
00208 ; _________
00209 ; Vdd | 1 20 | Vss
00210 ; S0 | 2 19 | S5/SlowFall
00211 ; S1 | 3 18 | S4/LFDint
00212 ; S2 | 4 17 | S3/SHIFT/RFEN
00213 ; DATA | 5 16 | LED1n 16F639
00214 ; LED2n | 6 15 | RC1/CSn
00215 ; RC3/LFDATA/SDIO | 7 14 | RC2/SCLK/Alert
00216 ; Vddt | 8 13 | Vsst
00217 ; LCZ | 9 12 | LCCOM
00218 ; LCY | 10 11 | LCX
00219 ; ---------
00220 #define S0 PORTA,5 ; S0 BUTTON INPUT
00221 #define S1 PORTA,4 ; S1 BUTTON INPUT
00222 #define S2 PORTA,3 ; S2 BUTTON INPUT
00223 #define S3 PORTA,2 ; S3 BUTTON INPUT
00224 #define S4 PORTA,1 ; S4 BUTTON INPUT
00225 #define LFDint PORTA,1
00226 #define S5 PORTA,0 ; S5 BUTTON INPUT
00227
00228 #DEFINE RFEN PORTA,2 ; RF ENABLE OUTPUT
00229 #define RFENtris TRISA,2
00230 #DEFINE SHIFT PORTA,2 ; SHIFT BUTTON INPUT
00231
00232 #define LED PORTC,0 ; LED output
00233 #define AFECS PORTC,1 ; Chip select output
00234 #define SCK PORTC,2 ; SPI Clock Output
00235 #define SDIO PORTC,3 ; Serial Data Input/Output
00236 #define LFDATA PORTC,3 ; Low Frequency Data IN
00237 #define ValidLED PORTC,4 ; LED output
00238 #define RFOUT PORTC,5 ; RF DATA OUTPUT
00239
00240 ; ********* I/O PORT TRI-STATE VALUES **********************
00241
0000003F 00242 RA_TRIS EQU B'00111111'
0000000C 00243 RC_TRIS EQU B'00001100'
00244 ENDIF
00245
MPASM 5.16 HCS635.ASM 4-16-2008 14:39:21 PAGE 7
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
00246 page
00247 #define VLOW PIR1,LVDIF ; LOW VOLTAGE INDICATION BIT
00248
00249 ; ***** TRANSMITTER FLAGS BIT DEFINITIONS ***************
00250
00000000 00251 VLOWBAT EQU 0H ; INDICATE VOLTAGE LOW STATE
00000001 00252 BUT_REL EQU 1H ; INDICATE BUTTON RELEASED
00000002 00253 DO_GUARD EQU 2H ; INDICATE A GUARD TIME DELAY IS REQUIRED
00000003 00254 TX_NUM EQU 3H ; INDICATE WHICH TRANSMITTER TO USE
00000004 00255 FIRST EQU 4H ; INDICATE THAT THE FIRST EVENT COMPLETED
00000005 00256 SEEDNOW EQU 5H ; INDICATE THAT WE SHOULD SEND THE SEED TX NOW
00000006 00257 TEMPBIT EQU 6H ; TEMPORARY INDICATION BIT
00000007 00258 BUT_DWN EQU 7H ; INDICATE THAT A NEW BUTTON WAS ADDED WHEN BIT = 0
00259
00260 ; ****** TRANSMITTER CONFIGURATION BYTE #0 *****************
00261
00262 #DEFINE MSEL0 TX_CFG0,0H ; TRANSMISSION MODULATION SELECT BIT #0
00263 #DEFINE MSEL1 TX_CFG0,1H ; TRANSMISSION MODULATION SELECT BIT #1
00264 #DEFINE HSEL TX_CFG0,2H ; 4/10 Te HEADER SELECT BIT
00265 #DEFINE XSER TX_CFG0,3H ; EXTENDED SERIAL NUMBER ENABLE
00266 #DEFINE QUEN TX_CFG0,4H ; QUEUING BITS ENABLE OPTION
00267 #DEFINE STRTSEL TX_CFG0,5H ; START/STOP BIT SELECT BIT
00268 #DEFINE LEDL TX_CFG0,6H ; BATTERY LOW LED STATE SELECT BIT
00269 #DEFINE LEDH TX_CFG0,7H ; LED BLINK RATE SELECT BIT
00270
00271 ; ****** TRANSMITTER CONFIGURATION BYTE #1 *****************
00272
00273 #DEFINE SDLM TX_CFG1,0H ; LIMITED SEED TRANSMISSIONS (OFF/ON)
00274 #DEFINE SDMD TX_CFG1,1H ; SEED MODE (USER/PRODUCTION)
00275 #DEFINE SDTM0 TX_CFG1,2H ; TIME BEFORE SEED TRANSMISSION (LSB)
00276 #DEFINE SDTM1 TX_CFG1,3H ; TIME BEFORE SEED TRANSMISSION (MSB)
00277 #DEFINE BSL0 TX_CFG1,4H ; BAUD RATE SELECT BIT (LSB)
00278 #DEFINE BSL1 TX_CFG1,5H ; BAUD RATE SELECT BIT (MSB)
00279 #DEFINE GSEL0 TX_CFG1,6H ; GUARD TIME SELECT BIT #0
00280 #DEFINE GSEL1 TX_CFG1,7H ; GUARD TIME SELECT BIT #1
00281
00282 ; ****** SYSTEM CONFIGURATION BYTE #0 **********************
00283
00284 #DEFINE WSEL0 SYSCFG0,0H ; WAKEUP SELECT BIT #0
00285 #DEFINE WSEL1 SYSCFG0,1H ; WAKEUP SELECT BIT #1
00286 ;#DEFINE CNTSEL SYSCFG0,2H ; 16/20 BIT COUNTER SELECT BIT
00287 #DEFINE CNTSEL 2H ; 16/20 BIT COUNTER SELECT BIT
00288 #DEFINE VLOWL SYSCFG0,3H ; VLOW LATCHED SELECT BIT
00289 #DEFINE VTRIP SYSCFG0,4H ; VLOW TRIP POINT SELECT BIT
00290 #DEFINE PLLSEL SYSCFG0,5H ; ASK/FSK PLL SELECTION BIT
00291
00292 ; ****** SYSTEM CONFIGURATION BYTE #1 **********************
00293
00294 #DEFINE MTX0 SYSCFG1,0H ; MINIMUM NUMBER OF CODE WORD (LSB)
00295 #DEFINE MTX1 SYSCFG1,1H ; MINIMUM NUMBER OF CODE WORD (MSB)
00296 #DEFINE INDSEL SYSCFG1,2H ; INDEPENDED MODE SELECT BIT ON HCS365
00297 #DEFINE RFENSEL SYSCFG1,3H ; RF ENABLE MODE SELECT BIT ON HCS365
00298 #DEFINE TSEL0 SYSCFG1,4H ; TIMEOUT SELECT BIT #0
MPASM 5.16 HCS635.ASM 4-16-2008 14:39:21 PAGE 8
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
00299 #DEFINE TSEL1 SYSCFG1,5H ; TIMEOUT SELECT BIT #1
00300
00301 ; ***** TIME MEASUREMENT CONSTANT DEFINITIONS **************
00302
00000001 00303 T_50 EQU D'1' ; TIME COUNTER VALUE FOR 50 ms
00000002 00304 T_100 EQU D'2' ; TIME COUNTER VALUE FOR 100 ms
00000004 00305 T_200 EQU D'4' ; TIME COUNTER VALUE FOR 200 ms
0000000A 00306 T_500 EQU D'10' ; TIME COUNTER VALUE FOR 500 ms
00000010 00307 T_800 EQU D'16' ; TIME COUNTER VALUE FOR 800 ms
00000014 00308 T_1000 EQU D'20' ; TIME COUNTER VALUE FOR 1000 ms
00000020 00309 T_1600 EQU D'32' ; TIME COUNTER VALUE FOR 1.6 SECONDS
00000030 00310 T_2400 EQU D'48' ; TIME COUNTER VALUE FOR 2.4 SECONDS
00000040 00311 T_3200 EQU D'64' ; TIME COUNTER VALUE FOR 3.2 SECONDS
00000004 00312 T_25600 EQU D'4' ; TIME COUNTER VALUE FOR 25.6 SECONDS
00313
00314 ; ***** EEPROM MEMORY MAP DEFINITIONS **********************
00315
00000000 00316 EE_CNT0 EQU 00H ; OFFSET FOR TX0'S EEPROM SYNC COUNTER
00000008 00317 EE_CNT1 EQU 08H ; OFFSET FOR TX1'S EEPROM SYNC COUNTER
00000007 00318 EE_VLOWL EQU 07H ; OFFSET FOR VLOW LATCH BYTE
00319
00000010 00320 EE_SER EQU 10H ; OFFSET OF TX'S 64 BIT SEED VALUE
00000014 00321 EE_SEED EQU 14H ; OFFSET OF TX'S 64 BIT SEED VALUE
0000001C 00322 EE_DISC EQU 1CH ; OFFSET OF TX'S 16 BIT DISCRIMINATION VALUE
0000001E 00323 EE_KEY EQU 1EH ; OFFSET OF TX'S 64 BIT ENCRYPTION KEY
00324
00325 ;B_EE_SER EQU 26H ; OFFSET OF TX'S 64 BIT SEED VALUE
00326 ;B_EE_SEED EQU 2AH ; OFFSET OF TX'S 64 BIT SEED VALUE
00327 ;B_EE_DISC EQU 32H ; OFFSET OF TX'S 16 BIT DISCRIMINATION VALUE
00328 ;B_EE_KEY EQU 34H ; OFFSET OF TX'S 64 BIT ENCRYPTION KEY
00329
0000003C 00330 EE_CFG3 EQU 3CH ; OFFSER OF 16 BIT TRANSMITTER CONFIGURATION WORD
0000003D 00331 EE_CFG2 EQU 3DH ; OFFSER OF 16 BIT TRANSMITTER CONFIGURATION WORD
0000003E 00332 EE_CFG1 EQU 3EH ; OFFSER OF 16 BIT TRANSMITTER CONFIGURATION WORD
0000003F 00333 EE_CFG0 EQU 3FH
00334
00335 ;The following function codes are stored as:
00336 ; 7 6 5 4 3 2 1 0
00337 ; 0 0 F F F F 0 0
00000040 00338 S4_Button_Code equ 40H
00000041 00339 S5_Button_Code equ 41H
00000042 00340 PKE_Code equ 42H ; Offset for Function Code to transmit after LF Wake-up
00341
MPASM 5.16 HCS635.ASM 4-16-2008 14:39:21 PAGE 9
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
00342 page
00343 ;*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
00344 ; RESET Vector address 000H
00345 ;*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -