单片机压力控制系统设计.docx

上传人:b****6 文档编号:5875340 上传时间:2023-01-01 格式:DOCX 页数:12 大小:97.44KB
下载 相关 举报
单片机压力控制系统设计.docx_第1页
第1页 / 共12页
单片机压力控制系统设计.docx_第2页
第2页 / 共12页
单片机压力控制系统设计.docx_第3页
第3页 / 共12页
单片机压力控制系统设计.docx_第4页
第4页 / 共12页
单片机压力控制系统设计.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

单片机压力控制系统设计.docx

《单片机压力控制系统设计.docx》由会员分享,可在线阅读,更多相关《单片机压力控制系统设计.docx(12页珍藏版)》请在冰豆网上搜索。

单片机压力控制系统设计.docx

单片机压力控制系统设计

摘要

本文从硬件和软件两方面介绍了MCS-51单片机温度控制系统的设计思路,对硬件原理图和程序框图作了简捷的描述。

关键词;MCS-51单片机;温度;软硬件;硬件原理图;程序框图;设计

单片机是指一个集成在一块芯片上的完整计算机系统。

尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:

CPU、内存、内部和外部总线系统,目前大部分还会具有外存。

同时集成诸如通讯接口、定时器,实时时钟等外围设备。

而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。

1.目的和意义

  1.1设计的目的

(1)掌握A/D和D/A转换与单片机的接口连线。

(2)了解A/D和D/A芯片转换性能及编程方法。

(3)通过实验了解单片机如何进行数据采集。

(4)进一步掌握八段数码管的使用和编程方法。

(5)了解八段数码管显示的原理。

1.2设计方案

水位控制系统包括水位检测和阀门开度的控制。

水位信号可以通过压力传感器检测得到,阀们开度由输出的电压进行控制。

采用单片机单片机来控制水箱水位可以更好的达到自动化,可以取得较好的控制效果具体说明如下图1

图1

2.硬件电路的设计

2.1CPU系统

图2为主机系统电路图。

控制功能一般,程序并不复杂。

因此选择8031作为CPU,选择2732(4K)作为EPROM,74LS373作为低8位地址锁存器。

图2

2.2压力检测

系统采用单片机作为数字控制器的处理器,其中,由压力变送器传送来的电流信号经过A/D转换进入微处理器,经微处理器计算处理,将输出数字量进行D/A转换送给电动执行机构,具体结构如图3

图3

 

2.3水位设定

图4为键盘输入电路。

水位可以在0到3M范围内随意设定,利用键盘设定水位,存储在51H(键盘输入的数值)与存储在50H(检测的数据)先比较是否相同,如相同,则向DAC0832发送0,否则,将两数据相减,然后向DAC0832发送相减值。

DAC0832根据数值输出控制信号(1-5V)对应阀门开度(0%-100%)

图4

2.4压力显示电路

图5为水位显示电路。

水位值采用LED数码显示,每1s刷新一次显示值。

为了不扩展并行I/O口,本设计利用串行口的移位功能,扩展为3位静态显示电路。

P2.6为输出控制,当P2.6=1时,允许串行口输出数据给移位寄存器;当P2.6=0时,串行口不能输出数据,显示内容不变。

LED3显示十位水位值,LED2显示个位水位值,LED1显示十分位值,小数点固定在LED2上

图5

3.软件设计

根据以上已经具体化的硬件设计,就可以进行软件的总体设计和模块设计。

3.1设计思路

       由水位传感器检测输入,启动A/D转换并将转换值暂存50H单元,将转换得来的十六进制数转换为十进制数,十分、个、十位分别存于35H、36H、37H单元,送由3位八段数码管显示。

同时将此检测值与设定值(51H)比较,差值大于2℃时报警并进行调节处理,差值小于2℃时,不处理。

处理完毕后返回水位采集模块,设定值用外部中断1方式进行设定。

3.2主程序

图6为系统总体流程图。

将定时器T0,设置为计数器方式,计数初值为最大值为FFFFH,当键盘键入时,则计数器产生溢出中断。

执行中断子程序。

主程序

ORG0000H

LJMPMAIN

ORG0003H

LJMPJPSR

ORG0050H

MAIN:

MOVTMOD,#06H;T0计数器,方式2

MOVTH0,#0FFH;置T0初值

MOVTL0,#0FFH

SETBEA;开中断

SETBET0;开外部中断0

SETBTR0;开启T0

LCALLDELAY;延时1S

LCALLTADC;调用水位检测子程序

LCALLDISP;调用水位显示子程序

LCALLCONT;调用水位控制子程序

STMPMAIN

图6为系统总体流程图

3.3水位检测子程序

图7为水位检测子程序流程图。

ADC0809是CMOS工艺的八位逐次比较型A/D转换器。

它由8选1模拟开关,8位A/D转换器及输出三态缓冲器组成,由三个地址信号ADDA、ADDB、ADDC来决定哪一路模拟信号进行A/D转换。

水位检测值存入50H,A/D转用查询方式。

水位检测程序如下:

ORG0600H

TADC:

MOV50H,#00H

MOVDPTR,#7FF8H;置0809通道地址

TT0:

MOVX@DPTR,A;启动0809A/D转换

JBINT1,$;等待A/D转换结束

MOVXA,@DPTR;读A/D转换值

MOV50H,A

RET

图7为水位检测子程序流程图

3.4水位控制子程序

图8为水位控制子程序流程图。

水位控制子程序的功能是将水位测量值(存于50H)与设定值(存于51H)作比较,是否相同,如相同,则向DAC0832发送0,否则,将两数据相减,然后向DAC0832发送相减值。

