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

📄 mtouch16pic16f883.lst

📁 用pic16f883做的16个键的触摸按键(MTOUCH)实现电容式触摸按键的代码。有mtouch16.c构成
💻 LST
📖 第 1 页 / 共 5 页
字号:
   493                           	line	96
   494                           ;mtouch16.c: 96: TRISB2=0;
   495  05EB  1003               	clrc
   496  05EC  1803               	btfsc	status,0
   497  05ED  2DEF               	goto	u2971
   498  05EE  2DF1               	goto	u2970
   499                           	
   500                           	
   501  05EF                     u2971:
   502  05EF  1506               	bsf	(1074/8),(1074)&7
   503  05F0  2DF2               	goto	u2984
   504  05F1                     u2970:
   505  05F1  1106               	bcf	(1074/8),(1074)&7
   506  05F2                     u2984:
   507                           
   508                           	line	97
   509                           ;mtouch16.c: 97: TRISB3=0;
   510  05F2  1003               	clrc
   511  05F3  1803               	btfsc	status,0
   512  05F4  2DF6               	goto	u2991
   513  05F5  2DF8               	goto	u2990
   514+                          	
   515+                          	
   516+ 05F6                     u2991:
   517  05F6  1586               	bsf	(1075/8),(1075)&7
   518  05F7  2DF9               	goto	u3004
   519  05F8                     u2990:
   520  05F8  1186               	bcf	(1075/8),(1075)&7
   521  05F9                     u3004:
   522                           
   523                           	line	99
   524                           ;mtouch16.c: 99: Abit_capinit();
   525  05F9  118A  2454  118A   	fcall	_Abit_capinit
   526                           	line	100
   527                           ;mtouch16.c: 100: GIE=1;
   528  05FC  1403               	setc
   529  05FD  1803               	btfsc	status,0
   530  05FE  2E02               	goto	u3011
   531  05FF  2E04               	goto	u3010
   532  0600  1283               	bcf	status, 5	;RP0=0, select bank0
   533  0601  1303               	bcf	status, 6	;RP2=0, select bank0
   534                           	
   535                           	
   536  0602                     u3011:
   537  0602  178B               	bsf	(95/8),(95)&7
   538  0603  2E05               	goto	u3024
   539  0604                     u3010:
   540  0604  138B               	bcf	(95/8),(95)&7
   541  0605                     u3024:
   542                           
   543                           	line	102
   544                           ;mtouch16.c: 102: }
   545  0605                     l6:	
   546  0605  0008               	return
   547                           GLOBAL __end_of_Abit_init
   548  0606                     	__end_of_Abit_init:
   549                           	FNSIZE	_Abit_init,0,0
   550                           ; =============== function _Abit_init ends ====
                                 ========
   551                           
   552                           	signat	_Abit_init,88
   553                           	global	_Abit_capinit
   554                           	global	??_Abit_capinit
   555                           	global	?_Abit_capinit
   556                           
   557                           ; *************** function _Abit_capinit ******
                                 ***********
   558                           ; Defined at:
   559                           ;		line 113 in file "F:\pro\mtouch16\mtouch16.c
                                 "
   560                           ; Parameters:
   561                           ;		None
   562                           ; Auto variables:
   563                           ;		None
   564                           ; Return value:
   565                           ;		type: void 
   566                           ;		size: 0
   567                           ; Registers used:
   568                           ;		wreg, fsr, status,2, status,0, pclath, cstac
                                 k
   569                           ; Tracked objects:
   570                           ;		On entry : 0/0
   571                           ;		On exit  : 0/0
   572                           ;		Unchanged: 0/0
   573                           ; Data sizes:
   574                           ;		Autos:    0
   575                           ;		Params:   0
   576                           ;		Temp:     1
   577                           ;		Total:    1
   578                           ; This function calls:
   579                           ;		_Abit_restart_timer
   580                           ; This function is called by:
   581                           ;		_Abit_init
   582                           ; This function uses a non-reentrant model
   583                           ; 
   584                           	psect	text40,local,class=CODE,delta=2
   585                           	file	"F:\pro\mtouch16\mtouch16.c"
   586                           	line	113
   587                           ;mtouch16.c: 112: void Abit_capinit(void)
   588                           ;mtouch16.c: 113: {
   589                           	
   590  0454                     _Abit_capinit:	
   591                           ; Regs used in _Abit_capinit: [wreg+fsr+status,
                                 2+status,0+pclath+cstack]
   592                           	line	114
   593                           ;mtouch16.c: 114: for(INDEX=0;INDEX< 16;INDEX++
                                 )
   594  0454  1003               	clrc
   595  0455  1283               	bcf	status, 5	;RP0=0, select bank0
   596  0456  1303               	bcf	status, 6	;RP2=0, select bank0
   597                           	
   598  0457  3000               	movlw	0
   599  0458  1803               	btfsc	status,0
   600  0459  3001               	movlw	1
   601  045A  00F8               	movwf	(120)
   602  045B  0100               	clrw
   603  045C  3810               	iorlw	(010h)
   604  045D  1283               	bcf	status, 5	;RP0=0, select bank0
   605  045E  1303               	bcf	status, 6	;RP2=0, select bank0
   606                           	
   607  045F  0278               	subwf	(120),w
   608  0460  1C03               	skipc
   609  0461  2C63               	goto	u2741
   610  0462  2C64               	goto	u2740
   611  0463                     u2741:
   612  0463  2C65               	goto	l9
   613  0464                     u2740:
   614  0464  2C98               	goto	l10
   615                           	line	115
   616                           	
   617  0465                     l9:	
   618                           	line	116
   619                           ;mtouch16.c: 115: {
   620                           ;mtouch16.c: 116: RAW[INDEX]=0;
   621  0465  1283               	bcf	status, 5	;RP0=0, select bank0
   622  0466  1303               	bcf	status, 6	;RP2=0, select bank0
   623                           	
   624  0467  0878               	movf	(120),w
   625                           	
   626  0468  00DF               	movwf	(??_Abit_capinit+0+0)
   627  0469  075F               	addwf	(??_Abit_capinit+0+0),w
   628  046A  3EB0               	addlw	(176)
   629  046B  0084               	movwf	fsr
   630  046C  3000               	movlw	low(0)
   631  046D  1383               	bcf	status, 7	;select IRP bank0
   632  046E  0080               	movwf	indf
   633  046F  0A84               	incf	fsr,f
   634  0470  3000               	movlw	high(0)
   635  0471  0080               	movwf	indf
   636                           	line	117
   637                           ;mtouch16.c: 117: AVERAGE[INDEX]=0;
   638                           	
   639  0472  0878               	movf	(120),w
   640                           	
   641  0473  00DF               	movwf	(??_Abit_capinit+0+0)
   642  0474  075F               	addwf	(??_Abit_capinit+0+0),w
   643  0475  3ED0               	addlw	(208)
   644  0476  0084               	movwf	fsr
   645  0477  3000               	movlw	low(0)
   646  0478  0080               	movwf	indf
   647  0479  0A84               	incf	fsr,f
   648  047A  3000               	movlw	high(0)
   649  047B  0080               	movwf	indf
   650                           	line	118
   651                           ;mtouch16.c: 118: TRIP[INDEX]=145;
   652                           	
   653  047C  0878               	movf	(120),w
   654                           	
   655  047D  00DF               	movwf	(??_Abit_capinit+0+0)
   656  047E  075F               	addwf	(??_Abit_capinit+0+0),w
   657  047F  3E50               	addlw	(336)
   658  0480  0084               	movwf	fsr
   659  0481  3091               	movlw	low(091h)
   660  0482  1783               	bsf	status, 7	;select IRP bank2
   661  0483  0080               	movwf	indf
   662  0484  0A84               	incf	fsr,f
   663  0485  3000               	movlw	high(091h)
   664  0486  1783               	bsf	status, 7	;select IRP bank2
   665  0487  0080               	movwf	indf
   666                           	line	114
   667  0488  0100               	clrw
   668  0489  3801               	iorlw	(01h)
   669  048A  1283               	bcf	status, 5	;RP0=0, select bank0
   670  048B  1303               	bcf	status, 6	;RP2=0, select bank0
   671  048C  00DF               	movwf	(??_Abit_capinit+0+0)
   672                           	
   673  048D  085F               	movf	(??_Abit_capinit+0+0),w
   674  048E  07F8               	addwf	(120),f
   675  048F  0100               	clrw
   676  0490  3810               	iorlw	(010h)
   677  0491  1283               	bcf	status, 5	;RP0=0, select bank0
   678  0492  1303               	bcf	status, 6	;RP2=0, select bank0
   679                           	
   680  0493  0278               	subwf	(120),w
   681  0494  1C03               	skipc
   682  0495  2C97               	goto	u2751
   683  0496  2C98               	goto	u2750
   684  0497                     u2751:
   685  0497  2C65               	goto	l9
   686  0498                     u2750:
   687                           	
   688  0498                     l10:	
   689                           	line	120
   690                           ;mtouch16.c: 119: }
   691                           ;mtouch16.c: 120: FIRST=160;
   692  0498  0100               	clrw
   693  0499  38A0               	iorlw	(0A0h)
   694  049A  1283               	bcf	status, 5	;RP0=0, select bank0
   695  049B  1303               	bcf	status, 6	;RP2=0, select bank0
   696  049C  00DF               	movwf	(??_Abit_capinit+0+0)
   697                           	
   698  049D  085F               	movf	(??_Abit_capinit+0+0),w
   699  049E  00F7               	movwf	(119)
   700                           	line	121
   701                           ;mtouch16.c: 121: OSCCON=0X7F;
   702  049F  0100               	clrw
   703  04A0  387F               	iorlw	(07Fh)
   704  04A1  00DF               	movwf	(??_Abit_capinit+0+0)
   705  04A2  1683               	bsf	status, 5	;RP0=1, select bank1
   706  04A3  1303               	bcf	status, 6	;RP2=0, select bank1
   707                           	
   708  04A4  1283               	bcf	status, 5	;RP0=0, select bank0
   709  04A5  1303               	bcf	status, 6	;RP2=0, select bank0
   710  04A6  085F               	movf	(??_Abit_capinit+0+0),w
   711  04A7  1683               	bsf	status, 5	;RP0=1, select bank1
   712  04A8  1303               	bcf	status, 6	;RP2=0, select bank1
   713  04A9  008F               	movwf	(143)^080h	;volatile
   714                           	line	122
   715                           ;mtouch16.c: 122: INDEX=0;
   716  04AA  1003               	clrc
   717  04AB  1283               	bcf	status, 5	;RP0=0, select bank0
   718  04AC  1303               	bcf	status, 6	;RP2=0, select bank0
   719                           	
   720  04AD  3000               	movlw	0
   721  04AE  1803               	btfsc	status,0
   722  04AF  3001               	movlw	1
   723  04B0  00F8               	movwf	(120)
   724                           	line	123
   725                           ;mtouch16.c: 123: CM1CON0=COMP1[0];
   726  04B1  3001               	movlw	(_COMP1-stringbase)
   727  04B2  118A  2109  118A   	fcall	stringdir
   728  04B5  1283               	bcf	status, 5	;RP0=0, select bank0
   729  04B6  1303               	bcf	status, 6	;RP2=0, select bank0
   730  04B7  00DF               	movwf	(??_Abit_capinit+0+0)
   731  04B8  1283               	bcf	status, 5	;RP0=0, select bank2
   732  04B9  1703               	bsf	status, 6	;RP2=1, select bank2
   733                           	
   734  04BA  1283               	bcf	status, 5	;RP0=0, select bank0
   735  04BB  1303               	bcf	status, 6	;RP2=0, select bank0
   736  04BC  085F               	movf	(??_Abit_capinit+0+0),w
   737  04BD  1283               	bcf	status, 5	;RP0=0, select bank2
   738  04BE  1703               	bsf	status, 6	;RP2=1, select bank2
   739  04BF  0087               	movwf	(263)^0100h	;volatile
   740                           	line	124
   741                           ;mtouch16.c: 124: CM2CON0=COMP2[0];
   742  04C0  3003               	movlw	(_COMP2-stringbase)

⌨️ 快捷键说明

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