⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 8733_tp.lst

📁 Elan eKTP8733N 单片机Touch Pad驱动程序。可检测8个Touch Pad按键是否按下。在Elan公司开发环境中使用。
💻 LST
📖 第 1 页 / 共 5 页
字号:
   615 0020A 0012                      RET
   616                     ;-------------------------------------------------------------------
   617                     ;将当前值与保存值做比较,看二者差值是否在-4 <= X <= 4范围内
   618                     ;即bank2的0x20~0x2F当前值与bank3的0x20~0x2F保存值做比较
   619 0020B               Compare2GroupVa:
   620 0020B 1808                      MOV     A, @8
   621 0020C 0056                      MOV     Temp, A
   622 0020D 00F0                      CLR     buffer
   623 0020E 1E93                      BANK    3
   624 0020F 1820                      MOV     A, @0x20
   625 00210 0044                      MOV     R4, A           ; bank 3,0x20
   626 00211               Com2GroupValueLp:
   627 00211 1E93                      BANK    3
   628 00212 0544                      INC     R4              ; bank 3,0x21
   629 00213 0400                      MOV     A, R0
   630 00214 1E92                      BANK    2
   631 00215 0100                      SUB     A, R0           ; bank 2, 0x21, 即当前值与保存值高位相减
   632 00216 0E03                      JBS     status, c
   633 00217 162D                      JMP     RltmVaHiSmall   ; 保存值的高位比实时值高
   634 00218 0C83                      JBC     status, z       ; 实时值的高位比保存值的高位大或相等
   635 00219 161F                      JMP     RltmVaHiEqu     ; 实时值的高位与保存值的高位相等
   636                     ;
   637                                 ; 1)实时值的高位比保存值的高位大
   638 0021A 01C4                      DEC     R4              ; bank 2, 0x20
   639 0021B 1E93                      BANK    3
   640 0021C 0400                      MOV     A, R0           ; bank 3, 0x20
   641 0021D 1E92                      BANK    2
   642 0021E 1630                      JMP     RltmVaHiSmall1
   643                                 ;SUB     A, R0          ; bank 2, 0x20
   644                                 ;MOV     Temp, A
   645                                 ;INC     RSR            ; bank 2, 0x21
   646                                 ;MOV     A, R0
   647                                 ;MOV     Temp1, A
   648                                 ;JBS     status, c
   649                                 ;DEC     Temp1
   650                                 ;MOV     A, Temp
   651                                 ;ADD     A, @255-4
   652                                 ;JBC     status, c
   653                                 ;JMP     Com2GroupValueNoOK  ;差值大于4
   654                                 ;MOV     A, Temp1
   655                                 ;JBC     status, z
   656                                 ;JMP     Com2GroupValueOK
   657                                 ;JMP     Com2GroupValueNoOK
   658                     ;
   659 0021F               RltmVaHiEqu:
   660                                 ; 2)实时值高位与保存值高位相等
   661 0021F 01C4                      DEC     R4
   662 00220 0400                      MOV     A, R0               ; bank 2, 0x20
   663 00221 1E93                      BANK    3
   664 00222 0100                      SUB     A, R0               ; 低位相减
   665 00223 0E03                      JBS     status, c
   666 00224 1629                      JMP     RltmVaHiEqu1
   667 00225 1FFD                      ADD     A, @255-2           ; 保存值比实时值大
   668 00226 0E03                      JBS     status, c
   669 00227 1640                      JMP     Com2GroupValueOK    ; 大4以下,则ok
   670 00228 163E                      JMP     Com2GroupValueNoOK  ; 大4以上,则不ok
   671 00229               RltmVaHiEqu1:
   672 00229 1F02                      ADD     A, @2               ; 实时值比保存值大
   673 0022A 0E03                      JBS     status, c
   674 0022B 163E                      JMP     Com2GroupValueNoOK  ; 大4以上上则不ok
   675 0022C 1640                      JMP     Com2GroupValueOK    ; 小于等于4则ok
   676                     ;
   677                                 ;-------------------------------------
   678 0022D               RltmVaHiSmall:
   679                                 ; 3)保存值高位比实时值高位高
   680 0022D 01C4                      DEC     R4
   681 0022E 0400                      MOV     A, R0               ; bank 2, 0x20 (当前值)
   682 0022F 1E93                      BANK    3
   683 00230               RltmVaHiSmall1:
   684 00230 0100                      SUB     A, R0               ; 保存值减现在值(低位相减)
   685 00231 0056                      MOV     Temp, A
   686 00232 0544                      INC     R4
   687 00233 0400                      MOV     A, R0
   688 00234 0057                      MOV     Temp1, A
   689 00235 0E03                      JBS     status, c
   690 00236 01D7                      DEC     Temp1
   691 00237 0416                      MOV     A, Temp
   692 00238 1FFD                      ADD     A, @255-2
   693 00239 0C03                      JBC     status, c
   694 0023A 163E                      JMP     Com2GroupValueNoOK
   695 0023B 0417                      MOV     A, Temp1
   696 0023C 0C83                      JBC     status, z
   697 0023D 1640                      JMP     Com2GroupValueOK
   698                                 ;-------------------------------------
   699 0023E               Com2GroupValueNoOK:
   700 0023E 0803                      BC      status, c
   701 0023F 1648                      JMP     Com2GroupValueEnd
   702 00240               Com2GroupValueOK:
   703 00240 1E90                      BANK    0
   704 00241 0570                      INC     buffer
   705 00242 0430                      MOV     A, buffer
   706 00243 124A                      CALL    GetRSRVALUE
   707 00244 0044                      MOV     R4, A
   708 00245 05D6                      DJZ     Temp
   709 00246 1611                      JMP     Com2GroupValueLp
   710 00247 0A03                      BS      status, c
   711 00248               Com2GroupValueEnd:
   712 00248 1E90                      BANK    0
   713 00249 0012                      RET
   714                     ;-------------------------------------------------------------------
   715 0024A               GetRSRVALUE:
   716 0024A 03C2                      ADD     PC, A
   717 0024B 1C20                      RETL    0x20;0
   718 0024C 1C22                      RETL    0x22;1
   719 0024D 1C24                      RETL    0x24;2
   720 0024E 1C26                      RETL    0x26;3
   721 0024F 1C28                      RETL    0x28;4
   722 00250 1C2A                      RETL    0x2A;5
   723 00251 1C2C                      RETL    0x2C;6
   724 00252 1C2E                      RETL    0x2E;7
   725 00253 1C00                      RETL    0x00;8
   726                     ;-------------------------------------------------------------------
   727 00254               ReleaseOldKeyVa:
   728 00254 0044                      MOV     R4, A
   729 00255 1E91                      BANK    1
   730 00256 0400                      MOV     A, R0
   731 00257 1E90                      BANK    0
   732 00258 0070                      MOV     BUFFER, A
   733 00259 0544                      INC     R4
   734 0025A 1E91                      BANK    1
   735 0025B 0400                      MOV     A, R0
   736 0025C 1E90                      BANK    0
   737 0025D 0071                      MOV     BUFFER+1, A
   738 0025E 0012                      RET
   739                     ;-------------------------------------------------------------------
   740 0025F               StoreRLKeyVa:
   741 0025F 0044                      MOV     R4, A
   742 00260 1E92                      BANK    2
   743 00261 0410                      MOV     A, TPdataL
   744 00262 0040                      MOV     R0, A
   745 00263 0544                      INC     R4
   746 00264 0411                      MOV     A, TPdataH
   747 00265 0040                      MOV     R0, A
   748 00266 1E90                      BANK    0
   749 00267 0012                      RET
   750                     ;-------------------------------------------------------------------
   751                     ; 将bank2 0x20~0x2F(适时值)寄存区值给bank1 0x20~0x2F(参考值)
   752 00268               SwapKeyValue:
   753 00268 0044                      MOV     R4, A
   754 00269 1810                      MOV     A, @16
   755 0026A 0056                      MOV     TEMP, A
   756 0026B               SwapKeyValueLp:
   757 0026B 1E92                      BANK    2
   758 0026C 0400                      MOV     A, R0
   759 0026D 1E91                      BANK    1
   760 0026E 0040                      MOV     R0, A
   761 0026F 0544                      INC     R4
   762 00270 05D6                      DJZ     TEMP
   763 00271 166B                      JMP     SwapKeyValueLp
   764 00272 1E90                      BANK    0
   765 00273 0012                      RET
   766                     ;-------------------------------------------------------------------
   767                     ; 将bank2 0x20~0x2F(适时值)寄存区值给bank3 0x20~0x2F(study)
   768 00274               StyKeyValue:
   769 00274 1820                      MOV     A, @0x20
   770 00275 0044                      MOV     R4, A
   771 00276 1810                      MOV     A, @16
   772 00277 0056                      MOV     TEMP, A
   773 00278               StyKeyValueLp:
   774 00278 1E92                      BANK    2
   775 00279 0400                      MOV     A, R0
   776 0027A 1E93                      BANK    3
   777 0027B 0040                      MOV     R0, A
   778 0027C 0544                      INC     R4
   779 0027D 05D6                      DJZ     TEMP
   780 0027E 1678                      JMP     StyKeyValueLp
   781 0027F 1E90                      BANK    0
   782 00280 0012                      RET
   783                     ;-----------------------------------------------------------------
   784 00281               CLEAR_SRAM:
   785 00281 1810                      MOV     A, @0x10
   786 00282 0044                      MOV     R4, A
   787 00283 00C1                      CLR     R1
   788 00284               Clr_Ram_Lp:
   789 00284 00C0                      CLR     R0
   790 00285 0544                      INC     R4
   791 00286 183F                      MOV     A, @0x3f
   792 00287 0284                      AND     A, R4
   793 00288 0E83                      JBS     STATUS, 2
   794 00289 1684                      JMP     Clr_Ram_Lp
   795 0028A 0541                      INC     R1
   796 0028B 1820                      MOV     A, @0x20
   797 0028C 0244                      OR      R4, A
   798 0028D 1807                      MOV     A, @0x07
   799 0028E 0281                      AND     A, R1
   800 0028F 0E83                      JBS     STATUS, 2
   801 00290 1684                      JMP     Clr_Ram_Lp
   802 00291 0012                      RET
   803                     ;-----------------------------------------------------------------
   804 00292               DelaySomeT:
   805 00292 18FF                      MOV     A, @0XFF
   806 00293 005F                      MOV     0X1F, A
   807 00294               DELAY_LP:
   808 00294 05DF                      DJZ     0X1F
   809 00295 1694                      JMP     DELAY_LP
   810 00296 0012                      RET
   811                     ;-----------------------------------------------------------------
   812                     ; 取得TP值
   813 00297               TPVaRoutine:
   814 00297 1E90                      BANK    0
   815 00298 1804                      MOV     A, @times
   816 00299 0066                      MOV     TP_Counter, A
   817 0029A 00E7                      CLR     TPVaSum1
   818 0029B 00E8                      CLR     TPVaSum2
   819 0029C               TPVaRoutine_Loop:
   820 0029C 0000                      NOP
   821 0029D 0004                      WDTC
   822 0029E 1E94                      BANK    4
   823 0029F 0BC5                      BS      TPCR1, TPS
   824 002A0 0000                      NOP
   825 002A1 0004                      WDTC
   826 002A2 0DC5                      JBC     TPCR1, TPS
   827 002A3 16A1                      JMP     $-2
   828 002A4 0987                      BC      TPCR3, TPIF
   829 002A5 09C7                      BC      TPCR3, TPOIF
   830                     ;
   831 002A6               TPRoutineStoreVa:
   832                                 ; To store TP value
   833 002A6 0408                      MOV     A, TPBH
   834 002A7 0051                      MOV     TPdataH, A
   835 002A8 0409                      MOV     A, TPBL
   836 002A9 0050                      MOV     TPdataL, A
   837                   

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -