|
发表于 2005-9-17 14:42:51
|
显示全部楼层
[原创几台检测设备的入门级小程序大家分享
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; PCB检测器程序 ;;
;; 2005.6.15 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; 89C51
; -------------------
; XAN P1.0 VCC
; XAW P1.1 P0.0 QD
; XBH P1.2 P0.1 TZ
; XBL P1.3 P0.2 AGN
; XCHH P1.4 P0.3 AGW
; XCL P1.5 P0.4 BGL
; XCLL P1.6 P0.5 BGH
; P1.7 P0.6 CGL
; RES P0.7 CGH
; FW P3.0 EA
; J1 P3.1 ALE
; J2 P3.2 PSEN
; P3.3 P2.7
; P3.4 P2.6
; P3.5 P2.5 MCL
; P3.6 P2.4 MCH
; P3.7 P2.3 MBL
; XTAL2 P2.2 MBH
; XTAL1 P2.1 MAN
; GND P2.0 MAW
; -------------------
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 定义口 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
FW EQU P3.0 ;复位键
QD EQU P0.0 ;启动键
TZ EQU P0.1 ;紧急停止键
AGN EQU P0.2 ;A缸内移键
AGW EQU P0.3 ;A缸外移键
BGL EQU P0.4 ;B缸下移键
BGH EQU P0.5 ;B缸上移键
CGL EQU P0.6 ;C缸下移键
CGH EQU P0.7 ;C缸上移键
J1 EQU P3.1 ;继电器A,3.6V
J2 EQU P3.2 ;继电器B,4.8V
MAW EQU P2.0 ;A缸外移输出信号
MAN EQU P2.1 ;A缸内移输出信号
MBL EQU P2.2 ;B缸下移输出信号
MBH EQU P2.3 ;B缸上移输出信号
MCL EQU P2.4 ;C缸下移输出信号
MCH EQU P2.5 ;C缸上移输出信号
XAN EQU P1.0 ;A缸内停止位信号
XAW EQU P1.1 ;A缸外停止位信号
XBH EQU P1.2 ;B缸上停止位信号
XBL EQU P1.3 ;B缸下停止位信号
XCHH EQU P1.4 ;C缸上停止位信号
XCL EQU P1.5 ;C缸中停止位信号
XCLL EQU P1.6 ;C缸下停止位信号
ORG 0000H ;程序执行开始地址
LJMP START ;跳到标号START执行
ORG 0003H ;外中断0中断程序入口
RETI ;外中断0中断返回
ORG 000BH ;定时器T0中断程序入口
RETI ;定时器T0中断返回
ORG 0013H ;外中断1中断程序入口
RETI ;外中断1中断返回
ORG 001BH ;定时器T1中断程序入口
RETI ;定时器T1中断返回
ORG 0023H ;串行中断程序入口地址
RETI ;串行中断程序返回
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 主 程 序 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ORG 0000H
LJMP START
LJMP START
ORG 0060H
START: MOV SP,#30H
MOV A,#0FFH
MOV P0,A
MOV A,#00H ;
MOV P1,A
MOV P2,A
MOV A,#01H ;
MOV P3,A
LJMP YUZHI ;
NOP
NOP
AJMP START ;
;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 预置 ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
YUZHI:NOP
NOP
AW: SETB MAW
CLR MAN
NOP
JNB XAW,AW
MOV P2,#00H
NOP
BW: SETB MBH
CLR MBL
NOP
JNB XBH,BW
MOV P2,#00H
NOP
NOP
CW: SETB MCH
CLR MCL
NOP
JNB XCHH,CW
MOV P2,#00H
|
|