单片机控制sim900a收发短信

单片机控制sim900a收发短信
单片机控制sim900a收发短信

单片机接受指定短信内容,1602显示短信内容,单片机对短信内容作判断,若为所要求的内容,则返回一条短信

#include //单片机头文件

#include

#include "lcd1602_drv.h"

#define uchar unsigned char

#define uint unsigned int

#define Rx_data_length 110

uchar Admin_num[11]="xxxxxxxxxxx"; //手机号码

uchar i,j;

bit Response_receive_SMS_flag=0;

sbit RS_1602=P2^6; //1602数据/命令选择引脚sbit LCD_RW=P2^5; //1602读写引脚

sbit E_1602=P2^7; //1602使能引脚

uchar Rx_bit,i;

uchar xdata Rx_data[Rx_data_length];

uchar w[]="Waiting ...... ";

void Response_receive_SMS(void);

void Uart_SendChar(uchar ch);

void Uart_SendString(uchar *String);

void uart_init(void);

void Clear_Rxdata(uchar length);

void delay(uint xms)

{

uint i,j;

for(i=xms;i>0;i--)

for(j=100;j>0;j--);

}

void main(void)

{

uint aa=0;

EA=1; //开总中断

LCD_RW=0; //LCD RW 主程序接地一直等于0

uart_init(); //串口初始化

lcd_init(); //液晶屏显示初始化

Rx_bit=0;

Uart_SendString("AT+CLIP=1\r\n");

delay(500);

Uart_SendString("AT+CMGF=1\r\n"); //设置sim900模块为英文方式发送短信

delay(500);

Uart_SendString("AT+CMGD=1\r\n"); //清除所有短信

delay(500);

Uart_SendString("AT+CSCS=\"GSM\"\r"); //设置sim900模块GSM字符集

delay(500);

Uart_SendString("AT+CMGF=1\r"); //设置sim900模块为英文方式发送短信delay(500);

Clear_Rxdata(Rx_data_length);

delay(500);

memset(Rx_data,' ',sizeof(Rx_data)); //Rx_data数组中元素都为空格

write_1602com(one);

for(i=0;i<16;i++)

{

write_1602dat(w[i]);

}

while(1)

{

EA=1;

EX0=1; //开外部中断0

IT0=0; //脉冲触发方式

Response_receive_SMS(); //循环检测是否收到短信,若收到短信则Response_receive_SMS_flag==1

delay(100);

Rx_bit=0;

if(Response_receive_SMS_flag==1)

{

Uart_SendString("AT+CMGR=1\r\n"); //短信读取

delay(2000);

write_1602com(one);

for(i=0;i<16;i++)

{

write_1602dat(Rx_data[69+i]);

}

if(Rx_data[69]=='x'&&Rx_data[70]=='x'&&Rx_data[71]=='ax'&&Rx_data[72]=='x'&&Rx_ data[73]=='x') //判断的短信内容,可以不止5位

{

aa=1;

}

Response_receive_SMS_flag=0;

Clear_Rxdata(Rx_data_length);

delay(100);

Uart_SendString("AT+CMGD=1\r\n"); //清除所有短信

delay(100);

}

delay(1000);

if(aa==1)

{

delay(1000);

Uart_SendString("AT+CMGS=\"");

for(j=0;j<11;j++)

{

SBUF=Admin_num[j];

while(TI==0);

TI=0;

}

Uart_SendString("\"\r");

delay(200);

Uart_SendString("xxx"); //返回的短信内容

delay(300);

Uart_SendChar(0x1a);

delay(1000);

aa=0;}

}

}

void uart() interrupt 4

{

ES=0;

if(RI==1) //当硬件接收到一个数据时,RI会置位

{

if(SBUF!=0x0d&&SBUF!=0x0a&&SBUF!=' ') //去除所有的空格

{

Rx_data[Rx_bit]=SBUF;

Rx_bit++;

}

if(Rx_bit==Rx_data_length)

{

Rx_bit=0;

}

RI=0;

}

ES=1;

}

void Response_receive_SMS(void)

{

uchar i=0;

for(i=0;i<=Rx_data_length;i++)

{

if(Rx_data[i] =='+'

&&Rx_data[i+1]=='C'

&&Rx_data[i+2]=='M'

&&Rx_data[i+3]=='T'

&&Rx_data[i+4]=='I'

&&Rx_data[i+5]==':')

{

Response_receive_SMS_flag=1;

return;

}

}

Response_receive_SMS_flag=0;

}

/********************************************************************

* 名称: Uart_SendChar(uchar ch)

* 功能: 向串口发送一个字符

* 输入: 无

* 输出: 无

***********************************************************************/ void Uart_SendChar(uchar ch)

{

SBUF=ch;

while(TI==0);

TI=0;

}

/******************************************************************** * 名称: Uart_SendChar(uchar ch)

* 功能: 向串口发送一个字符串

* 输入: 无

* 输出: 无

***********************************************************************/ void Uart_SendString(uchar *String)

{

while (*String !='\0') //字符串结束标志\0

{

Uart_SendChar(*String);

String++;

}

}

/********************************************************************

* 名称: uart_init(void)

* 功能: 串口初始化程序

* 输入: 无

* 输出: 无

***********************************************************************/

void uart_init(void) //初始化uart

{

TMOD = 0x20; //定时器1工作模式2,8位可自动重载初值,常把定时1以模式2作为串行口波特率发生器

SCON = 0x50; //串口选择工作模式1使能接收,允许发送,允许接收

TH1 = 0xFD; //用11.0592 MHz波特率9600

TL1 = 0xFD;

TR1 = 1; //打开中时器

ES=1; //打开串口中断

}

/********************************************************************

* 名称: Clear_Rxdata(uchar length)

* 功能: 清空接收缓存数组

* 输入: 无

* 输出: 无

***********************************************************************/

void Clear_Rxdata(uchar length) //清空接收缓存数组

{

uchar Bit;

for(Bit=0;Bit

{

Rx_data[Bit]=0x30; // ascii码表中十进制48对应的字符为0

delay(50);

}

Rx_bit=0;

}

1602.c程序

#include

#include "lcd1602_drv.h"

sbit RS_1602=P2^6;

sbit LCD_RW=P2^5; //LCD RW 主程序接地一直等于0

sbit E_1602=P2^7;

uchar aa,jj;

//①写命令子程序

void write_1602com(uchar com) //液晶写入指令函数

{

RS_1602=0; //置为写入命令

P0=com; //送入数据

delay(1);

E_1602=1;

delay(1);

E_1602=0;

}

//②写数据子程序

void write_1602dat(uchar dat)

{

RS_1602=1; //置为写数据

P0=dat; //送入数据

delay(1);

E_1602=1;

delay(1);

E_1602=0;

}

void lcd_init(void)

{

write_1602com(0x38); //16*2 5*7点阵8位数据线

delay(5);

write_1602com(0x38);

delay(5);

write_1602com(0x38);

delay(5);

write_1602com(0x08);

write_1602com(0x0c); //开显示不显示光标不闪烁

write_1602com(0x06); //显示不移动光标右移

write_1602com(0x01); // 清屏

}

lcd1602_drv.h部分

#ifndef __LCD1602_DRV_H__

#define __LCD1602_DRV_H__

#define uchar unsigned char

#define uint unsigned int

#define one 0x80 //第一行的初始位置#define two 0x80+0x40

void write_1602com(uchar com);

void write_1602dat(uchar dat);

void lcd_init();

#endif

温度控制器的设计与制作共13页

温度控制器的设计与制作 一、功能要求 设计并制作一个温度控制器,用于自动接通或断开室内的电加热设备,从而使室内温度达到设定温度要求,并能实时显示室内温度。当室内温度大于等于设定温度时,控制器断 ?时,控制器接通电加热设备。 开电加热设备;当室内温度比设定温度小2C 控温范围:0~51C? 控温精度:≤1C? 二、硬件系统设计 1.硬件系统由七部分组成,即单片机及看门狗电路、温度检测电路、控制输出电路、键盘电路、显示电路、设置温度储存电路及电源电路。 (1)单片机及看门狗电路 根据设计所需的单片机的内部资源(程序存储器的容量、数据存储器的容量及I/O口数量),选择AT89C51-24PC较合适。为了防止程序跑飞,导致温度失控,进而引起可怕的后果,本设计加入了硬件看门狗电路IMP813L,如果它的WDI脚不处于浮空状态,在1.6秒内WDI不被触发(即没有检测到上什沿或下降沿),就说明程序已经跑飞,看门狗输出端WDO将输出低电平到手动复位端,使复位输出端RST发出复位信号,使单片机可靠复位,即程序重新开始执行。(注:如果选用AT89S51,由于其内部已具有看门狗电路,就不需外加IMP813L) (2)温度检测电路 温度传感器采用AD590,它实际上是一个与绝对温度成正比的电流源,它的工作电压为4~30V,感测的温度范围为-550C~+1500C,具有良好的线性输出,其输出电流与温度成正比,即1μA/K。因此在00C时的输出电流为273.2μA,在1000C时输出电流为373.2μA。温度传感器将温度的变化转变为电流信号,通过电阻后转变电压信号,经过运算放大器JRC4558运算处理,处理后得到的模拟电压信号传输给A/D转换部分。A/D转换器选用ADC0804,它是用CMOS集成工艺制成的逐次逼近型模数转换芯片,分辨率8位,转换时间100μs,基准电压0~5V,输入模拟电压0~5V。 (3)控制输出电路 控制信号由单片机的P1.4引脚输出,经过光耦TLP521-1隔离后,经三极管C8550直接驱动继电器WJ108-1C-05VDC,如果所接的电加热设备的功率≤2KW,则可利用继电器的常开触点直接控制加热设备,如果加热设备的功率>2KW,可以继电器控制接触器,由接触器直接控制加热设备。 (4)键盘电路 键盘共有四个按键,分别是S1(设置)、S2(+)、S3(-)、S4(储存)。通过键盘来设置室内应达到的温度,键盘采用中断方式控制。 (5)显示电路 显示电路由两位E10501_AR数码管组成,由两片74LS164驱动,实现静态显示,74LS164所需的串行数据和时钟由单片机的P3.0和P3.1提供。对于学过“串行口”知识的班级,实习时,可以采用串行口工作于方式0,即同步移位寄存器的输出方式,通过串行口输出显示数据(实时温度值或设置温度值);对于没学过“串行口”知识的班级,实习时,可以采用模拟串行口的输出方式,实现显示数据的串行输出。 (6)设置温度存储电路 为了防止设定温度在电源断电后丢失,此设计加入了储存电路,储存器选用具有I2C总线功能的AT24C01或FM24C01均可。每次通过键盘设置的室内设定温度都通过储存器储存起来,即使是电源断电,储存器存储的设定温度也不丢失,在电源来电后,单片机自动将设

基于PLC的锅炉温度控制系统毕业设计

基于PLC的锅炉温度控制系统 作者姓名xxx 专业自动化 指导教师姓名xxx 专业技术职务讲师

目录 摘要 (1) 第一章绪论 (3) 1.1课题背景及研究目的和意义 (3) 1.2国内外研究现状 (3) 1.3项目研究内容 (4) 第二章 PLC和组态软件基础 (5) 2.1可编程控制器基础 (5) 2.1.1可编程控制器的产生和应用 (5) 2.1.2可编程控制器的组成和工作原理 ··············错误!未定义书签。 2.1.3可编程控制器的分类及特点 (7) 2.2组态软件的基础 (8) 2.2.1组态的定义 (8) 2.2.2组态王软件的特点 (8) 2.2.3组态王软件仿真的基本方法 (8) 第三章 PLC控制系统的硬件设计 (9) 3.1 PLC控制系统设计的基本原则和步骤 (9) 3.1.1 PLC控制系统设计的基本原则 (9) 3.1.2 PLC控制系统设计的一般步骤 (9) 3.1.3 PLC程序设计的一般步骤 (10) 3.2 PLC的选型和硬件配置 (11) 3.2.1 PLC型号的选择 (11) 3.2.2 S7-200CPU的选择 (12) 3.2.3 EM235模拟量输入/输出模块 (12) 3.2.4 热电式传感器 (12) 3.2.5 可控硅加热装置简介 (12) 3.3 系统整体设计方案和电气连接图 (13) 3.4 PLC控制器的设计 (14) 3.4.1 控制系统数学模型的建立 (14)

3.4.2 PID控制及参数整定 (14) 第四章 PLC控制系统的软件设计 (16) 4.1 PLC程序设计的方法 (16) 4.2 编程软件STEP7--Micro/WIN 概述 (17) 4.2.1 STEP7--Micro/WIN 简单介绍 (17) 4.2.2 计算机与PLC的通信 (18) 4.3 程序设计 (18) 4.3.1程序设计思路 (18) 4.3.2 PID指令向导 (19) 4.3.3 控制程序及分析 (25) 第五章组态画面的设计 (29) 5.1组态变量的建立及设备连接 (29) 5.1.1新建项目 (29) 5.2创建组态画面 (33) 5.2.1新建主画面 (33) 5.2.2新建PID参数设定窗口 (34) 5.2.3新建数据报表 (34) 5.2.4新建实时曲线 (35) 5.2.5新建历史曲线 (35) 5.2.6新建报警窗口 (36) 第六章系统测试 (37) 6.1启动组态王 (37) 6.2实时曲线观察 (38) 6.3分析历史趋势曲线 (38) 6.4查看数据报表 (40) 6.5系统稳定性测试 (42) 结束语 (43) 参考文献 (44) 致谢 (45)

鍗旷墖链鸿

河北工业大学计算机硬件技术基础(MCS-51)2007年课程设计 报告 一、题目:工业顺序控制 二、问题的提出 1.目的: (1)培养学生综合利用MCS-51单片机的软硬件知识进行程序设计的能 力,解决一些实际问题。 (2)进一步加深对MCS-51单片机内部结构和程序设计方法的理解。 (3)提高学生建立程序文档、归纳总结的书面表达能力。 (4)通过查阅和网上搜索资料,提高学生独立获取知识的能力。 (5)在设计的全过程中,通过理论与实践相结合,培养和提高学生的实 践能力和创新能力。 三、总体设计 1、分析问题的功能 在工业控制中,像冲压、注塑、轻纺、制瓶等生产过程,都是一些继续生产过程,按某种顺序有规律的完成某种预定的动作,对这类继续生产过程称为顺序控制,倒注塑机工艺大致按“合模-注射-延时-开模-产伸-产退”顺序工作。 P1.0~P1.6代表控制注塑机的七道工程,模拟控制七只发光二极管的点亮,低电平有效,设每道工序时间为延时,P3.4为开工启动开关,低电平启动,P3.3为外部故障输入模拟开关,低电平报警,P1.7为报警输出,前六道工序只有一位输出,第七道工序中有三位输出。 2、系统总体结构设计 根据上述问题描述,本设计运用了两个中断,一个外部INT1中断,一个定时 器T/C1中断, 四、详细设计: 1、画出电路图;

2. 流程图

3、设计中的主要困难及解决方案 1)困难1 实现蜂鸣器与故障中断的同步 解决方法:当语句LOOP: JNB P3.3,LOOP 循环执行时,开定时器不断给蜂鸣器高低方波,这样,只要定时器一直开着,蜂鸣器就一直处于鸣响状态,直到外部中断解除。 LOOP: JNB P3.3, LOOP SETB P1.7 CLR ET1 RETI 定时器停止工作,工程回到端点继续执行。 2)困难2 各工序的用时应该不同 我们准备了几个不同的子程序,每个灯亮时就可以调用不同的子程序了,这样等量的时间就不同了。 三、程序清单 ORG 8000H AJMP MAIN ORG 8013H LJMP INT1SV ORG 801BH LJMP T1S MAIN: MOV SP, #5FH SETB EA ;允许CPU中断 SETB EX1 ;允许INT1中断 CLR IT1 ;INT1为电平触发 L0: JNB P3.4, L1 AJMP L0 ;是否开工? L1: ;第一道工序 SETB P1.7 CLR P1.0 ACALL DLAY L3: SETB P1.0 ;第二道工序 CLR P1.1 ACALL DLAYA AJMP L4 L4:SETB P1.1 ;第三道工序 CLR P1.2 ACALL DLAYB AJMP L5 L5: SETB P1.2 ;第四道工序

