• 回复
  • 收藏
  • 点赞
  • 分享
  • 发新帖

hot!!做電源的會搞單片 機的請進

以下是小弟寫的一個用作本公司保護測試站的一個小程序,我是第一次搞單片機,我在做軟傘件仿真時出現第七項超限.看不明白咋回事 ?請各會大是俠指點!!!
START: JNB P0.1,L1   ;有PG嗎?有PG就進行下一步測試
L1: CLR P1.0   ;3.3V短路RELAY ON
LCALL DELAY   ;調用延遲參數
SETB P1.0   ;3.3V短路RELAY OFF
LCALL DELAY   ;調用延遲參數
LCALL PS   ;PS-ON開關啟動
JB P0.1,NG   ;有PG嗎?有PG進行下一步測試,沒PG就停止測試,FALL燈亮,蜂鳴器長鳴
JNB P0.1,L2   ;檢測到PG信號,可以進行下一步測試
L2: CLR P1.2   ;5V短路RELAY ON
LCALL DELAY   ;調用延遲參數
SETB P1.2   ;5V短路RELAY OFF
LCALL DELAY   ;調用延遲參數
LCALL PS   ;PS-ON開關啟動
JB P0.1,NG   ;有PG嗎?有PG進行下一步測試,沒PG就停止測試,FALL燈亮,蜂鳴器長鳴
JNB P0.1,L3   ;檢測到PG信號,可以進行下一步測試
L3: CLR P1.3   ;12V短路RELAY ON
LCALL DELAY   ;調用延遲參數
SETB P1.3   ;12V短路RELAY OFF
LCALL DELAY   ;調用延遲參數
LCALL PS   ;PS-ON開關啟動
JB P0.1,NG   ;有PG嗎?有PG進行下一步測試,沒PG就停止測試,FALL燈亮,蜂鳴器長鳴
JNB P0.1,L4   ;檢測到PG信號,可以進行下一步測試
L4: CLR P0.0      ;切換到輕載測試OVP
LCALL DELAY     ;調用延遲參數
CLR P1.4   ;3.3V過壓保護RELAY ON
LCALL DELAY   ;調用延遲參數
SETB P1.4   ;3.3V過壓保護RELAY OFF
LCALL DELAY   ;調用延遲參數
LCALL PS   ;PS-ON開關啟動
JB P0.1,NG   ;有PG嗎?有PG進行下一步測試,沒PG就停止測試,FALL燈亮,蜂鳴器長鳴
JNB P0.1,L5   ;檢測到PG信號,可以進行下一步測試
L5: CLR P1.5   ;5V過壓保護RELAY ON
LCALL DELAY   ;調用延遲參數
SETB P1.5   ;5V過壓保護RELAY OFF
LCALL DELAY   ;調用延遲參數
LCALL PS   ;PS-ON開關啟動
JB P0.1,NG   ;有PG嗎?有PG進行下一步測試,沒PG就停止測試,FALL燈亮,蜂鳴器長鳴
JNB P0.1,L6   ;檢測到PG信號,可以進行下一步測試
L6: CLR P1.6   ;12V過壓保護RELAY ON
LCALL DELAY   ;調用延遲參數
SETB P1.6   ;12V過壓保護RELAY OFF
LCALL DELAY   ;調用延遲參數
LCALL PS   ;PS-ON開關啟動
SETB P0.0      ;切換到重載準備測試OCP
LCALL DELAY     ;調用延遲參數
JB P0.1,NG   ;有PG嗎?有PG進行下一步測試,沒PG就停止測試,FALL燈亮,蜂鳴器長鳴
JNB P0.1,PASS ;檢測到PG信號,可以進行下一步測試,PASS燈亮,進入自動脫PIN程序
PASS: CLR P0.2      ;PASS燈亮并拖PIN
DELAY: MOV R5,#40    ;延時時間0.4S
D1: MOV R6,#20
D2: MOV R7,#248
DJNZ R7,$
DJNZ R6,D2
DJNZ R5,D1
RET
PS: CLR P1.1   ;位向反
LCALL DELAY   ;調用延遲
SETB P1.1   ;位向復位
RET
NG: CLR P1.7      ;位向反
RET
END
全部回复(3)
正序查看
倒序查看
ghost
LV.7
2
2006-12-11 21:33
jb跳不了多远,将NG:CLR P1.7  RET两行搞到 DELAY:的前面试一下
0
回复
liwanli
LV.2
3
2006-12-12 20:43
@ghost
jb跳不了多远,将NG:CLRP1.7  RET两行搞到DELAY:的前面试一下
非常感謝,我試了一下!OK!
0
回复
hotpower
LV.5
4
2006-12-17 22:58
主程序与子程序的关系要明白~~~
0
回复