第10章单片机应用及开发技术.docx

上传人:b****6 文档编号:8742439 上传时间:2023-02-01 格式:DOCX 页数:13 大小:292.78KB
下载 相关 举报
第10章单片机应用及开发技术.docx_第1页
第1页 / 共13页
第10章单片机应用及开发技术.docx_第2页
第2页 / 共13页
第10章单片机应用及开发技术.docx_第3页
第3页 / 共13页
第10章单片机应用及开发技术.docx_第4页
第4页 / 共13页
第10章单片机应用及开发技术.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

第10章单片机应用及开发技术.docx

《第10章单片机应用及开发技术.docx》由会员分享,可在线阅读,更多相关《第10章单片机应用及开发技术.docx(13页珍藏版)》请在冰豆网上搜索。

第10章单片机应用及开发技术.docx

第10章单片机应用及开发技术

第10章单片机应用及开发技术

一、教学要求:

掌握:

单片机应用系统的设计过程、开发工具和方法,以及提高可靠性的方法。

二、教学内容:

10.1单片机应用举例

10.2单片机系统可靠性接地

三、教学重点:

单片机应用系统的设计过程、开发工具和方法。

四、教学难点:

单片机应用系统的具体设计。

五、建议学时:

5学时。

六、教学内容:

10-1作息时间控制钟

时钟产生硬件:

时钟电路片

软件:

片内定时器

在单片机计时的过程中,每一次秒加1,都与规定的作息时间比较,如比较相等就进行电铃或扩音设备的开关控制。

本系统共有4项控制内容:

接通电铃和断开电铃;

接通和断开扩音设备。

由P1口输出控制码进行控制,其控制码定义为:

接通电铃:

0FEH

断开电铃:

0FDH

接通扩音设备:

7FH

断开扩音设备:

0BFH

由P1口输出控制码进行控制:

接通电铃:

0FEH

断开电铃:

0FDH

接通扩音设备:

7FH

断开扩音设备:

0BFH

构造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

MOV2EH,R0;暂存开关控制码地址

MOVR3,#03H;循环3次

MOVXA,@R0;读取控制码

JZA,LOOP5;控制码为“0”(结束)则返回

MOV6AH,A;存控制码

LOOP4:

INCR0

;地址指针增量:

50H→51H(时)→52H(分)→53H(秒)

DECR1

;记时单元地址减量:

23H→22H(时)→21H(分)→20H(秒)

MOVXA,@R0;读取作息时间(时、分、秒)

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

LOOP3:

MOVR1,#85H;R1=133D

LOOP1:

MOVR2,#0FAH;R2=250D

LOOP2:

DJNZR2,LOOP2

DJNZR1,LOOP1

DJNZR3,LOOP3

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

MOVX@R1,A

MOVR0,#01H;把PA口内容读入单片机RAM7FH

MOVXA,@R0;读纸长给定

MOV7FH,A

INCR0;把PB口内容读入单片机RAM7EH

MOVXA,@R0

MOV7EH,A

INCR0;把#01H由PC口输出(PC.0=1)

MOVA,#01H;接信号灯:

走纸到否?

MOVX@R0,A

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码范围

DEC7FH;BCD码调整(7FH)=#0FH

DEC7FH=15

DEC7FH;(15-6=9)

DEC7FH

DEC7FH

DEC7FH

ED:

POPPSW;恢复

POPA

RETI;中断返回

3、保护:

纸机运行过程中,是否出现断纸现象的检测来自光电信号,经INT1引入单片机内。

为了区别是过纸出现空洞还是确实出现断纸现象,单片机根据无纸信号出现的时间长短加以判断。

如:

当无纸信号持续1S后消失,说明无断纸现象,则微机系统仍然正常运行;如超过此时间后,无纸信号依然存在,则判断为出现了断纸现象,单片机立即停机。

程序如下:

PIP:

JNBP3.3,NEXT5;无断纸信号则返回

MOVR5,#0AH;延时(0AH=10D)

LOOP2:

MOVR7,#32H;32H=50D

LOOP1:

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、系统总调:

根据制成的硬件电路和调试过的程序做系统总调。

常用单片机仿真完成,然后固化软件,脱开仿真器,插回单片机与固化了的程序存储器。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 兵器核科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1