工业过程自动化技术专业

工业过程自动化技术专业(中德技术学院)人才培养方案 一、专业代码、名称 560303,工业过程自动化技术(专科) 二、培养目标 本专业培养具有良好的思想道德品质、国际视野和科学人文素养,具备生产过程自动化技术领域所需的职业素养、工程技术基础理论和一定的工程实践能力,能够从事系统分析、系统设计、系统运行等方面工作的应用型人才。 三、培养要求 本专业学生主要学习电路分析、电子技术、控制理论、单片机原理及应用、系统工程、检测技术及仪表、计算机控制技术与应用、工业过程控制及运动控制等方面的基本理论和基本知识,使学生受到较好的工程实践基本训练。 本专业培养的毕业生必须达到如下知识、能力和素质的培养要求: 1.掌握自动化专业必需的数学、自然科学、工程基础和专业相关知识,能够将所学知识用于解决工业生产过程控制系统中的问题。 2.能够针对工业生产过程控制系统及其网络的设计、开发、构建、实现、应用与改进等复杂工程问题给出设计方案;能够设计出满足控制系统特定需求的各个单元和系统,能够在该设计环节中激发创新意识,并综合考虑社会、健康、安全、法律、文化以及环境等因素。 3.能够选择与使用典型的检索工具获取技术资源,能够使用相关的硬软件设计、开发、仿真软件对控制系统及其网络的设计、开发、构建、实现、应用与改进等复杂工程问题进行模拟和预测。 4.了解自动化专业领域和相关行业工程背景和应用现状,能够对其经济效益和社会影响进行合理分析和评价,在设计过程中综合考虑法律、安全、健康以及文化等制约因素,并能理解应承担的责任。 5.能够了解自动化领域相关职业和行业的生产、设计、研究与开发在环境保护和社会可持续性发展等方面的方针、政策,并能够理解和评价自动化工程实践对环境、社会可持续发展的影响。 6.具有人文社会科学素养、社会责任感,能够在自动化工程实践中理解并遵守工程职业道德和规范,履行责任。 7.能够在多学科和交叉学科背景下的自动化工程实践团队中承担个体、团队成员以及负责人的角色。 8.能够与业界同行进行有效沟通和交流,能够根据需要撰写报告和设计文稿,能够在公众场合陈述发言、清晰表达或回应指令。能顺利阅读本专业的外文资料,具有一定的国际视野,能在跨文化背景下进行沟通和交流。 9.具有自主学习和终身学习的意识,有不断学习和适应发展的能力。 四、主干学科 控制科学与工程、电气工程。 五、核心知识领域 控制理论、电路与电子技术、检测技术与仪表、计算机控制技术、工程设计、电力电子、电机拖动及运动控制、过程控制工程。 六、核心课程

