📄 camera2.lst
字号:
CCS PCM C Compiler, Version 3.211, 16465 03-Oct-05 13:58
Filename: D:\phuoc\laptrinhpic\CAMERA2.LST
ROM used: 1359 words (17%)
Largest free fragment is 2048
RAM used: 79 (22%) at main() level
94 (26%) worst case
Stack: 3 locations
*
0000: MOVLW 00
0001: MOVWF 0A
0002: GOTO 317
0003: NOP
.................... //Connecting with camera for reading and calculating the errors
....................
.................... #device PIC16F877 *=16 ADC=10
0004: BCF 0A.0
0005: BCF 0A.1
0006: BCF 0A.2
0007: ADDWF 02,F
0008: RETLW 41
0009: RETLW 43
000A: RETLW 4B
000B: RETLW 00
000C: BCF 0A.0
000D: BCF 0A.1
000E: BCF 0A.2
000F: ADDWF 02,F
0010: RETLW 53
0011: RETLW 57
0012: RETLW 20
0013: RETLW 31
0014: RETLW 20
0015: RETLW 33
0016: RETLW 33
0017: RETLW 20
0018: RETLW 38
0019: RETLW 30
001A: RETLW 20
001B: RETLW 0D
001C: RETLW 00
001D: BCF 0A.0
001E: BCF 0A.1
001F: BCF 0A.2
0020: ADDWF 02,F
0021: RETLW 43
0022: RETLW 52
0023: RETLW 20
0024: RETLW 31
0025: RETLW 38
0026: RETLW 20
0027: RETLW 34
0028: RETLW 34
0029: RETLW 0D
002A: RETLW 00
002B: BCF 0A.0
002C: BCF 0A.1
002D: BCF 0A.2
002E: ADDWF 02,F
002F: RETLW 50
0030: RETLW 4D
0031: RETLW 20
0032: RETLW 31
0033: RETLW 0D
0034: RETLW 00
0035: BCF 0A.0
0036: BCF 0A.1
0037: BCF 0A.2
0038: ADDWF 02,F
0039: RETLW 4D
003A: RETLW 4D
003B: RETLW 20
003C: RETLW 30
003D: RETLW 0D
003E: RETLW 00
003F: BCF 0A.0
0040: BCF 0A.1
0041: BCF 0A.2
0042: ADDWF 02,F
0043: RETLW 4C
0044: RETLW 4D
0045: RETLW 20
0046: RETLW 31
0047: RETLW 0D
0048: RETLW 00
0049: BCF 0A.0
004A: BCF 0A.1
004B: BCF 0A.2
004C: ADDWF 02,F
004D: RETLW 50
004E: RETLW 4D
004F: RETLW 20
0050: RETLW 30
0051: RETLW 0D
0052: RETLW 00
0053: BCF 0A.0
0054: BCF 0A.1
0055: BCF 0A.2
0056: ADDWF 02,F
0057: RETLW 44
0058: RETLW 4D
0059: RETLW 20
005A: RETLW 30
005B: RETLW 0D
005C: RETLW 00
005D: BCF 0A.0
005E: BCF 0A.1
005F: BCF 0A.2
0060: ADDWF 02,F
0061: RETLW 54
0062: RETLW 43
0063: RETLW 20
0064: RETLW 0D
0065: RETLW 00
0066: CLRF 77
0067: CLRF 78
0068: MOVF 7C,W
0069: BCF 03.0
006A: BTFSC 7D.0
006B: ADDWF 77,F
006C: RRF 77,F
006D: RRF 78,F
006E: BTFSC 7D.1
006F: ADDWF 77,F
0070: RRF 77,F
0071: RRF 78,F
0072: BTFSC 7D.2
0073: ADDWF 77,F
0074: RRF 77,F
0075: RRF 78,F
0076: BTFSC 7D.3
0077: ADDWF 77,F
0078: RRF 77,F
0079: RRF 78,F
007A: BTFSC 7D.4
007B: ADDWF 77,F
007C: RRF 77,F
007D: RRF 78,F
007E: BTFSC 7D.5
007F: ADDWF 77,F
0080: RRF 77,F
0081: RRF 78,F
0082: BTFSC 7D.6
0083: ADDWF 77,F
0084: RRF 77,F
0085: RRF 78,F
0086: BTFSC 7D.7
0087: ADDWF 77,F
0088: RRF 77,F
0089: RRF 78,F
008A: RETLW 00
*
011A: MOVF 6A,W
011B: CLRF 78
011C: SUBWF 69,W
011D: BTFSC 03.0
011E: GOTO 122
011F: MOVF 69,W
0120: MOVWF 77
0121: GOTO 12E
0122: CLRF 77
0123: MOVLW 08
0124: MOVWF 6B
0125: RLF 69,F
0126: RLF 77,F
0127: MOVF 6A,W
0128: SUBWF 77,W
0129: BTFSC 03.0
012A: MOVWF 77
012B: RLF 78,F
012C: DECFSZ 6B,F
012D: GOTO 125
012E: RETLW 00
012F: BCF 68.6
0130: MOVF 67,W
0131: MOVWF 69
0132: MOVLW 64
0133: MOVWF 6A
0134: CALL 11A
0135: MOVF 78,W
0136: BTFSS 03.2
0137: GOTO 155
0138: BTFSC 68.3
0139: GOTO 161
013A: BTFSC 68.6
013B: GOTO 142
013C: BTFSC 68.0
013D: GOTO 142
013E: BTFSC 68.2
013F: GOTO 142
0140: BTFSC 68.7
0141: GOTO 161
0142: BTFSS 68.0
0143: GOTO 14E
0144: BTFSC 68.7
0145: GOTO 161
0146: BTFSC 68.6
0147: GOTO 14E
0148: BTFSC 68.0
0149: GOTO 161
014A: BTFSC 68.2
014B: GOTO 14E
014C: BTFSC 68.7
014D: GOTO 161
014E: MOVLW 20
014F: BTFSS 68.4
0150: MOVLW 30
0151: BTFSS 0C.4
0152: GOTO 151
0153: MOVWF 19
0154: GOTO 161
0155: BTFSS 68.7
0156: GOTO 15C
0157: MOVLW 2D
0158: BTFSS 0C.4
0159: GOTO 158
015A: MOVWF 19
015B: BCF 68.7
015C: MOVLW 30
015D: ADDWF 78,W
015E: BTFSS 0C.4
015F: GOTO 15E
0160: MOVWF 19
0161: BTFSC 68.6
0162: GOTO 16B
0163: MOVF 77,W
0164: MOVWF 69
0165: MOVLW 0A
0166: MOVWF 6A
0167: CALL 11A
0168: MOVF 78,W
0169: BSF 68.6
016A: GOTO 135
016B: BTFSS 68.7
016C: GOTO 171
016D: MOVLW 2D
016E: BTFSS 0C.4
016F: GOTO 16E
0170: MOVWF 19
0171: MOVLW 30
0172: ADDWF 77,W
0173: BTFSS 0C.4
0174: GOTO 173
0175: MOVWF 19
0176: RETLW 00
.................... #include <16f877.h>
.................... //////// Standard Header file for the PIC16F877 device ////////////////
.................... //#device PIC16F877
.................... #list
....................
.................... #include <math.h>
.................... ////////////////////////////////////////////////////////////////////////////
.................... //// (C) Copyright 1996,2003 Custom Computer Services ////
.................... //// This source code may only be used by licensed users of the CCS C ////
.................... //// compiler. This source code may only be distributed to other ////
.................... //// licensed users of the CCS C compiler. No other use, reproduction ////
.................... //// or distribution is permitted without written permission. ////
.................... //// Derivative programs created using this software in object code ////
.................... //// form are not restricted in any way. ////
.................... ////////////////////////////////////////////////////////////////////////////
.................... //// ////
.................... //// History: ////
.................... //// * 9/20/2001 : Improvments are made to sin/cos code. ////
.................... //// The code now is small, much faster, ////
.................... //// and more accurate. ////
.................... //// ////
.................... ////////////////////////////////////////////////////////////////////////////
....................
.................... #ifndef MATH_H
.................... #define MATH_H
....................
....................
.................... #undef PI
.................... #define PI 3.141592654
....................
....................
.................... #define SQRT2 1.41421356
....................
.................... //float const ps[4] = {5.9304945, 21.125224, 8.9403076, 0.29730279};
.................... //float const qs[4] = {1.0000000, 15.035723, 17.764134, 2.4934718};
....................
.................... ///////////////////////////// Round Functions //////////////////////////////
....................
.................... float CEIL_FLOOR(float x, int n)
.................... {
.................... float y, res;
.................... long l;
.................... int1 s;
....................
.................... s = 0;
.................... y = x;
....................
.................... if (x < 0)
.................... {
.................... s = 1;
.................... y = -y;
.................... }
....................
.................... if (y <= 32768.0)
.................... res = (float)(long)y;
....................
.................... else if (y < 10000000.0)
.................... {
.................... l = (long)(y/32768.0);
.................... y = 32768.0*(y/32768.0 - (float)l);
.................... res = 32768.0*(float)l;
.................... res += (float)(long)y;
.................... }
....................
.................... else
.................... res = y;
....................
.................... y = y - (float)(long)y;
....................
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -