51单片机压力传感器

51单片机压力传感器
51单片机压力传感器

目录

一、设计题目与设计任务 (1)

1.设计题目:单片机压力测控系统设计 (1)

2.设计任务 (1)

二、前言 (1)

三、主体设计 (1)

1、系统设计 (1)

2、系统框图 (1)

3、设计思路 (2)

4、压力传感器和A/D转换芯片选择 (2)

(1)压力传感器1210—030 G—3 S (2)

(2)AD模数转换芯片ADC0809 (3)

四、参考文献 (4)

五、结束语 (4)

六、完整程序 (5)

七、仿真结果 (7)

八、程序流程图 (9)

一、设计题目与设计任务

1.设计题目:单片机压力测控系统设计

2.设计任务

1、本设计是微机控制的制氧机压力测控系统。单片机系统通过压力传感器和检测比较器测得气缸内压力达到某一上限值(176 kPa)和下限值(64 kPa)时,单片机系统控制执行相应的动作(达到上限值时打开放气阀放气,达到下限值关闭放气阀进行充气)。如此反复循环,不断将氧气提供给需氧者。在此过程中若充气或放气10 s仍达不到设定值(176 kPa和64 kPa)则进行光报警。

2、写出压力测量过程,绘制压力控制系统结构图。

3、(1)系统硬件电路设计。

单片机采用89S52;选择适合上述测量范围的压力传感器,设计数据采集及信号调理电路,设计键盘显示电路及报警电路。

(2)编制压力测量程序。

二、前言

本设计为基于AT89S52单片机的气缸压力测量与控制系统,压力传感器选择1210—030G—3S,能够在0~207kPa范围内有效测量气缸供氧系统的压力,并进行实时压力(LED)显示。单片机控制部分实现当压力超出上限值176kPa时,放气阀打开进行放气,当压力低于下限值64kPa时,放气阀关闭,气缸充气;压力在正常范围(64~176kPa)时,压力改变不影响放气阀的状态。报警功能实现当压力超出设定的压力范围(64~176kPa)10S时,发光二极管点亮进行报警。

关键词:AT89S52单片机、1210—030G—3S型压力传感器、LED显示、报警。

三、主体设计

1、系统设计

考虑到过程控制系统的一般组成及本次设计的任务要求,本设计主要由以下几部分组成:被控对象(气缸及附带的进气阀和放气阀)、压力传感器FT、A/D转换(ADC0808)、AT89S52单片机、LED显示、报警电路和放气阀驱动电路。

2、系统框图

基于AT89S52的压力测控系统

3、设计思路

压力传感器(1210—030G—3S)测量气缸中的压力(0~207kPa)输出电流信号(75~150mA),经A/D模数转换(结果为00000000~11111111即0~255)后给单片机,单片机进行算法处理将传感器的输出信号和测量的压力对应起来并实时显示在LED 上,当所测压力大于176kPa时,放气阀打开进行放气,当所测压力小于64kPa时,放气阀关闭,进气阀给气缸充气。此过程中若放气或充气10S任没达到正常的压力范围则进行1S报警。当然A/D转换的启停、压力大小的判断、10S延时都由单片机来控制。

4、压力传感器和A/D转换芯片选择

(1)压力传感器1210—030 G—3 S

网上查找了很多压力传感器,其中较为典型常用的是上海名动公司生产的MD—PS系列和MD—GA高精度绝压传感器,但是由于二者都不适合本次课程设计的压力范围(0~200kPa),最终选择1210—030G—3S压力传感器,它的测压范围为

30*6.895=207kPa,输出电流范围是75~150mA,性能参数如下:

典型应用电路如下:

设计仿真时由于PROTEUS中没有传感器,因此用一个范围为75~150分压电路代替传感器的输出电流,使的仿真得以进行。

(2)AD模数转换芯片ADC0809

ADC0809是目前广泛使用的逐位逼近型8位单片A/D转换芯片,片内含8 路模拟开关,可允许8路模拟量输入。主要由3部分组成:模拟输入选择部分、转换器部分、输出部分。

ADC0809芯片为28引脚为双列直插式封装,ADC0809主要信号引脚功能说明如下:IN7~IN0——八路模拟量输入通道。

ALE——地址锁存允许信号。

START——转换启动信号。START=1转换启动。

A、B、C——地址线、通道端口选择线。

CLK——时钟信号。ADC0809要求外接时钟频率为10kHz~1.2MHz。通常使用频率为500KHz的时钟信号。

EOC——转换结束信号。EOC=1,转换结束。

D7~D0——数据输出线。

OE——输出允许信号。OE=1,输出转换得到的数据。

Vcc——+5V电源。

Vref——参考电源参考电压用来与输入的模拟信号进行比较,作为逐次逼近的基准。其典型值为+5V(Vref(+)=+5V, Vref(-)=-5V)。

ADC0809与MCS-51单片机的连接主要涉及两个问题。一是8路模拟信号通道的选择,二是A/D转换完成后转换数据的传送。转换数据的传送有定时传送方式、查询方式、中断方式这三种方式。A、B、C的值与被选择的通道之间的关系如下表1—1所示:

表1—1 通道选择表

实际画图时由于PROTEUS中没有ADC0809,因此用ADC0808代替。ADC0808和ADC0809的使用接发相同,只是ADC0809的转换误差为1位,ADC0808为5位而已。

四、参考文献

1. 《51单片机原理及应用—基于Keil C与Proteus》陈海宴北京航空航天大学出版社。

2. 《单片机原理与接口技术》第二版马淑华等北京邮电大学出版社。

3. 《微型计算机原理与接口技术》第二版冯博琴吴宁清华大学出版社。

五、结束语

本次课程设计历时一周,除键盘电路外基本完成了所要求的设计任务。设计过程中参考了陈海宴老师编著的《51单片机原理及应用—基于Keil C与Proteus》一书中数字电压表的设计。本设计的难点在于:考虑到现场传感器的气体压力测量与传感器输出是实时进行的,因此ADC0808的模数转换必须时刻进行,至少两次转换之间的时间间隔不能太长。但是如果一次转换完成后立即进行下一次转换,则对应的转换子程序就是一个死循环,这样的话就不能进行报警,因为无法取出10S之后的转换数据。考虑到这个问题之后再转换之程序中做一个0.1S的延时,这样每次转换大约耗时0.1S,