温度控制器的设计

目录 第一章课程设计要求及电路说明 (3) 1.1课程设计要求与技术指标 (3) 1.2课程设计电路说明 (4) 第二章课程设计及结果分析 (6) 2.1课程设计思想 (6) 2.2课程设计问题及解决办法 (6) 2.3调试结果分析 (7) 第三章课程设计方案特点及体会 (8) 3.1 课程设计方案特点 (8) 3.2 课程设计心得体会 (9) 参考文献 (9) 附录 (9)

第一章课程设计要求及电路说明 1.1课程设计要求与技术指标 温度控制器的设计 设计要求与技术指标: 1、设计要求 (1)设计一个温度控制器电路; (2)根据性能指标,计算元件参数,选好元件,设计电路并画出电路图; (3)撰写设计报告。 2、技术指标 温度测量范围0—99℃,精度误差为0.1℃;LED数码管直读显示;温度报警指示灯。

1.2课程设计电路说明 1.2.1系统单元电路组成 温度计电路设计总体设计方框图如图1所示,控制器采用单片机AT89S51,温度传感器采用DS18B20,用3位LED数码管以串口传送数据实现温度显示。 1.2.2设计电路说明 主控制器:CPU是整个控制部分的核心,由STC89C52芯片连同附加电路构成的单片机最小系统作为数据处理及控制模块. 显示电路:显示电路采用4个共阳LED数码管,用于显示温度计的数值。报警电路:报警电路由蜂鸣器和三极管组成,当测量温度超过设计的温度时,该电路就会发出报警。 温度传感器:主要由DS18B20芯片组成,用于温度的采集。 时钟振荡:时钟振荡电路由晶振和电容组成,为STC89C52芯片提供稳定的时钟频率。

第二章课程设计及结果分析 2.1课程设计 2.1.1设计方案论证与比较 显示电路方案 方案一:采用数码管动态显示 使用一个七段LED数码管,采用动态显示的方法来显示各项指标,此方法价格成本低,而且自己也比较熟悉,实验室也常备有此元件。 方案二:采用LCD液晶显示 采用1602 LCD液晶显示,此方案显示内容相对丰富,且布线较为简单。 综合上述原因,采用方案一,使用数码管作为显示电路。 测温电路方案 方案一:采用模拟温度传感器测温 由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。 方案二:采用数字温度传感器 经过查询相关的资料,发现在单片机电路设计中,大多数都是使用传感器,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。 综合考虑,很容易看出,采用方案二,电路比较简单,软件设计也比较简单,故采用了方案二。 2.1.2设计总体方案 根据上述方案比较,结合题目要可以将系统分为主控模块,显示模块,温度采集模块和报警模块,其框图如下:

基于单片机的温控器

