CCS PCM C Compiler, Version 4.106, 47914 24-12-15 11:07Filename: C:\Users\Honza\Documents\PIC\ledbar\main.lstROM used: 243 words (3%)Largest free fragment is 2048RAM used: 10 (3%) at main() level10 (3%) worst caseStack: 1 locations*0000: MOVLW 000001: MOVWF 0A0002: GOTO 0180003: NOP.................... #include "main.h".................... #include <16F887.h>.................... //////// Standard Header file for the PIC16F887 device ////////////////.................... #device PIC16F887.................... #list........................................ #device adc=8........................................ #FUSES NOWDT //No Watch Dog Timer.................... #FUSES HS //High speed Osc (> 4mhz for PCM/PCH) (>10mhz for PCD).................... #FUSES NOPUT //No Power Up Timer.................... #FUSES MCLR //Master Clear pin enabled.................... #FUSES NOPROTECT //Code not protected from reading.................... #FUSES NOCPD //No EE protection.................... #FUSES NOBROWNOUT //No brownout reset.................... #FUSES IESO //Internal External Switch Over mode enabled.................... #FUSES FCMEN //Fail-safe clock monitor enabled.................... #FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O.................... #FUSES NODEBUG //No Debug mode for ICD.................... #FUSES NOWRT //Program memory not write protected.................... #FUSES BORV40 //Brownout reset at 4.0V........................................ #use delay(clock=20000000)*0004: MOVLW 230005: MOVWF 040006: BCF 03.70007: MOVF 00,W0008: BTFSC 03.20009: GOTO 017000A: MOVLW 06000B: MOVWF 78000C: CLRF 77000D: DECFSZ 77,F000E: GOTO 00D000F: DECFSZ 78,F0010: GOTO 00C0011: MOVLW 7B0012: MOVWF 770013: DECFSZ 77,F0014: GOTO 0130015: DECFSZ 00,F0016: GOTO 00A0017: RETURN.................................................................................................... #define MAX 1024........................................ // Vystup PWM je na nozickach C1 a C2........................................ void main().................... {0018: CLRF 040019: BCF 03.7001A: MOVLW 1F001B: ANDWF 03,F001C: BSF 03.5001D: BSF 03.6001E: MOVF 09,W001F: ANDLW C00020: MOVWF 090021: BCF 03.60022: BCF 1F.40023: BCF 1F.50024: MOVLW 000025: BSF 03.60026: MOVWF 080027: BCF 03.50028: CLRF 070029: CLRF 08002A: CLRF 09.................... int16 pwm;........................................ setup_adc_ports(NO_ANALOGS);*002E: BSF 03.5002F: BSF 03.60030: MOVF 09,W0031: ANDLW C00032: MOVWF 090033: BCF 03.60034: BCF 1F.40035: BCF 1F.50036: MOVLW 000037: BSF 03.60038: MOVWF 08.................... setup_adc(ADC_OFF);0039: BCF 03.5003A: BCF 03.6003B: BCF 1F.0.................... setup_spi(SPI_SS_DISABLED);003C: BCF 14.5003D: BCF 20.5003E: MOVF 20,W003F: BSF 03.50040: MOVWF 070041: BCF 03.50042: BSF 20.40043: MOVF 20,W0044: BSF 03.50045: MOVWF 070046: BCF 03.50047: BCF 20.30048: MOVF 20,W0049: BSF 03.5004A: MOVWF 07004B: MOVLW 01004C: BCF 03.5004D: MOVWF 14004E: MOVLW 00004F: BSF 03.50050: MOVWF 14.................... setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);0051: MOVF 01,W0052: ANDLW C70053: IORLW 080054: MOVWF 01.................... setup_timer_1(T1_DISABLED);0055: BCF 03.50056: CLRF 10.................... setup_timer_2(T2_DIV_BY_1,255,1);0057: MOVLW 000058: MOVWF 780059: IORLW 04005A: MOVWF 12005B: MOVLW FF005C: BSF 03.5005D: MOVWF 12.................... setup_ccp1(CCP_PWM);005E: BCF 03.5005F: BCF 20.20060: MOVF 20,W0061: BSF 03.50062: MOVWF 070063: BCF 03.50064: BCF 07.20065: BSF 03.50066: BCF 09.60067: MOVLW 0C0068: BCF 03.50069: MOVWF 17006A: BSF 03.5006B: CLRF 1B006C: CLRF 1C006D: MOVLW 01006E: MOVWF 1D.................... setup_ccp2(CCP_PWM);006F: BCF 03.50070: BCF 20.10071: MOVF 20,W0072: BSF 03.50073: MOVWF 070074: BCF 03.50075: BCF 07.10076: MOVLW 0C0077: MOVWF 1D0078: MOVLW 010079: MOVWF 00.................... set_pwm1_duty(0);007A: CLRF 15.................... set_pwm2_duty(0);007B: CLRF 1B........................................ port_b_pullups(TRUE);007C: BSF 03.5007D: MOVWF 15007E: BCF 01.7.................... pwm=0;007F: BCF 03.50080: CLRF 220081: CLRF 21............................................................ // Postupne zhasina a rozsveci stridave dve LED.................... while(TRUE).................... {.................... while(pwm<MAX).................... {0082: MOVF 22,W0083: SUBLW 030084: BTFSS 03.00085: GOTO 0B8.................... pwm++;0086: INCF 21,F0087: BTFSC 03.20088: INCF 22,F.................... delay_ms(5);0089: MOVLW 05008A: MOVWF 23008B: CALL 004.................... set_pwm1_duty(pwm);008C: MOVF 22,W008D: MOVWF 79008E: MOVF 21,W008F: MOVWF 780090: RRF 79,F0091: RRF 78,F0092: RRF 79,F0093: RRF 78,F0094: RRF 79,F0095: MOVF 78,W0096: MOVWF 150097: RRF 79,F0098: RRF 79,W0099: ANDLW 30009A: MOVWF 77009B: MOVF 17,W009C: ANDLW CF009D: IORWF 77,W009E: MOVWF 17.................... set_pwm2_duty(MAX-pwm);009F: MOVF 21,W00A0: SUBLW 0000A1: MOVWF 2300A2: MOVLW 0400A3: MOVWF 2400A4: MOVF 22,W00A5: BTFSS 03.000A6: INCFSZ 22,W00A7: SUBWF 24,F00A8: RRF 24,F00A9: RRF 23,F00AA: RRF 24,F00AB: RRF 23,F00AC: RRF 24,F00AD: MOVF 23,W00AE: MOVWF 1B00AF: RRF 24,F00B0: RRF 24,W00B1: ANDLW 3000B2: MOVWF 7700B3: MOVF 1D,W00B4: ANDLW CF00B5: IORWF 77,W00B6: MOVWF 1D.................... };00B7: GOTO 082.................... while(pwm>0).................... {00B8: MOVF 21,F00B9: BTFSS 03.200BA: GOTO 0BE00BB: MOVF 22,F00BC: BTFSC 03.200BD: GOTO 0F1.................... pwm--;00BE: MOVF 21,W00BF: BTFSC 03.200C0: DECF 22,F00C1: DECF 21,F.................... delay_ms(5);00C2: MOVLW 0500C3: MOVWF 2300C4: CALL 004.................... set_pwm1_duty(pwm);00C5: MOVF 22,W00C6: MOVWF 7900C7: MOVF 21,W00C8: MOVWF 7800C9: RRF 79,F00CA: RRF 78,F00CB: RRF 79,F00CC: RRF 78,F00CD: RRF 79,F00CE: MOVF 78,W00CF: MOVWF 1500D0: RRF 79,F00D1: RRF 79,W00D2: ANDLW 3000D3: MOVWF 7700D4: MOVF 17,W00D5: ANDLW CF00D6: IORWF 77,W00D7: MOVWF 17.................... set_pwm2_duty(MAX-pwm);00D8: MOVF 21,W00D9: SUBLW 0000DA: MOVWF 2300DB: MOVLW 0400DC: MOVWF 2400DD: MOVF 22,W00DE: BTFSS 03.000DF: INCFSZ 22,W00E0: SUBWF 24,F00E1: RRF 24,F00E2: RRF 23,F00E3: RRF 24,F00E4: RRF 23,F00E5: RRF 24,F00E6: MOVF 23,W00E7: MOVWF 1B00E8: RRF 24,F00E9: RRF 24,W00EA: ANDLW 3000EB: MOVWF 7700EC: MOVF 1D,W00ED: ANDLW CF00EE: IORWF 77,W00EF: MOVWF 1D.................... }00F0: GOTO 0B8.................... }00F1: GOTO 082.................... }00F2: SLEEPConfiguration Fuses:Word 1: 2CF2 HS NOWDT NOPUT MCLR NOPROTECT NOCPD NOBROWNOUT IESO FCMEN NOLVP NODEBUGWord 2: 3FFF NOWRT BORV40