第10章单片机应用及开发技术Word格式文档下载.docx
- 文档编号:21878640
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:13
- 大小:292.78KB
第10章单片机应用及开发技术Word格式文档下载.docx
《第10章单片机应用及开发技术Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《第10章单片机应用及开发技术Word格式文档下载.docx(13页珍藏版)》请在冰豆网上搜索。
由P1口输出控制码进行控制:
接通电铃:
断开电铃:
接通扩音设备:
断开扩音设备:
构造4个字节的存储字,放在外部RAM50H开始的存储区中:
格式:
开关设备控制码字节时字节分字节秒字节
程序:
1、主程序:
为时钟记时程序,使用内部RAM单元:
20H秒单元
21H分单元
22H时单元
每运行一次秒加1操作时(参见P158~162),都调用时间比较子程序。
2、时间比较子程序:
记时时间与存储字中的预置时间进行比较:
相等:
作息时间已到,发出开关控制码,控制电铃或扩音设备的开或断;
不等:
子程序返回。
50H——存储区首地址;
R0——存储区地址指针;
2EH——存储区地址指针暂存单元;
6AH——存开关控制码;
6BH~6DH——依次存放存储字的小时值、分值和秒值。
LOOP1:
MOVR0,#4CH;
存储字存储区首地址减4
MOV2EH,R0;
送暂存单元
LOOP2:
MOVR0,2EH
MOVR3,#04H;
循环4次
MOVR1,#23H
LOOP3:
INCR0;
地址指针加4,得开关控制码地址
DJNZR3,LOOP3
暂存开关控制码地址
MOVR3,#03H;
循环3次
MOVXA,@R0;
读取控制码
JZA,LOOP5;
控制码为“0”(结束)则返回
MOV6AH,A;
存控制码
LOOP4:
INCR0
;
地址指针增量:
50H→51H(时)→52H(分)→53H(秒)
DECR1
记时单元地址减量:
23H→22H(时)→21H(分)→20H(秒)
读取作息时间(时、分、秒)
MOV6BH,A;
存作息时间
MOVA,@R1;
读取记时时间
CJNEA,6BH,LOOP2
记时时间(A)与预置作息时间(6BH)比较:
不等则转,继续读下面的控制码(时、分、秒)
DJNZR3,LOOP4;
共读取3次
MOVA,6AH;
开关控制码送A
CPLA;
取反(增大驱动能力)
MOVP1,A;
开关控制码输出
LOOP5:
RET;
返回
10-2水塔水位控制
一、控制原理:
虚线表示允许水位变化的上下限。
水塔由电机带动水泵供水,单片机控制电机转动以达到对水位控制的目的。
①当水位上升,达到上限时,因水导电,B、C棒连通+5V。
b、c均为“1”,应停止电机和水泵的工作,不再供水;
②当水位降到下限时,B、C棒都不能与A棒导电。
b、c均为“0”,应启动电机,带动水泵工作,给水塔供水;
③当水位处于上下限之间时,B与A棒导通。
b为“1”,c为“0”,无论怎样都应维持原有的工作状态。
二、控制电路:
上下限水位信号由P1.0和P1.1输入,这2个信号共有4种组合状态:
控制信号由P1.2端输出,去控制电机。
为了提高控制的可靠性,使用了光电耦合;
由P1.3输出报警信号,驱动一支发光二极管进行光报警。
水塔水位控制电路
ORG8000H
AJMPLOOP
LOOP:
ORLP1,#03H;
P1.0=P1.1=1,为检查水位状态做准备
MOVA,P1
JNBACC.0,ONE;
P1.0=0则跳转
JBACC.1,TWO;
P1.1=1则跳转
BACK:
ACALLD10S;
P1.0=1、P1.1=0维持原状时就延时10S
AJMPLOOP
ONE:
JNBACC.1,THREE;
P1.1=0则跳转
CLR93H(P1.3);
P1.0=0、P1.1=1时,P1.3=0启动报警装置
SETB92H(P1.2);
P1.2=1停止电机工作
FOUR:
SJMPFOUR
THREE:
CLR92H;
P1.0=P1.1=0时启动电机
AJMPBACK
TWO:
SETB92H;
停止电机工作
AJMPBACK
延时子程序D10S(延时10S):
ORG8030H
MOVR3,#19H;
R3=25D
MOVR1,#85H;
R1=133D
MOVR2,#0FAH;
R2=250D
DJNZR2,LOOP2
DJNZR1,LOOP1
RET
计算延时时间:
(若fosc=6MHz,则T=2μS)
t={[(2×
2μS×
250)+3×
2μS]×
133+3×
2μS}×
25+3×
2μS=μS≈3.3S
10-3电热箱单片机温控系统
电热箱采用电热丝加热,由双向可控硅控制加热量的大小;
温度传感器检测电热箱内的温度,经放大与A/D转换后进入单片机;
单片机将设定的温度值与检测到的电热箱中的实际温度进行比较,并调节运算后,发出控制信号经光电隔离器去驱动双向可控硅以调节加在电热丝的电压,从而控制电热箱的温度。
单片机具有温度设定、显示、给出采样温度反馈值、输出温度控制量以及作调节器运算等功能。
MC14433是双积分3½
位的A/D转换器:
采用扫描的方法,输出3½
位的BCD码,从0000~1999共2000个数码。
内部有时钟源(振荡器)。
VR:
基准电压输入线,其值为200mV或2V;
VX:
被测电压输入线,最大为199.9mV或1.999V。
DS4~DS1:
分别是个、十、百、千位的选通脉冲输出线;
Q3~Q0:
BCD码数据输出线,动态地输出千位、百位、个位值。
即DS4有效时,Q3~Q0表示的是个位值(0~9);
依次类推。
EOC与INT0相接使得MC14433每次A/D结束后,同时启动下一次转换,使其处于连续的A/D转换中,并使得单片机在中断服务程序中读入该次转换结果。
输出高电平:
双向可控硅导通,电热丝通电;
输出低电平:
双向可控硅截止,电热丝断电。
8155端口的负载能力不足以驱动光电耦合器的发光二极管,用1413作为功放。
控制算法:
对于温度控制系统,系统具有大热惯性,可用PID算法、Smith算法、Dalin算法等。
10-4纸机转速、纸长的单片机控制
转速控制采用带转速单闭环的直流电动机调速系统;
驱动电路由晶闸管-直流电动机构成;
控制电路主要包括转速给定、转速反馈、PID调节器、晶闸管脉冲触发电路;
走纸的长度控制由纸长设定、纸长脉冲反馈构成。
T1计量走纸长度(1cm/脉冲);
T0计量信号个数(与INT0配合);
INT0检测纸机转速(V=D/nTc);
INT1检测断纸(通过延时);
晶闸管的控制信号(由D/A0832提供)。
走纸长度由拨盘设置;
转速的给定由模拟电压经ADC0809转换后设置;
6位数码管分别用于显示转速(前2位)和走纸长度(后4位)。
系统控制功能:
1、纸长的设定:
(拨盘→8155→80C51)
设置8155的PA口和PB口为基本输入方式,PC口为基本输出方式,
则8155的控制字为=0CCH;
计数器取分频系数为1000D=03E8H,并输出方波信号,
则计数器初值应设置成0100001111101000B=43E8H
MOVR0,#00H;
写控制字(8155设定)
MOVA,#0CCH
MOVX@R0,A
MOVR1,#04H;
写计数器(T0)初值与工作方式
MOVA,#0E8H;
置TL
MOVX@R1,A
INCR1
MOVA,#43H;
置TH
MOVR0,#01H;
把PA口内容读入单片机RAM7FH
MOVXA,@R0;
读纸长给定
MOV7FH,A
INCR0;
把PB口内容读入单片机RAM7EH
MOVXA,@R0
MOV7EH,A
把#01H由PC口输出(PC.0=1)
MOVA,#01H;
接信号灯:
走纸到否?
2、纸长检测与控制:
走纸长度的设置由4位拨盘设定,走纸的检测信号来自线速度不变的码盘脉冲。
两脉冲间的距离表示一定的纸长(脉冲当量),当反馈脉冲的引入量达到一定数量后,可使设定值不断做减1记数,直至为0后停车。
采用脉冲当量为1cm/脉冲,当走纸长度单位为10m时,1000个反馈脉冲可使纸长设定值减1。
由T1来实现。
由于1000D=03E8H,T1的记数初值应为(03E8H)补=FC18H,工作于方式1。
注:
10m/1cm=1000D
每10米减1
T1的中断服务程序:
T1INT:
PUSHA;
保护
PUSHPSW
MOVTH1,#0FCH;
重置初值
MOVTL1,#18H
DEC7FH;
纸长减1
MOVA,7FH
ANLA,#0FH;
取低位
CJNEA,#0FH,ED;
判断是否在BCD码范围
BCD码调整(7FH)=#0FH
DEC7FH=15
DEC7FH;
(15-6=9)
DEC7FH
DEC7FH
ED:
POPPSW;
恢复
POPA
RETI;
中断返回
3、保护:
纸机运行过程中,是否出现断纸现象的检测来自光电信号,经INT1引入单片机内。
为了区别是过纸出现空洞还是确实出现断纸现象,单片机根据无纸信号出现的时间长短加以判断。
如:
当无纸信号持续1S后消失,说明无断纸现象,则微机系统仍然正常运行;
如超过此时间后,无纸信号依然存在,则判断为出现了断纸现象,单片机立即停机。
程序如下:
PIP:
JNBP3.3,NEXT5;
无断纸信号则返回
MOVR5,#0AH;
延时(0AH=10D)
MOVR7,#32H;
32H=50D
MOVR6,#00H
DJNZR6,$
DJNZR7,LOOP1
DJNZR5,LOOP2
JNBP3.3,NEXT5;
再判断有无断纸信号
AJMPED;
有断纸信号则停机
NEXT5:
RET
小结
单片机应用系统是以单片机为核心,扩展外围芯片和电路,能完成一定任务的微机系统。
单片机具有体积小、成本低、抗干扰强、使用方便灵活等优点,已广泛应用于生产和科技等各个领域。
设计步骤:
1、确定系统控制方案,彻底了解控制对象和控制要求。
高速对象(电机调速、图像语音识别等)还是慢速对象(温度、流量等过程控制);
开环控制还是闭环控制;
等等。
2、确定控制算法,根据系统数学模型和控制要求,选择单片机的控制规律。
直流电机传动系统多用PID控制,
交流传动则除PID外,还用矢量变换控制;
温度调节等滞后系统多采用达林算法与施密斯预估算法等。
3、微机选型:
综合考虑控制要求、经济条件等多种因素进行。
MCS-51系列单片机是8位高档机;
在要求更高的场合,应考虑采用MCS-96系列单片机;
对运算速度要求更高的场合,可考虑采用数字信号处理器(DSP)。
4、硬件设计:
在系统控制方案的基础上,根据单片机本身的硬件资源,确定出整个系统的控制电路。
单片机片内的资源应充分予以利用,只有在不能满足要求时,才需要扩展。
5、软件设计:
依据控制算法和控制电路。
通常硬件少则软件多,反之亦然。
程序编制法则:
画框图→确定软件功能模块→确定流程图→调试子程序→程序总调。
6、系统总调:
根据制成的硬件电路和调试过的程序做系统总调。
常用单片机仿真完成,然后固化软件,脱开仿真器,插回单片机与固化了的程序存储器。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第10章 单片机应用及开发技术 10 单片机 应用 开发 技术