转换子程序进行多少次转换通过主程序来控制,这样调用转换子程序100次之后就可以得到10S以后的转换结果,将转换结果和压力上下限比较以后就可以决定是否进行报警了。当然,这样做的局限是使得LED的显示不那么连续了。因此,进一步想办法解决这个问题是我们以后应该继续做的。

设计过程中老师和同学给了我很多支持和帮助,这里一并致谢!

六、完整程序

#include

#define uint unsigned int

#define uchar unsigned char

uchar code table[]

={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xf6,0xee,

0x3e,0x9c,0x7a,0x9e,0x8e}; //七段共阴数码管编码表

sbit START=P3^0;

sbit EOC=P3^1;

sbit OE=P3^2;

sbit ONOFF=P3^3; //控制放气门开或关

sbit ALARM=P3^4; //报警显示

void delay(uint m) //LED显示延时子程序

{

while(m--);

}

delay1(uint c) //循环间隔延时C毫秒子程序

{

uchara,b;

for( ;c>0;c--)

for(b=142;b>0;b--)

for(a=2;a>0;a--);

}

void fun1(uinti) //AD转换及数据处理子程序

{

uint P;

extern uint PP; //定义全局变量PP

START=1;

START=0;

while(i>0) //fun1只执行i次

{

if(i>0)

{

OE=1; //转换结束输出使能

P=P0; //AD转换结果赋给P

P=P*1.0/255*207; //完成75~150mA到0~207kPa的转换

OE=0; //停止输出

P2=0xfe; //个位位选

P1=table[P%10]; //个位段选

delay(500); //个位显示延时约1ms

P2=0xfd; //十位位选

P1=table[P/10%10]; //十位段选

delay(500); //十位显示延时约1ms

P2=0xfb; //百位位选

P1=table[P/100%10]; //百位段选

delay(500); //百位显示延时约1ms

if(P>176)ONOFF=1; //打开放气阀

if(P<64)ONOFF=0; //打开放气阀

i=i-1;

delay1(100); //每次转换后延时100ms(0.1s)

START=1; //启动下一次转换

START=0;

}

}

}

void main() //主程序

{

ONOFF=0; //初始时放气阀关闭

START=0; //初始时不进行AD转换

ALARM=0; //初始时不报警

OE=0;

while(1) //死循环

{

fun1(1); //调用一次转换子程序

PP=P; //转换处理结果(压力值)给PP

if(PP>176||PP<64) //判断压力是否超限

{

fun1(100); //压力超限则调用转换子程序100次,用时约0.1*100=10s PP=P;

if(PP>176) //10s后压力任超出上限则进行报警

{

ALARM=1;

delay1(1000); //报警显示延时1s

}

if(PP<64) //10s后压力任超出下限则进行报警

{

ALARM=1;

delay1(1000); //报警显示延时1s

}

if(64

{

ALARM=0;

delay1(1000);

}

}

else if(64

}

七、仿真结果

正常压力范围,放气阀关闭

压力超出上限,放气阀打开

压力超出上限10S后仍未恢复正常报警

八、程序流程图

51单片机汇编指令集(附记忆方法)

51单片机汇编指令集 一、数据传送类指令(7种助记符) MOV(英文为Move):对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送; MOVC(Move Code)读取程序存储器数据表格的数据传送; MOVX (Move External RAM) 对外部RAM的数据传送; XCH (Exchange) 字节交换; XCHD (Exchange low-order Digit) 低半字节交换; PUSH (Push onto Stack) 入栈; POP (Pop from Stack) 出栈; 二、算术运算类指令(8种助记符) ADD(Addition) 加法; ADDC(Add with Carry) 带进位加法; SUBB(Subtract with Borrow) 带借位减法; DA(Decimal Adjust) 十进制调整; INC(Increment) 加1; DEC(Decrement) 减1; MUL(Multiplication、Multiply) 乘法; DIV(Division、Divide) 除法; 三、逻辑运算类指令(10种助记符) ANL(AND Logic) 逻辑与; ORL(OR Logic) 逻辑或; XRL(Exclusive-OR Logic) 逻辑异或; CLR(Clear) 清零; CPL(Complement) 取反; RL(Rotate left) 循环左移; RLC(Rotate Left throught the Carry flag) 带进位循环左移; RR(Rotate Right) 循环右移; RRC (Rotate Right throught the Carry flag) 带进位循环右移; SWAP (Swap) 低4位与高4位交换; 四、控制转移类指令(17种助记符) ACALL(Absolute subroutine Call)子程序绝对调用; LCALL(Long subroutine Call)子程序长调用; RET(Return from subroutine)子程序返回; RETI(Return from Interruption)中断返回; SJMP(Short Jump)短转移; AJMP(Absolute Jump)绝对转移; LJMP(Long Jump)长转移; CJNE (Compare Jump if Not Equal)比较不相等则转移;

基于51单片机及DS18B20温度传感器的数字温度计程序(详细注释)

基于51单片机及DS18B20温度传感器的数字温度计程序(详细注释)

电路实物图如下图所示: C 语言程序如下所示: /******************************************************************** zicreate ----------------------------- Copyright (C) https://www.360docs.net/doc/307706641.html, -------------------------- * 程序名; 基于DS18B20的测温系统 * 功 能: 实时测量温度,超过上下限报警,报警温度可手动调整。K1是用来 * 进入上下限调节模式的,当按一下K1进入上限调节模式,再按一下进入下限 * 调节模式。在正常模式下,按一下K2进入查看上限温度模式,显示1s 左右自动 * 退出;按一下K3进入查看下限温度模式,显示1s 左右自动退出;按一下K4消除 * 按键音,再按一下启动按键音。在调节上下限温度模式下,K2是实现加1功能, * K1是实现减1功能,K3是用来设定上下限温度正负的。 * 编程者:Jason * 编程时间:2009/10/2 *********************************************************************/ #include //将AT89X52.h 头文件包含到主程序 #include //将intrins.h 头文件包含到主程序(调用其中的_nop_()空操作函数延时) #define uint unsigned int //变量类型宏定义,用uint 表示无符号整形(16位) #define uchar unsigned char //变量类型宏定义,用uchar 表示无符号字符型(8位) uchar max=0x00,min=0x00; //max 是上限报警温度,min 是下限报警温度 bit s=0; //s 是调整上下限温度时温度闪烁的标志位,s=0不显示200ms ,s=1显示1s 左右 bit s1=0; //s1标志位用于上下限查看时的显示 void display1(uint z); //声明display1()函数 #include"ds18b20.h" //将ds18b20.h 头文件包含到主程序 #include"keyscan.h" //将keyscan.h 头文件包含到主程序 #include"display.h" //将display.h 头文件包含到主程序

基于51单片机的智能密码锁

单片机的电子密码锁 目录 第一章绪论......................................................... . (2) 1.1电子密码锁简介......................................................... .. (2) 1.2电子密码锁设计的背景及意 义............................................................................. . (3) 第2章总体设计............................................................................. . (3) 2.1设计分析............................................................................. (3) 2.2系统结构............................................................................. (4) 第3章硬件电路设计............................................................................. (5) 3.1单片机最小系统设计............................................................................. . (5) 3.1.1时钟电路............................................................................. (5) 3.1.2 复位电 路 ............................................................................ . (6) 3.1.3 最小系 统 ............................................................................

压力传感器工作原理

电阻应变式压力传感器工作原理细解 2011-10-14 15:37元器件交易网 字号: 中心议题: 电阻应变式压力传感器工作原理 微压力传感器接口电路设计 微压力传感器接口系统的软件设计 微压力传感器接口电路测试与结果分析 解决方案: 电桥放大电路设计 AD7715接口电路设计 单片机接口电路设计 本文采用惠斯通电桥滤出微压力传感器输出的模拟变量,然后用INA118放大器将此信号放大,用7715A/D 进行模数转换,将转换完成的数字量经单片机处理,最后由LCD 将其显示,采用LM334 做的精密5 V 恒流源为电桥电路供电,完成了微压力传感器接口电路设计,既能保证检测的实时性,也能提高测量精度。 微压力传感器信号是控制器的前端,它在测试或控制系统中处于首位,对微压力传感器获取的信号能否进行准确地提取、处理是衡量一个系统可靠性的关键因素。后续接口电路主要指信号调节和转换电路,即能把传感元件输出的电信号转换为便于显示、记录、处理和控制的有用电信号的电路。由于用集成电路工艺制造出的压力传感器往往存在:零点输出和零点温漂,灵敏度温漂,输出信号非线性,输出信号幅值低或不标准化等问题。本文的研究工作,主要集中在以下几个方面:

(1)介绍微压力传感器接口电路总体方案设计、系统的组成和工作原理。 (2)系统的硬件设计,介绍主要硬件的选型及接口电路,包括A/D 转换电路、单片机接口电路、1602显示电路。 (3)对系统采用的软件设计进行研究,并简要阐述主要流程图,包括主程序、A/D 转换程序、1602显示程序。 1 电阻应变式压力传感器工作原理 电阻应变式压力传感器是由电阻应变片组成的测量电路和弹性敏感元件组合起来的传感器。当弹性敏感元件受到压力作用时,将产生应变,粘贴在表面的电阻应变片也会产生应变,表现为电阻值的变化。这样弹性体的变形转化为电阻应变片阻值的变化。把4 个电阻应变片按照桥路方式连接,两输入端施加一定的电压值,两输出端输出的共模电压随着桥路上电阻阻值的变化增加或者减小。一般这种变化的对应关系具有近似线性的关系。找到压力变化和输出共模电压变化的对应关系,就可以通过测量共模电压得到压力值。 当有压力时各桥臂的电阻状态都将改变,电桥的电压输出会有变化。 式中:Uo 为输出电压,Ui 为输入电压。 当输入电压一定且ΔRi <

基于AT89C51单片机的温度传感器

基于AT89C51单片机的温度传感器 目录 摘要.............................................................. I ABSTRACT........................................................... I I 第一章绪论 (1) 1.1 课题背景 (1) 1.2本课题研究意义 (2) 1.3本课题的任务 (2) 1.4系统整体目标 (2) 第二章方案论证比较与选择 (3) 2.1引言 (3) 2.2方案设计 (3) 2.2.1 设计方案一 (3) 2.2.2 设计方案二 (3) 2.2.3 设计方案三 (3) 2.3方案的比较与选择 (4) 2.4方案的阐述与论证 (4) 第三章硬件设计 (6) 3.1 温度传感器 (6) 3.1.1 温度传感器选用细则 (6) 3.1.2 温度传感器DS18B20 (7) 3.2.单片机系统设计 (13)

3.3显示电路设计.................................错误!未定义书签。 3.4键盘电路设计................................错误!未定义书签。 3.5报警电路设计.................................错误!未定义书签。 3.6通信模块设计.................................错误!未定义书签。 3.6.1 RS-232接口简介..............................错误!未定义书签。 3.6.2 MAX232芯片简介.............................错误!未定义书签。 3.6.3 PC机与单片机的串行通信接口电路.............错误!未定义书签。 第四章软件设计..................................错误!未定义书签。 4.1 软件开发工具的选择..........................错误!未定义书签。 4.2系统软件设计的一般原则.......................错误!未定义书签。 4..3系统软件设计的一般步骤......................错误!未定义书签。 4.4软件实现....................................错误!未定义书签。 4.4.1系统主程序流程图.........................错误!未定义书签。 4.4.2 传感器程序设计...........................错误!未定义书签。 4.4.3 显示程序设计.............................错误!未定义书签。 4.4.4 键盘程序设计.............................错误!未定义书签。 4.4.5 报警程序设计.............................错误!未定义书签。 4.4.6 通信模块程序设计.........................错误!未定义书签。 第五章调试与小结..................................错误!未定义书签。致谢...............................................错误!未定义书签。参考文献...........................................错误!未定义书签。附录...............................................错误!未定义书签。系统电路图.......................................错误!未定义书签。系统程序.........................................错误!未定义书签。

基于51单片机的智能窗帘控制系统设计与实现

项目编号___201111 ___ 江南大学物联网工程学院 大学生创新训练计划结题报告 项目名称基于51单片机的智能窗帘控制系统设计与实现项目负责人晶 所学专业电气工程及其自动化 所在学院物联网工程学院 (手机) 电子信箱diamond-heartqq. 项目起止年月2011/11-2012/05 第一指导教师肖永松 专业技术职务工程师 (手机) 电子信箱https://www.360docs.net/doc/307706641.html, 结题日期2012年5月

江南大学物联网工程学院创新训练计划项目结题验收表学院名称:物联网工程学院填写日期:2012 年5 月

大学生创新训练计划 《基于AT89C51单片机的智能窗帘控制系统》成果精粹 江南大学 二○一二年五月

简介 随着物联网概念的发展,智能家居的理念也渐渐渗透到我们的生活中,受此启发,我们想尝试着做一个智能窗帘的控制系统,希望可以通过光强和时间来控制窗帘的开合。恰好我们都进行了电路、模电数电的学习,也曾初步接触了单片机,我们想通过设计这个控制系统来加深我们对所学容的理解和掌握,更加熟悉使用protel等专业软件。 计划设计一个系统可以实现以下功能: 在自动模式下,在设定的时间,如早成6点至晚上8点,晚上8点至早晨6点,时间控制,可以避免室开灯造成窗帘自动拉开。通过光强控制,在设定光照强度围,窗帘拉开,超过设定强度,如夏日中午,为避免房间被光直射造成温度过高,窗帘关闭。在手动模式下,通过按键来调整窗帘的开合状态。 最终设计使用STC89C51单片机,STC89C51有512字节的数据存储空间,是AT89C51的两倍,并且带有4K字节的EEPROM存储空间,可以断电后保存资料,可以直接使用串口下载,而AT89C51需要专用下载器。 控制系统可以实现对光信号的采集、转换、传输,并根据单片机接收到的信号,结合时钟电路的信号,对步进电机进行控制,通过控制步进电机转向及转动圈数,来实现对窗帘的打开及拉合控制。 设计时对硬件进行了模块化分析,以STC89C51作为主控芯片,光信号采集使用光敏模块,数模转换主要使用PCF8591芯片,显示模块采用1602液晶显示器,时钟电路采用DS1302芯片,电机驱动器主要使用ULN2003。

51单片机压力传感器

目录 一、设计题目与设计任务....................... 错误!未定义书签。 1.设计题目:单片机压力测控系统设计........... 错误!未定义书签。 2.设计任务................................... 错误!未定义书签。 二、前言..................................... 错误!未定义书签。 三、主体设计................................. 错误!未定义书签。 1、系统设计.................................. 错误!未定义书签。 2、系统框图.................................. 错误!未定义书签。 3、设计思路.................................. 错误!未定义书签。 4、压力传感器和A/D转换芯片选择.............. 错误!未定义书签。(1)压力传感器1210—030 G—3 S ............. 错误!未定义书签。 (2)AD模数转换芯片ADC0809 ............... 错误!未定义书签。 四、参考文献................................. 错误!未定义书签。 五、结束语................................... 错误!未定义书签。 六、完整程序................................. 错误!未定义书签。 七、仿真结果................................. 错误!未定义书签。 八、程序流程图............................... 错误!未定义书签。

基于51单片机DS18B20温度传感器的C语言程序和电路

基于51单片机DS18B20温度传感器的C语言程序和电路 DS18B20在外形上和三极管很像,有三只脚。电压范围为3.0 V至5.5 V 无需备用电源测量温度位温度转换为12位数字格式最大值为750毫秒用户可定义的非易失性温度报警设置应用范围包敏感系统。 下面是DS18B20的子程序,本人用过完全可行的: #include #include #define uchar unsigned char #define uint unsigned int sbit DQ=P2^0; void reset(); //DS18B20 void write_byte(uchar val); //DS18B20写命令函数 uchar read_byte(void); //DS18B20读1字节函数 void read_temp(); //温度读取函数 void work_temp(); //温度数据处理函数 uchar data temp_data[2]={0x00,0x00}; uchar data display[5]={0x00,0x00,0x00,0x00,0x00}; //对于温度显示值值 uchar code ditab[16]={0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x0数部分查表 main() { while(1) { 自己添加; } } void delay1(uint t) { for(;t>0;t--); } ///////温度控制子函数 void reset() { uchar presence=1; while(presence) { while(presence) {

基于51单片机的智能交通灯课程设计

简易智能交通灯设计 1、设计背景 自从1886两个德国人发明了第一辆汽车交通灯改变了交通路况,交通问题也渐渐被人们所重视。从英国伦敦街头的第一个以燃煤气为光源的红,蓝两色的机械扳手式信号灯,到现在以电为光源的红黄绿三色交通灯,不知不觉中交通信号灯在人们日常生活中占据了重要地位。随着人们社会活动日益增加,经济发展,汽车数量急剧增加,城市道路日渐拥挤,交通灯更加显示出了它的功能,使得交通得到有效管制,对于交通疏导,提高道路导通能力,减少交通事故有显著的效果。 近年来,随着科技的飞速发展,电子器件也随之广泛应用,其中单片机也不断深入人民的生活当中。本次课程设计以模拟交通灯系统利用单片机AT89C51作为核心元件,实现了通过信号灯对路面状况的智能控制。在一定程度上解决了交通路口堵塞、车辆停车,特殊情况的交通灯等待时间不合理、急车强通等问题。在该次的设计系统具有结构简单、可靠性高、成本低、实时性好、安装维护方便等优点,有广泛的应用前景。 本模拟系统由单片机软件系统,两位8段数码管和LED灯显示系统。和复位电路控制电路等组成,较好的模拟了对交通路面的控制。 1.1 设计思路 (1)分析目前交通路口的基本控制技术以及各种通行方案,并以此为基础提出自己的交通控制的初步方案。 (2)确定系统交通控制的总体设计,包括,十字路口具体的通行禁行方案设计以及系统应拥有的各项功能,在这里,本设计除了有信号灯状态控制能实现基本的交通功能,还增加了倒计时显示提示,并基于实际情况,又增加了紧急状况处理和通行时间可调这两项特特殊功能。 (3)进行倒计时显示电路,灯状态电路,特殊情况按键电路的设计和对各器件的选择及连接,大体分配各个器件及模块的基本功能要求。 (4)进行软件系统的设计和仿真中,程序在KEIL软件中用单片机c语言编写,电路的搭建和仿真实现是在proteus软件中实现的。在本次课程设计中通过对单片机内部结构和工作情况做了一定的研究,充分了解定时器,中断以及延时原理,为本次智能交通灯的设计提供了理论基础。

51单片机指令表汇总

51单片机指令表 助记符指令说明字节数周期数 (数据传递类指令) MOV A,Rn 寄存器内容传送到累加器 1 1 MOV A,direct 直接地址内容传送到累加器 2 1 MOV A,@Ri 间接RAM内容传送到累加器 1 1 MOV A,#data 立即数传送到累加器 2 1 MOV Rn,A 累加器内容传送到寄存器 1 1 MOV Rn,direct 直接地址内容传送到寄存器 2 2 MOV Rn,#data 立即数传送到寄存器 2 1 MOV direct,Rn 寄存器内容传送到直接地址 2 2 MOV direct,direct 直接地址传内容传送到直接地址 3 2 MOV direct,A 累加器内容传送到直接地址 2 1 MOV direct,@Ri 间接RAM内容传送到直接地址 2 2 MOV direct,#data 立即数传送到直接地址 3 2 MOV @Ri,A 累加器内容传送到间接RAM 1 1 MOV @Ri,direct 直接地址内容传送到间接RAM 2 2 MOV @Ri,#data 立即数传送到间接RAM 2 1 MOV DPTR,#data16 16 位地址传送到数据指针 3 2 MOVC A,@A+DPTR 代码字节传送到累加器 1 2 MOVC A,@A+PC 代码字节传送到累加器 1 2 MOVX A,@Ri 外部RAM(8位地址)内容传送到累加器 1 2 MOVX A,@DPTR 外部RAM(16位地址)内容传送到累加器 1 2 MOVX @Ri,A 累加器内容传送到外部RAM(8位地址) 1 2 MOVX @DPTR,A 累加器内容传送到外部RAM(16 地址) 1 2 PUSH direct 直接地址内容压入堆栈 2 2 POP direct 堆栈内容弹出到直接地址 2 2 XCH A,Rn 寄存器和累加器交换 1 1 XCH A, direct 直接地址和累加器交换 2 1

基于51单片机的数字温度报警器

摘要:随着传感器在生产生活中更加广泛的应用,一种新型的数字式温度传感器实现对温度的测试与控制得到了更快的开发。本文设计了一种基于单片机AT89C52的温度检测及报警系统。该系统将温度传感器DS18B20接到单片机的一个端口上,单片机对温度传感器进行循环采集。将采集到的温度值与设定的上下限进行比较,当超出设定范围的上下限时,通过单片机控制的报警电路就会发出报警信号,从而实现了本次课程设计的要求。该系统设计和布线简单、结构紧凑、体积小、重量轻、抗干扰能力较强、性价比高、扩展方便,在工农业等领域的温度检测中有广阔的应用前景。本次课程设计的测量范围为0℃--99℃,测量误差为±2℃。 关键字:温度传感器、单片机、报警、数码管显示 一、概述 本次设计可以应用到许多我们用过的软件设计,将前面所学的知识融汇在一起实现温度监测及其报警的功能,来提醒农民当前大棚内温度是否适合农作物的生长。 电子技术是在十九世纪末、二十世纪初开始发展起来的新兴技术,在二十世纪发展最迅速,应用最广泛,成为近代科学技术发展的一个重要标志。 随着电子技术的飞速发展,电子技术在日常生活中得到了广泛的应用,各类转换电路的不断推出以及电子产品的快速更新,电子技术已成为世界发展和人们生活中必不可少的工具。 本次课设应用Protues软件设计一个温度检测报警系统,用温度传感器DS18B20采集大棚内的温度,当大棚内的温度高于30℃。或低于15℃。时,电路发出报警信号并显示当前温度,达到提醒农民的效果。 本次课设要求设计一个温度监测报警显示电路,要求温度范围:0℃--99℃;测量误差为±2℃;报警下限温度为:15℃;报警上限温度为:30℃。 二、方案论证 设计一个用于温室大棚温度监测系统。大棚农作物生长时,其温度不能太低,也不能太高,太低或太高均不适合农作物生长。该系统可实时测量、显示大棚的温度,当大棚温度超过农作物生长的温度范围时,报警提醒农民。 方案一: 方案一原理框图如图1所示。 图1 大棚温度检测系统的原理框图 方案二: 方案二原理框图如图2所示。

基于51单片机智能控制仪表简单设计

智能控制仪表简单设计 龙岩学院电子信息工程 学号:200402208 姓名:邓晶晶指导老师:吴春富 【摘要】:随着传感器技术、微电子技术、单片机技术的不断发展,为智能控制仪表测控功能的完善、 测控精度的提高和抗干扰能力的增强等提供了条件。本设计介绍了一种用变送器现场采集的温、湿度等信号再经A/D 转换送单片机进行处理,最后通过数码显示器,键盘等硬件设计实现了工作过程的自动化。一般的单片机系统在工业现场等恶劣的环境下容易死机,所以在本文中外加监视电路对系统起保护作 用。 关键词】:AT89C52 单片机;HD7279A; 看门狗;

第1章引言 仪器仪表是人类认识世界的工具,人们借助于各种仪器仪表对各种物理量进行度量,反映其大小与变化规律.随着人类认识能力的提高与科学技术不断进步,仪器仪表技术得到了飞速发展.50年代以前, 仪器仪表多为指针式,其理论基础是机电学?从50年代起,电子技术特别是数字技术的发展,给仪表行业带来了生机,各种数字式仪表相继问世,许多传统的指针式仪表相继被淘汰,数字仪表使仪表外观耳目 一新,数据表达能力与总体性能都大幅提高? 70年代中期,随着微处理器的出现以及单片机的兴起与应 用,设计者将计算机特有的许多优点引入仪表设计,随之产生了一代崭新的智能仪表,使仪表逐渐由数字型向智能化发展,其功能也由单一显示功能转变为具有信息处理、传输、存贮、显示、控制等功能,使仪 表性能产生了质的飞跃.,品种繁多?目前,我国仪器仪表有13大类,1 300多个产品.其中自动化仪表及控制系统是和国民经济各产业部门关系最为密切的一类产品,其传感变送单元与主控装置及I/O接口 均正朝智能化方向发展?在本设计中采用以单片机作为仪表核心控制器件,可以利用A/D转换芯片对标 准信号进行采集、转换,将输入的模拟量转换成单片机能够检测的数字量进行分析和监测控制,同时可 以利用键盘显示电路将相关数据进行显示。与此同时通过所查阅的资料我还了解到随着测量技术的发展 和微处理器的广泛应用,单片机系统的电路越来越复杂,而系统的可靠性问题也越来越突出,一般的单 片机系统在工业现场等恶劣的环境下容易死机,因此系统在这些场合要保证能够稳定的工作就必须外加 监视电路,在设计中采用了美国集把关定时器、电压监控和串行EEPRO三项功能于一体的专用集成芯 片X5045。该芯片的应用将有利于简化单片机系统的结构,增强功能、降低系统的成本,尤其是大大的增加了系统的可靠性。X5045中的看门狗对系统提供了保护功能。当系统发生故障而超过设置时间时,电路中的看门狗将通过RESET言号向CPU作出反应。X5045提供了三个时间值供用户选择使用。它所具 有的电压临控功能还可以保护系统免受低电压的影响,当电源电压降到允许范围以下时,系统将复位,直到电源电压返回到稳定值为止。本次毕业设计旨在掌握智能控制仪表的设计方法,同时掌握在开发系 统下实现部分软件的仿真方法。 第2章控制系统的硬件设计 硬件组成智能仪表的硬件方框图如图 2.1 图2.1 智能控制仪表的原理框图 2

(完整版)51单片机汇编指令(全)

指令中常用符号说明 Rn当前寄存器区的8个工作寄存器R0~R7(n=0~7) Ri当前寄存器区可作为地址寄存器的2个工作寄存器R0和R1(i=0,1) Direct8位内部数据寄存器单元的地址及特殊功能寄存器的地址 #data表示8位常数(立即数) #data16表示16位常数 Add16表示16位地址 Addr11表示11位地址 Rel8位代符号的地址偏移量 Bit表示位地址 @间接寻址寄存器或基址寄存器的前缀 ( )表示括号中单元的内容 (( ))表示间接寻址的内容 指令系统 数据传送指令(8个助记符) 助记符中英文注释 MOV Move 移动 MOV A , Rn;Rn→A,寄存器Rn的内容送到累加器A MOV A , Direct;(direct)→A,直接地址的内容送A MOV A ,@ Ri;(Ri)→A,RI间址的内容送A MOV A , #data;data→A,立即数送A MOV Rn , A;A→Rn,累加器A的内容送寄存器Rn MOV Rn ,direct;(direct)→Rn,直接地址中的内容送Rn MOV Rn , #data;data→Rn,立即数送Rn MOV direct , A;A→(direct),累加器A中的内容送直接地址中 MOV direct , Rn;(Rn)→direct,寄存器的内容送到直接地址 MOV direct , direct;(direct)→direct,直接地址的内容送到直接地址 MOV direct , @Ri;((Ri))→direct,间址的内容送到直接地址 MOV direct , #data;8位立即数送到直接地址中 MOV @Ri , A;(A)→@Ri,累加器的内容送到间址中 MOV @Ri , direct;direct→@Ri,直接地址中的内容送到间址中 MOV @Ri , #data; data→@Ri ,8位立即数送到间址中 MOV DPTR , #data16;data16→DPTR,16位常数送入数据指针寄存器,高8位送入DPH,低8位送入DPL中(单片机中唯一一条16位数据传送指令) (MOV类指令共16条)

基于单片机的温度传感器的设计说明

基于单片机的温度传感器 的设计 目录 第一章绪论-------------------------------------------------------- ---2 1.1 课题简介 ----------------------------------------------------------------- 2 1.2 设计目的 ----------------------------------------------------------------- 3 1.3 设计任务 ----------------------------------------------------------------- 3 第二章设计容与所用器件 --------------------------------------------- 4第三章硬件系统设计 -------------------------------------------------- 4 3.1单片机的选择------------------------------------------------------------- 4 3.2温度传感器介绍 ---------------------------------------------------------- 5 3.3温度传感器与单片机的连接---------------------------------------------- 8 3.4单片机与报警电路-------------------------------------------------------- 9 3.5电源电路----------------------------------------------------------------- 10 3.6显示电路----------------------------------------------------------------- 10 3.7复位电路----------------------------------------------------------------- 11 第四章软件设计 ----------------------------------------------------- 12 4.1 读取数据流程图--------------------------------------------------------- 12 4.2 温度数据处理程序的流程图 -------------------------------------------- 13 4.3程序源代码 -------------------------------------------------------------- 14

51单片机压力传感器

目录 一、设计题目与设计任务 (1) 1.设计题目:单片机压力测控系统设计 (1) 2.设计任务 (1) 二、前言 (1) 三、主体设计 (1) 1、系统设计 (1) 2、系统框图 (1) 3、设计思路 (2) 4、压力传感器和A/D转换芯片选择 (2) (1)压力传感器1210—030 G—3 S (2) (2)AD模数转换芯片ADC0809 (3) 四、参考文献 (4) 五、结束语 (4) 六、完整程序 (5) 七、仿真结果 (7) 八、程序流程图 (9)

一、设计题目与设计任务 1.设计题目:单片机压力测控系统设计 2.设计任务 1、本设计是微机控制的制氧机压力测控系统。单片机系统通过压力传感器和检测比较器测得气缸内压力达到某一上限值(176 kPa)和下限值(64 kPa)时,单片机系统控制执行相应的动作(达到上限值时打开放气阀放气,达到下限值关闭放气阀进行充气)。如此反复循环,不断将氧气提供给需氧者。在此过程中若充气或放气10 s仍达不到设定值(176 kPa和64 kPa)则进行光报警。 2、写出压力测量过程,绘制压力控制系统结构图。 3、(1)系统硬件电路设计。 单片机采用89S52;选择适合上述测量范围的压力传感器,设计数据采集及信号调理电路,设计键盘显示电路及报警电路。 (2)编制压力测量程序。 二、前言 本设计为基于AT89S52单片机的气缸压力测量与控制系统,压力传感器选择1210—030G—3S,能够在0~207kPa范围内有效测量气缸供氧系统的压力,并进行实时压力(LED)显示。单片机控制部分实现当压力超出上限值176kPa时,放气阀打开进行放气,当压力低于下限值64kPa时,放气阀关闭,气缸充气;压力在正常范围(64~176kPa)时,压力改变不影响放气阀的状态。报警功能实现当压力超出设定的压力范围(64~176kPa)10S时,发光二极管点亮进行报警。 关键词:AT89S52单片机、1210—030G—3S型压力传感器、LED显示、报警。 三、主体设计 1、系统设计 考虑到过程控制系统的一般组成及本次设计的任务要求,本设计主要由以下几部分组成:被控对象(气缸及附带的进气阀和放气阀)、压力传感器FT、A/D转换(ADC0808)、AT89S52单片机、LED显示、报警电路和放气阀驱动电路。 2、系统框图

C51单片机指令集大全

格式功能简述字节数周期 一、数据传送类指令 MOV A, Rn 寄存器送累加器 1 1 MOV Rn,A 累加器送寄存器 1 1 MOV A ,@Ri 内部RAM单元送累加器 1 1 MOV @Ri ,A 累加器送内部RAM单元 1 1 MOV A ,#data 立即数送累加器 2 1 MOV A ,direct 直接寻址单元送累加器 2 1 MOV direct ,A 累加器送直接寻址单元 2 1 MOV Rn,#data 立即数送寄存器 2 1 MOV direct ,#data 立即数送直接寻址单元 3 2 MOV @Ri ,#data 立即数送内部RAM单元 2 1 MOV direct ,Rn 寄存器送直接寻址单元 2 2 MOV Rn ,direct 直接寻址单元送寄存器 2 2 MOV direct ,@Ri 内部RAM单元送直接寻址单元 2 2 MOV @Ri ,direct 直接寻址单元送内部RAM单元 2 2 MOV direct2,direct1 直接寻址单元送直接寻址单元 3 2 MOV DPTR ,#data16 16位立即数送数据指针 3 2 MOVX A ,@Ri 外部RAM单元送累加器(8位地址) 1 2 MOVX @Ri ,A 累加器送外部RAM单元(8位地址) 1 2 MOVX A ,@DPTR 外部RAM单元送累加器(16位地址) 1 2 MOVX @DPTR ,A 累加器送外部RAM单元(16位地址) 1 2 MOVC A ,@A+DPTR 查表数据送累加器(DPTR为基址) 1 2 MOVC A ,@A+PC 查表数据送累加器(PC为基址) 1 2 XCH A ,Rn 累加器与寄存器交换 1 1 XCH A ,@Ri 累加器与内部RAM单元交换 1 1 XCHD A ,direct 累加器与直接寻址单元交换 2 1 XCHD A ,@Ri 累加器与内部RAM单元低4位交换 1 1 SWAP A 累加器高4位与低4位交换 1 1 POP direct 栈顶弹出指令直接寻址单元 2 2 PUSH direct 直接寻址单元压入栈顶 2 2 二、算术运算类指令 ADD A, Rn 累加器加寄存器 1 1 ADD A,@Ri 累加器加内部RAM单元 1 1 ADD A, direct 累加器加直接寻址单元 2 1 ADD A, #data 累加器加立即数 2 1 ADDC A, Rn 累加器加寄存器和进位标志 1 1 ADDC A,@Ri 累加器加内部RAM单元和进位标志 1 1 ADDC A, #data 累加器加立即数和进位标志 2 1 ADDC A, direct 累加器加直接寻址单元和进位标志 2 1 INC A 累加器加1 1 1 INC Rn 寄存器加1 1 1

51单片机的电子秤设计

万方数据

51单片机的电子秤设计 作者:郭伦伦 作者单位:江汉大学文理学院,湖北,武汉,430056 刊名: 科技创业月刊 英文刊名:PIONEERING WITH SCIENCE & TECHNOLOGY MONTHLY 年,卷(期):2010,23(4) 被引用次数:0次 参考文献(1条) 1.张培仁.基于C语言编程MCS-51单片机原理及应用[M].北京:清华大学出版社,2003 相似文献(10条) 1.期刊论文周华鹏.毛建国.顾筠.李芳培.柏方超.卢文玉.ZHOU Hua-peng.MAO Jian-guo.GU Jun.LI Fang-pei.BO Fang-chao.LU Wen-yu高精度电容式压力传感器测量方法-传感器与微系统2010,29(2) 提出了一种高精度、低成本的电容式压力传感器的测量方法.用RC振荡器将电容式传感元件的变化调制为时变频率信号,用SSP1492芯片测量该频率变化量,并送入C8051F021单片机,用高阶多项式完成频率变化到压力变化的解算,实现了高精度压力测量.实验结果显示:该方法用于电容式压力传感器的测量精度优于0.02%FS. 2.学位论文张翼飞基于压力传感器的风速风压测量与无线数据传输2008 风速和风压的测量在很多领域都有很重要的作用,对于航海、航空、渔业和农业以及风力发电站等部门来说,风压和风速则更为重要。在工业生产中,监测和控制系统均离不开数据信息的传输,很多情况下,由于条件所限,采用普通有线电缆引出信号是无法满足要求或者跟本无法实现的。 本文设计了用MCS-52系列单片机设计的监测风压风速的数据采集和处理系统。该系统采用单片机技术,以AT89S52为核心,把压力传感器安装在步进电机上,使步进电机带动传感器转动来测量风压,由压力传感器采集数据,单片机接收并处理数据,LED数码管显示测量风压值。在软件上采用的是由孙以材教授提出的归十法的算法。来改进测量数据的准确性。描述了系统的硬件设计及软件实现,给出了程序编制的基本流程图,从而降低了系统成本,提高了测量精度。 本文设计了具有无线数据传输功能的测压装置、包括硬件结构设计、软件系统工作流程及实验结果,该装置以单片机为核心,利用发射器芯片、接收器芯片构成的无线收发模块PTR8000,设计出数据采集与无线传输系统。该系统的无线数据采集模块体积小、功耗低、电路构造简单,可以方便地嵌入被监测系统中,利用上位机实现对被测数据的实时监测。 3.期刊论文张翼飞.孙以材.潘国峰.Zhang Yi-fei.SUN Yi-cai.PAN Guo-feng基于压力传感器的风速风压测量系统与无线数据传输-传感器世界2009,15(3) 本文介绍了用MCS-52系列单片机设计的监测风压风速的数据采集和处理系统.该系统采用单片机技术,以AT89S52为核心, 把高性能低量程压力传感器安装在步进电机上,使步进电机带动传感器转动来测量风压.另外将无线收发模块PTR800应用于该系统,实现测量系统所测数据的无线传输,用户可在接收端对系统进行控制.该系统避免了复杂的现场连线,应用灵活,提高了工作效率,降低了工作成本. 4.学位论文李国玉智能压力传感器的设计2004 压阻型扩散硅压力传感器以其低价格得到广泛应用,基于单片机技术的智能压力传感器以其使用方便,测量精确而得以推广.压力传感器的核心是扩散硅电阻桥,智能压力传感器应用单片机技术采集数据、处理并输出显示结果.扩散硅的压阻系数是温度的函数,所以存在灵敏度温漂,而影响温度的因素是多方面的:测量环境的变化,测量电路产生的热量的影响等等,所以要想得到比较精确的压力值,必须对压力传感器进行校正.压力传感器的零点存在热漂移、电漂移和时间漂移,减小压力传感器的热零点漂移的措施是各力敏电阻的电阻值及其温度系数的相等性.本论文应用曲线拟合方法,神经网络算法和多项式拟合的规范化方法校正零点,降低成本且精确度提高.压力传感器的压力灵敏度与压阻系数成比例关系,而压阻系数是温度的函数,所以非线性补偿的实质是消除温度对灵敏度的影响.可应用的方法很多:二极管补偿法,恒流源补偿法,热敏电阻补偿法等.本论文利用集成的温度传感器AD590获得温度信息,应用曲线拟合技术,融入温度信息,得出带有温度信息的压力解析表达式,此方法简化硬件电路且可实现自校正自补偿功能.本论文根据压力传感器零点补偿与非线性补偿原理,设计出了测量压力传感器的硬件电路及C51软件编程,应用单片机技术测量电路简单,成本低,应用面广,但是由于自身的稳定性其测量结果仍存在误差. 5.期刊论文刘元宾.靳世久.陈世利.Liu Yuanbin.Jin Shijiu.Chen Shili压力传感器SP12在胎压监视系统中的应用-电子测量技术2008,31(2) 汽车胎压是汽车安全行驶的重要保证之一.本文详细介绍了在胎压监视系统中应用的压力传感器SP12的功能、特点、数据传输格式;设计了SP12与单片机的硬件接口电路,对电路组成、功能以及SPI串口通信协议进行了说明;给出了软件控制流程图以及软件程序编写中应注意的问题. 6.期刊论文张劼.景博.谢红星基于振筒式压力传感器的某型检测系统设计-传感器技术2005,24(1) 针对飞行器全静压系统的检测需求,设计实现了以80C552单片机为控制核心、基于振筒式压力传感器的自动检测系统,论述了系统的总体构成,重点设计了提高振筒式传感器测量准确度配套电路和测量显示组件.系统的实现提高了飞行器全静压系统的检测自动化程度,具有检测速度快、准确度高、判读直观、可靠性高和操作简单的特点,在实际测试中运行良好,性能稳定. 7.期刊论文陈延奎智能压阻压力传感器的设计-中国测试技术2008,34(4) 为克服传统压阻压力传感器的不足,设计出一种智能型压阻压力传感器.根据智能传感器的系统组成和应用范围,在充分考虑各元器件之间连接的参数配合的基础上,选择实用性好,可靠性高,成本低的元器件组成整个测量系统,该系统在89C51单片机的控制和处理下,同时具备温度和压力参数的自动测量、放大、A/D转换和结果显示,而且具有自检、自动补偿和现场通讯等功能. 8.期刊论文王瑜.WANG Yu基于C8051F020单片机的多路压力测量仪-国外电子元器件2008,16(11) 介绍了一种基于C8051F020单片机的多路压力测量仪.该测量仪选用电阻应变式压力传感器采集压力信号,并经放大电路处理后送入C8051F020单片机,再由C8051F020单片机内部的A/D转换器将采集到的压力信号进行模数转化,然后分别对数据进行存储和显示.该测量仪能测量6路压力信号,并且各测量点都能单独检测和设置.由于采用了C8051F020单片机,简化了硬件电路,增强了抗干扰能力,使得测量仪具有测量精度高,冲击小等特点. 9.学位论文刘新月压力传感器温度漂移补偿的电路设计2006 压阻型扩散硅压力传感器以其低价格得到广泛应用,基于单片机技术的智能压力传感器以其使用方便,测量精确高而得以推广。

相关文档
最新文档