DAC0832根据数值输出控制信号(1-5V)对应阀门开度(0%-100%)

水位检测程序如下

CNNT:

MOVA,50H

SUBBA,51H

MOVR1#0FEH

MOVX@R1A

RET

3.5水位显示子程序

图8为水位显示子程序流程图。

利用控制微机的串行口,通过串入并出的移位寄存器74LS164设计LED显示器接口,尤其当需要远程显示时,采用串行传输会减少数据线数量,提高传输可靠性。

本设计利用74LS164扩展3片LED显示器的接口电路,图中采用的是共阳极LED显示器,74LS164本身吸收电流达8mA,可以直接驱动LED显示器,限流电阻值选为390Ω。

水位显示子程序如下:

ORG1F00H

DISP:

MOVA,50H;读取检测值

MOVB,#100

DIVAB

MOV37H,A;十位存于37H

MOVA,B

MOVB,#10

DIVAB

MOV36H,A;个位存于36H

MOVA,B

MOV35H,A;十分位存于35H

MOVSCON,#00H;设置串行口方式0

CLRES;关串行口中断

SETBP2.6;允许串行口输出数据

MOVR7,#03H

MOVR0,#35H

XS:

MOVA,@R0;取显示数

MOVDOTR,#2000H;置段码表首址

MOVCA,@A+DPTP;查询显示码

MOVSUBF,A;送显示

JNBTI,$;一帧末发送完,等待

CLRIT;清中断标志

INTR0;取下一个数

DJNZR7,XS

RET

ORG2000H

TAB:

DB03H,9FH,25H,0DH;0,1,2,3

DB99H,49H,41H,1FH;4,5,6,7

DB01H,09H;8,9

图8

3.6键盘输入中断程序

图9为水位设定中断服务程序流程图。

判断键盘上有无键闭合,其方法在扫描P1.0-P1.3上全部送零,然后读取P1.0-P1.3的状态,若全为1则无闭合键,若不全为1,则有闭合线,判断闭合键的键号,起方法为对键盘列线进行扫描,输入高电平扫描

键盘设定服务程序如下:

JPSR:

LCALLJP

MOVA,20H

MOVB,#100

MULAB

MOV43H,A

JBINTO$

LCALLJP

MOVA,20H

MOVB,#10H

MULAB

MOL42H,A

JBINTO$

LCALLJP

MOVA,20H

ADDA,43H

ADDA,42H

MOV51H,A

MOVTH0,#OFFH

MOVTL0,#0FFH

SETI

JP:

ACALLKS1判是有键闭合

JNZKEY1

KEY0:

RET

KEY1:

ACALLKS2调求键子程序

MOV20H,A

ACALLDL10调延时子程序

ACALLKS2

CJNEA,20H,KEY0

KEY2:

ACALLKS1判键释放否

JNZKEY2

ACALLDL10

JNZKEY2

RET

KS1:

MOVP1,#00H

MOVA,P1

ORLA,#0EFH

CPLA

RET

KS2:

MOVP1,#0EFHP1.4=0

MOV21H,#00H列首号存21H中

MOVA,P1

ORLA,#0F0H

CPLA

JNZKS20零列有键闭合

MOVP1,#0DFHP1.5=0

MOV21H,#04H

MOVA,P1

ORLA,#0F0H

CPLA

JNZKS20一列有键闭合

MOVP1,#0BFH;P1.6=0

MOV21H,#08H

MOVA,P1

ORLA,#0F0H

CPLA

JNZKS20二列有键闭合

MOVP1,#7FHp1.7=0

MOV21H,#0CH

MOVA,P1

ORLA,#0F0H

CPLA

JNZKS20

MOVA,#0FFH三列有键闭合

ORLA,#0F0H错误处理

RET

KS20:

ADDA,#03H加偏移位

MOVCA,@A+PC查表求列序号

ADDA,21H求键号存A中

RET

DB00H,01H02H02H02H03H

DB03H,03H03H

 

图9

结束语

经过这次的课程设计,使得我对单片机掌握进一步的增强,加深了对它们的理解,并对单片机产生了浓厚的兴趣,通过课程设计可以看出它对理论教学起到了必要的补充和额拓宽作用,对培养既具有扎实理论功底又具有相当实践能力的人才必不可少。

在这次的课程中,我发现单片机接触器在工业控制中的作用很大,它能使人的控制转变成电脑的控制,大大地降低了产品的成本,很大地提高生产效率。

经过这次课程设计培养了我们的设计能力以及全面的考虑问题能力。

学习的过程是艰难的但是收获成功的喜悦更是让人激动的。

相信通过这次课程设计它对我以后的学习及工作都会产生积极的影响

 

参考文献

[1]刘守义.单片机应用技术.系安:

西安电子科技大学出版社,2002

[2]郑堤、唐可法.机电一体化设计基础.北京:

机械工业出版社,1997

[3]蔡菲娜.单片微型计算机原理和应用.杭州:

浙江大学出版社,1996

[4]赵继文.传感器与应用电路设计.北京:

科学出版社,2002

[5]求是科技.单片机典型外围器件及应用实例.人民邮电出版社,2006

[6]朱家健.单片机与可编程控制器.北京:

高等教育出版社,1998

[7]彭东明、韦友春.单片机试验教程.北京:

北京理工大学出版社,2007

[8]张洪润、张亚凡.单片机原理及应用.北京:

清华大学出版社,2004

[9]朱勇.单片机原理与应用技术.北京:

清华大学出版社,2006

[10]郑堤、唐可洪机电一体化基础机械工业出版社1997

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

当前位置:首页 > 初中教育 > 数学

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

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