实验三单片机工业顺序控制.docx
《实验三单片机工业顺序控制.docx》由会员分享,可在线阅读,更多相关《实验三单片机工业顺序控制.docx(10页珍藏版)》请在冰点文库上搜索。
实验三单片机工业顺序控制
实验三-单片机工业顺序控制
实验三单片机工业顺序控制(设计型)
一、实验目的与要求
1.学习和掌握单片机工业顺序控制程序的应用编程;
2.熟悉和掌握单片机中断功能的使用。
二、实验仪器
1、DJ-598KC单片机开发系统1台
2、仿真器(EASYPROBE1只
3、PC机1台
三、实验内容(2学时)
在工业控制中,象冲压、注塑、轻纺、制瓶等生产过程,都是一些连续生产过程,按某种顺序有规律地完成预定的动作,对这类连续生产过程的控制称顺序控制,象注塑机工艺过程大致按
“合模宀注射-延时宀开模-产伸宀产退”顺序动作,用单片机最易实现。
设由单片机P1.0〜1.6控制注塑机的七道工序,模拟控制七只发光二极管的点亮,低电平有效,设定每道工序时间转换为延时时间,P3.4为开工启动开关,高电平启动。
P3.3为外部故障输入模拟开关,低电平报警,P1.7为报警声音输出,设定前6道工序只有一位输出,第七道工序三位有输出。
out
1366
KI
报
<
g
开媳
8"L
f3.4P3.3fl.OPl.1fl.2Pl.3fl.4Pl.Sfl.6Pl.1
(1)实验电路及接线图
(2)实验程序框图
士ID"
四、实验步骤:
按图接好连线。
执行程序,把K1接到高电
平,观察发光二极管点亮情况,确定工序执行是否正常,然后把K2置为低电平,看是否有声音报警,恢复中断1.报警停,又从刚才报警时一道程
4TOU-
幵中断.巩・円□初始化
善开工
工序I延时
故隔淸曜了呜?
工序囲
恢夏现场
工序7延时
主程序
申断眼斎子程序
序执行下去。
可用单步、单步跟踪,非全速断点、
全速断点,连续执行功能调试软件,直到符合自己程序设计要求为止。
五、实验参考程序
①汇编代码程序:
(E:
\DJ51\598KASM\HW04ASM)
ORG0000H
LJMPPO10
ORG0013H
LJMPPO16
ORG0190H
PO10:
MOVP1,#7FH
ORLP3,#00HPO11:
JNBP3.4,PO11;
开工吗?
ORLIE,#84H
ORLIP,#04H
MOV
PSW,#00H
;初始化
MOVSP,#53H
PO12:
MOV
P1,#7EH
;第一道工序
ACALLPO1B
MOV
P1,#7DH
;第二道工序
ACALLPO1B
MOV
P1,#7BH
;第三道工序
ACALLPO1B
MOV
P1,#77H
;第四道工序
ACALLPO1B
MOV
P1,#6FH
;第五道工序
ACALLPO1B
MOV
P1,#5FH
:
第六道工序
ACALLP01B
MOV
P1,#0FH
;第七道工序
ACALLPO1B
SJMPPO12
PO16:
MOV
B,R2;
保护现场
PO17:
MOV
P1,#7FH
关输出
MOV
20H,#0A0H
;振荡次数
PO18:
SETB
P1.7;
振荡
ACALL
PO1A
延时
CLR
P1.7
;停振
ACALL
P01A;
延时
DJNZ
20H,PO18
;不为0转
CLRP1.7
ACALL
P01A;
停振
JNB
P3.3,PO17
;故障消除吗?
MOV
R2,B
;恢复现场
RETI
PO19:
MOVR2,#10H
ACALL
DELY
;延时1
RET
P01A:
M0VR2,#06H
ACALL
DELY
;延时2
RET
P01B:
MOVR2,#30H
ACALL
DELY
;延时3
RET
DELY:
PUSH02H
DEL2:
PUSH02H
DEL3:
PUSH
02H;
延时
DEL4:
DJNZR2,DEL4
POP02H
DJNZR2,DEL3
POP02H
DJNZR2,DEL2
POP02H
DJNZR2,DELY
RET
END
②C代码程序:
(E:
\DJ51\51C\HW04.C)
#include
sbitP1_7=P1A7;
sbitP3_3=P3A3;
sbitP3_4=P3A4;
voiddelay(unsigned
inti)
{
unsignedintj,k;
for(k=0;k
for(j=0;j<100;j++);
}
voidint1」nt(void)
interrupt2
EX1=0;
while(P3_3==0)
{
P1_7=1;delay
(1);
P1_7=0;delay
(1);
}
EX1=1;
}
voidmain(void)
{
EA=1;
EX1=1;
PX1=1;
P仁0x7f;
while
(1)
{while(P3_4==1)
{
1)
P1=0x7e;delay(500);
P1=0x7d;delay(500);
P仁0x7b;delay(500);
P仁0x77;delay(500);P仁0x6f;delay(500);
P仁0x5f;delay(500);
P仁0x0f;delay(500);}
}
}
}
六思考:
修改程序,使每道工序中有多位输出。
七.实验报告要求
1.画出实验的硬件电路图及设计程序流程
图;
2.整理实验程序清单,并给程序加详细注释;
3.总结实验中出现的问题并进行解决的方法;
4.给出实验结果及对实验的改进意见。