PCDVD數位科技討論區

PCDVD數位科技討論區 (https://www.pcdvd.com.tw/index.php)
-   七嘴八舌異言堂 (https://www.pcdvd.com.tw/forumdisplay.php?f=12)
-   -   關於8051的問題程式碼或電路問題 (https://www.pcdvd.com.tw/showthread.php?t=764032)

ivy11111 2007-12-20 09:44 PM

關於8051的問題程式碼或電路問題
 
ORG 00H
MAIN:
MOV P2,#11111111B
MAIN1:
MOV P1,#11111111B
MOV R4,#10
JB P2.0,NEXT10
SETB P3.0
MOV R4,#100
NEXT10:
MOV P1,#11111111B
JB P2.1,NEXT30
SETB P3.1
MOV R4,#200
NEXT30:
CALL DELAY
MOV P1,#00000000B
CALL DELAY
LJMP MAIN1
DELAY:
MOV A,R4
MOV R5,A
$0:
MOV R6,#200
$1:
MOV R7,#250
$2:
DJNZ R7,$2
DJNZ R6,$1
DJNZ R5,$0
RET
END






以上是我的程式碼



電路是以89s51以P2 .0~7腳位透過74LS244來連接ULN2003A,ULN2003A來驅動繼電器。<89S51沒有加提升電阻>



初期運作沒問題 BUT只要過了一小時或二小時就是"當機" WHY WHY ??悶..

yamaking 2007-12-21 12:14 AM

[
引用:
作者ivy11111
ORG 00H
MAIN:
MOV P2,#11111111B
MAIN1:
..............................
..............

初期運作沒問題 BUT只要過了一小時或二小時就...



電路有自動reset嗎? 當機後有使用示波器量測腳位嗎?

可以降低delay 時間 ,不用去真的等待1~2小時直到當機

如果降低delay時間之後很快又當,那就是程式有問題

如果一樣沒當機那就要檢查電路了,有無虛焊等等問題

還有程式當中盡量別使用delay程式,而採用計算程式跑一遍所消耗的時間加上記數器

來當做delay會比較接近業界的做法.(這是業界工程師跟我說的,他們搞家電控制的).


脫離單晶太久了   僅提供這兩種除錯方法,希望有高手提供更好的方法


所有的時間均為GMT +8。 現在的時間是01:19 AM.

vBulletin Version 3.0.1
powered_by_vbulletin 2026。