Rev 2910 Rev 2911
Line 1... Line 1...
1 CCS PCM C Compiler, Version 4.106, 47914 14-IV-13 10:31 1 CCS PCM C Compiler, Version 4.106, 47914 14-IV-13 13:34
2   2  
3 Filename: D:\MLAB\Modules\Sensors\SHT25V01A\SW\PIC16F887\main.lst 3 Filename: Z:\home\kaklik\MLAB\Modules\Sensors\SHT25V01A\SW\PIC16F887\main.lst
4   4  
5 ROM used: 2165 words (26%) 5 ROM used: 2319 words (28%)
6 Largest free fragment is 2048 6 Largest free fragment is 2048
7 RAM used: 10 (3%) at main() level 7 RAM used: 11 (3%) at main() level
8 36 (10%) worst case 8 37 (10%) worst case
9 Stack: 2 locations 9 Stack: 2 locations
10   10  
11 * 11 *
12 0000: MOVLW 08 12 0000: MOVLW 08
13 0001: MOVWF 0A 13 0001: MOVWF 0A
Line 35... Line 35...
35 .................... #FUSES NOWRT //Program memory not write protected 35 .................... #FUSES NOWRT //Program memory not write protected
36 .................... #FUSES BORV40 //Brownout reset at 4.0V 36 .................... #FUSES BORV40 //Brownout reset at 4.0V
37 .................... 37 ....................
38 .................... #use delay(clock=8000000) 38 .................... #use delay(clock=8000000)
39 * 39 *
40 009A: MOVLW 26 40 0123: MOVLW 27
41 009B: MOVWF 04 41 0124: MOVWF 04
42 009C: BCF 03.7 42 0125: BCF 03.7
43 009D: MOVF 00,W 43 0126: MOVF 00,W
44 009E: BTFSC 03.2 44 0127: BTFSC 03.2
45 009F: GOTO 0AD 45 0128: GOTO 136
46 00A0: MOVLW 02 46 0129: MOVLW 02
47 00A1: MOVWF 78 47 012A: MOVWF 78
48 00A2: CLRF 77 48 012B: CLRF 77
49 00A3: DECFSZ 77,F 49 012C: DECFSZ 77,F
50 00A4: GOTO 0A3 50 012D: GOTO 12C
51 00A5: DECFSZ 78,F 51 012E: DECFSZ 78,F
52 00A6: GOTO 0A2 52 012F: GOTO 12B
53 00A7: MOVLW 97 53 0130: MOVLW 97
54 00A8: MOVWF 77 54 0131: MOVWF 77
55 00A9: DECFSZ 77,F 55 0132: DECFSZ 77,F
56 00AA: GOTO 0A9 56 0133: GOTO 132
57 00AB: DECFSZ 00,F 57 0134: DECFSZ 00,F
58 00AC: GOTO 0A0 58 0135: GOTO 129
59 00AD: RETURN 59 0136: RETURN
60 .................... 60 ....................
61 .................... #use i2c(master, sda=PIN_C4, scl=PIN_C3) 61 .................... #use i2c(master, sda=PIN_C4, scl=PIN_C3)
62 00AE: MOVLW 08 62 *
63 00AF: MOVWF 78 63 0037: MOVLW 08
64 00B0: NOP 64 0038: MOVWF 78
65 00B1: BCF 07.3 65 0039: NOP
66 00B2: BCF 20.3 66 003A: BCF 07.3
67 00B3: MOVF 20,W 67 003B: BCF 20.3
68 00B4: BSF 03.5 68 003C: MOVF 20,W
69 00B5: MOVWF 07 69 003D: BSF 03.5
70 00B6: NOP 70 003E: MOVWF 07
71 00B7: BCF 03.5 71 003F: NOP
72 00B8: RLF 26,F 72 0040: BCF 03.5
73 00B9: BCF 07.4 73 0041: RLF 27,F
74 00BA: BTFSS 03.0 74 0042: BCF 07.4
75 00BB: GOTO 0C2 75 0043: BTFSS 03.0
76 00BC: BSF 20.4 76 0044: GOTO 04B
77 00BD: MOVF 20,W 77 0045: BSF 20.4
78 00BE: BSF 03.5 78 0046: MOVF 20,W
79 00BF: MOVWF 07 79 0047: BSF 03.5
80 00C0: GOTO 0C6 80 0048: MOVWF 07
81 00C1: BCF 03.5 81 0049: GOTO 04F
82 00C2: BCF 20.4 82 004A: BCF 03.5
83 00C3: MOVF 20,W 83 004B: BCF 20.4
84 00C4: BSF 03.5 84 004C: MOVF 20,W
85 00C5: MOVWF 07 85 004D: BSF 03.5
86 00C6: NOP 86 004E: MOVWF 07
87 00C7: BCF 03.5 87 004F: NOP
88 00C8: BSF 20.3 88 0050: BCF 03.5
89 00C9: MOVF 20,W 89 0051: BSF 20.3
90 00CA: BSF 03.5 90 0052: MOVF 20,W
91 00CB: MOVWF 07 91 0053: BSF 03.5
92 00CC: BCF 03.5 92 0054: MOVWF 07
93 00CD: BTFSS 07.3 93 0055: BCF 03.5
94 00CE: GOTO 0CD 94 0056: BTFSS 07.3
95 00CF: DECFSZ 78,F 95 0057: GOTO 056
96 00D0: GOTO 0B0 96 0058: DECFSZ 78,F
97 00D1: NOP 97 0059: GOTO 039
98 00D2: BCF 07.3 98 005A: NOP
99 00D3: BCF 20.3 99 005B: BCF 07.3
100 00D4: MOVF 20,W 100 005C: BCF 20.3
101 00D5: BSF 03.5 101 005D: MOVF 20,W
102 00D6: MOVWF 07 102 005E: BSF 03.5
103 00D7: NOP 103 005F: MOVWF 07
104 00D8: BCF 03.5 104 0060: NOP
105 00D9: BSF 20.4 105 0061: BCF 03.5
106 00DA: MOVF 20,W 106 0062: BSF 20.4
107 00DB: BSF 03.5 107 0063: MOVF 20,W
108 00DC: MOVWF 07 108 0064: BSF 03.5
109 00DD: NOP 109 0065: MOVWF 07
110 00DE: NOP 110 0066: NOP
111 00DF: BCF 03.5 111 0067: NOP
112 00E0: BSF 20.3 112 0068: BCF 03.5
113 00E1: MOVF 20,W 113 0069: BSF 20.3
114 00E2: BSF 03.5 114 006A: MOVF 20,W
115 00E3: MOVWF 07 115 006B: BSF 03.5
116 00E4: BCF 03.5 116 006C: MOVWF 07
117 00E5: BTFSS 07.3 117 006D: BCF 03.5
118 00E6: GOTO 0E5 118 006E: BTFSS 07.3
119 00E7: CLRF 78 119 006F: GOTO 06E
120 00E8: NOP 120 0070: CLRF 78
121 00E9: BTFSC 07.4 121 0071: NOP
122 00EA: BSF 78.0 122 0072: BTFSC 07.4
123 00EB: BCF 07.3 123 0073: BSF 78.0
124 00EC: BCF 20.3 124 0074: BCF 07.3
125 00ED: MOVF 20,W 125 0075: BCF 20.3
126 00EE: BSF 03.5 126 0076: MOVF 20,W
127 00EF: MOVWF 07 127 0077: BSF 03.5
128 00F0: BCF 03.5 128 0078: MOVWF 07
129 00F1: BCF 07.4 129 0079: BCF 03.5
130 00F2: BCF 20.4 130 007A: BCF 07.4
131 00F3: MOVF 20,W 131 007B: BCF 20.4
132 00F4: BSF 03.5 132 007C: MOVF 20,W
133 00F5: MOVWF 07 133 007D: BSF 03.5
134 00F6: BCF 03.5 134 007E: MOVWF 07
135 00F7: RETURN 135 007F: BCF 03.5
136 00F8: MOVLW 08 136 0080: RETURN
137 00F9: MOVWF 27 137 *
138 00FA: MOVF 77,W 138 0137: MOVLW 08
139 00FB: MOVWF 28 139 0138: MOVWF 28
140 00FC: BSF 20.4 140 0139: MOVF 77,W
141 00FD: MOVF 20,W 141 013A: MOVWF 29
142 00FE: BSF 03.5 142 013B: BSF 20.4
143 00FF: MOVWF 07 143 013C: MOVF 20,W
144 0100: NOP 144 013D: BSF 03.5
145 0101: BCF 03.5 145 013E: MOVWF 07
146 0102: BSF 20.3 146 013F: NOP
147 0103: MOVF 20,W 147 0140: BCF 03.5
148 0104: BSF 03.5 148 0141: BSF 20.3
149 0105: MOVWF 07 149 0142: MOVF 20,W
150 0106: BCF 03.5 150 0143: BSF 03.5
151 0107: BTFSS 07.3 151 0144: MOVWF 07
152 0108: GOTO 107 152 0145: BCF 03.5
153 0109: BTFSC 07.4 153 0146: BTFSS 07.3
154 010A: BSF 03.0 154 0147: GOTO 146
155 010B: BTFSS 07.4 155 0148: BTFSC 07.4
156 010C: BCF 03.0 156 0149: BSF 03.0
157 010D: RLF 78,F 157 014A: BTFSS 07.4
158 010E: NOP 158 014B: BCF 03.0
159 010F: BCF 20.3 159 014C: RLF 78,F
160 0110: MOVF 20,W 160 014D: NOP
161 0111: BSF 03.5 161 014E: BCF 20.3
162 0112: MOVWF 07 162 014F: MOVF 20,W
163 0113: BCF 03.5 163 0150: BSF 03.5
164 0114: BCF 07.3 164 0151: MOVWF 07
165 0115: DECFSZ 27,F 165 0152: BCF 03.5
166 0116: GOTO 0FC 166 0153: BCF 07.3
167 0117: BSF 20.4 167 0154: DECFSZ 28,F
168 0118: MOVF 20,W 168 0155: GOTO 13B
169 0119: BSF 03.5 169 0156: BSF 20.4
170 011A: MOVWF 07 170 0157: MOVF 20,W
171 011B: NOP 171 0158: BSF 03.5
172 011C: BCF 03.5 172 0159: MOVWF 07
173 011D: BCF 07.4 173 015A: NOP
174 011E: MOVF 28,W 174 015B: BCF 03.5
175 011F: BTFSC 03.2 175 015C: BCF 07.4
176 0120: GOTO 126 176 015D: MOVF 29,W
177 0121: BCF 20.4 177 015E: BTFSC 03.2
178 0122: MOVF 20,W 178 015F: GOTO 165
179 0123: BSF 03.5 179 0160: BCF 20.4
180 0124: MOVWF 07 180 0161: MOVF 20,W
181 0125: BCF 03.5 181 0162: BSF 03.5
182 0126: NOP 182 0163: MOVWF 07
183 0127: BSF 20.3 183 0164: BCF 03.5
184 0128: MOVF 20,W 184 0165: NOP
185 0129: BSF 03.5 185 0166: BSF 20.3
186 012A: MOVWF 07 186 0167: MOVF 20,W
187 012B: BCF 03.5 187 0168: BSF 03.5
188 012C: BTFSS 07.3 188 0169: MOVWF 07
189 012D: GOTO 12C 189 016A: BCF 03.5
190 012E: NOP 190 016B: BTFSS 07.3
191 012F: BCF 07.3 191 016C: GOTO 16B
192 0130: BCF 20.3 192 016D: NOP
193 0131: MOVF 20,W 193 016E: BCF 07.3
194 0132: BSF 03.5 194 016F: BCF 20.3
195 0133: MOVWF 07 195 0170: MOVF 20,W
196 0134: NOP 196 0171: BSF 03.5
197 0135: BCF 03.5 197 0172: MOVWF 07
198 0136: BCF 07.4 198 0173: NOP
199 0137: BCF 20.4 199 0174: BCF 03.5
200 0138: MOVF 20,W 200 0175: BCF 07.4
201 0139: BSF 03.5 201 0176: BCF 20.4
202 013A: MOVWF 07 202 0177: MOVF 20,W
203 013B: BCF 03.5 203 0178: BSF 03.5
204 013C: RETURN 204 0179: MOVWF 07
-   205 017A: BCF 03.5
-   206 017B: RETURN
205 .................... #use rs232(baud=9600,parity=N,xmit=PIN_B7,rcv=PIN_B6,bits=8) //rcv TXD xmit RXD 207 .................... #use rs232(baud=9600,parity=N,xmit=PIN_B7,rcv=PIN_B6,bits=8) //rcv TXD xmit RXD
206 * 208 *
207 0030: BSF 03.5 209 00B9: BSF 03.5
208 0031: BCF 06.7 210 00BA: BCF 06.7
209 0032: BCF 03.5 211 00BB: BCF 03.5
210 0033: BCF 06.7 212 00BC: BCF 06.7
211 0034: MOVLW 08 213 00BD: MOVLW 08
212 0035: MOVWF 78 214 00BE: MOVWF 78
213 0036: GOTO 037 215 00BF: GOTO 0C0
214 0037: NOP 216 00C0: NOP
215 0038: BSF 78.7 217 00C1: BSF 78.7
216 0039: GOTO 048 218 00C2: GOTO 0D1
217 003A: BCF 78.7 219 00C3: BCF 78.7
218 003B: RRF 32,F 220 00C4: RRF 33,F
219 003C: BTFSC 03.0 221 00C5: BTFSC 03.0
220 003D: BSF 06.7 222 00C6: BSF 06.7
221 003E: BTFSS 03.0 223 00C7: BTFSS 03.0
222 003F: BCF 06.7 224 00C8: BCF 06.7
223 0040: BSF 78.6 225 00C9: BSF 78.6
224 0041: GOTO 048 226 00CA: GOTO 0D1
225 0042: BCF 78.6 227 00CB: BCF 78.6
226 0043: DECFSZ 78,F 228 00CC: DECFSZ 78,F
227 0044: GOTO 03B 229 00CD: GOTO 0C4
228 0045: GOTO 046 230 00CE: GOTO 0CF
229 0046: NOP 231 00CF: NOP
230 0047: BSF 06.7 232 00D0: BSF 06.7
231 0048: MOVLW 3F 233 00D1: MOVLW 3F
232 0049: MOVWF 04 234 00D2: MOVWF 04
233 004A: DECFSZ 04,F 235 00D3: DECFSZ 04,F
234 004B: GOTO 04A 236 00D4: GOTO 0D3
235 004C: NOP 237 00D5: NOP
236 004D: BTFSC 78.7 238 00D6: BTFSC 78.7
237 004E: GOTO 03A 239 00D7: GOTO 0C3
238 004F: BTFSC 78.6 240 00D8: BTFSC 78.6
239 0050: GOTO 042 241 00D9: GOTO 0CB
240 0051: RETURN 242 00DA: RETURN
241 .................... 243 ....................
242 .................... 244 ....................
243 .................... 245 ....................
244 .................... void SHT25_soft_reset() 246 .................... void SHT25_soft_reset()
245 .................... { 247 .................... {
246 .................... i2c_start(); // Start condition 248 .................... i2c_start(); // Start condition
-   249 *
-   250 0081: BSF 20.4
-   251 0082: MOVF 20,W
-   252 0083: BSF 03.5
-   253 0084: MOVWF 07
-   254 0085: NOP
-   255 0086: BCF 03.5
-   256 0087: BSF 20.3
-   257 0088: MOVF 20,W
-   258 0089: BSF 03.5
-   259 008A: MOVWF 07
-   260 008B: NOP
-   261 008C: BCF 03.5
-   262 008D: BCF 07.4
-   263 008E: BCF 20.4
-   264 008F: MOVF 20,W
-   265 0090: BSF 03.5
-   266 0091: MOVWF 07
-   267 0092: NOP
-   268 0093: BCF 03.5
-   269 0094: BCF 07.3
-   270 0095: BCF 20.3
-   271 0096: MOVF 20,W
-   272 0097: BSF 03.5
-   273 0098: MOVWF 07
247 .................... i2c_write(0x80); // Device address 274 .................... i2c_write(0x80); // Device address
-   275 0099: MOVLW 80
-   276 009A: BCF 03.5
-   277 009B: MOVWF 27
-   278 009C: CALL 037
248 .................... i2c_write(0xFE); // Device command 279 .................... i2c_write(0xFE); // Device command
-   280 009D: MOVLW FE
-   281 009E: MOVWF 27
-   282 009F: CALL 037
249 .................... i2c_stop(); // Stop condition 283 .................... i2c_stop(); // Stop condition
-   284 00A0: BCF 20.4
-   285 00A1: MOVF 20,W
-   286 00A2: BSF 03.5
-   287 00A3: MOVWF 07
-   288 00A4: NOP
-   289 00A5: BCF 03.5
-   290 00A6: BSF 20.3
-   291 00A7: MOVF 20,W
-   292 00A8: BSF 03.5
-   293 00A9: MOVWF 07
-   294 00AA: BCF 03.5
-   295 00AB: BTFSS 07.3
-   296 00AC: GOTO 0AB
-   297 00AD: NOP
-   298 00AE: GOTO 0AF
-   299 00AF: NOP
-   300 00B0: BSF 20.4
-   301 00B1: MOVF 20,W
-   302 00B2: BSF 03.5
-   303 00B3: MOVWF 07
-   304 00B4: NOP
250 .................... } 305 .................... }
-   306 00B5: BCF 03.5
-   307 00B6: BSF 0A.3
-   308 00B7: BCF 0A.4
-   309 00B8: GOTO 066 (RETURN)
-   310 ....................
-   311 .................... #define SHT25_HEATER_ON 0x04
-   312 .................... #define SHT25_HEATER_OFF 0x00
-   313 .................... #define SHT25_OTP_reload_off 0x02
-   314 .................... #define SHT25_RH12_T14 0x00
-   315 .................... #define SHT25_RH8_T12 0x01
-   316 .................... #define SHT25_RH10_T13 0x80
-   317 .................... #define SHT25_RH11_T11 0x81
251 .................... 318 ....................
252 .................... unsigned int8 SHT25_setup() 319 .................... #define SHT25_ADDR 0x80
-   320 ....................
-   321 .................... unsigned int8 SHT25_setup(unsigned int8 setup_reg ) // writes to status register and returns its value
253 .................... { 322 .................... {
254 .................... unsigned int8 reg; 323 .................... unsigned int8 reg;
255 .................... 324 ....................
256 .................... i2c_start(); // Start condition 325 .................... i2c_start(); // Start condition
257 * 326 *
258 013D: BSF 20.4 327 017C: BSF 20.4
259 013E: MOVF 20,W 328 017D: MOVF 20,W
260 013F: BSF 03.5 329 017E: BSF 03.5
261 0140: MOVWF 07 330 017F: MOVWF 07
262 0141: NOP 331 0180: NOP
263 0142: BCF 03.5 332 0181: BCF 03.5
264 0143: BSF 20.3 333 0182: BSF 20.3
265 0144: MOVF 20,W 334 0183: MOVF 20,W
266 0145: BSF 03.5 335 0184: BSF 03.5
267 0146: MOVWF 07 336 0185: MOVWF 07
268 0147: NOP 337 0186: NOP
269 0148: BCF 03.5 338 0187: BCF 03.5
270 0149: BCF 07.4 339 0188: BCF 07.4
271 014A: BCF 20.4 340 0189: BCF 20.4
272 014B: MOVF 20,W 341 018A: MOVF 20,W
273 014C: BSF 03.5 342 018B: BSF 03.5
274 014D: MOVWF 07 343 018C: MOVWF 07
275 014E: NOP 344 018D: NOP
276 014F: BCF 03.5 345 018E: BCF 03.5
277 0150: BCF 07.3 346 018F: BCF 07.3
278 0151: BCF 20.3 347 0190: BCF 20.3
279 0152: MOVF 20,W 348 0191: MOVF 20,W
280 0153: BSF 03.5 349 0192: BSF 03.5
281 0154: MOVWF 07 350 0193: MOVWF 07
282 .................... i2c_write(0x80); // Device address 351 .................... i2c_write(SHT25_ADDR); // Device address
283 0155: MOVLW 80 352 0194: MOVLW 80
284 0156: BCF 03.5 353 0195: BCF 03.5
285 0157: MOVWF 26 354 0196: MOVWF 27
286 0158: CALL 0AE 355 0197: CALL 037
287 .................... i2c_write(0xE7); // Device command 356 .................... i2c_write(0xE7); // Device command
288 0159: MOVLW E7 357 0198: MOVLW E7
-   358 0199: MOVWF 27
-   359 019A: CALL 037
-   360 ....................
-   361 .................... i2c_start(); // Start condition
-   362 019B: BSF 20.4
-   363 019C: MOVF 20,W
-   364 019D: BSF 03.5
-   365 019E: MOVWF 07
-   366 019F: NOP
-   367 01A0: BCF 03.5
-   368 01A1: BSF 20.3
-   369 01A2: MOVF 20,W
-   370 01A3: BSF 03.5
-   371 01A4: MOVWF 07
-   372 01A5: NOP
-   373 01A6: BCF 03.5
-   374 01A7: BTFSS 07.3
-   375 01A8: GOTO 1A7
-   376 01A9: BCF 07.4
-   377 01AA: BCF 20.4
-   378 01AB: MOVF 20,W
-   379 01AC: BSF 03.5
-   380 01AD: MOVWF 07
-   381 01AE: NOP
-   382 01AF: BCF 03.5
-   383 01B0: BCF 07.3
-   384 01B1: BCF 20.3
-   385 01B2: MOVF 20,W
-   386 01B3: BSF 03.5
-   387 01B4: MOVWF 07
-   388 .................... i2c_write(SHT25_ADDR+1); // Device address
-   389 01B5: MOVLW 81
-   390 01B6: BCF 03.5
289 015A: MOVWF 26 391 01B7: MOVWF 27
290 015B: CALL 0AE 392 01B8: CALL 037
-   393 .................... reg=i2c_read(0); // Read status actual status register
-   394 01B9: CLRF 77
-   395 01BA: CALL 137
-   396 01BB: MOVF 78,W
-   397 01BC: MOVWF 23
-   398 ....................
-   399 .................... reg = (reg & 0x3A) | setup_reg;
-   400 01BD: MOVF 23,W
-   401 01BE: ANDLW 3A
-   402 01BF: IORWF 22,W
-   403 01C0: MOVWF 23
291 .................... 404 ....................
292 .................... i2c_start(); // Start condition 405 .................... i2c_start(); // Start condition
293 015C: BSF 20.4 406 01C1: BSF 20.4
294 015D: MOVF 20,W 407 01C2: MOVF 20,W
295 015E: BSF 03.5 408 01C3: BSF 03.5
296 015F: MOVWF 07 409 01C4: MOVWF 07
297 0160: NOP 410 01C5: NOP
298 0161: BCF 03.5 411 01C6: BCF 03.5
299 0162: BSF 20.3 412 01C7: BSF 20.3
300 0163: MOVF 20,W 413 01C8: MOVF 20,W
301 0164: BSF 03.5 414 01C9: BSF 03.5
302 0165: MOVWF 07 415 01CA: MOVWF 07
303 0166: NOP 416 01CB: NOP
304 0167: BCF 03.5 417 01CC: BCF 03.5
305 0168: BTFSS 07.3 418 01CD: BTFSS 07.3
306 0169: GOTO 168 419 01CE: GOTO 1CD
307 016A: BCF 07.4 420 01CF: BCF 07.4
308 016B: BCF 20.4 421 01D0: BCF 20.4
309 016C: MOVF 20,W 422 01D1: MOVF 20,W
310 016D: BSF 03.5 423 01D2: BSF 03.5
311 016E: MOVWF 07 424 01D3: MOVWF 07
312 016F: NOP 425 01D4: NOP
313 0170: BCF 03.5 426 01D5: BCF 03.5
314 0171: BCF 07.3 427 01D6: BCF 07.3
315 0172: BCF 20.3 428 01D7: BCF 20.3
316 0173: MOVF 20,W 429 01D8: MOVF 20,W
317 0174: BSF 03.5 430 01D9: BSF 03.5
318 0175: MOVWF 07 431 01DA: MOVWF 07
319 .................... i2c_write(0x81); // Device address 432 .................... i2c_write(SHT25_ADDR); // Device address
320 0176: MOVLW 81 433 01DB: MOVLW 80
321 0177: BCF 03.5 434 01DC: BCF 03.5
322 0178: MOVWF 26 435 01DD: MOVWF 27
323 0179: CALL 0AE 436 01DE: CALL 037
324 .................... reg=i2c_read(0); // Device command 437 .................... i2c_write(0xE7); // Write to status register
-   438 01DF: MOVLW E7
325 017A: CLRF 77 439 01E0: MOVWF 27
326 017B: CALL 0F8 440 01E1: CALL 037
-   441 .................... i2c_write(reg); // Device command
327 017C: MOVF 78,W 442 01E2: MOVF 23,W
328 017D: MOVWF 21 443 01E3: MOVWF 27
-   444 01E4: CALL 037
329 .................... i2c_stop(); // Stop condition 445 .................... i2c_stop(); // Stop condition
330 017E: BCF 20.4 446 01E5: BCF 20.4
331 017F: MOVF 20,W 447 01E6: MOVF 20,W
332 0180: BSF 03.5 448 01E7: BSF 03.5
333 0181: MOVWF 07 449 01E8: MOVWF 07
334 0182: NOP 450 01E9: NOP
335 0183: BCF 03.5 451 01EA: BCF 03.5
336 0184: BSF 20.3 452 01EB: BSF 20.3
337 0185: MOVF 20,W 453 01EC: MOVF 20,W
338 0186: BSF 03.5 454 01ED: BSF 03.5
339 0187: MOVWF 07 455 01EE: MOVWF 07
340 0188: BCF 03.5 456 01EF: BCF 03.5
341 0189: BTFSS 07.3 457 01F0: BTFSS 07.3
342 018A: GOTO 189 458 01F1: GOTO 1F0
343 018B: NOP 459 01F2: NOP
344 018C: GOTO 18D 460 01F3: GOTO 1F4
345 018D: NOP 461 01F4: NOP
346 018E: BSF 20.4 462 01F5: BSF 20.4
347 018F: MOVF 20,W 463 01F6: MOVF 20,W
348 0190: BSF 03.5 464 01F7: BSF 03.5
349 0191: MOVWF 07 465 01F8: MOVWF 07
350 0192: NOP 466 01F9: NOP
351 .................... 467 ....................
352 .................... return (reg); 468 .................... return (reg);
353 0193: BCF 03.5 469 01FA: BCF 03.5
354 0194: MOVF 21,W 470 01FB: MOVF 23,W
355 0195: MOVWF 78 471 01FC: MOVWF 78
356 .................... } 472 .................... }
357 0196: BSF 0A.3 473 01FD: RETURN
358 0197: BCF 0A.4 474 ....................
359 0198: GOTO 075 (RETURN) -  
360 .................... 475 ....................
361 .................... float SHT25_get_temp() 476 .................... float SHT25_get_temp()
362 .................... { 477 .................... {
363 .................... unsigned int8 MSB, LSB, Check; 478 .................... unsigned int8 MSB, LSB, Check;
364 .................... unsigned int16 data; 479 .................... unsigned int16 data;
365 .................... 480 ....................
366 .................... i2c_start(); 481 .................... i2c_start();
367 * 482 *
368 04A8: BSF 20.4 483 050B: BSF 20.4
369 04A9: MOVF 20,W 484 050C: MOVF 20,W
370 04AA: BSF 03.5 485 050D: BSF 03.5
371 04AB: MOVWF 07 486 050E: MOVWF 07
372 04AC: NOP 487 050F: NOP
373 04AD: BCF 03.5 488 0510: BCF 03.5
374 04AE: BSF 20.3 489 0511: BSF 20.3
375 04AF: MOVF 20,W 490 0512: MOVF 20,W
376 04B0: BSF 03.5 491 0513: BSF 03.5
377 04B1: MOVWF 07 492 0514: MOVWF 07
378 04B2: NOP 493 0515: NOP
379 04B3: BCF 03.5 494 0516: BCF 03.5
380 04B4: BCF 07.4 495 0517: BCF 07.4
381 04B5: BCF 20.4 496 0518: BCF 20.4
382 04B6: MOVF 20,W 497 0519: MOVF 20,W
383 04B7: BSF 03.5 498 051A: BSF 03.5
384 04B8: MOVWF 07 499 051B: MOVWF 07
385 04B9: NOP 500 051C: NOP
386 04BA: BCF 03.5 501 051D: BCF 03.5
387 04BB: BCF 07.3 502 051E: BCF 07.3
388 04BC: BCF 20.3 503 051F: BCF 20.3
389 04BD: MOVF 20,W 504 0520: MOVF 20,W
390 04BE: BSF 03.5 505 0521: BSF 03.5
391 04BF: MOVWF 07 506 0522: MOVWF 07
392 .................... I2C_Write(0x80); 507 .................... I2C_Write(SHT25_ADDR);
393 04C0: MOVLW 80 508 0523: MOVLW 80
394 04C1: BCF 03.5 509 0524: BCF 03.5
395 04C2: MOVWF 26 510 0525: MOVWF 27
396 04C3: CALL 0AE 511 0526: CALL 037
397 .................... I2C_write(0xE3); 512 .................... I2C_write(0xE3);
398 04C4: MOVLW E3 513 0527: MOVLW E3
399 04C5: MOVWF 26 514 0528: MOVWF 27
400 04C6: CALL 0AE 515 0529: CALL 037
401 .................... i2c_stop(); 516 .................... i2c_stop();
402 04C7: BCF 20.4 517 052A: BCF 20.4
403 04C8: MOVF 20,W 518 052B: MOVF 20,W
404 04C9: BSF 03.5 519 052C: BSF 03.5
405 04CA: MOVWF 07 520 052D: MOVWF 07
406 04CB: NOP 521 052E: NOP
407 04CC: BCF 03.5 522 052F: BCF 03.5
408 04CD: BSF 20.3 523 0530: BSF 20.3
409 04CE: MOVF 20,W 524 0531: MOVF 20,W
410 04CF: BSF 03.5 525 0532: BSF 03.5
411 04D0: MOVWF 07 526 0533: MOVWF 07
412 04D1: BCF 03.5 527 0534: BCF 03.5
413 04D2: BTFSS 07.3 528 0535: BTFSS 07.3
414 04D3: GOTO 4D2 529 0536: GOTO 535
415 04D4: NOP 530 0537: NOP
416 04D5: GOTO 4D6 531 0538: GOTO 539
417 04D6: NOP 532 0539: NOP
418 04D7: BSF 20.4 533 053A: BSF 20.4
419 04D8: MOVF 20,W 534 053B: MOVF 20,W
420 04D9: BSF 03.5 535 053C: BSF 03.5
421 04DA: MOVWF 07 536 053D: MOVWF 07
422 04DB: NOP 537 053E: NOP
423 .................... 538 ....................
424 .................... delay_ms(100); 539 .................... delay_ms(100);
425 04DC: MOVLW 64 540 053F: MOVLW 64
426 04DD: BCF 03.5 541 0540: BCF 03.5
427 04DE: MOVWF 26 542 0541: MOVWF 27
428 04DF: CALL 09A 543 0542: CALL 123
429 .................... 544 ....................
430 .................... i2c_start(); 545 .................... i2c_start();
431 04E0: BSF 20.4 546 0543: BSF 20.4
432 04E1: MOVF 20,W 547 0544: MOVF 20,W
433 04E2: BSF 03.5 548 0545: BSF 03.5
434 04E3: MOVWF 07 549 0546: MOVWF 07
435 04E4: NOP 550 0547: NOP
436 04E5: BCF 03.5 551 0548: BCF 03.5
437 04E6: BSF 20.3 552 0549: BSF 20.3
438 04E7: MOVF 20,W 553 054A: MOVF 20,W
439 04E8: BSF 03.5 554 054B: BSF 03.5
440 04E9: MOVWF 07 555 054C: MOVWF 07
441 04EA: NOP 556 054D: NOP
442 04EB: BCF 03.5 557 054E: BCF 03.5
443 04EC: BCF 07.4 558 054F: BCF 07.4
444 04ED: BCF 20.4 559 0550: BCF 20.4
445 04EE: MOVF 20,W 560 0551: MOVF 20,W
446 04EF: BSF 03.5 561 0552: BSF 03.5
447 04F0: MOVWF 07 562 0553: MOVWF 07
448 04F1: NOP 563 0554: NOP
449 04F2: BCF 03.5 564 0555: BCF 03.5
450 04F3: BCF 07.3 565 0556: BCF 07.3
451 04F4: BCF 20.3 566 0557: BCF 20.3
452 04F5: MOVF 20,W 567 0558: MOVF 20,W
453 04F6: BSF 03.5 568 0559: BSF 03.5
454 04F7: MOVWF 07 569 055A: MOVWF 07
455 .................... I2C_Write(0x81); 570 .................... I2C_Write(SHT25_ADDR+1);
456 04F8: MOVLW 81 571 055B: MOVLW 81
457 04F9: BCF 03.5 572 055C: BCF 03.5
458 04FA: MOVWF 26 573 055D: MOVWF 27
459 04FB: CALL 0AE 574 055E: CALL 037
460 .................... MSB=i2c_read(1); 575 .................... MSB=i2c_read(1);
461 04FC: MOVLW 01 576 055F: MOVLW 01
462 04FD: MOVWF 77 577 0560: MOVWF 77
463 04FE: CALL 0F8 578 0561: CALL 137
464 04FF: MOVF 78,W 579 0562: MOVF 78,W
465 0500: MOVWF 21 580 0563: MOVWF 22
466 .................... LSB=i2c_read(1); 581 .................... LSB=i2c_read(1);
467 0501: MOVLW 01 582 0564: MOVLW 01
468 0502: MOVWF 77 583 0565: MOVWF 77
469 0503: CALL 0F8 584 0566: CALL 137
470 0504: MOVF 78,W 585 0567: MOVF 78,W
471 0505: MOVWF 22 586 0568: MOVWF 23
472 .................... Check=i2c_read(0); 587 .................... Check=i2c_read(0);
473 0506: CLRF 77 588 0569: CLRF 77
474 0507: CALL 0F8 589 056A: CALL 137
475 0508: MOVF 78,W 590 056B: MOVF 78,W
476 0509: MOVWF 23 591 056C: MOVWF 24
477 .................... i2c_stop(); 592 .................... i2c_stop();
478 050A: BCF 20.4 593 056D: BCF 20.4
479 050B: MOVF 20,W 594 056E: MOVF 20,W
480 050C: BSF 03.5 595 056F: BSF 03.5
481 050D: MOVWF 07 596 0570: MOVWF 07
482 050E: NOP 597 0571: NOP
483 050F: BCF 03.5 598 0572: BCF 03.5
484 0510: BSF 20.3 599 0573: BSF 20.3
485 0511: MOVF 20,W 600 0574: MOVF 20,W
486 0512: BSF 03.5 601 0575: BSF 03.5
487 0513: MOVWF 07 602 0576: MOVWF 07
488 0514: BCF 03.5 603 0577: BCF 03.5
489 0515: BTFSS 07.3 604 0578: BTFSS 07.3
490 0516: GOTO 515 605 0579: GOTO 578
491 0517: NOP 606 057A: NOP
492 0518: GOTO 519 607 057B: GOTO 57C
493 0519: NOP 608 057C: NOP
494 051A: BSF 20.4 609 057D: BSF 20.4
495 051B: MOVF 20,W 610 057E: MOVF 20,W
496 051C: BSF 03.5 611 057F: BSF 03.5
497 051D: MOVWF 07 612 0580: MOVWF 07
498 051E: NOP 613 0581: NOP
499 .................... 614 ....................
500 .................... LSB = LSB >> 2; // trow out status bits 615 .................... LSB = LSB >> 2; // trow out status bits
501 051F: BCF 03.5 616 0582: BCF 03.5
502 0520: RRF 22,F 617 0583: RRF 23,F
503 0521: RRF 22,F 618 0584: RRF 23,F
504 0522: MOVLW 3F 619 0585: MOVLW 3F
505 0523: ANDWF 22,F 620 0586: ANDWF 23,F
506 .................... 621 ....................
507 .................... data = (((unsigned int16) MSB << 8) + (LSB << 4)); 622 .................... data = (((unsigned int16) MSB << 8) + (LSB << 4));
508 0524: CLRF 27 623 0587: CLRF 28
509 0525: MOVF 21,W 624 0588: MOVF 22,W
510 0526: MOVWF 26 625 0589: MOVWF 27
511 0527: MOVWF 27 626 058A: MOVWF 28
512 0528: CLRF 26 627 058B: CLRF 27
513 0529: SWAPF 22,W 628 058C: SWAPF 23,W
514 052A: MOVWF 77 629 058D: MOVWF 77
515 052B: MOVLW F0 630 058E: MOVLW F0
516 052C: ANDWF 77,F 631 058F: ANDWF 77,F
517 052D: MOVF 77,W 632 0590: MOVF 77,W
518 052E: ADDWF 26,W 633 0591: ADDWF 27,W
519 052F: MOVWF 24 634 0592: MOVWF 25
520 0530: MOVF 27,W 635 0593: MOVF 28,W
521 0531: MOVWF 25 636 0594: MOVWF 26
522 0532: BTFSC 03.0 637 0595: BTFSC 03.0
523 0533: INCF 25,F 638 0596: INCF 26,F
524 .................... return(-46.85 + 175.72*((float)data/0xFFFF)); 639 .................... return(-46.85 + 175.72*((float)data/0xFFFF));
525 0534: MOVF 25,W 640 0597: MOVF 26,W
526 0535: MOVWF 27 641 0598: MOVWF 28
527 0536: MOVF 24,W 642 0599: MOVF 25,W
528 0537: MOVWF 26 643 059A: MOVWF 27
529 0538: CALL 20B 644 059B: CALL 26E
530 0539: MOVF 77,W 645 059C: MOVF 77,W
531 053A: MOVWF 26 646 059D: MOVWF 27
532 053B: MOVF 78,W 647 059E: MOVF 78,W
533 053C: MOVWF 27 648 059F: MOVWF 28
534 053D: MOVF 79,W 649 05A0: MOVF 79,W
535 053E: MOVWF 28 650 05A1: MOVWF 29
536 053F: MOVF 7A,W 651 05A2: MOVF 7A,W
537 0540: MOVWF 29 652 05A3: MOVWF 2A
538 0541: MOVWF 2D 653 05A4: MOVWF 2E
539 0542: MOVF 79,W 654 05A5: MOVF 79,W
540 0543: MOVWF 2C 655 05A6: MOVWF 2D
541 0544: MOVF 78,W 656 05A7: MOVF 78,W
542 0545: MOVWF 2B 657 05A8: MOVWF 2C
543 0546: MOVF 77,W 658 05A9: MOVF 77,W
544 0547: MOVWF 2A 659 05AA: MOVWF 2B
545 0548: CLRF 31 660 05AB: CLRF 32
546 0549: MOVLW FF 661 05AC: MOVLW FF
547 054A: MOVWF 30 662 05AD: MOVWF 31
548 054B: MOVLW 7F 663 05AE: MOVLW 7F
549 054C: MOVWF 2F 664 05AF: MOVWF 30
550 054D: MOVLW 8E 665 05B0: MOVLW 8E
551 054E: MOVWF 2E 666 05B1: MOVWF 2F
552 054F: CALL 228 667 05B2: CALL 28B
553 0550: MOVLW 52 668 05B3: MOVLW 52
554 0551: MOVWF 35 669 05B4: MOVWF 36
555 0552: MOVLW B8 670 05B5: MOVLW B8
556 0553: MOVWF 34 671 05B6: MOVWF 35
557 0554: MOVLW 2F 672 05B7: MOVLW 2F
558 0555: MOVWF 33 673 05B8: MOVWF 34
559 0556: MOVLW 86 674 05B9: MOVLW 86
560 0557: MOVWF 32 675 05BA: MOVWF 33
561 0558: MOVF 7A,W 676 05BB: MOVF 7A,W
562 0559: MOVWF 39 677 05BC: MOVWF 3A
563 055A: MOVF 79,W 678 05BD: MOVF 79,W
564 055B: MOVWF 38 679 05BE: MOVWF 39
565 055C: MOVF 78,W 680 05BF: MOVF 78,W
566 055D: MOVWF 37 681 05C0: MOVWF 38
567 055E: MOVF 77,W 682 05C1: MOVF 77,W
568 055F: MOVWF 36 683 05C2: MOVWF 37
569 0560: CALL 2F2 684 05C3: CALL 355
570 0561: BCF 03.1 685 05C4: BCF 03.1
571 0562: MOVLW 66 686 05C5: MOVLW 66
572 0563: MOVWF 29 687 05C6: MOVWF 2A
573 0564: MOVWF 28 688 05C7: MOVWF 29
574 0565: MOVLW BB 689 05C8: MOVLW BB
575 0566: MOVWF 27 690 05C9: MOVWF 28
576 0567: MOVLW 84 691 05CA: MOVLW 84
577 0568: MOVWF 26 692 05CB: MOVWF 27
578 0569: MOVF 7A,W 693 05CC: MOVF 7A,W
579 056A: MOVWF 2D 694 05CD: MOVWF 2E
580 056B: MOVF 79,W 695 05CE: MOVF 79,W
581 056C: MOVWF 2C 696 05CF: MOVWF 2D
582 056D: MOVF 78,W 697 05D0: MOVF 78,W
583 056E: MOVWF 2B 698 05D1: MOVWF 2C
584 056F: MOVF 77,W 699 05D2: MOVF 77,W
585 0570: MOVWF 2A 700 05D3: MOVWF 2B
586 0571: CALL 367 701 05D4: CALL 3CA
587 .................... } 702 .................... }
588 0572: BSF 0A.3 703 05D5: BSF 0A.3
589 0573: BCF 0A.4 704 05D6: BCF 0A.4
590 0574: GOTO 0A5 (RETURN) 705 05D7: GOTO 0DB (RETURN)
591 .................... 706 ....................
592 .................... float SHT25_get_hum() 707 .................... float SHT25_get_hum()
593 .................... { 708 .................... {
594 .................... unsigned int8 MSB, LSB, Check; 709 .................... unsigned int8 MSB, LSB, Check;
595 .................... unsigned int16 data; 710 .................... unsigned int16 data;
596 .................... 711 ....................
597 .................... i2c_start(); //RH 712 .................... i2c_start(); //RH
598 * 713 *
599 069E: BSF 20.4 714 0701: BSF 20.4
600 069F: MOVF 20,W 715 0702: MOVF 20,W
601 06A0: BSF 03.5 716 0703: BSF 03.5
602 06A1: MOVWF 07 717 0704: MOVWF 07
603 06A2: NOP 718 0705: NOP
604 06A3: BCF 03.5 719 0706: BCF 03.5
605 06A4: BSF 20.3 720 0707: BSF 20.3
606 06A5: MOVF 20,W 721 0708: MOVF 20,W
607 06A6: BSF 03.5 722 0709: BSF 03.5
608 06A7: MOVWF 07 723 070A: MOVWF 07
609 06A8: NOP 724 070B: NOP
610 06A9: BCF 03.5 725 070C: BCF 03.5
611 06AA: BCF 07.4 726 070D: BCF 07.4
612 06AB: BCF 20.4 727 070E: BCF 20.4
613 06AC: MOVF 20,W 728 070F: MOVF 20,W
614 06AD: BSF 03.5 729 0710: BSF 03.5
615 06AE: MOVWF 07 730 0711: MOVWF 07
616 06AF: NOP 731 0712: NOP
617 06B0: BCF 03.5 732 0713: BCF 03.5
618 06B1: BCF 07.3 733 0714: BCF 07.3
619 06B2: BCF 20.3 734 0715: BCF 20.3
620 06B3: MOVF 20,W 735 0716: MOVF 20,W
621 06B4: BSF 03.5 736 0717: BSF 03.5
622 06B5: MOVWF 07 737 0718: MOVWF 07
623 .................... I2C_Write(0x80); 738 .................... I2C_Write(SHT25_ADDR);
624 06B6: MOVLW 80 739 0719: MOVLW 80
625 06B7: BCF 03.5 740 071A: BCF 03.5
626 06B8: MOVWF 26 741 071B: MOVWF 27
627 06B9: CALL 0AE 742 071C: CALL 037
628 .................... I2C_write(0xE5); 743 .................... I2C_write(0xE5);
629 06BA: MOVLW E5 744 071D: MOVLW E5
630 06BB: MOVWF 26 745 071E: MOVWF 27
631 06BC: CALL 0AE 746 071F: CALL 037
632 .................... // i2c_stop(); 747 .................... // i2c_stop();
633 .................... 748 ....................
634 .................... delay_ms(100); 749 .................... delay_ms(100);
635 06BD: MOVLW 64 750 0720: MOVLW 64
636 06BE: MOVWF 26 751 0721: MOVWF 27
637 06BF: CALL 09A 752 0722: CALL 123
638 .................... 753 ....................
639 .................... i2c_start(); 754 .................... i2c_start();
640 06C0: BSF 20.4 755 0723: BSF 20.4
641 06C1: MOVF 20,W 756 0724: MOVF 20,W
642 06C2: BSF 03.5 757 0725: BSF 03.5
643 06C3: MOVWF 07 758 0726: MOVWF 07
644 06C4: NOP 759 0727: NOP
645 06C5: BCF 03.5 760 0728: BCF 03.5
646 06C6: BSF 20.3 761 0729: BSF 20.3
647 06C7: MOVF 20,W 762 072A: MOVF 20,W
648 06C8: BSF 03.5 763 072B: BSF 03.5
649 06C9: MOVWF 07 764 072C: MOVWF 07
650 06CA: NOP 765 072D: NOP
651 06CB: BCF 03.5 766 072E: BCF 03.5
652 06CC: BTFSS 07.3 767 072F: BTFSS 07.3
653 06CD: GOTO 6CC 768 0730: GOTO 72F
654 06CE: BCF 07.4 769 0731: BCF 07.4
655 06CF: BCF 20.4 770 0732: BCF 20.4
656 06D0: MOVF 20,W 771 0733: MOVF 20,W
657 06D1: BSF 03.5 772 0734: BSF 03.5
658 06D2: MOVWF 07 773 0735: MOVWF 07
659 06D3: NOP 774 0736: NOP
660 06D4: BCF 03.5 775 0737: BCF 03.5
661 06D5: BCF 07.3 776 0738: BCF 07.3
662 06D6: BCF 20.3 777 0739: BCF 20.3
663 06D7: MOVF 20,W 778 073A: MOVF 20,W
664 06D8: BSF 03.5 779 073B: BSF 03.5
665 06D9: MOVWF 07 780 073C: MOVWF 07
666 .................... I2C_Write(0x81); 781 .................... I2C_Write(SHT25_ADDR+1);
667 06DA: MOVLW 81 782 073D: MOVLW 81
668 06DB: BCF 03.5 783 073E: BCF 03.5
669 06DC: MOVWF 26 784 073F: MOVWF 27
670 06DD: CALL 0AE 785 0740: CALL 037
671 .................... MSB=i2c_read(1); 786 .................... MSB=i2c_read(1);
672 06DE: MOVLW 01 787 0741: MOVLW 01
673 06DF: MOVWF 77 788 0742: MOVWF 77
674 06E0: CALL 0F8 789 0743: CALL 137
675 06E1: MOVF 78,W 790 0744: MOVF 78,W
676 06E2: MOVWF 21 791 0745: MOVWF 22
677 .................... LSB=i2c_read(1); 792 .................... LSB=i2c_read(1);
678 06E3: MOVLW 01 793 0746: MOVLW 01
679 06E4: MOVWF 77 794 0747: MOVWF 77
680 06E5: CALL 0F8 795 0748: CALL 137
681 06E6: MOVF 78,W 796 0749: MOVF 78,W
682 06E7: MOVWF 22 797 074A: MOVWF 23
683 .................... Check=i2c_read(0); 798 .................... Check=i2c_read(0);
684 06E8: CLRF 77 799 074B: CLRF 77
685 06E9: CALL 0F8 800 074C: CALL 137
686 06EA: MOVF 78,W 801 074D: MOVF 78,W
687 06EB: MOVWF 23 802 074E: MOVWF 24
688 .................... i2c_stop(); 803 .................... i2c_stop();
689 06EC: BCF 20.4 804 074F: BCF 20.4
690 06ED: MOVF 20,W 805 0750: MOVF 20,W
691 06EE: BSF 03.5 806 0751: BSF 03.5
692 06EF: MOVWF 07 807 0752: MOVWF 07
693 06F0: NOP 808 0753: NOP
694 06F1: BCF 03.5 809 0754: BCF 03.5
695 06F2: BSF 20.3 810 0755: BSF 20.3
696 06F3: MOVF 20,W 811 0756: MOVF 20,W
697 06F4: BSF 03.5 812 0757: BSF 03.5
698 06F5: MOVWF 07 813 0758: MOVWF 07
699 06F6: BCF 03.5 814 0759: BCF 03.5
700 06F7: BTFSS 07.3 815 075A: BTFSS 07.3
701 06F8: GOTO 6F7 816 075B: GOTO 75A
702 06F9: NOP 817 075C: NOP
703 06FA: GOTO 6FB 818 075D: GOTO 75E
704 06FB: NOP 819 075E: NOP
705 06FC: BSF 20.4 820 075F: BSF 20.4
706 06FD: MOVF 20,W 821 0760: MOVF 20,W
707 06FE: BSF 03.5 822 0761: BSF 03.5
708 06FF: MOVWF 07 823 0762: MOVWF 07
709 0700: NOP 824 0763: NOP
710 .................... 825 ....................
711 .................... // printf("%X %X %X\r\n",MSB, LSB, Check); 826 .................... // printf("%X %X %X\r\n",MSB, LSB, Check);
712 .................... 827 ....................
713 .................... LSB = LSB >> 2; // trow out status bits 828 .................... LSB = LSB >> 2; // trow out status bits
714 0701: BCF 03.5 829 0764: BCF 03.5
715 0702: RRF 22,F 830 0765: RRF 23,F
716 0703: RRF 22,F 831 0766: RRF 23,F
717 0704: MOVLW 3F 832 0767: MOVLW 3F
718 0705: ANDWF 22,F 833 0768: ANDWF 23,F
719 .................... 834 ....................
720 .................... data = (((unsigned int16) MSB << 8) + (LSB << 4) ); 835 .................... data = (((unsigned int16) MSB << 8) + (LSB << 4) );
721 0706: CLRF 27 836 0769: CLRF 28
722 0707: MOVF 21,W 837 076A: MOVF 22,W
723 0708: MOVWF 26 838 076B: MOVWF 27
724 0709: MOVWF 27 839 076C: MOVWF 28
725 070A: CLRF 26 840 076D: CLRF 27
726 070B: SWAPF 22,W 841 076E: SWAPF 23,W
727 070C: MOVWF 77 842 076F: MOVWF 77
728 070D: MOVLW F0 843 0770: MOVLW F0
729 070E: ANDWF 77,F 844 0771: ANDWF 77,F
730 070F: MOVF 77,W 845 0772: MOVF 77,W
731 0710: ADDWF 26,W 846 0773: ADDWF 27,W
732 0711: MOVWF 24 847 0774: MOVWF 25
733 0712: MOVF 27,W 848 0775: MOVF 28,W
734 0713: MOVWF 25 849 0776: MOVWF 26
735 0714: BTFSC 03.0 850 0777: BTFSC 03.0
736 0715: INCF 25,F 851 0778: INCF 26,F
737 .................... return( -6.0 + 125.0*((float)data/0xFFFF)); 852 .................... return( -6.0 + 125.0*((float)data/0xFFFF));
738 0716: MOVF 25,W 853 0779: MOVF 26,W
739 0717: MOVWF 27 854 077A: MOVWF 28
740 0718: MOVF 24,W 855 077B: MOVF 25,W
741 0719: MOVWF 26 856 077C: MOVWF 27
742 071A: CALL 20B 857 077D: CALL 26E
743 071B: MOVF 77,W 858 077E: MOVF 77,W
744 071C: MOVWF 26 859 077F: MOVWF 27
745 071D: MOVF 78,W 860 0780: MOVF 78,W
746 071E: MOVWF 27 861 0781: MOVWF 28
747 071F: MOVF 79,W 862 0782: MOVF 79,W
748 0720: MOVWF 28 863 0783: MOVWF 29
749 0721: MOVF 7A,W 864 0784: MOVF 7A,W
750 0722: MOVWF 29 865 0785: MOVWF 2A
751 0723: MOVWF 2D 866 0786: MOVWF 2E
752 0724: MOVF 79,W 867 0787: MOVF 79,W
753 0725: MOVWF 2C 868 0788: MOVWF 2D
754 0726: MOVF 78,W 869 0789: MOVF 78,W
755 0727: MOVWF 2B 870 078A: MOVWF 2C
756 0728: MOVF 77,W 871 078B: MOVF 77,W
757 0729: MOVWF 2A 872 078C: MOVWF 2B
758 072A: CLRF 31 873 078D: CLRF 32
759 072B: MOVLW FF 874 078E: MOVLW FF
760 072C: MOVWF 30 875 078F: MOVWF 31
761 072D: MOVLW 7F 876 0790: MOVLW 7F
762 072E: MOVWF 2F 877 0791: MOVWF 30
763 072F: MOVLW 8E 878 0792: MOVLW 8E
764 0730: MOVWF 2E 879 0793: MOVWF 2F
765 0731: CALL 228 880 0794: CALL 28B
766 0732: CLRF 35 881 0795: CLRF 36
767 0733: CLRF 34 882 0796: CLRF 35
768 0734: MOVLW 7A 883 0797: MOVLW 7A
769 0735: MOVWF 33 884 0798: MOVWF 34
770 0736: MOVLW 85 885 0799: MOVLW 85
771 0737: MOVWF 32 886 079A: MOVWF 33
772 0738: MOVF 7A,W 887 079B: MOVF 7A,W
773 0739: MOVWF 39 888 079C: MOVWF 3A
774 073A: MOVF 79,W 889 079D: MOVF 79,W
775 073B: MOVWF 38 890 079E: MOVWF 39
776 073C: MOVF 78,W 891 079F: MOVF 78,W
777 073D: MOVWF 37 892 07A0: MOVWF 38
778 073E: MOVF 77,W 893 07A1: MOVF 77,W
779 073F: MOVWF 36 894 07A2: MOVWF 37
780 0740: CALL 2F2 895 07A3: CALL 355
781 0741: BCF 03.1 896 07A4: BCF 03.1
782 0742: CLRF 29 897 07A5: CLRF 2A
783 0743: CLRF 28 898 07A6: CLRF 29
784 0744: MOVLW C0 899 07A7: MOVLW C0
785 0745: MOVWF 27 900 07A8: MOVWF 28
786 0746: MOVLW 81 901 07A9: MOVLW 81
787 0747: MOVWF 26 902 07AA: MOVWF 27
788 0748: MOVF 7A,W 903 07AB: MOVF 7A,W
789 0749: MOVWF 2D 904 07AC: MOVWF 2E
790 074A: MOVF 79,W 905 07AD: MOVF 79,W
791 074B: MOVWF 2C 906 07AE: MOVWF 2D
792 074C: MOVF 78,W 907 07AF: MOVF 78,W
793 074D: MOVWF 2B 908 07B0: MOVWF 2C
794 074E: MOVF 77,W 909 07B1: MOVF 77,W
795 074F: MOVWF 2A 910 07B2: MOVWF 2B
796 0750: CALL 367 911 07B3: CALL 3CA
797 .................... } 912 .................... }
798 0751: BSF 0A.3 913 07B4: BSF 0A.3
799 0752: BCF 0A.4 914 07B5: BCF 0A.4
800 0753: GOTO 0E3 (RETURN) 915 07B6: GOTO 119 (RETURN)
801 .................... 916 ....................
802 .................... 917 ....................
803 .................... void main() 918 .................... void main()
804 .................... { 919 .................... {
805 * 920 *
806 002F: DATA 00,00 921 0036: DATA 00,00
807 * 922 *
808 0800: CLRF 04 923 0800: CLRF 04
809 0801: BCF 03.7 924 0801: BCF 03.7
810 0802: MOVLW 1F 925 0802: MOVLW 1F
811 0803: ANDWF 03,F 926 0803: ANDWF 03,F
Line 829... Line 944...
829 0815: MOVWF 08 944 0815: MOVWF 08
830 0816: BCF 03.5 945 0816: BCF 03.5
831 0817: CLRF 07 946 0817: CLRF 07
832 0818: CLRF 08 947 0818: CLRF 08
833 0819: CLRF 09 948 0819: CLRF 09
-   949 *
-   950 081D: CLRF 21
-   951 .................... unsigned int8 i=0;
834 .................... 952 ....................
835 .................... setup_adc_ports(NO_ANALOGS|VSS_VDD); 953 .................... setup_adc_ports(NO_ANALOGS|VSS_VDD);
836 * -  
837 081D: BSF 03.5 954 081E: BSF 03.5
838 081E: BSF 03.6 955 081F: BSF 03.6
839 081F: MOVF 09,W 956 0820: MOVF 09,W
840 0820: ANDLW C0 957 0821: ANDLW C0
841 0821: MOVWF 09 958 0822: MOVWF 09
842 0822: BCF 03.6 959 0823: BCF 03.6
843 0823: BCF 1F.4 960 0824: BCF 1F.4
844 0824: BCF 1F.5 961 0825: BCF 1F.5
845 0825: MOVLW 00 962 0826: MOVLW 00
846 0826: BSF 03.6 963 0827: BSF 03.6
847 0827: MOVWF 08 964 0828: MOVWF 08
848 .................... setup_adc(ADC_CLOCK_DIV_2); 965 .................... setup_adc(ADC_CLOCK_DIV_2);
849 0828: BCF 03.5 966 0829: BCF 03.5
850 0829: BCF 03.6 967 082A: BCF 03.6
851 082A: BCF 1F.6 968 082B: BCF 1F.6
852 082B: BCF 1F.7 969 082C: BCF 1F.7
853 082C: BSF 03.5 970 082D: BSF 03.5
854 082D: BCF 1F.7 971 082E: BCF 1F.7
855 082E: BCF 03.5 972 082F: BCF 03.5
856 082F: BSF 1F.0 973 0830: BSF 1F.0
857 .................... setup_spi(SPI_SS_DISABLED); 974 .................... setup_spi(SPI_SS_DISABLED);
858 0830: BCF 14.5 975 0831: BCF 14.5
859 0831: BCF 20.5 976 0832: BCF 20.5
860 0832: MOVF 20,W 977 0833: MOVF 20,W
861 0833: BSF 03.5 978 0834: BSF 03.5
862 0834: MOVWF 07 979 0835: MOVWF 07
863 0835: BCF 03.5 980 0836: BCF 03.5
864 0836: BSF 20.4 981 0837: BSF 20.4
865 0837: MOVF 20,W 982 0838: MOVF 20,W
866 0838: BSF 03.5 983 0839: BSF 03.5
867 0839: MOVWF 07 984 083A: MOVWF 07
868 083A: BCF 03.5 985 083B: BCF 03.5
869 083B: BCF 20.3 986 083C: BCF 20.3
870 083C: MOVF 20,W 987 083D: MOVF 20,W
871 083D: BSF 03.5 988 083E: BSF 03.5
872 083E: MOVWF 07 989 083F: MOVWF 07
873 083F: MOVLW 01 990 0840: MOVLW 01
874 0840: BCF 03.5 991 0841: BCF 03.5
875 0841: MOVWF 14 992 0842: MOVWF 14
876 0842: MOVLW 00 993 0843: MOVLW 00
877 0843: BSF 03.5 994 0844: BSF 03.5
878 0844: MOVWF 14 995 0845: MOVWF 14
879 .................... setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1); 996 .................... setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
880 0845: MOVF 01,W 997 0846: MOVF 01,W
881 0846: ANDLW C7 998 0847: ANDLW C7
882 0847: IORLW 08 999 0848: IORLW 08
883 0848: MOVWF 01 1000 0849: MOVWF 01
884 .................... setup_timer_1(T1_DISABLED); 1001 .................... setup_timer_1(T1_DISABLED);
885 0849: BCF 03.5 1002 084A: BCF 03.5
886 084A: CLRF 10 1003 084B: CLRF 10
887 .................... setup_timer_2(T2_DISABLED,0,1); 1004 .................... setup_timer_2(T2_DISABLED,0,1);
888 084B: MOVLW 00 1005 084C: MOVLW 00
889 084C: MOVWF 78 1006 084D: MOVWF 78
890 084D: MOVWF 12 1007 084E: MOVWF 12
891 084E: MOVLW 00 1008 084F: MOVLW 00
892 084F: BSF 03.5 1009 0850: BSF 03.5
893 0850: MOVWF 12 1010 0851: MOVWF 12
894 .................... setup_ccp1(CCP_OFF); 1011 .................... setup_ccp1(CCP_OFF);
895 0851: BCF 03.5 1012 0852: BCF 03.5
896 0852: BSF 20.2 1013 0853: BSF 20.2
897 0853: MOVF 20,W 1014 0854: MOVF 20,W
898 0854: BSF 03.5 1015 0855: BSF 03.5
899 0855: MOVWF 07 1016 0856: MOVWF 07
900 0856: BCF 03.5 1017 0857: BCF 03.5
901 0857: CLRF 17 1018 0858: CLRF 17
902 0858: BSF 03.5 1019 0859: BSF 03.5
903 0859: CLRF 1B 1020 085A: CLRF 1B
904 085A: CLRF 1C 1021 085B: CLRF 1C
905 085B: MOVLW 01 1022 085C: MOVLW 01
906 085C: MOVWF 1D 1023 085D: MOVWF 1D
907 .................... setup_comparator(NC_NC_NC_NC); 1024 .................... setup_comparator(NC_NC_NC_NC);
908 085D: BCF 03.5 1025 085E: BCF 03.5
909 085E: BSF 03.6 1026 085F: BSF 03.6
910 085F: CLRF 07 1027 0860: CLRF 07
911 0860: CLRF 08 1028 0861: CLRF 08
912 0861: CLRF 09 1029 0862: CLRF 09
913 .................... 1030 ....................
914 .................... void SHT25_soft_reset(); 1031 .................... SHT25_soft_reset();
-   1032 0863: BCF 0A.3
-   1033 0864: BCF 03.6
-   1034 0865: GOTO 081
-   1035 0866: BSF 0A.3
915 .................... printf("SHT25 humidity and temperature sensor example \r\n",); 1036 .................... printf("SHT25 humidity and temperature sensor example \r\n",);
916 0862: MOVLW 04 1037 0867: MOVLW 04
-   1038 0868: BSF 03.6
917 0863: MOVWF 0D 1039 0869: MOVWF 0D
918 0864: MOVLW 00 1040 086A: MOVLW 00
919 0865: MOVWF 0F 1041 086B: MOVWF 0F
920 0866: BCF 0A.3 1042 086C: BCF 0A.3
921 0867: BCF 03.6 1043 086D: BCF 03.6
922 0868: GOTO 052 1044 086E: GOTO 0DB
923 0869: BSF 0A.3 1045 086F: BSF 0A.3
924 .................... delay_ms (500); 1046 .................... delay_ms (500);
925 086A: MOVLW 02 1047 0870: MOVLW 02
926 086B: MOVWF 21 1048 0871: MOVWF 22
927 086C: MOVLW FA 1049 0872: MOVLW FA
928 086D: MOVWF 26 1050 0873: MOVWF 27
929 086E: BCF 0A.3 1051 0874: BCF 0A.3
930 086F: CALL 09A 1052 0875: CALL 123
931 0870: BSF 0A.3 1053 0876: BSF 0A.3
932 0871: DECFSZ 21,F 1054 0877: DECFSZ 22,F
933 0872: GOTO 06C 1055 0878: GOTO 072
934 .................... 1056 ....................
935 .................... while(TRUE) 1057 .................... while(TRUE)
936 .................... { 1058 .................... {
-   1059 .................... if (i<10)
-   1060 0879: MOVF 21,W
-   1061 087A: SUBLW 09
-   1062 087B: BTFSS 03.0
-   1063 087C: GOTO 0A6
937 .................... printf("setup: %X \r\n",SHT25_setup()); 1064 .................... printf("setup: %X \r\n",SHT25_setup(SHT25_RH12_T14 | SHT25_HEATER_OFF));
-   1065 087D: CLRF 22
938 0873: BCF 0A.3 1066 087E: BCF 0A.3
939 0874: GOTO 13D 1067 087F: CALL 17C
940 0875: BSF 0A.3 1068 0880: BSF 0A.3
941 0876: MOVF 78,W 1069 0881: MOVF 78,W
942 0877: MOVWF 21 1070 0882: MOVWF 22
943 0878: MOVLW 1D 1071 0883: MOVLW 1D
944 0879: BSF 03.6 1072 0884: BSF 03.6
945 087A: MOVWF 0D 1073 0885: MOVWF 0D
946 087B: MOVLW 00 1074 0886: MOVLW 00
947 087C: MOVWF 0F 1075 0887: MOVWF 0F
948 087D: BCF 03.0 1076 0888: BCF 03.0
949 087E: MOVLW 07 1077 0889: MOVLW 07
950 087F: BCF 03.6 1078 088A: BCF 03.6
951 0880: MOVWF 25 1079 088B: MOVWF 26
952 0881: BCF 0A.3 1080 088C: BCF 0A.3
953 0882: CALL 199 1081 088D: CALL 1FE
954 0883: BSF 0A.3 1082 088E: BSF 0A.3
955 0884: MOVF 21,W 1083 088F: MOVF 22,W
956 0885: MOVWF 22 1084 0890: MOVWF 23
957 0886: MOVLW 37 1085 0891: MOVLW 37
-   1086 0892: MOVWF 24
-   1087 0893: BCF 0A.3
-   1088 0894: CALL 24D
-   1089 0895: BSF 0A.3
-   1090 0896: MOVLW 20
958 0887: MOVWF 23 1091 0897: MOVWF 33
959 0888: BCF 0A.3 1092 0898: BCF 0A.3
960 0889: GOTO 1E8 1093 0899: CALL 0B9
961 088A: BSF 0A.3 1094 089A: BSF 0A.3
962 088B: MOVLW 20 1095 089B: MOVLW 0D
963 088C: MOVWF 32 1096 089C: MOVWF 33
964 088D: BCF 0A.3 1097 089D: BCF 0A.3
965 088E: CALL 030 1098 089E: CALL 0B9
966 088F: BSF 0A.3 1099 089F: BSF 0A.3
967 0890: MOVLW 0D 1100 08A0: MOVLW 0A
968 0891: MOVWF 32 1101 08A1: MOVWF 33
969 0892: BCF 0A.3 1102 08A2: BCF 0A.3
970 0893: CALL 030 1103 08A3: CALL 0B9
-   1104 08A4: BSF 0A.3
-   1105 .................... else
-   1106 08A5: GOTO 0D0
-   1107 .................... {
-   1108 .................... printf("setup: %X \r\n",SHT25_setup(SHT25_RH12_T14 | SHT25_HEATER_ON));
-   1109 08A6: MOVLW 04
-   1110 08A7: MOVWF 22
-   1111 08A8: BCF 0A.3
-   1112 08A9: CALL 17C
-   1113 08AA: BSF 0A.3
-   1114 08AB: MOVF 78,W
-   1115 08AC: MOVWF 22
-   1116 08AD: MOVLW 24
-   1117 08AE: BSF 03.6
-   1118 08AF: MOVWF 0D
-   1119 08B0: MOVLW 00
-   1120 08B1: MOVWF 0F
-   1121 08B2: BCF 03.0
-   1122 08B3: MOVLW 07
-   1123 08B4: BCF 03.6
-   1124 08B5: MOVWF 26
-   1125 08B6: BCF 0A.3
-   1126 08B7: CALL 1FE
-   1127 08B8: BSF 0A.3
-   1128 08B9: MOVF 22,W
-   1129 08BA: MOVWF 23
-   1130 08BB: MOVLW 37
-   1131 08BC: MOVWF 24
-   1132 08BD: BCF 0A.3
-   1133 08BE: CALL 24D
-   1134 08BF: BSF 0A.3
-   1135 08C0: MOVLW 20
-   1136 08C1: MOVWF 33
-   1137 08C2: BCF 0A.3
-   1138 08C3: CALL 0B9
971 0894: BSF 0A.3 1139 08C4: BSF 0A.3
972 0895: MOVLW 0A 1140 08C5: MOVLW 0D
973 0896: MOVWF 32 1141 08C6: MOVWF 33
974 0897: BCF 0A.3 1142 08C7: BCF 0A.3
975 0898: CALL 030 1143 08C8: CALL 0B9
976 0899: BSF 0A.3 1144 08C9: BSF 0A.3
-   1145 08CA: MOVLW 0A
-   1146 08CB: MOVWF 33
-   1147 08CC: BCF 0A.3
-   1148 08CD: CALL 0B9
-   1149 08CE: BSF 0A.3
-   1150 .................... i = 0;
-   1151 08CF: CLRF 21
-   1152 .................... }
977 .................... delay_ms (500); 1153 .................... delay_ms (500);
978 089A: MOVLW 02 1154 08D0: MOVLW 02
979 089B: MOVWF 21 1155 08D1: MOVWF 22
980 089C: MOVLW FA 1156 08D2: MOVLW FA
981 089D: MOVWF 26 1157 08D3: MOVWF 27
982 089E: BCF 0A.3 1158 08D4: BCF 0A.3
983 089F: CALL 09A 1159 08D5: CALL 123
984 08A0: BSF 0A.3 1160 08D6: BSF 0A.3
985 08A1: DECFSZ 21,F 1161 08D7: DECFSZ 22,F
986 08A2: GOTO 09C 1162 08D8: GOTO 0D2
987 .................... printf("Temp: %f \r\n",SHT25_get_temp()); 1163 .................... printf("Temp: %f \r\n",SHT25_get_temp());
988 08A3: BCF 0A.3 1164 08D9: BCF 0A.3
989 08A4: GOTO 4A8 1165 08DA: GOTO 50B
990 08A5: BSF 0A.3 1166 08DB: BSF 0A.3
991 08A6: MOVF 77,W 1167 08DC: MOVF 77,W
992 08A7: MOVWF 21 1168 08DD: MOVWF 22
993 08A8: MOVF 78,W 1169 08DE: MOVF 78,W
994 08A9: MOVWF 22 1170 08DF: MOVWF 23
995 08AA: MOVF 79,W 1171 08E0: MOVF 79,W
996 08AB: MOVWF 23 1172 08E1: MOVWF 24
997 08AC: MOVF 7A,W 1173 08E2: MOVF 7A,W
998 08AD: MOVWF 24 1174 08E3: MOVWF 25
999 08AE: MOVLW 24 1175 08E4: MOVLW 2B
1000 08AF: BSF 03.6 1176 08E5: BSF 03.6
1001 08B0: MOVWF 0D 1177 08E6: MOVWF 0D
1002 08B1: MOVLW 00 1178 08E7: MOVLW 00
1003 08B2: MOVWF 0F 1179 08E8: MOVWF 0F
1004 08B3: BCF 03.0 1180 08E9: BCF 03.0
1005 08B4: MOVLW 06 1181 08EA: MOVLW 06
1006 08B5: BCF 03.6 1182 08EB: BCF 03.6
1007 08B6: MOVWF 25 1183 08EC: MOVWF 26
1008 08B7: BCF 0A.3 1184 08ED: BCF 0A.3
1009 08B8: CALL 199 1185 08EE: CALL 1FE
1010 08B9: BSF 0A.3 1186 08EF: BSF 0A.3
1011 08BA: MOVLW 89 1187 08F0: MOVLW 89
1012 08BB: MOVWF 04 1188 08F1: MOVWF 04
1013 08BC: MOVF 24,W 1189 08F2: MOVF 25,W
1014 08BD: MOVWF 28 1190 08F3: MOVWF 29
1015 08BE: MOVF 23,W 1191 08F4: MOVF 24,W
1016 08BF: MOVWF 27 1192 08F5: MOVWF 28
1017 08C0: MOVF 22,W 1193 08F6: MOVF 23,W
1018 08C1: MOVWF 26 1194 08F7: MOVWF 27
1019 08C2: MOVF 21,W 1195 08F8: MOVF 22,W
1020 08C3: MOVWF 25 1196 08F9: MOVWF 26
1021 08C4: MOVLW 02 1197 08FA: MOVLW 02
1022 08C5: MOVWF 29 1198 08FB: MOVWF 2A
1023 08C6: BCF 0A.3 1199 08FC: BCF 0A.3
1024 08C7: CALL 5B7 1200 08FD: CALL 61A
1025 08C8: BSF 0A.3 1201 08FE: BSF 0A.3
1026 08C9: MOVLW 20 1202 08FF: MOVLW 20
1027 08CA: MOVWF 32 1203 0900: MOVWF 33
1028 08CB: BCF 0A.3 1204 0901: BCF 0A.3
1029 08CC: CALL 030 1205 0902: CALL 0B9
1030 08CD: BSF 0A.3 1206 0903: BSF 0A.3
1031 08CE: MOVLW 0D 1207 0904: MOVLW 0D
1032 08CF: MOVWF 32 1208 0905: MOVWF 33
1033 08D0: BCF 0A.3 1209 0906: BCF 0A.3
1034 08D1: CALL 030 1210 0907: CALL 0B9
1035 08D2: BSF 0A.3 1211 0908: BSF 0A.3
1036 08D3: MOVLW 0A 1212 0909: MOVLW 0A
1037 08D4: MOVWF 32 1213 090A: MOVWF 33
1038 08D5: BCF 0A.3 1214 090B: BCF 0A.3
1039 08D6: CALL 030 1215 090C: CALL 0B9
1040 08D7: BSF 0A.3 1216 090D: BSF 0A.3
1041 .................... delay_ms (500); 1217 .................... delay_ms (500);
1042 08D8: MOVLW 02 1218 090E: MOVLW 02
1043 08D9: MOVWF 21 1219 090F: MOVWF 22
1044 08DA: MOVLW FA 1220 0910: MOVLW FA
1045 08DB: MOVWF 26 1221 0911: MOVWF 27
1046 08DC: BCF 0A.3 1222 0912: BCF 0A.3
1047 08DD: CALL 09A 1223 0913: CALL 123
1048 08DE: BSF 0A.3 1224 0914: BSF 0A.3
1049 08DF: DECFSZ 21,F 1225 0915: DECFSZ 22,F
1050 08E0: GOTO 0DA 1226 0916: GOTO 110
1051 .................... printf("Hum: %f \r\n",SHT25_get_hum()); 1227 .................... printf("Hum: %f \r\n",SHT25_get_hum());
1052 08E1: BCF 0A.3 1228 0917: BCF 0A.3
1053 08E2: GOTO 69E 1229 0918: GOTO 701
1054 08E3: BSF 0A.3 1230 0919: BSF 0A.3
1055 08E4: MOVF 77,W 1231 091A: MOVF 77,W
1056 08E5: MOVWF 21 1232 091B: MOVWF 22
1057 08E6: MOVF 78,W 1233 091C: MOVF 78,W
1058 08E7: MOVWF 22 1234 091D: MOVWF 23
1059 08E8: MOVF 79,W 1235 091E: MOVF 79,W
1060 08E9: MOVWF 23 1236 091F: MOVWF 24
1061 08EA: MOVF 7A,W 1237 0920: MOVF 7A,W
1062 08EB: MOVWF 24 1238 0921: MOVWF 25
1063 08EC: MOVLW 2A 1239 0922: MOVLW 31
1064 08ED: BSF 03.6 1240 0923: BSF 03.6
1065 08EE: MOVWF 0D 1241 0924: MOVWF 0D
1066 08EF: MOVLW 00 1242 0925: MOVLW 00
1067 08F0: MOVWF 0F 1243 0926: MOVWF 0F
1068 08F1: BCF 03.0 1244 0927: BCF 03.0
1069 08F2: MOVLW 05 1245 0928: MOVLW 05
1070 08F3: BCF 03.6 1246 0929: BCF 03.6
1071 08F4: MOVWF 25 1247 092A: MOVWF 26
1072 08F5: BCF 0A.3 1248 092B: BCF 0A.3
1073 08F6: CALL 199 1249 092C: CALL 1FE
1074 08F7: BSF 0A.3 1250 092D: BSF 0A.3
1075 08F8: MOVLW 89 1251 092E: MOVLW 89
1076 08F9: MOVWF 04 1252 092F: MOVWF 04
1077 08FA: MOVF 24,W 1253 0930: MOVF 25,W
1078 08FB: MOVWF 28 1254 0931: MOVWF 29
1079 08FC: MOVF 23,W 1255 0932: MOVF 24,W
1080 08FD: MOVWF 27 1256 0933: MOVWF 28
1081 08FE: MOVF 22,W 1257 0934: MOVF 23,W
1082 08FF: MOVWF 26 1258 0935: MOVWF 27
1083 0900: MOVF 21,W 1259 0936: MOVF 22,W
1084 0901: MOVWF 25 1260 0937: MOVWF 26
1085 0902: MOVLW 02 1261 0938: MOVLW 02
1086 0903: MOVWF 29 1262 0939: MOVWF 2A
1087 0904: BCF 0A.3 1263 093A: BCF 0A.3
1088 0905: CALL 5B7 1264 093B: CALL 61A
1089 0906: BSF 0A.3 1265 093C: BSF 0A.3
1090 0907: MOVLW 20 1266 093D: MOVLW 20
1091 0908: MOVWF 32 1267 093E: MOVWF 33
1092 0909: BCF 0A.3 1268 093F: BCF 0A.3
1093 090A: CALL 030 1269 0940: CALL 0B9
1094 090B: BSF 0A.3 1270 0941: BSF 0A.3
1095 090C: MOVLW 0D 1271 0942: MOVLW 0D
1096 090D: MOVWF 32 1272 0943: MOVWF 33
1097 090E: BCF 0A.3 1273 0944: BCF 0A.3
1098 090F: CALL 030 1274 0945: CALL 0B9
1099 0910: BSF 0A.3 1275 0946: BSF 0A.3
1100 0911: MOVLW 0A 1276 0947: MOVLW 0A
1101 0912: MOVWF 32 1277 0948: MOVWF 33
1102 0913: BCF 0A.3 1278 0949: BCF 0A.3
1103 0914: CALL 030 1279 094A: CALL 0B9
1104 0915: BSF 0A.3 1280 094B: BSF 0A.3
1105 .................... delay_ms (1000); 1281 .................... delay_ms (1000);
1106 0916: MOVLW 04 1282 094C: MOVLW 04
1107 0917: MOVWF 21 1283 094D: MOVWF 22
1108 0918: MOVLW FA 1284 094E: MOVLW FA
1109 0919: MOVWF 26 1285 094F: MOVWF 27
1110 091A: BCF 0A.3 1286 0950: BCF 0A.3
1111 091B: CALL 09A 1287 0951: CALL 123
1112 091C: BSF 0A.3 1288 0952: BSF 0A.3
1113 091D: DECFSZ 21,F 1289 0953: DECFSZ 22,F
1114 091E: GOTO 118 1290 0954: GOTO 14E
-   1291 .................... i++;
-   1292 0955: INCF 21,F
1115 .................... } 1293 .................... }
1116 091F: GOTO 073 1294 0956: GOTO 079
1117 .................... } 1295 .................... }
1118 .................... 1296 ....................
1119 0920: SLEEP 1297 0957: SLEEP
1120   1298  
1121 Configuration Fuses: 1299 Configuration Fuses:
1122 Word 1: 2CF4 INTRC_IO NOWDT NOPUT MCLR NOPROTECT NOCPD NOBROWNOUT IESO FCMEN NOLVP NODEBUG 1300 Word 1: 2CF4 INTRC_IO NOWDT NOPUT MCLR NOPROTECT NOCPD NOBROWNOUT IESO FCMEN NOLVP NODEBUG
1123 Word 2: 3FFF NOWRT BORV40 1301 Word 2: 3FFF NOWRT BORV40