天津理工大学 课程设计报告 题目:基于单片机的温控器设计 学生姓名李天辉学号 20101009 届 2013 班级电气4班 指导教师专业电气工程及其自动化

说明 1. 课程设计文本材料包括设计报告、任务书、指导书三部分,其中 任务书、指导书由教师完成。按设计报告、任务书、指导书顺序装订成册。 2. 学生根据指导教师下达的任务书、指导书完成课程设计工作。 3. 设计报告内容建议主要包括:概述、系统工作原理、系统组成、设计内容、小结和参考资料。 4. 设计报告字数应在3000-4000字,采用电子绘图、采用小四号宋 体、1.25倍行距。 5.课程设计成绩由平时表现(30%)、设计报告(30%)和提问成绩(40%) 组成。

课程设计任务书、指导书 课程设计题目: Ⅰ.课程设计任务书 一、课程设计的内容和要求(包括原始数据、技术要求、工作量) 当今社会,温控器已经广泛应用于电冰箱、空调和电热毯等领域中。其优点是控制精度高,稳定性好,速度快自动化程度高,温度和风速全自动控制,操作简单可靠,对执行器要求低,故障率低,效果好。目前国内外生产厂家正在研究开发第三代智能型室温空调温控器,应用新型控制模型和数控芯片实现智能控制。现在已有国内厂家生产出了智能型室温空调温控器,并已应用于实际工程。 本课程设计要求设计温度控制系统,主要由温度数据采集、温度控制、按键和显示、通讯等部分组成。温度采集采用NTC或PTC热敏电阻(或由电位器模拟)或集成温度传感器、集成运算放大器构成的信号调理电路、AD转换器组成。温控部分采用交流开关BT136通过改变导通角进行调压限流达到控制加热丝温度的目的。 温度控制算法采用PID控制,可以采用普通PID或模糊PID。对控制PID参数进行整定,进行MATLAB仿真,说明控制效果。进行程序编制。 设计通讯协议,并能够通过RS485总线将数据传回上位机。2.课程设计的要求 1、选择相应元器件设计温度控制系统原理图并绘制PCB版图。 2、进行PID控制算法仿真,设计PID参数,或模糊PID规则。 3、系统功能要求:a要能够显示实时温度;b能够进行温度设置;c 能够进行PID参数设定;d能够把数据传回上位机;e可以设定本机地址。F温度控制范围0~99.9度。 4、编制程序并调试通过,并有程序流程图。

单片机实验

实验一P1口亮灯实验 实验目的 ⑴学习P1口的使用方法; ⑵学习延时子程序的编写。 实验预备知识 ⑴P1口对准双向口,每一位都可独立地定义为输出线或输入线。 ⑵本实验中延时子程序采用指令循环来实现,机器周期(12/6MHz)*指令所需机器周期数*循环次数,在系统时间允许的情况下可以采用此方法。 实验内容 P1作为输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。 程序流程 实验电路 实验步骤 P1.0~P1.7用插针连至L1~L8,运行程序后,观察发光二极管闪亮移位情况。 思考 改变延时常数,使发光二极管闪亮时间改变。 修改程序,使发光二极管闪亮移位方向改变。

实验二 P3.3口输入,P1口输出 实验目的 掌握P3口P1口简单使用。 实验内容 P3.3口输入一脉冲,P1口按位加一方式点亮发光二极管。程序流程 实验电路

实验步骤 ⑴P3.3用插针连至K1,P1.0~P1.7用插针连至L1~L8。 ⑵编译、装载、连续运行。 ⑶开关K1每拨动一次,L1~L8发光二极管按位加一点亮。 思考 修改程序,使发光二极管左移方式点亮。

实验三工业顺序控制(中断控制) 实验目的 掌握工业顺序控制程序的简单编程:中断的使用。 实验预备知识 在工业控制中,象冲压、注塑、轻纺、制瓶等生产过程,都是一些继续生产过程,按某种顺序有规律地完成预定的动作,对这类继续生产过程的控制称顺序控制,倒注塑机工艺过程大致按“合模→注射→延时→开模→产伸→产退”顺序动作,用单片机最易实现。 实验内容 MCS-51的P1.0~P1.6控制注塑机的七道工序,现模拟控制七只发光二极管的点亮,低电平有效,设定每道工序时间转换为延时,P3.4为开工启动开关,高电平启动。P3.3为外部故障输入模拟开关,低电平报警,P1.7为报警声音输出,设定6道工序只有一位输出,第七道工序三位有输出。 程序流程

温度控制器课程设计要点

郑州科技学院 《模拟电子技术》课程设计 题目温度控制器 学生姓名 专业班级 学号 院(系)信息工程学院 指导教师 完成时间 2015年12月31日

郑州科技学院 模拟电子技术课程设计任务书 专业 14级通信工程班级 2班学号姓名 一、设计题目温度控制器 二、设计任务与要求 1、当温度低于设定温度时,两个加热丝同时通电加热,指示灯发光; 2、当水温高于设定温度时,两根加热丝都不通电,指示灯熄灭; 3、根据上述要求选定设计方案,画出系统框图,并写出详细的设计过程; 4、利用Multisim软件画出一套完整的设计电路图,并列出所有的元件清单; 5、安装调试并按规定格式写出课程设计报告书. 三、参考文献 [1]吴友宇.模拟电子技术基础[M]. 清华大学出版社,2009.52~55. [2]孙梅生.电子技术基础课程设计[M]. 高等教育出版社,2005.25~28. [3]徐国华.电子技能实训教程[M]. 北京航空航天大学出版社,2006.13 ~15. [4]陈杰,黄鸿.传感器与检测技术[M].北京:高等教育出版社,2008.22~25. [5]翟玉文等.电子设计与实践[M].北京:北京中国电力出版社,2005.11~13. [6]万嘉若,林康运.电子线路基础[M]. 高等教育出版社,2006.27 ~29. 四、设计时间 2015 年12月21 日至2015 年12 月31 日 指导教师签名: 年月日

本设计是一种结构简单、性能稳定、使用方便、价格低廉、使用寿命长、具有一定的实用性等优点的温度控制电路。本文设计了一种温度控制器电路,该系统采用模拟技术进行温度的采集与控制。主要由电源模块,温度采集模块,继电器模块组成。 现代社会科学技术的发展可以说是突飞猛进,很多传统的东西都被成本更低、功能更多、使用更方便的电子产品所替代,本课程设计是一个以温度传感器采用LM35的环境温度简易测控系统,用于替代传统的低精度、不易读数的温度计。但系统预留了足够的扩展空间,并提供了简单的扩展方式供参考,实际使用中可根据需要改成多路转换,既可以增加湿度等测控对象,也能减少外界因素对系统的干扰。 首先温度传感器把温度信号转换为电流信号,通过放大器变成电压信号,然后送入两个反向输入的运算放大器组成的比较器电路,让电位器来改变温度范围的取值,最后信号送入比较器电路,通过比较来判断控制电路是否需要工作。此方案是采用传统的模拟控制方法,选用模拟电路,用电位器设定给定值,反馈的温度值与给定的温度值比较后,决定是否加热。 关键词:温度传感器比较器继电器

温度测控仪设计-毕业设计

温度测控仪设计 学生:XXX 指导教师:XXX 容摘要:本文主要介绍了智能温度测量仪的设计,包括硬件和软件的设计。先对该测量仪进行概括性介绍,然后介绍该测量仪在硬件设计上的主要器件:“Pt100热电阻”、AT89C51单片机和LCD显示器以及描述测量仪的总体结构原理。在本设计中,是以铂电阻PT100作为温度传感器,采用恒流测温的方法,通过单片机进行控制,用放大器、A/D 转换器进行温度信号的采集。总体来说,该设计是切实可行的。 关键词:温度 Pt100热电阻 AT89C51单片机 LCD显示器

Design of and control instrument Abstract: This paper describes the design of the intelligent temperature measuring instrument, including hardware and software design. Be the first general description of the measuring instrument, and then describes the hardware design of the measuring instrument's main device: "Pt100 thermal resistance", AT89C51 microcontroller and LCD display, and describe the principle of measuring the overall structure. In this design, as is the PT100 platinum resistance temperature sensor, temperature measurement using constant current method, through the microcontroller to control, amplifier, A/D converter for temperature signal acquisition. Overall, the design is feasible. Keywords:temperature Pt100 thermal resistance AT89C51 microcontroller LCD monitor .

单片机智能温控器课程设计

单片机课程设计 说明书 专业:机械设计制造及其自动化 设计题目:智能温控器 设计者: 指导老师: 设计时间:

一、课题名称:一个基于51单片机的智能温控器课程 设计 二、主要技术指标及工作内容和要求:本设计以MCS-51系列单片机为核心,采用常用电子 器件设计,一个电源开关,两个控制温度设定按键(增大/减小),四位数码管分别显示设 定温度和实际温度,量程为0~99度,打开电源开关后设定温度初始化为26度。 1,按键输入采用中断方式,两个按键分别接INT0和INT1。 2,采用铂电阻(Pt100)温度传感器进行温度测量,模数转换采用ADC0809。 3,单片机根据设定温度S和实测温度P控制继电器R的动作,死区设为2度:当P<=S-1时,控制R接通电加热回路; 当P>S+1时,控制R断开电加热回路; 当S-1

基于单片机的工业循环水系统电气控制

第1章前言 随着工业的发展,人们越来越重视科学、稳定以及环保的生产生活方式;上述生产方式有赖于生产机器的稳定高效的运行,高效的运行可以利用一定的技术手段对设备进行改造达到目的,相应的,由于高效的生产方式,能量消耗的增加必然造成设备热能的散失加剧,这些热能使得设备的内部部件老化程度加快甚至故障,那么相应的冷却系统也就应运而生了。 水冷以其卓越的散热效果以及其经济性而倍受青睐,但是在水资源日益缺乏的今天,一次性的水冷无论从它的环保性以及其花费来说都不是好的选择,那么,一个经济高效的水循环系统就满足上述要求。 现在的水循环系统已经得到了广泛的运用,从大的如核电站,钢铁机加工企业到小的如电子,IT行业都有涉及,这其中前者占有绝大部分的份额。近些年,国家提出的节能减排的要求更加速了高效环保的水循环冷却系统的发展,这方面的技术也越来越受重视。 在PLC还未出现时候,传统的工业控制用的是继电器控制,这种控制电路有着不可抗拒的不利因素:安装不便,检修不易,不经济,抗干扰能力差;PLC 以其安装方便,经济耐用,可靠性高,抗干扰能力强等优点在近些年发挥了重大的作用,不少厂家纷纷把以前烦琐的线路改造成PLC控制。 所以,PLC及相关系统电路设计及运用对电气方向的大学生来讲是必备的技能,基于PLC的工业水循环电控系统的设计不论从技术的角度还是从发展的潜力都有着相当大的意义。 本篇论文从主电路的设计,控制检测电路的设计,电气设备的选择,PLC 的控制线路以及端口的分配和编程集中反映了工业水循环的电控系统的设计,调试,运用,从理论上描述了PLC控制水循环的运行机制,起到抛砖引玉的作用。

