099ilerigerisayici.lst
来自「PIC CCS C Saple Codes」· LST 代码 · 共 228 行
LST
228 行
CCS PCM C Compiler, Version 4.023, 25097 04-Haz-07 13:45
Filename: F:\denemeler - CCS C\7SD\099ilerigerisayici\099ilerigerisayici.lst
ROM used: 146 words (14%)
Largest free fragment is 878
RAM used: 7 (10%) at main() level
8 (12%) worst case
Stack: 1 locations
*
0000: MOVLW 00
0001: MOVWF 0A
0002: GOTO 019
0003: NOP
.................... #include <16F84.h>
.................... //////// Standard Header file for the PIC16F84 device ////////////////
.................... #device PIC16F84
.................... #list
....................
.................... #fuses HS,NOWDT,NOPROTECT
.................... #use delay(clock=4000000)
0004: MOVLW 14
0005: MOVWF 04
0006: BCF 03.7
0007: MOVF 00,W
0008: BTFSC 03.2
0009: GOTO 018
000A: MOVLW 01
000B: MOVWF 0D
000C: CLRF 0C
000D: DECFSZ 0C,F
000E: GOTO 00D
000F: DECFSZ 0D,F
0010: GOTO 00C
0011: MOVLW 4A
0012: MOVWF 0C
0013: DECFSZ 0C,F
0014: GOTO 013
0015: GOTO 016
0016: DECFSZ 00,F
0017: GOTO 00A
0018: RETLW 00
....................
.................... main(void)
.................... {
0019: CLRF 04
001A: BCF 03.7
001B: MOVLW 1F
001C: ANDWF 03,F
.................... signed int i,j; // isaretli degiskenler
....................
.................... set_tris_b(0); // b portu cikis olsun
001D: MOVLW 00
001E: TRIS 6
.................... set_tris_a(0); // a portu cikis olsun
001F: TRIS 5
.................... output_b(0); //
0020: BSF 03.5
0021: CLRF 06
0022: BCF 03.5
0023: CLRF 06
.................... output_a(0);
0024: BSF 03.5
0025: CLRF 05
0026: BCF 03.5
0027: CLRF 05
.................... i=0;
0028: CLRF 12
.................... j=0;
0029: CLRF 13
....................
.................... for(;;) //sonsuz dongu
.................... {
.................... for(i=0; i<10; i++) // 0 - 90 arasi ileri sayim
002A: CLRF 12
002B: BTFSC 12.7
002C: GOTO 031
002D: MOVF 12,W
002E: SUBLW 09
002F: BTFSS 03.0
0030: GOTO 03B
.................... {
....................
.................... output_b(i);
0031: BSF 03.5
0032: CLRF 06
0033: BCF 03.5
0034: MOVF 12,W
0035: MOVWF 06
.................... Delay_Ms(100);
0036: MOVLW 64
0037: MOVWF 14
0038: CALL 004
.................... }
0039: INCF 12,F
003A: GOTO 02B
.................... j++;
003B: INCF 13,F
.................... output_a(j);
003C: BSF 03.5
003D: CLRF 05
003E: BCF 03.5
003F: MOVF 13,W
0040: MOVWF 05
....................
.................... if(j==9) // 90 - 99 ileri arasi sayim
0041: MOVF 13,W
0042: SUBLW 09
0043: BTFSS 03.2
0044: GOTO 08F
.................... {
.................... for(i=0; i<10; i++)
0045: CLRF 12
0046: BTFSC 12.7
0047: GOTO 04C
0048: MOVF 12,W
0049: SUBLW 09
004A: BTFSS 03.0
004B: GOTO 056
.................... {
....................
.................... output_b(i);
004C: BSF 03.5
004D: CLRF 06
004E: BCF 03.5
004F: MOVF 12,W
0050: MOVWF 06
.................... Delay_Ms(100);
0051: MOVLW 64
0052: MOVWF 14
0053: CALL 004
.................... }
0054: INCF 12,F
0055: GOTO 046
....................
.................... for(j=8; j>-1; j--) // 99 - 10 arasi geri sayim
0056: MOVLW 08
0057: MOVWF 13
0058: MOVF 13,W
0059: XORLW 80
005A: SUBLW 7F
005B: BTFSC 03.0
005C: GOTO 08C
.................... {
....................
.................... for(i=9; i>-1; i--)
005D: MOVLW 09
005E: MOVWF 12
005F: MOVF 12,W
0060: XORLW 80
0061: SUBLW 7F
0062: BTFSC 03.0
0063: GOTO 06E
.................... {
.................... output_b(i);
0064: BSF 03.5
0065: CLRF 06
0066: BCF 03.5
0067: MOVF 12,W
0068: MOVWF 06
.................... Delay_Ms(100);
0069: MOVLW 64
006A: MOVWF 14
006B: CALL 004
.................... }
006C: DECF 12,F
006D: GOTO 05F
....................
.................... output_a(j);
006E: BSF 03.5
006F: CLRF 05
0070: BCF 03.5
0071: MOVF 13,W
0072: MOVWF 05
....................
.................... if(j==0) // 9 - 0 arasi geri sayim
0073: MOVF 13,F
0074: BTFSS 03.2
0075: GOTO 08A
.................... {
.................... for(i=9; i>-1; i--)
0076: MOVLW 09
0077: MOVWF 12
0078: MOVF 12,W
0079: XORLW 80
007A: SUBLW 7F
007B: BTFSC 03.0
007C: GOTO 087
.................... {
.................... output_b(i);
007D: BSF 03.5
007E: CLRF 06
007F: BCF 03.5
0080: MOVF 12,W
0081: MOVWF 06
.................... Delay_Ms(100);
0082: MOVLW 64
0083: MOVWF 14
0084: CALL 004
.................... }
0085: DECF 12,F
0086: GOTO 078
.................... i=0;
0087: CLRF 12
.................... j=-1;
0088: MOVLW FF
0089: MOVWF 13
.................... }
.................... }
008A: DECF 13,F
008B: GOTO 058
.................... i=-5;
008C: MOVLW FB
008D: MOVWF 12
.................... j=0;
008E: CLRF 13
.................... }
.................... i=0;
008F: CLRF 12
.................... }
0090: GOTO 02A
.................... }
0091: SLEEP
Configuration Fuses:
Word 1: 3FF2 HS NOWDT PUT NOPROTECT
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?