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

📄 main.lst

📁 一個使用pic16f877驅動2.4GRF模塊的範例
💻 LST
📖 第 1 页 / 共 5 页
字号:
   458                           ;TRW24G.c: 119: unsigned char i;
   459  063C  01EF               	clrf	?a_Write_TRW_24G_BYTE+1
   460  063D                     l66
   461                           ;TRW24G.c: 121: {
   462                           ;TRW24G.c: 122: RC3 = 0;
   463  063D  1187               	bcf	7,3
   464                           ;TRW24G.c: 123: if(x&0x80)
   465  063E  1FEE               	btfss	?a_Write_TRW_24G_BYTE,7
   466  063F  2E42               	goto	l69
   467                           ;TRW24G.c: 124: RC4= 1;
   468  0640  1607               	bsf	7,4
   469                           ;TRW24G.c: 125: else
   470  0641  2E43               	goto	l70
   471  0642                     l69
   472                           ;TRW24G.c: 126: RC4= 0;
   473  0642  1207               	bcf	7,4
   474  0643                     l70
   475                           ;TRW24G.c: 127: x<<=1;
   476  0643  1003               	bcf	3,0
   477  0644  0DEE               	rlf	?a_Write_TRW_24G_BYTE
   478                           ;TRW24G.c: 128: RC3 = 1;
   479  0645  1587               	bsf	7,3
   480                           ;TRW24G.c: 129: RC3 = 1;
   481  0646  1587               	bsf	7,3
   482                           ;TRW24G.c: 130: RC3 = 0;
   483  0647  1187               	bcf	7,3
   484                           ;TRW24G.c: 131: }
   485  0648  0AEF               	incf	?a_Write_TRW_24G_BYTE+1
   486  0649  3008               	movlw	8
   487  064A  026F               	subwf	?a_Write_TRW_24G_BYTE+1,w
   488  064B  1803               	btfsc	3,0
   489  064C  0008               	return
   490  064D  2E3D               	goto	l66
   491                           ;TRW24G.c: 156: void RF_24G_SetTxRxByte(unsigne
      +                          d char channel)
   492                           ;TRW24G.c: 157: {
   493  064E                     _RF_24G_SetTxRxByte
   494                           ;	_channel assigned to ?a_RF_24G_SetTxRxByte+0
   495  0000                     _RF_24G_SetTxRxByte$channel	set	?a_RF_24G_SetTx
      +                          RxByte
   496                           ;_channel stored from w
   497  064E  0183               	clrf	3	;select bank 0
   498  064F  00E8               	movwf	?a_RF_24G_SetTxRxByte
   499                           ;TRW24G.c: 158: TRISC=0xA0;
   500  0650  30A0               	movlw	-96
   501  0651  1683               	bsf	3,5
   502  0652  0087               	movwf	7	;volatile
   503                           ;TRW24G.c: 159: RC1 = 0;
   504  0653  1283               	bcf	3,5
   505  0654  1087               	bcf	7,1
   506                           ;TRW24G.c: 160: RC0 = 1;
   507  0655  1407               	bsf	7,0
   508                           ;TRW24G.c: 161: { delayus_variable=(unsigned ch
      +                          ar)(10/2); asm("nop"); } asm("decfsz _delayus_v
      +                          ariable,f"); asm("goto $ - 2");;
   509  0656  3005               	movlw	5
   510  0657  00A5               	movwf	_delayus_variable
   511  0658  0000               	nop	;#
   512  0659  0BA5               	decfsz	_delayus_variable	;#
   513  065A  2D69               	goto	($+-2)	;#
   514                           ;TRW24G.c: 162: Write_TRW_24G_BYTE(channel);
   515  065B  0868               	movf	?a_RF_24G_SetTxRxByte,w
   516  065C  263A               	fcall	_Write_TRW_24G_BYTE
   517                           ;TRW24G.c: 163: { delayus_variable=(unsigned ch
      +                          ar)(10/2); asm("nop"); } asm("decfsz _delayus_v
      +                          ariable,f"); asm("goto $ - 2");;
   518  065D  3005               	movlw	5
   519  065E  00A5               	movwf	_delayus_variable
   520  065F  0000               	nop	;#
   521  0660  0BA5               	decfsz	_delayus_variable	;#
   522  0661  2D69               	goto	($+-2)	;#
   523                           ;TRW24G.c: 165: RC0 = 0;
   524  0662  1007               	bcf	7,0
   525                           ;TRW24G.c: 166: }
   526  0663  0008               	return
   527  0664                     _Send_TRW_24G
   528                           ;	_NumOfByte assigned to ?a_Send_TRW_24G+0
   529  0000                     _Send_TRW_24G$NumOfByte	set	?a_Send_TRW_24G
   530                           ;	_i assigned to ?a_Send_TRW_24G+1
   531  0000                     _Send_TRW_24G$i	set	?a_Send_TRW_24G+1
   532                           ;_NumOfByte stored from w
   533  0664  0183               	clrf	3	;select bank 0
   534  0665  00EC               	movwf	?a_Send_TRW_24G
   535                           ;TRW24G.c: 197: unsigned char i;
   536  0666  30A0               	movlw	-96
   537  0667  1683               	bsf	3,5
   538  0668  0087               	movwf	7	;volatile
   539                           ;TRW24G.c: 202: RC0 = 0;
   540  0669  1283               	bcf	3,5
   541  066A  1007               	bcf	7,0
   542                           ;TRW24G.c: 203: RC1 = 1;
   543  066B  1487               	bsf	7,1
   544                           ;TRW24G.c: 204: { delayus_variable=(unsigned ch
      +                          ar)(10/2); asm("nop"); } asm("decfsz _delayus_v
      +                          ariable,f"); asm("goto $ - 2");;
   545  066C  3005               	movlw	5
   546  066D  00A5               	movwf	_delayus_variable
   547  066E  0000               	nop	;#
   548  066F  0BA5               	decfsz	_delayus_variable	;#
   549  0670  2D69               	goto	($+-2)	;#
   550                           ;TRW24G.c: 207: Write_TRW_24G_BYTE(0xAA);
   551  0671  30AA               	movlw	-86
   552  0672  263A               	fcall	_Write_TRW_24G_BYTE
   553                           ;TRW24G.c: 208: Write_TRW_24G_BYTE(0x55);
   554  0673  3055               	movlw	85
   555  0674  263A               	fcall	_Write_TRW_24G_BYTE
   556                           ;TRW24G.c: 209: Write_TRW_24G_BYTE(0xAA);
   557  0675  30AA               	movlw	-86
   558  0676  263A               	fcall	_Write_TRW_24G_BYTE
   559                           ;TRW24G.c: 210: Write_TRW_24G_BYTE(0x55);
   560  0677  3055               	movlw	85
   561  0678  263A               	fcall	_Write_TRW_24G_BYTE
   562                           ;TRW24G.c: 211: Write_TRW_24G_BYTE(0xAA);
   563  0679  30AA               	movlw	-86
   564  067A  263A               	fcall	_Write_TRW_24G_BYTE
   565                           ;TRW24G.c: 212: for(i=0;i<NumOfByte;i++)
   566  067B  01ED               	clrf	?a_Send_TRW_24G+1
   567  067C  2E8F               	goto	l85
   568  067D                     l82
   569                           ;TRW24G.c: 213: {
   570                           ;TRW24G.c: 214: Write_TRW_24G_BYTE(*p++);
   571  067D  086B               	movf	?_Send_TRW_24G+1,w
   572  067E  00F8               	movwf	code_ptr+1
   573  067F  086A               	movf	?_Send_TRW_24G,w
   574  0680  0AEA               	incf	?_Send_TRW_24G
   575  0681  1903               	btfsc	3,2
   576  0682  0AEB               	incf	?_Send_TRW_24G+1
   577  0683  120A  118A  20E1   	fcall	string_table
      +       120A  118A         
   578  0688  263A               	fcall	_Write_TRW_24G_BYTE
   579                           ;TRW24G.c: 215: { delayus_variable=(unsigned ch
      +                          ar)(5/2); asm("nop"); } asm("decfsz _delayus_va
      +                          riable,f"); asm("goto $ - 2");;
   580  0689  3002               	movlw	2
   581  068A  00A5               	movwf	_delayus_variable
   582  068B  0000               	nop	;#
   583  068C  0BA5               	decfsz	_delayus_variable	;#
   584  068D  2D69               	goto	($+-2)	;#
   585                           ;TRW24G.c: 216: }
   586  068E  0AED               	incf	?a_Send_TRW_24G+1
   587  068F                     l85
   588  068F  086C               	movf	?a_Send_TRW_24G,w
   589  0690  026D               	subwf	?a_Send_TRW_24G+1,w
   590  0691  1C03               	btfss	3,0
   591  0692  2E7D               	goto	l82
   592                           ;TRW24G.c: 217: RC1 = 0;
   593  0693  1087               	bcf	7,1
   594                           ;TRW24G.c: 218: DelayMs(10);
   595  0694  300A               	movlw	10
   596  0695  2E96               	ljmp	_DelayMs
   597                           ;delay.c: 36: void DelayMs(unsigned char cnt)
   598                           ;delay.c: 37: {
   599  0696                     _DelayMs
   600                           ;	_cnt assigned to ?a_DelayMs+0
   601  0000                     _DelayMs$cnt	set	?a_DelayMs
   602                           ;	_i assigned to ?a_DelayMs+1
   603  0000                     _DelayMs$i	set	?a_DelayMs+1
   604                           ;_cnt stored from w
   605  0696  0183               	clrf	3	;select bank 0
   606  0697  00EE               	movwf	?a_DelayMs
   607  0698                     l43
   608                           ;delay.c: 38: unsigned char i;
   609                           ;delay.c: 40: i = 4;
   610  0698  3004               	movlw	4
   611  0699  00EF               	movwf	?a_DelayMs+1
   612  069A                     l46
   613                           ;delay.c: 41: do {
   614                           ;delay.c: 42: { delayus_variable=(unsigned char
      +                          )(250/2); asm("nop"); } asm("decfsz _delayus_va
      +                          riable,f"); asm("goto $ - 2");;
   615  069A  307D               	movlw	125
   616  069B  00A5               	movwf	_delayus_variable
   617  069C  0000               	nop	;#
   618  069D  0BA5               	decfsz	_delayus_variable	;#
   619  069E  2D69               	goto	($+-2)	;#
   620                           ;delay.c: 43: asm("clrwdt");
   621  069F  0064               	clrwdt	;#
   622                           ;delay.c: 44: } while(--i);
   623  06A0  0BEF               	decfsz	?a_DelayMs+1
   624  06A1  2E9A               	goto	l46
   625                           ;delay.c: 45: } while(--cnt);
   626  06A2  0BEE               	decfsz	?a_DelayMs
   627  06A3  2E98               	goto	l43
   628  06A4  0008               	return
   629                           ;TRW24G.c: 36: void Write_TRW_24G_BYTE(unsigned
      +                           char x);
   630                           ;TRW24G.c: 37: char Read_TRW_24G_BYTE(void);
   631                           ;TRW24G.c: 38: void TRW24G_init(void);
   632                           ;TRW24G.c: 39: char Read_TRW_24G_BYTE(void);
   633                           ;TRW24G.c: 43: void TRW24G_init(void)
   634                           ;TRW24G.c: 44: {
   635  06A5                     _TRW24G_init
   636                           ;	_i assigned to ?a_TRW24G_init+0
   637  0000                     _TRW24G_init$i	set	?a_TRW24G_init
   638                           ;	_p assigned to ?a_TRW24G_init+1
   639  0000                     _TRW24G_init$p	set	?a_TRW24G_init+1
   640                           ;TRW24G.c: 45: const unsigned char *p;
   641  06A5  3001               	movlw	low _TRW_24G_Table
   642  06A6  0183               	clrf	3	;select bank 0
   643  06A7  00EB               	movwf	?a_TRW24G_init+1
   644  06A8  3001               	movlw	high _TRW_24G_Table
   645  06A9  00EC               	movwf	?a_TRW24G_init+2
   646                           ;TRW24G.c: 48: TRISC=0xA0;
   647  06AA  30A0               	movlw	-96
   648  06AB  1683               	bsf	3,5
   649  06AC  0087               	movwf	7	;volatile
   650                           ;TRW24G.c: 49: RC1 = 0;
   651  06AD  1283               	bcf	3,5
   652  06AE  1087               	bcf	7,1
   653                           ;TRW24G.c: 50: RC0 = 0;
   654  06AF  1007               	bcf	7,0
   655                           ;TRW24G.c: 51: RC3 = 0;
   656  06B0  1187               	bcf	7,3
   657                           ;TRW24G.c: 52: RC4 = 0;
   658  06B1  1207               	bcf	7,4
   659                           ;TRW24G.c: 53: DelayMs(3);
   660  06B2  3003               	movlw	3
   661  06B3  2696               	fcall	_DelayMs
   662                           ;TRW24G.c: 54: RC0 = 1;
   663  06B4  1407               	bsf	7,0
   664                           ;TRW24G.c: 55: { delayus_variable=(unsigned cha
      +                          r)(15/2); asm("nop"); } asm("decfsz _delayus_va
      +                          riable,f"); asm("goto $ - 2");;
   665  06B5  3007               	movlw	7
   666  06B6  00A5               	movwf	_delayus_variable
   667  06B7  0000               	nop	;#
   668  06B8  0BA5               	decfsz	_delayus_variable	;#
   669  06B9  2D69               	goto	($+-2)	;#
   670                           ;TRW24G.c: 56: for(i=0;i<18;i++)
   671  06BA  01EA               	clrf	?a_TRW24G_init
   672  06BB                     l55
   673                           ;TRW24G.c: 57: {
   674                           ;TRW24G.c: 58: Write_TRW_24G_BYTE(*p++);
   675  06BB  086C               	movf	?a_TRW24G_init+2,w
   676  06BC  00F8               	movwf	code_ptr+1
   677  06BD  086B               	movf	?a_TRW24G_init+1,w
   678  06BE  0AEB               	incf	?a_TRW24G_init+1
   679  06BF  1903               	btfsc	3,2
   680  06C0  0AEC               	incf	?a_TRW24G_init+2
   681  06C1  120A  118A  20E1   	fcall	string_table
      +       120A  118A         
   682  06C6  263A               	fcall	_Write_TRW_24G_BYTE
   683                           ;TRW24G.c: 59: { delayus_variable=(unsigned cha
      +                          r)(10/2); asm("nop"); } asm("decfsz _delayus_va
      +                          riable,f"); asm("goto $ - 2");;

⌨️ 快捷键说明

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