第2章可编程控制器的概述 可编程控制器,简称PC或PLC。它是20世纪70年代以来,在集成电路、计算机技术的基础上发展起来的一种新型工业控制设备。由于它具有功能强、可靠性高、配置灵活、使用方便以及体积小、重量轻等优点,近年来,已被国内外广泛应用于自动化控制的各个领域,并已成为实现工业自动化的支柱产品。为了更好的认识可编程控制器,现在将从以下几个方面加以介绍。 2.1 可编程控制器的由来与定义 2.1.1可编程控制器的由来 20世纪60年代,计算机技术已开始应用于控制领域,但由于计算机技术本身的复杂性,编程难度高,难以适应恶劣的工业环境以及价格昂贵等原因而未能广泛应用于工业控制。1968年美国最大的汽车制造商——通用汽车公司,为适应汽车型号的不断翻新,想寻找一种方法,在汽车设计时以尽可能减少重新设计和更换继电器控制系统,降低成本,缩短时间。设想把计算机的完备功能、灵活性和通用性等优点和继电器控制系统的简单易懂、操作方便、价格便宜等优点结合起来,做成一种能适应工业环境的通用装置。并把计算机的编程方法和输入方法加以简化,用面向控制过程、面向问题的“自然语句”进行编程,使得不熟悉计算机的人也能方便使用。装置的要求充分体现在提出的招标指标中: 1)编程简单,可在现场修改程序; 2)维护方便,最好是插件式; 3)可靠性高于继电器控制柜; 4)体积小于继电器控制柜; 5)可将数据直接送入管理计算机; 6)在成本上可与继电器柜竞争; 7)输入可以是交流115V; 8)在扩展时,原有系统只需作很小变更; 9)输出交流115V以上,2A以上,能直接驱动电磁阀; 10)用户程序存储器容量至少能扩展到4K。 根据招标要求,一年以后,美国数字设备公司率先研制出第一台可编程控

模电课设—温度控制系统设计

目录 1.原理电路的设计 (11) 1.1总体方案设计 (11) 1.1.1简单原理叙述 (11) 1.1.2设计方案选择 (11) 1.2单元电路的设计 (33) 1.2.1温度信号的采集与转化单元——温度传感器 (33) 1.2.2电压信号的处理单元——运算放大器 (44) 1.2.3电压表征温度单元 (55) 1.2.4电压控制单元——迟滞比较器 (66) 1.2.5驱动单元——继电器 (88) 1.2.6 制冷部分——Tec半导体制冷片 (99) 1.3完整电路图 (1010) 2.仿真结果分析 (1111) 3 实物展示 (1313) 3.1 实物焊接效果图 (1313) 3.2 实物性能测试数据 (1414) 3.2.1制冷测试 (1414) 3.2.2制热测试 (1818) 3.3.3性能测试数据分析 (2020) 4总结、收获与体会 (2121) 附录一元件清单 (2222) 附录二参考文献. (2323)

摘要 本课程设计以温度传感器LM35、运算放大器UA741、NE5532P及电压比较器LM339 N为电路系统的主要组成元件,扩展适当的接口电路,制作一个温度控制系统,通过室温的变化和改变设定的温度,来改变电压传感器上两个输入端电压的大小,通过三极管开关电路控制继电器的通断,来控制Tec制冷片的工作。这样循环往复执行这样一个周期性的动作,从而把温度控制在一定范围内。学会查询文献资料,撰写论文的方法,并提交课程设计报告和实验成品。 关键词:温度;测量;控制。

Abstract This course is designed to a temperature sensor LM35, an operational amplifier UA741,NE5532P and a voltage comparator LM339N circuit system of the main components. Extending the appropriate interface circuit, make a temperature control system. By changing the temperature changes and set the temperature to change the size of the two input ends of the voltage on the voltage sensor, an audion tube switch circuit to control the on-off relay to control Tec cooling piece work. This cycle of performing such a periodic motion, thus controlling the temperature in a certain range. Learn to query the literature, writing papers, and submitted to the curriculum design report and experimental products. Key words: temperature ; measure ;control

温度控制系统毕业设计

摘要 在日常生活及工农业生产中,对温度的检测及控制时常显得极其重要。因此,对数字显示温度计的设计有着实际意义和广泛的应用。本文介绍一种利用单片机实现对温度只能控制及显示方案。本毕业设计主要研究的是对高精度的数字温度计的设计,继而实现对对象的测温。测温系数主要包括供电电源,数字温度传感器的数据采集电路,LED显示电路,蜂鸣报警电路,继电器控制,按键电路,单片机主板电路。高精度数字温度计的测温过程,由数字温度传感器采集所测对象的温度,并将温度传输到单片机,最终由液晶显示器显示温度值。该数字温度计测温范围在-55℃~+125℃,精度误差在±0.5℃以内,然后通过LED数码管直接显示出温度值。数字温度计完全可代替传统的水银温度计,可以在家庭以及工业中都可以应用,实用价值很高。 关键词:单片机:ds18b20:LED显示:数字温度. Abstract In our daily life and industrial and agricultural production, the detection and control of the temperature, the digital thermometer has practical significance and a wide range of applications .This article describes a programmer which use a microcontroller to achieve and display the right temperature by intelligent control .This programmer mainly consists by temperature control sensors, MCU, LED display modules circuit. The main aim of this thesis is to design high-precision digital thermometer and then realize the object temperature measurement. Temperature measurement system includes power supply, data acquisition circuit, buzzer alarm circuit, keypad circuit, board with a microcontroller circuit is the key to the whole system. The temperature process of high-precision digital thermometer, from collecting the temperature of the object by the digital temperature sensor and the temperature transmit ted to the microcontroller, and ultimately display temperature by the LED. The digital thermometer requires the high degree is positive 125and the low degree is negative 55, the error is less than 0.5, LED can read the number. This digital thermometer could

单片机设计 按键顺序控制加减计数(1602 液晶显示) 程序

#include #include #define uchar unsigned char #define uint unsigned int #define LCD_IO P2 sbit KK1 = P3^2; //按键输入; sbit KK2 = P3^3; //按键输入; sbit LCD_RS = P3^5; sbit LCD_RW = P3^6; sbit LCD_EN = P3^7; uchar code LCD_line1[] = " The Counter"; int idata mydata=0; /************************************************************** * 名称: Delay_1ms() * 功能: 延时子程序,延时时间为1ms * x * 输入: x (延时一毫秒的个数) * 输出: 无 ***************************************************************/ void Delay_1ms(uint x) { uchar i, j; for(i = 0; i < x; i++) for(j = 0; j <= 148; j++); } /************************************************************** * 名称: lcd_bz( ) * 功能: 测试忙碌子程序 * 输入: 无 * 输出: result ***************************************************************/ bit lcd_bz() { bit result; LCD_RS = 0; LCD_RW = 0; LCD_EN = 0; _nop_(); _nop_(); _nop_(); _nop_(); result=(bit)(P3&0x80); LCD_EN = 0; return result; }

基于51单片机的多功能温度控制器的设计

基于51单片机的多功能温度控制器的设计 在某些工业生产过程中,如恒温炉、仓库储藏、花卉种植、小型温室等领域都对温度有着严格的要求,需要对其加以检测和控制。传统的温度测量方法是将温度传感器输出的模拟信号放大后送至远端A/D转换器,最后单片机对A/D转换后的数据进行分析处理。这种方法的缺点是模拟信号在传输的过程中存在损耗并且容易受到外界的干扰,导致测量的温度精度不高。 文中以STC89C52RC单片机为控制核心,利用美国Dallas公司最新推出的单总线数字温度传感器DSl8820测量温度,单片机处理后对温度进行控制,并将温度显示在LCDl602上,还可通过按键设置温度上下限值实现温度超限报警等功能。 1 系统的组成和工作原理 多功能温度控制系统的结构,系统由六部分组成:控制核心部分、温度数据采集部分、加热装置控制部分、液晶显示部分、按键输入部分和报警提示部分。单片机启动温度采集电路完成温度的一次转换,然后读出转换后的数字量并转化成当前的温度呈现在显示模块中,并将当前的温度与通过按键输入电路设定的保持恒温度数进行比较,以实现温度的控制。还可以通过按键设置温度的上下限值以实现超温或低温报警提示功能。本系统的设计目标要对温度的控制精度达到0.1℃。 1.1 报警电路 报警电路采用蜂鸣器作为发声装置,当温度高于设定的上限值或低于下限值,给蜂鸣器送周期为1s,占空比为50%的方波,报警的时间可以持续1分钟或等待按键解除报警,这由软件控制实现。 1.2 按键电路 采用2×3的小键盘,键盘的识别可以采用两种方法:行扫描法和行反转法。两种方法都要注意消除按键的抖动。文中采用行扫描法并做成子程序,出口参数为按键的键值。定义键K1设置TH,K2设置TL,K3调高TH或TL,K4调低TH或TL,K5对TH或TL的数值进行确认。 1.3 温度检测电路 温度检测电路采用智能温度传感器DSl8820,它与单片机相连只需要3线,减少了外部的硬件电路。DSl8820主要性能特点如下: (1)测温的范围为-55~125℃,最大分辨率可以达到0.0625℃; (2)电源电压范围为3.0~5.5V; (3)供电模式:寄生供电和外部供电; (4)封装形式有两种:3脚的TO-92封装和8脚的SOIC封装; (5)可编程的温度转换分辨率,分辨率为9~12位(包括1位符号位),由配置寄存器决定具体位数,配置寄存器的格式如表1所示。 其中RlR0是用来设定分辨率的,分辨率的定义如表2所示。 由表2可以看出,分辨率设定得越高,温度转换所需要的时间就越长,因此应根据实际应用的需要来选择合适的分辨率。本文中选取12位分辨率,每隔1秒检测一次温度。12位分辨率的温度数据值格式如下: 当S=0表示测得的温度为正值,当S=l表示测得的温度为负值。 1.3.1 DSl8820的存储器结构 DSl8820的存储器有高速暂存RAM和非易失性电擦写EEPROM。高速暂存RAM的内容从低

(完整版)基于51单片机智能温度控制器设计与实现毕业设计

题目基于51单片机智能温度控制器设计与实 现 本题目要求设计者以智能温度控制器为对象,完成硬件系 统和软件设计并实现其功能。 1.熟悉任务,分析课题要求,熟悉温度控制器的原理, 进行方案设计; 2.熟悉硬件设计技术基础、单片机应用系统设计要领, 根据本课题的特点选择相应器件; 3.搜集素材,优选素材,整理素材; 4.完成所硬件电路的装配和调试,编写程序实现其功 能; 5.撰写毕业设计论文。 6.参加毕业设计论文答辩。

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可

以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和

相关文档
最新文档