📄 ecp_power.lst
字号:
; ADCOVIE disabled
242 000146
; ADC2TOVIE disabled
243 000146
; No Enable Conversion
244 000146
; No start
245 000146 B2401202A201 mov #0x0212, &ADC12CTL1
; Start on address 0
246 00014C
; ADC12 source
247 00014C
; SAMPCON from timer
248 00014C
; No invert
249 00014C
; ADC12 div = 1
250 00014C
; ADC12 clk MCLK
251 00014C
; Sequence of channels
252 00014C
; Readonly
253 00014C F24010008000 mov.b #0x10, &ADC12MCTL0
; Mem0 = A0
254 000152 F24011008100 mov.b #0x11, &ADC12MCTL1
; Mem1 = A1
255 000158 F24012008200 mov.b #0x12, &ADC12MCTL2
; Mem2 = A2
256 00015E F2409B008300 mov.b #0x9B, &ADC12MCTL3
; Mem3 = AVCC, End of
257 000164
; sequence
258 000164 8243A601 clr &ADC12IE
; Disable Interrupts
259 000168
260 000168 B2D00300A001 bis #0x0003,&ADC12CTL0
; Start conversion
261 00016E 0412 push R4
; Save R4
262 000170 1442A201 WaitConvComplete mov &ADC12CTL1,R4
; Get
the status
reg
263 000174 14F3 and #0x0001,R4
; Mask busy but
264 000176 FC23 jnz WaitConvComplete
; Not done
265 000178 B2C00300A001 bic #0x0003,&ADC12CTL0
; Prep for next conv
266 00017E 3441 pop R4
; Restore R4
267 000180 90424001.... mov &ADC12MEM0, Volts3V3
; Save
3.3V
voltage
268 000186 90424201.... mov &ADC12MEM1, Volts1V8
; Save
1.8V
voltage
269 00018C 90424401.... mov &ADC12MEM2, Volts1V3
; Save
1.3V
voltage
270 000192 90424601.... mov &ADC12MEM3, VoltsECP
; Save
3.3V ECP
Voltage
271 000198 3041 ret
272 00019A
273 00019A ; **********************************************
******************************
274 00019A ; Function: CheckPower
275 00019A ;
276 00019A ; Purpose: Checks the EVM power supplies.
277 00019A ;
278 00019A ; Inputs: None
279 00019A ;
280 00019A ; Returns: Memory location POWERSTATUS - Zero
if all supplies are good, other-
281 00019A ; wise bits are set according to the
fail codes. Memory locations
282 00019A ; Volts3V3, Volts1V8, Volts1V3, and
VoltsECP are modified via a
283 00019A ; call to ReadPS.
284 00019A ; **********************************************
******************************
285 000000 PUBLIC CheckPower
286 00019A 0812 CheckPower push R8
; Save regs
287 00019C 0F12 push R15
288 00019E 0F43 clr R15
; R15 stores fails
289 0001A0 B012.... call #ReadPS
; Go read PS voltages
290 0001A4 1840.... Check1V3 mov Volts1V3,R8
; Get
voltage
291 0001A8 3890D006 cmp #LOW_LIMIT_1V3,R8
; Check low
292 0001AC 0334 jge LowGood1V3
; OK
293 0001AE 7FD01000 bis.b #FAIL_1V3,R15
; Set fail code
294 0001B2 053C jmp Check1V8
; Bad
295 0001B4 38905308 LowGood1V3 cmp #HIGH_LIMIT_1V3,R8
; Check high
296 0001B8 0238 jl Check1V8
; OK
297 0001BA 7FD01000 bis.b #FAIL_1V3,R15
; Set fail code
298 0001BE 1840.... Check1V8 mov Volts1V8,R8
; Get
voltage
299 0001C2 38906E09 cmp #LOW_LIMIT_1V8,R8
; Check low
300 0001C6 0334 jge LowGood1V8
; OK
301 0001C8 7FD02000 bis.b #FAIL_1V8,R15
; Set fail code
302 0001CC 053C jmp Check3V3
; Bad
303 0001CE 3890870B LowGood1V8 cmp #HIGH_LIMIT_1V8,R8
; Check high
304 0001D2 0238 jl Check3V3
; OK
305 0001D4 7FD02000 bis.b #FAIL_1V8,R15
; Set fail code
306 0001D8 1840.... Check3V3 mov Volts3V3,R8
; Get
voltage
307 0001DC 38908009 cmp #LOW_LIMIT_3V3,R8
; Check low
308 0001E0 0234 jge LowGood3V3
; OK
309 0001E2 7FD2 bis.b #FAIL_3V3,R15
; Set fail code
310 0001E4 043C jmp CheckECP
; Bad
311 0001E6 38909C0B LowGood3V3 cmp #HIGH_LIMIT_3V3,R8
; Check high
312 0001EA 0138 jl CheckECP
; OK
313 0001EC 7FD2 bis.b #FAIL_3V3,R15
; Set fail code
314 0001EE 1840.... CheckECP mov VoltsECP,R8
; Get
voltage
315 0001F2 38908009 cmp #LOW_LIMIT_ECP,R8
; Check low
316 0001F6 0234 jge LowGoodECP
; OK
317 0001F8 6FD2 bis.b #FAIL_ECP,R15
; Set fail code
318 0001FA 043C jmp PSCheckDone
; Bad
319 0001FC 38909C0B LowGoodECP cmp #HIGH_LIMIT_ECP,R8
; Check high
320 000200 0138 jl PSCheckDone
; OK
321 000202 6FD2 bis.b #FAIL_ECP,R15
; Set fail code
322 000204 C04F.... PSCheckDone mov.b R15,PowerStatus
; Save power
status
323 000208 7FF3 and.b #0xFF,R15
; Is R15 zero?
324 00020A 0520 jnz PowerError
; Nope
325 00020C E0C2.... bic.b #ECP_POWER_ERROR,ECPStat
us ; Clear power fail bit
326 000210 3F41 pop R15
; Restore Regs used
327 000212 3841 pop R8
328 000214 3041 ret
329 000216 E0D2.... PowerError bis.b #ECP_POWER_ERROR,ECPStat
us ; Set power fail bit
330 00021A 3F41 pop R15
331 00021C 3841 pop R8
332 00021E 3041 ret
333 000220 END
##############################
# CRC:786A #
# Errors: 0 #
# Warnings: 0 #
# Bytes: 544 #
##############################
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -