1 / 10
文档名称:

控制系统设计.docx

格式:docx   大小:159KB   页数:10页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

控制系统设计.docx

上传人:wenjiaosuoa 2022/6/5 文件大小:159 KB

下载得到文件列表

控制系统设计.docx

相关文档

文档介绍

文档介绍:: .
实****设计(论文)
题目名称学生学部(系)
专业班级学号学生姓名指导教师
二零——地相连,因此只可采集IN0的信号。采样结束信号EOC与8255的PC7相连,可通过查询测试A/D转换状态。
UNL2803是反向驱动电路,A端为0时,A’为12V,停止加温;A端为1时,A’为0V,开始加温。
(4) 键盘电路:
键盘是用来设置恒温时的温度值,根据要求,可设置两个按键开关,K1用于增加设定值,K2用于减小设定值,两个开复安分别接在两个外部中断请求端INT0和INT1上,每按一次开关,温度值变化一次,开关电路如图5所示。由于外部中断是低电平或低脉冲出发,故连接时将K—端与中断请求端相连。
、数据转换与控制子程序和中断服务程序。
(1) 主程序:
完成系统的8255初始化、启动A/D转换并采集数据、循环显示设定温度和采集温度。程序流程如果6所示。
(2) :
热敏电阻采用mfd103,电阻与温度之间为非线性关系,因此,从A/D转换器接收的数据经计算得到Rt,经查表形成温度值,存入相应单元,并比较设定值与实际温度,控制加热电路。子程序流程图如下所示。
(3)
中断服务程序由两个外部中断服务程序组成,其中一个完成设定温度加1,另一个完成设定温度减1。
生成代码#include<>#include<>#include<>#defineucharunsignedchar#defineuintunsignedint〃定义0〜9的共阴极显示代码CodeuncharTable[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//定义热敏电阻值与温度关系表(表为20〜39°C电阻值,温度间隔为1)codeunitwd[20]={0x30CC,0x2EA6,0x2C9C,0x2AAB,0x2802,0x2710,0x2564,
0x23CC,0x2248,0x20D6,0x1F76,0x1E26,0x1CE7,0x1BB6,
0x1A93,0x197D,0x1874,0x1778,0x1687,0x15A0};
uintwd_s,wd_c〃分别存放设定温度和当前温度
unitx;//定义变量存放采样值
〃数据转换与控制子程序voidchange()(
unitrt,I;
rt=510*(256-x)/x;
for(i=1;i<20;i++)
(if(rt>=wd[i])
wd_c=20+i;
if(wd_c<wd_s)
XBYTE[0XFFF2]=1;
if(wd_c>wd_s)
XBYTE[0XFFF2]=0;
}〃计算Rt〃查电阻表,形成当前温度值break;}〃保存温度〃当前温度小于设定温度时,开始加热〃当前温度大于设定温度时,停止加热
//0号中断服务程序voidint0_fun(void){wd_s++;