当前位置:文档之家› 基于单片机的通用控制器的设计

基于单片机的通用控制器的设计

基于单片机的通用控制器的设计
基于单片机的通用控制器的设计

武汉大学本科综合实验报告(II)基于HostLink通信协议的OPC服务器开发

院(系)名称:动力与机械学院

专业名称:自动化系

学生姓名:王媛媛

指导教师:张世荣副教授

目录 (2)

摘要 (3)

第1章实验背景和原理 (4)

1.1实验背景 (4)

1.2 实验原理 (4)

第2章设计说明 (6)

2.1开发流程 (6)

2.1开发平台和编程环境介绍 (7)

2.2 Omron CQM1H-CPU21 (7)

2.3客户端组态王的介绍 (8)

2.4 HostLink通信协议 (9)

2.5 FCS校验 (11)

2.6 OPC技术 (13)

2.7多线程设计 (13)

第3章程序设计 (16)

3.1基于HostLink通信协议的数据传输实现 (16)

3.1.1窗体界面设计 (16)

3.1.2串口参数设置及开/关控制 (17)

3.1.3读写功能的实现 (18)

3.2基于C#语言的OPC服务器开发 (21)

3.2.1初始化服务器并写注册表 (21)

3.2.2设计客户端组态王画面 (22)

3.3.3服务器向客户端发送数据信息 (23)

3.3.4 线程2 客户端向服务器回写信息 (23)

第4章测试与分析 (24)

4.1通信测试 (24)

4.2访问和回写服务器 (25)

4.3 测试结果分析 (25)

第6章实验总结及感想 (26)

参考文献 (27)

本实验对欧姆龙CQM1H系列PLC 的HostLink 通信协议进行了介绍, 并提出了使用C# 利用Visual Studio 2010 中的SerialPort控件[1]实现PLC 与上位机通信的方法,并给出了实现通信的具体步骤以及优化的通信方案。鉴于PLC的人机交互性太差,而计算机具有良好的用户交互界面,所以在此基础上开发OPC 服务器,以便在组态王作为客户端能够实时的显示和回写PLC中的数据信息。

关键词:OmronPLC 、串口通信、HostLink协议、C#、OPC服务器、多线程。

第1章实验背景和原理

1.1实验背景

PLC是新一代工业控制装置,由于可靠性高、适应性好、抗干扰能力优、接口功能强、编程简单、直观以及模块化结构、使用方便等优点,在工业控制领域中,作为一种稳定可靠的控制器得到广泛的应用。但它也有自身的一些缺点,即数据的计算处理和管理能力较弱,不能给用户提供良好的界面等。而计算机恰好能弥补PLC的不足,它不但有很强的数据处理和管理能力,而且能给用户提供非常美观而又易于操作的界面[2]。将PLC与计算机结合,可使系统达到既能及时地采集、存储数据,又可处理和使用好数据,两者结合的关键是PLC与计算机之间的通信。本实验以欧姆龙公司的CQM1H-CPU21型号的PLC为例,用C#语言设计基于HostLink协议的PLC与计算机的通信程序,实现在Windows平台下为可编程控制器(PLC)网络提供实时数据传输和交换服务[3]。同时为了很好的利用计算机能够给用户提供良好的界面的优点,进行OPC服务器和客户端的开发,便于很好的显示和修改PLC中的数据信息。

1.2 实验原理

实验中,我们在.NET平台下,Visual studio2010开发环境中,用C#语言进行程序编写。本此实验中PC兼具作为控制主站和OPC服务器的功能,主站与从站(PLC)之间通过HoatLink协议实现读写通信,并利用组态王软件作为客户端,用来监测通信的实时状态,同时实现向PLC写入数据的功能。

图1-1 实验原理图

简而言之,我们要实现的就是PC机对PLC的可读可写,客户端对服务器的可读可写功能。

第2章设计说明

2.1开发流程

整个程序开发包括窗体界面设计和程序代码的编写,而开发流程主要分为两大部分,用到两个个线程。这两个部分分别是基于HostLink通信协议的数据传输实现和基于C#语言的OPC服务器开发。

1.准备工作

(1) 学习C#语言编程方法,窗体界面的设计方法,控件的功能和使用方法。

(2) 在Omron官网上下载CQM1H-CPU21型号的PLC的说明书和操作手册。查阅相关书籍和论文,学习Hsotlink协议。

(3) 在PC机上安装USB转串口的驱动,在CX-programmer里面测试PC机和PLC是否能正常连接。测试结果显示上位机能够和PLC连接,接下来可以开始进行程序设计部分了。

2. 程序设计流程

设计流程图如下:

图2-1 设计流程图

3. 测试

测试串口是否打开;在窗体界面发送测试命令,上位机读IR区,读数据区,读HR区;上位机写IR区,写DM区,写HR区,改写运行状态。客户端选取一个变量进行数据信息改写。

4. 程序优化

在测试结果无误的前提下,进一步的代码改进和通信窗口美化。如修改和添加注程,调整位置等。

2.2开发平台和编程环境介绍

1. NET框架介绍

.NET框架(.NET Framework)是由微软开发,一个致力于敏捷软件开发(Agile softwaredevelopment)、快速应用开发(Rapidapplication development)、平台无关性和网络透明化的软件开发平台。它是一个多语言组件开发和执行环境,它提供了一个跨语言的统一编程环境。.NET包含许多有助于互联网和内部网应用迅捷开发的技术。

2. Visual studio2010开发环境介绍

Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品。VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(IDE)等等。所写的目标代码适用于微软支持的所有平台。

2.3Omron CQM1H-CPU21

1. Omron的CQM1H-CPU21介绍

Omron的CQM1H-CPU21是一种紧凑的支持同性功能和其他先进功能的课编程程序控制器。它是一个安装在DIN导轨上,控制中小型机械的组装型的PC。该PLC用串行通信与机械部件连接。串通信板支持协议宏的功能。即可以根据外部设备的通信规约生成一个协议宏,能用单个PMCR指令实现数据的传输。原则上从任何使用串口的参数都可以与之通信。

2. Omron的CQM1H-CPU21的读写

欧姆龙PLC设备构件把PLC的通道分为只读,只写,读写三种情况,只读用于把PLC中的数据读入到上位机中,只写通道用于把上位机的数据写入到PLC 中,读写则可以从PLC中读数据,也可以往PLC中写数据。当第一次启动设备工作时,把PLC中的数据读回来,之后本设备会将变化的值往下写,这种操作的目的是,用户PLC程序中有些通道的数据在计算机第一次启动,或计算机中途死机时不能复位。

3. Omron的CQM1H-CPU21的内存区

内存区:此项用于指定要访问设备的内存区域类型。下表列出了OMRON(HostLink)所支持的内存区域类型。

内存区标识:

表2-1 PLC内存区

通过HostLink协议可操作PLC的:IR/SR(位操作读写) ;LR,HR,AR,TC,PV定时计数)DM(数据寄存器)。

2.4 客户端组态王的介绍

本实验访问服务器的客服端选择的是亚控的组态王。组态王开发监控系统软件,是新型的工业自动控制系统,它以标准的工业计算机软、硬件平台构成的集成系统取代传统的封闭式系统。组态王可以为企业提供一个对整个生产流程进行

数据汇总、分析及管理的有效平台,使企业能够及时有效地获取信息,及时地做

出反应,以获得最优化的结果。而我们可以根据下位机实际连接的现场控制设备在组态王中建立相应的变量,然后在组态王中观察这些变量的变化。

2.5 HostLink通信协议

为确保上下位机之间能正确交换数据,必须制定相互遵循的通信协议。欧姆龙公司的CP、CQM、C200、CJ、CS1等PLC的串行通讯都是采用HostLink协议进行通讯的,HostLink协议是欧姆龙的专有协议。通过HostLink协议使用计

算机的串行口可与Omron的PLC设备通讯。

1.HostLink协议简介

上位机链接系统HostLink系统是对于弱电系统集成一种即优化又经济的通信方式,它适合一台上位机与一台或多台PLC进行链接。上位机可对PLC传送程序,并监控PLC的数据区,以及控制PLC的工作情况。HostLink系统允许一台上位机通过上位机链接命令向HostLink系统的PLC发送命令,PLC处理来自上位机的每条指令,并把结果传回上位机。HostLink协议系统可使上位机对PLC 的程序进行传送或读取,并可对PLC数据区进行读写操作。所有通信都将作奇偶检验和帧检验的双重检查系统,从而能估计出通信中的错误。可以使用PLC 自带的RS-232C口与上位机进行连接,也可使用欧姆龙专用的通信板进行连接。通讯参数设置应与设备的通讯参数相同,默认为:9600,7,2,E(偶校验)。PLC 与计算机之间的连接线是Omron提供的专用电缆CJlW—CN1 18来实现的,也可自制通讯电缆来实现,其连接图

HostLink命令组成一个串行通讯命令/应答系统,用以在CPU单元和主控电脑之间执行各种控制操作。这些操作包括从I/O和内存中读取或者写入,改变操

作模式,执行强制设置或者强制复位操作等。

2.HostLink传输方式

HostLink协议使用计算机的RS-232C总线与Omron的CQM1H-CPU21连接进行信息交换。其通信采用主从轮询的方式:上位机始终具有初始传送优先权,所有通信均由上位机来启动,HOST Link通信单元收到命令交由PLC执行,将执行结果返回上位机,两者以帧为单位轮流交换数据。上位机向下位机发送数据

或者从下位机中读取数据都是主站以命令帧形式发送,对于主站发来的命令帧,

从站用响应帧应答。在命令帧或响应帧中包含需要通信的数据,必须按其格式进行拆装、识别,才能正确分离出数据及有用状态信息,才能使要交换的数据顺利到达对方。上位机的命令帧由不固定的字节数组成,对不同的识别码有不同的帧

长度,但基本格式大体一致。

3.HostLink协议多点通信时的帧格式

表2-2 典型消息帧格式

命令帧:

如果一个命令没有超过131字节长。通讯可以使用一个单独帧来完成,这种帧称作“单独帧命令”。

命令帧格式

图2-2 命令帧格式

@:必须写在命令起始

单元号码:表示每一个HostLink 单元,用BCD码表示00

功能码:两字节

文本:依据命令码设定参数

FCS:在计算机上计算两字节FCS结束符:

设置*和CR (CHR$(13))两字节,指明命令中止。例如起始通道为0000设

备号为00的从站发送命令。

响应帧:

如果一个响应不超过131字节,通讯可以以一个单独的响应帧结束。这就叫做“单独帧响应”。

响应帧格式

图2-3 响应帧格式

@:必须写在命令起始

单元号码:表示每一个HOST LINK 单元,用BCD码表示从30 30 到33 31起始码:将接受到的命令码反馈回去。

结束码:反馈命令执行情况(比如错误状态)

文本:仅当又读取数据的时候才返回。

FCS:在计算机上计算两字节FCS (帧检查序列),

结束符:两个字节指明命令的结束,设置*和CR (CHR$(13))两字节,指明命令中止。

错误响应格式:

如果一个接收错误或者一个执行命令错误产生的时候,将返回一个没有文本的响应。

命令分割:如果一个命令长度大于131字节,命令文本将要被分割,使用分隔符(CR code, CHR$(13))来代替在每一个命令结尾的结束符直到最后一帧,结束符应当在最后一帧发送。

2.6 FCS校验

FCS(帧检查序列)计算:PLC计算每一个收到的命令帧FCS数值,然后

通过比较计算出来的值和FCS值来检查错误。计算机主机必须在发送数据帧的时候来计算FCS的数值。当检查应答帧的错误的时候,也要通过主控电脑来计算出来的数值和FCS值进行比较,来排除错误。

图2-3 FCS校验码计算算法

用C#语言编写的FCS校验码计算程序如下:

private string Fcs_Send(string Pcmd)

{

int n;

string Cmd;

int l = Pcmd.Length;

char m = '\0';

for (int i = 0; i < l; i++)

{

n = Pcmd[i] ^ m; // 异或

m = (char)(n);

}

n = (int)(m);

Cmd = String.Format("{0:x}", n);

return Cmd.ToUpper();

}

数值被转化为HEX码,处理当作ASCII码FCS 是一个8位数值转换为两位ASCII字节。这个8位数值使用异或指令操作,在发送中接受到的每个字节,顺序操作下去。从第一个字节,到数据帧中的文本的最后一个字节。有时候会再文本数据中发送非ASCII数据。如果数据长度是7,最左边的数据为将在计算FCS之前屏蔽掉。

2.7 OPC技术

OPC是连接数据源(OPC服务器)和数据的使用者(OPC应用程序)之间的软件接口标准。这里以C#为开发工具,按照OPC技术的规范标准,将OPC技术应用到虚拟仪器显示组件中。具体实现了OPC客户端数据访问服务器的过程,接口步骤及其读写数据的方法,并根据OPC服务器提供的数据,最终在客户端(组态王)显示出数据。

2.8多线程设计

1. 读写次数的问题

HostLink协议和其他诸如Modbus协议不同,HostLink协议的功能码有很多。因为读写对应内存中的多个存储区。例如写就有“WR,WD,WH,SC”等等。上位机读和写有一些区别。

首先,如果是读的IR区,通常在PLC的这个寄存区连接的是现场的I/O设备和变送器。这个设备的值常常是不断地变化的。所以读取这些区域的数据要不停的读。即上位机要不停发送查询的命令。然后接收PLC上传到数据在客户端实时的刷新显示。而如果读的是DM区数据,因为DM区数据是掉电保持的,所以这些区域的数据读需要读一次就可以了。

写的功能,一般各个寄存区的数据值需要写一次,不需要不停的写。

而对于所以解决这个问题的方式就是在对发送帧解析的时候,读取功能码时设置两个Bool变量Format_Read,Read_Once的值。如果Format_Read为true 代表次功能码为读,Read_Once表示只需要读一次。其组合结果如下:

表2-3 读写次数控制方法

这样由这两个标签就可以控制读写次数的问题

2. 多线程设计

线程:是"进程"中某个单一顺序的控制流。在单个程序中同时运行多个线程完成不同的工作,称为多线程。多线程主要是为了节约CPU时间,发挥利用,根据具体情况而定. 线程的运行中需要使用计算机的内存资源和CPU。

使用线程的优点:

(1) 使用线程可以把占据时间长的程序中的任务放到后台去处理

(2) 用户界面可以更加吸引人,这样比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理的进度

(3) 程序的运行速度可能加快

(4) 在一些等待的任务实现上如用户输入、文件读写和网络收发数据等,线程就比较有用了。在这种情况下可以释放一些珍贵的资源如内存占用等等。

使用线程的缺点:

(1) 如果有大量的线程,会影响性能,因为操作系统需要在它们之间切换。

(2) 更多的线程需要更多的内存空间。

(3) 线程可能会给程序带来更多“bug”,因此要小心使用。

(4) 线程的中止需要考虑其对程序运行的影响。

(5) 通常块模型数据是在多个线程间共享的,需要防止线程死锁情况的发生。

综合多线程的优缺点和实际开发功能的需求,本实验还是选择了多线程设计的方法。本实验分为2个线程。线程1,实现上位机读取下位机的数据的功能。线程2,服务区不断地检测是否有回写的数据到来,一旦检测到了回写信息会将回写的信息写到下位机相应的存储区内。

3. 多线程同步,共享数据的问题及解决方法

多线程设计的优点非常具有优势,但是缺点常常给线程执行造成了很大的困扰。本实验在设计多线程读写通信时就遇到多线程同步和数据共享的问题。

例如当上位机正在读取PLC中的数据,并送到客户端显示时,此时客户端希望修改下位机某一存储区的数据,因为读数据和回写数据是开启的两个线程,两个线程间存在全局变量调用冲突的问题。

解决此问题有两个方法

方法一:

在读循环的末尾设置一个标签cyc_over,cyc_over,为true表示本次循环结束,当线程2的服务器检测到客户端有回写数据到来,就等到之前读数据的一次循环完成,直到cyc_over为true,上位机开始向PLC存储区写数据。

方法二:

参考C++的敏感区访问控制原理,运用lock,lock的作用是保证该lock中的程序在执行时,其它函数线程时不可以访问和使用该lock中的变量。

第3章程序设计

本章主要介绍程序设计各部分的具体实现。包括基于HostLink通信协议的串口通信的实现和OPC服务器的开发。

3.1基于HostLink通信协议的数据传输实现

3.1.1窗体界面设计

整个串口通信设置和数据显示界面都放着一个名为Form1窗体界面中。整个窗体中包含Label,Combox、Groupbox、Textbox、serialport、datagriaview、Button等控件。

窗体显示界面主要分为串口参数设置区,命令帧设置区,收发数据显示区和通信情况和日志显示区。

串口参数设置区:该区位于窗体左上角,其中的Combox控件可以选择要设置的串口参数。欧姆龙PLC常用的通信参数:波特率9600,2位停止位,偶校验,7位数据位。点击ButtonOn(发送)按钮就可以通过串口实现上位机和PLC 的连接。

命令帧设置区:该区位于窗体的左下角,主要使用的Textbox控件,Textbox 控件可以填入文本,可以在相应的Textbox控件中填入从站地址,功能码,寄存器起始地址,正文等。点击SendMessage(发送命令帧)按钮SendMessage_Click,对命令帧进行FCS校验码计算,然后加上结束符“*”,转化为ASCII码,最后加上回车的ASCII码(13)就成功构成了一组完整的命令帧了,接下来就开始向下位机发送转化好的命令帧了。同时会将命令帧和响应帧在两个Textbox文本框中显示出来。

收发数据显示区:该区位于窗体的右半部分,此部分包含两个Datagridview 控件。左边的Datagridview1控件主要是用来显示下位机上传的信息。右边的Datagridview2控件主要是用来显示客户端回写的信息。

通信情况和日志信息显示区:该部分包含了两个Textbox控件。一个用来显示上位机PLC的通信情况,例如显示串口是否打开,响应帧的返回类型,校

验是否错误等等。两外一个Textbox显示的是日志信息。例如写注册表,初始化服务器,启动线程,停止线程。错误类型和时间戳等等。

窗体设计的界面如下图所示

图3-1 设计的窗体界面

3.1.2串口参数设置及开/关控制

命名空间:System.IO.Ports 命名空间包含了控制串口重要的SerialPort类,该类提供了同步I/O 和事件驱动的I/O、对管脚和中断状态的访问以及对串行驱动程序属性的访问, 所以在程序代码起始位置需加入Using System.IO.Ports。

串口的通信参数:串口通信最常用的参数就是通信端口号及通信格式(波特率、数据位、停止位和校验位),SerialPort 类对分别用[BaudRate]、[Parity] 、[DataBits]、[StopBits]属性设置通信格式中的波特率、校验位、数据位和停止位。欧姆龙PLC常用的通信参数:波特率9600,2位停止位,偶校验,7位数据位。在Combox控件中选择这些参数。

串口的打开和关闭: SerialPort 类没有采用VC ++ 中MSComm.PortOpen =True/False 设置属性值打开关闭串口, 相应的是调用类的Open ()和Close()方法。

程序代码如下:

private void buttonOn_Click(object sender, EventArgs e)

{

//打开串口

_PortOpen();

……

}

//关闭串口

public void _portClose()

{

if (serialPort1.IsOpen)

{

try

{ serialPort1.Close();

}

catch (Exception err)

{

}

}

}

3.1.3读写功能的实现

1. 命令帧打包

读数据:以读IR区为例。HostLink协议帧包括这样几部分:协议帧起始标志“@”,从站地址,功能码,RR,寄存器地址,通道数,FCS校验码和结束符“*”,其中功能码,寄存器地址和通道数都在窗体中的Textbox控件中选择。在程序中会将这些“@”、功能码、寄存器地址和通道数按照FCS校验码的计算方式进行异或运算,最后生成FCS校验码,然后加上结束符“*”。此时命令帧还是字符串格式,但是上位机和下位机进行串行通信采用的是ASCII码,还需要将字符串转化成ASCII码再加上回车(ASCII码为13),就构成了一帧完成的HostLink通信帧了。

在线程1中,上位机不停的向下位机发送命令帧请求读取下位机IR区的数据。下位机收到命令帧后首先会自动的进行FCS校验,检验是否有数据发送错误(如部分数据在传输过程中丢失)。在检验无误之后会自动的将上位机所需的信息以响应帧的形式返回给上位机。当上位机缓冲区的数据接收事件被触发后主动接收数据。存放在实现定义好的字符串ReceiveMessage中。

写数据:以写DM区为例,填入功能码“WD”,要写入数据的DM区的起始通道地址和要写入的数据,写命令帧的打包过程和和读命令帧的打包过程一样。

表3-1 通信命令级

上表所列上位机链接指令可以通过上位机链接通信发送到CQM1H。

2. 数据的发送和读取

SerialPort 类调用重载的Write 和WriteLine 方法发送数据,其中WriteLine 可发送字符串并在字符串末尾加入换行符,读取串口缓冲区的方法有许多, 其中除了ReadExisting (读取SerialPort 对象的流和输入缓冲区中所有立即可用的字节)和ReadTo(一直读取到输入缓冲区中的指定value 的字符串)。至此。开启线程1,PLC与上位机基于HostLink协议的通信已经实现。

命令帧响应帧

图3-2 通信帧

部分程序代码如下:

//写命令帧; HexByteArray是转化好的ASCII码形式的命令帧

private void WriteMessage(byte[] HexByteArray)

{ if (serialPort1.IsOpen) //如果串口已经打开

{

serialPort1.Write(HexByteArray, 0, HexByteArray.Length);

}

}

//读区缓冲区的响应帧

public void DataReceived()

{

if (serialPort1.IsOpen)

{

Communication.Text="正在获取数据";

Thread.Sleep(300); //写下命令帧以后休眠0.3秒等待响应帧上传

int bytes = serialPort1.BytesToRead; //获取响应帧的长度

receiveMessage_Byte = new byte[bytes];

serialPort1.Read(receiveMessage_Byte, 0, receiveMessage_Byte.Length);

基于51单片机课程设计

基于51单片机课程设计报告 院系:电子通信工程 团组:电子设计大赛1组 姓名: 指导老师:

目录 一、摘要 (3) 二、系统方案的设计 (3) 三、硬件资源 (5) 四、硬件总体电路搭建 (13) 五、程序流程图 (14) 六、设计感想 (14) 七、参考文献 (16) 附录 (17) 附录 1 程序代码 (17)

一、摘要 本设计以STC89C51单片机为核心的温度控制系统的工作原理和设计方法。温度信号由温度芯片DS18B20采集,并以数字信号的方式传送给单片机。文中介绍了该控制系统的硬件部分,包括:温度检测电路、温度控制电路。单片机通过对信号进行相应处理,从而实现温度控制的目的。文中还着重介绍了软件设计部分,在这里采用模块化结构,主要模块有:数码管显示程序、键盘扫描及按键处理程序、温度信号处理程序、led控制程序、超温报警程序。 关键词:STC89C51单片机 DS18B20温度芯片温度控制 ,LED报警提示. 二、系统方案的设计 1、设计要求 基本功能: 不加热时实时显示时间,并可手动设置时间; 设定加热水温功能。人工设定热水器烧水的温度,范围在20~70度之间,打开开关后,根据设定温度与水温确定是否加热,及何时停止加热,可实时显示温度; 设定加热时间功能。限定烧水时间,加热时间内超过温度上限或低于温度下限报警,并可实时显示温度。 2、系统设计的框架

本课题设计的是一种以STC89C51单片机为主控制单元,以DS18B20为温度传感器的温度控制系统。该控制系统可以实时存储相关的温度数据并记录当前的时间。其主要包括:电源模块、温度测量及调理电路、键盘、数码管显示、指示灯、报警、继电器及单片机最小系统。 图1 系统设计框架 3 工作原理 温度传感器 DS18B20 从设备环境的不同位置采集温度,单片机STC8951获取采集的温度值,经处理后得到当前环境中一个比较稳定的温度值,再根据当前设定的温度上下限值,通过加热和降温对当前温度进行调整。当采集的温度经处理后超过设定温度的上限时,单片机通过三极管驱动继电器开启降温设备(压缩制冷器) ,当采集的温度经处理后低于设定温度的下时 , 单片机通过三极管驱动继电器开启升温设备 (加热器) ,这里采用通过LED1和LED2取代!!! 当由于环境温度变化太剧烈或由于加热或降温设备出现故障,或者温度传感头出现故障导致在一段时间内不能将环境温度调整到规定的温度限内的时候,单片机通过三极管驱动扬声器发出警笛声,这里采用HLLED提示。

基于单片机毕业设计(论文)开题报告

徐州工程学院 毕业设计(论文)开题报告 课题名称:基于单片机的住宅小区煤气 泄露实时报警器设计 学生姓名:学号: 指导教师:职称: 所在学院: 专业名称: 徐州工程学院 20 年月3日

说明 1.根据《徐州工程学院毕业设计(论文)管理规定》,学生必须撰写《毕业设计(论文)开题报告》,由指导教师签署意见、教研室审查,学院教学院长批准后实施。 2.开题报告是毕业设计(论文)答辩委员会对学生答辩资格审查的依据材料之一。学生应当在毕业设计(论文)工作前期内完成,开题报告不合格者不得参加答辩。 3.毕业设计开题报告各项内容要实事求是,逐条认真填写。其中的文字表达要明确、严谨,语言通顺,外来语要同时用原文和中文表达。第一次出现缩写词,须注出全称。 4.本报告中,由学生本人撰写的对课题和研究工作的分析及描述,没有经过整理归纳,缺乏个人见解仅仅从网上下载材料拼凑而成的开题报告按不合格论。 5. 课题类型填:工程设计类;理论研究类;应用(实验)研究类;软件设计类;其它。 6、课题来源填:教师科研;社会生产实践;教学;其它

课题 名称 基于单片机的住宅小区煤气泄露实时报警器设计 课题 来源 社会生产实践课题类型工程设计类 选题的背景及意义 近年来随着人民生活水平的提高,管道煤气和罐装煤气已深入到寻常百姓家。但由于使用不当或设备老化等原因导致的煤气泄漏极大地威胁着人们的生命财产安全。煤气泄漏而大量产生的一氧化碳是煤气中毒事件的根源,如采用煤气泄漏报警器就能得到及时的警示。单片机在日用电子产品中的应用越来越广泛,为现代人工作、科研、生活、提供更好的更方便的设施。为了防止中毒事件再次发生,提出利用单片机系统进行有效的预防对策。为此设计出家用煤气泄漏报警控制器。 煤气泄漏的危害 一氧化碳的浓度与健康成年人中毒的可能症状 50ppm 健康成年人在八小时内可以承受的最大浓度 200ppm 2-3小时后,轻微头痛、乏力 400ppm 1-2小时内前额痛;3小时后威胁生命 800ppm 45分钟内,眼花、恶心、痉挛;2小时内失去知觉;2-3小时内死亡1600ppm 20分钟内头痛、眼花、恶心;1小时内死亡 3200ppm 5-10分钟内头痛、眼花、恶心;25-30分钟内死亡 6400ppm 1-2分钟内头痛、眼花、恶心;10-15分钟死亡 12800ppm 1-3分钟内死亡

基于单片机的广告灯课程设计

单片机课程设计报告书 课题名称 基于单片机的广告灯课程设计 姓 名 学 号 院 系 专 业 指导教师 2011年 6月10日 ※ ※※※※※※※※ ※※ ※※ ※※ 2008级学生单片机 课程设计

基于单片机的广告灯课程设计 1、设计目的 本设计以AT89S51单片机为核心并用它来控制发光二极管双灯点亮循环的实验装置,用AT89S51单片机控制16个发光二极管发光,实现亮点从高到低位,从左到右,从单到双的循环移动。通过PROTEL软件设计、仿真,并能从中掌握通过软件控制发光二极管的思路和技巧。这次设计重点就在于利用单片机的知识去控制系统的运行。 2、设计要求 1)广告流水灯具有控制的功能。 2)设置一个系统使广告流水灯能够规律性和周期性的闪烁功能。 3)能够使其制动化和中断的功能。 3、设计总框图与方案 图3.1系统框图 本次课程设计是用流水灯的变化来表示不同的效果。主体选用AT89S51单片机使用多个发光二极管,通过编程来实现“流水灯”的花样变化。 4、硬件电路的设计 4.1系统电路图

图4.1 广告灯的硬件原理电路图 这个电路图中都为低电位亮,高电位灭即‘0’亮‘1’灭,就这样通过查表控制‘0’与‘1’的变化来控制发光二极管的亮灭。中断中也是如此,通过取反的手段来控制灯的亮灭。按照图4.1进行仿真,通过编程来实现“流水灯”的花样变化。AT89S51的P1、P3口分别接一组发光二极管,发光二极管另一端接电源输出,故为高电平。P1、P3口输出电平的变化控制二极管的发光情况。当P1、P3口的输出电平为低时,LED灯亮;反之,不亮。 5、软件设计 5.1 流程图与程序 图5.1程序总流程图 本实验流程中,用AT89S51单片机控制16个发光二极管发光。其中二极管一端接高电平,另一端接AT89S51芯片输出端口,通过控制各输出端口高低电平的变化决定二极管是否发光,从而使广告流水灯能够规律性和周期性地分别实现一个亮灯的左右移动、一个不亮灯的左右移动、灯的从两边到中间及单双等交替闪烁等花样变化。 6、系统仿真 在Proteus的ISIS 7.1sp2软件环境下画出电路原理图,接下来就是将设计的程序在Keil C51 μVision2开发集成环境上编译成机器语言,进入Proteus 的ISIS,鼠标左键点击菜单“Debug”,选中“use romote debuger monitor”,便可实现KeilC与Proteus连接调试。首先在Proteus中双击单片机AT89C51,将KeilC下编程生成的 .HEX文件导入到AT89C51中,可在Proteus中单击全速仿真运行按钮,进行现象的查看,能清楚地观察到芯片上每一个引脚的电平变化,红色代表高电平,蓝色代表低电平;如果现象不正确,则在KeilC中单步调试程序,并在Proteus观察现象,那一步不正确则对该段的程序进行修改,调试直到仿真完全成功为止。 图6.1 Proteus软件环境下画出电路原理图 图6.2效果一

基于51单片机系统设计

基于51单片机的多路温度采集控制系统设计 言: 随着现代信息技术的飞速发展,温度测量控制系统在工业、农业及人们的日常生活中扮演着一个越来越重要的角色,它对人们的生活具有很大的影响,所以温度采集控制系统的设计与研究有十分重要的意义。 本次设计的目的在于学习基于51单片机的多路温度采集控制系统设计的基本流程。本设计采用单片机作为数据处理与控制单元,为了进行数据处理,单片机控制数字温度传感器,把温度信号通过单总线从数字温度传感器传递到单片机上。单片机数据处理之后,发出控制信息改变报警和控制执行模块的状态,同时将当前温度信息发送到LED进行显示。本系统可以实现多路温度信号采集与显示,可以使用按键来设置温度限定值,通过进行温度数据的运算处理,发出控制信号达到控制蜂鸣器和继电器的目的。 我所采用的控制芯片为AT89c51,此芯片功能较为强大,能够满足设计要求。通过对电路的设计,对芯片的外围扩展,来达到对某一车间温度的控制和调节功能。 关键词:温度多路温度采集驱动电路 正文: 1、温度控制器电路设计 本电路由89C51单片机温度传感器、模数转换器ADC0809、窜入并出移位寄存器74LS164、数码管、和LED显示电路等组成。由热敏电阻温度传感器测量环境温度,将其电压值送入ADC0809的IN0通道进行模数转换,转换所得的数字量由数据端D7-D0输出到89C51的P0口,经软件处理后将测量的温度值经单片机的RXD端窜行输出到74LS164,经74LS164 窜并转换后,输出到数码管的7个显示段,用数字形式显示出当前的温度值。89C51的P2.0、P2.1、P2.2分别接入ADC0809通道地址选择端A、B、C,因此ADC0809的IN0通道的地址为F0FFH。输出驱动控制信号由p1.0输出,4个LED为状态指示,其中,LED1为输出驱动指示,LED2为温度正常指示,LED3为高于上限温度指示,LED4为低于下限温度指示。当温度高于上限温度值时,有p1.0输出驱动信号,驱动外设电路工作,同时LED1亮、LED2灭、LED3亮、LED4灭。外设电路工作后,温度下降,当温度降到正常温度后,LED1亮、LED2亮、LED3灭、LED4灭。温度继续下降,当温度降到下限温度值时,p1.0信号停止输出,外设电路停止工作,同时LED1灭、LED2灭、LED3灭、LED4亮。当外设电路停止工作后,温度开始上升,接着进行下一工作周期。 2、温度控制器程序设计 本软件系统有1个主程序,6个子程序组成。6个子程序为定时/计数器0中断服务程序、温度采集及模数转换子程序ADCON、温度计算子程序CALCU、驱动控制子程序DRVCON、十进制转换子程序METRICCON 及数码管显示子程序DISP。 (1)主程序 主程序进行系统初始化操作,主要是进行定时/计数器的初始化。 (2)定时/计数器0中断服务程序 应用定时计数器0中断的目的是进行定时采样,消除数码管温度显示的闪烁现象,用户可以根据实际环境温度变化率进行采样时间调整。每当定时时间到,调用温度采集机模数转换子程序ADCON,得到一个温度样本,并将其转换为数字量,传送给89C51单片机,然后在调用温度计算子程序CALCU,驱动控制子程序DRVCON,十进制转换子程序MERTRICCON,温度数码显示子程序DISP。

基于51单片机简易电子琴的课程设计

基于51单片机简易电子琴 1 课题背景 单片微型计算机室大规模集成电路技术发展的产物,属于第四代电子计算机它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。他的应用必定导致传统的控制技术从根本上发生变革。因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。 电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用AT89S52单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘扬声器等模块组成核心主控制模块,在主控模块上设有8个按键,和一个复位按键。 主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴硬件的组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏要表达的音符。并且分别从原理图,主要芯片,个模块原理及各莫奎的程序的调试来详细阐述。 一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,构成我们想演奏的那首曲目。当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样的方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系编写正确就可以达到我们想要的曲目。 2 任务要求与总体设计方案 2.1 设计任务与要求 利用所给键盘的1,2,3,4,5,6,7,8八个键,能够发出7个不同的音调,而且有一个按键可以自动播放歌曲,要求按键按下时发声,松开延时一小段时间,中间再按别的键则发另外一音调的声音,当系统扫描到键盘按下,则快速检测出是哪一个按键被按下,然后单片机的定时器启动,发出一定频率的脉冲,该频率的脉冲经喇叭驱动电路放大滤波后,就会发出相应的音调。如果在前一个按下的键发声的同时有另一个按键被按下,则启动中断系统。前面的发音停止,转到后按的键的发音程序。发出后按的键的音调。 2.2 设计方案 2.2.1 播放模块 播放模块是由喇叭构成,它几乎不存在噪声,音响效果较好,而且由于所需驱动功率较小,且价格低廉,所以,被广泛应用。 2.2.2 按键控制模块

基于单片机的毕业论文题目有哪些

基于单片机的毕业论文题目有哪些 很多物联网专业的学生对单片机非常感兴趣,不光是对专业的热爱,另外由于单片机是集成电路芯片,是控制整个流程最基础的环节,大多数理科生对这种控制式设计充满着好奇,下面,我们学术堂整理了多个基于单片机的毕业论文题目,欢迎各位借鉴。 基于单片机的毕业论文题目一: 1、基于单片机的压电加速度传感器低频信号采集系统的设计 2、基于单片机的超声测距系统 3、基于C8051F005单片机的两相混合式直线步进电机驱动系统的设计 4、基于单片机的工业在线数字图像检测系统研究与实现 5、基于FPGA的8051单片机IP核设计及应用 6、基于单片机的军需仓库温湿度测控系统研究 7、单片机多主机通信模式在粮库温湿度监控系统中的应用 8、基于单片机的中小水电站闸门控制系统 9、基于单片机的正弦逆变电源研制 10、单片机实验教学仿真系统的设计与开发 11、基于单片机的温湿度检测系统的设计 12、基于单片机的蓝牙接口设计及数据传输的实现 13、基于单片机的多功能温度检测系统的设计与研究 14、基于单片机的温度控制系统的研究 15、行为导向教学策略在职校单片机课程教学中的应用研究 16、逻辑电路与单片机的虚拟实验系统设计与实现

17、基于单片机的LED显示系统 18、基于单片机的校园安防系统 19、基于MSP430单片机的红外甲烷检测仪设计及实现 20、基于高性能单片机的无线LED彩灯控制系统的设计与实现 21、基于AVR单片机教学实验板的设计 22、基于单片机的阀岛控制系统的研究 23、基于AT89S51单片机实验开发系统设计 24、基于单片机和GPRS数据传输技术的研究 25、基于HCS12单片机的智能车底层控制系统研究 26、单片机GPRS智能终端及远程工业监控技术研究 27、基于单片机的MODBUS总线协议实现技术研究 28、基于单片机的室内智能通风控制系统研究 29、基于单片机的通用控制器设计与实现 30、基于单片机控制的PTCR阻温特性测试系统的设计与实现 31、Proteus在单片机教学中的应用 32、基于单片机的变频变压电源设计 33、基于单片机的监控系统控制部分的设计 34、基于单片机的葡萄园防盗报警系统设计 35、基于单片机的温度智能控制系统的设计与实现 36、基于单片机的远程抄表系统的设计与研究 37、基于单片机的温度测控系统在温室大棚中的设计与实现 38、基于单片机的高精度随钻测斜仪系统开发 39、基于16位单片机MC9S12DG128B智能车系统的设计 基于单片机的毕业论文题目二: 40、基于单片机的压力/液位控制系统的设计研究 41、单片机与Internet网络的通信应用研究 42、基于单片机控制的温室环境测控装置研究 43、具有新型接口的MCS-51单片机实验系统设计 44、基于单片机控制的直流恒流源的设计 45、基于单片机的模糊控制方法及应用研究 46、基于AT89S52单片机的煤矿瓦斯监测系统的研制 47、基于AT89C51单片机的脉象信号采集系统研究 48、基于DTMF技术的单片机远程通信系统研究 49、基于单片机的GPRS无线数据采集与传输系统的设计 50、基于单片机控制的柴油机喷油泵数据采集系统的设计与实现 51、基于谐振技术及MK单片机的多路升压器研究设计 52、基于单片机的数据串口通信 53、基于单片机的智能寻迹系统设计 54、压电式阀门定位器与单片机实验装置研制 55、基于单片机的微型电子琴研究与实现 56、基于单片机的恒温恒湿孵化器系统设计 57、基于16位单片机MC9S12XS128的两轮自平衡智能车的系统研究与开发

基于单片机的电子时钟课程设计报告

目录 一、引言········ 二、设计课题········· 三、系统总体方案········· 四、系统硬件设计······ 1.硬件电路原理图 2.元件清单 五、系统软件设计········· 1.软件流程图 2.程序清单 六、系统实物图········ 七、课程设计体会········ 八、参考文献及网站········· 九、附录·········

一.引言 单片机因将其主要组成部分集成在一个芯片上而得名,就是把中央处理器、随机存储器、只读存储器、中断系统、定时器/计数器以及I/O接口电路等部件集成在一个芯片上。 基于单片机设计的数字钟精确度较高,因为在程序的执行过程中,任何指令都不影响定时器的正常计数,即便程序很长也不会影响中断的时间。 数字钟是采用数字电路实现对日期、时、分、秒,数字显示的计时装置,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表的报时功能。数字钟已成为人们日常生活中的必需品,广泛应用于家庭、车站、码头、剧院、办公室等场所,给人们的生活、学习、工作带来极大的方便。不仅如此,在现代化的进程中,也离不开电子钟的相关功能和原理,比如机械手的控制、家务的自动化、定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。而且是控制的核心部分。因此,研究数字钟及扩大其应用,有着非常现实的意义。 本设计使用12MHZ晶振与单片机AT89C51相连接,以AT89C51芯片为核心,采用动态扫描方式显示,通过使用该单片机,加之在显示电路部分使用HD74LS373驱动电路,实现在8个LED数码管上显示时间,通过4个按键进行调时、复位等功能,在实现各功能时数码管进行相应显示。软件部分用C语言实现,分为显示、延迟、调时、复位等部分。通过软硬件结合达到最终目的。

基于51单片机的电子琴设计课程设计

目录 前言 (2) 第1章基于51单片机的电子琴设计 (3) 1.1 电子琴的设计要求 (3) 1.2 电子琴设计所用设备及软件 (3) 1.3 总体设计方案 (3) 第2章系统硬件设计 (5) 2.1 琴键控制电路 (5) 2.2 音频功放电路 (6) 2.3 时钟-复位电路 (6) 2.4 LED显示电路 (6) 2.5 整体电路 (6) 第3章电子琴系统软件设计 (7) 3.1 系统硬件接口定义 (7) 3.2 主函数 (8) 3.2.1 主函数程序 (8) 3.3 按键扫描及LED显示函数 (9) 3.3.1 键盘去抖及LED显示子程序 (10) 3.4 中断函数 (11) 3.4.1 中断程序 (12) 第4章电子琴和调试 (12) 4.1 调试工具 (12) 4.2 调试结果 (13) 4.3 电子琴设计中的问题及解决方法 (14) 第5章电子琴设计总结 (15) 参考文献 (16) 附录 (17)

前言 音乐教育是学校美育的主要途径和最重要内容,它在陶冶情操、提高素养、开发智力,特别是在培养学生创新精神和实践能力方面发挥着独特的作用。近年来,我国音乐教育在理论与实践上都取得了有目共睹的成绩,探索并形成了具有中国特色的、较为完整的音乐教育教学体系。但我国音乐教育的改革力度离素质教育发展的要求还存在一定距离。如今,电子琴作为电子时代的新产物以其独特的功能和巨大的兼容性被人们广泛的接受和推崇。而在课堂教学方面,它拥有其它乐器无法比拟的两个瞬间:瞬间多元素思维的特殊的弹奏方法;瞬间多声部(包括多音色)展示的乐队音响效果的特点。结合电子琴自身强大的功能及独特的优点来进行音乐教育的实施,这样就应该大力推广电子琴进入音乐教室,让电子琴教学在音乐教育中发挥巨大的作用。现代乐器中,电子琴是高新科技在音乐领域的一个代表,体现了人类电子技术和艺术的完美结合。电子琴自动伴奏的稳定性、准确性,以及鲜明的强弱规律、随人设置的速度要求,都更便于人们由易到难、深入浅出的准确掌握歌曲节奏和乐曲风格,对其节奏的稳定性和准确性训练能起到非常大的作用。电子琴所包含的巨量的音乐信息和强大的音乐表现力可以帮助音乐教学更好地贯彻和落实素质教育,更有效地提高人们的音乐素质和能力。目前,市场上的电子琴可谓琳琅满目,功能也是越来越完备。以单片机作为主控核心,设计并制作的电子琴系统运行稳定,其优点是硬件电路简单、软件功能完善、控制系统可靠、性价比较高等,具有一定的实用与参考价值。这就为电子琴的普及提供了方便。 二、电子琴设计要求本设计主要是用AT89C51单片机为核心控制元件,设计一台电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有7个按键和1个复位按键。本系统主要是完成2大功能:音乐自动播放、电子琴弹奏。关于声音的处理,使用单片机C语言,利用定时器来控制频率,而每个音符的符号只是存在自定义的表中。

基于单片机的毕业设计题目

单片机类 业设计 刷电子时钟的设计 刷全自动节水灌溉系统--硬件部 刷数 式温度计的设计 刷温度 控系统设计 刷基于单片机的语音提示测温系统的研究 刷简易无线电遥控系统 刷数 流 计 刷基于单片机的全自动洗衣机 刷水塔智能水 控 系统 刷温度箱模拟控 系统 刷超声波测距仪的设计 刷基于51单片机的L司号点阵显示屏系统的设计与实 16×16点阵显示屏 刷基于A切89分51单片机的数 电子时钟 刷基于单片机的步 电机的控 刷基于单片机的交流调 器设计 刷基于单片机的数 电压表的设计 刷单片机的数 钟设计 刷智能散热器控 器的设计 刷单片机打铃系统设计 刷基于单片机的交通信 灯控 电路设计 刷基于单片机的电话 程控 家用电器系统设计 刷基于单片机的安全 警器 刷基于单片机的 路抢答器设计 刷基于单片机的超声波测距系统的设计 刷基于MC分-51数 温度表的设计 刷电子体温计的设计 刷基于A切89C51的电话 程控 系统 刷基于A三R单片机幅度 调的号号分信 发生器 刷基于单片机的数控稳压电源的设计 刷基于单片机的室内一氧化碳 测及 警系统的研究 刷基于单片机的空调温度控 器设计 刷基于单片机的 编程多 能电子定时器 刷单片机的数 温度计设计 刷红外遥控密码锁的设计 刷基于61单片机的语音识别系统设计 刷家用 燃气体 警器的设计 刷基于数 温度计的多点温度检测系统 刷基于凌 单片机的语音实时采集系统设计 刷基于单片机的数 频率计的设计 刷基于单片机的数 电子钟设计 刷设施 境中温度测 电路设计 刷汽车倒车 撞 警器的设计 刷篮球赛计时记 器

刷基于单片机的家用智能总线式开关设计 刷设施 境中湿度检测电路设计 刷基于单片机的音乐合成器设计 刷设施 境中二氧化碳检测电路设计 刷基于单片机的水温控 系统设计 刷基于单片机的数 温度计的设计 刷基于单片机的火灾 警器 刷基于单片机的红外遥控开关设计 刷基于单片机的电子钟设计 刷基于单片机的红外遥控电子密码锁 刷大棚温湿度自动 控系统 刷基于单片机的电器遥控器的设计 刷单片机的语音 储与 放的研究 刷基于单片机的电 热炉温度控 系统设计 刷红外遥控电源开关 刷基于单片机的 频信 发生器设计 刷基于单片机的呼叫系统的设计 刷基于PIC16F876A单片机的超声波测距仪 刷基于单片机的密码锁设计 刷单片机步 电机转速控 器的设计 刷由A切89C51控 的太 能热水器 刷 盗与恒温系统的设计与 作 刷A切89分52单片机实验系统的开发与 用 刷基于单片机控 的数 气压计的设计与实 刷智能压力传感器系统设计 刷智能定时器 刷基于单片机的智能火灾 警系统 刷基于单片机的电子式转速 程表的设计 刷 交车汉 显示系统 刷单片机数 电压表的设计 刷精密三F转换器与MC分-51单片机的接口技术 刷基于单片机的居室安全 警系统设计 刷基于89C2051 IC卡读/写器的设计 刷PC机与单片机串行通信设计 刷球赛计时计 器设计 刷 系列PCL五层电 控 系统设计 刷自动起闭光控窗帘设计 刷单片机控 交通灯系统设计 刷基于单片机的电子密码锁 刷基于51单片机的多路温度采集控 系统 刷点阵电子显示屏-- 业设计 刷超声波测距仪-- 业设计 刷单片机对玩 小车的智能控 业设计论文 刷基于单片机控 的电机交流调速 业设计论文

基于单片机的LED点阵显示课程设计

1 LED电子显示屏原理 1.1 L ED电子显示屏概述 LED电子显示屏(Light Emitting Diode Panel)是由几百--几十万个半导体发光二极管构成的像素点,按矩阵均匀排列组成。利用不同的半导体材料可以制造不同色彩的LED像素点。目前应用最广的是红色、绿色、黄色。而蓝色和纯绿色LED的开发已经达到了实用阶段。LED显示屏是一种通过控制半导体发光二极管的亮度的方式,来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。 LED显示屏分为图文显示屏和条幅显示屏,均由LED矩阵块组成。图文显示屏可与计算机同步显示汉字、英文文本和图形;而条幅显示屏则适用于小容量的字符信息显示。LED显示屏因为其像素单元是主动发光的,具有亮度高,视角广、工作电压低、功耗小、寿命长、耐冲击和性能稳定等优点。因而被广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。 LED显示屏的发展前景极为广阔,目前正朝着更高亮度、更高气候耐受性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展。 1.2 LED显示屏动态显示原理 LED点阵显示系统中各模块的显示方式:有静态和动态显示两种。静态显示原理简单、控制方便,但硬件接线复杂,在实际应用中一般采用动态显示方式,动态显示采用扫描的方式工作,由峰值较大的窄脉冲电压驱动,从上到下逐次不断地对显示屏的各行进行选通,同时又向各列送出表示图形或文字信息的列数据信号,反复循环以上操作,就可显示各种图形或文字信息。 点阵式LED汉字广告屏绝大部分是采用动态扫描显示方式,这种显示方式巧妙地利用了人眼的视觉暂留特性。将连续的几帧画面高速的循环显示,只要帧速率高于24帧/秒,人眼看起来就是一个完整的,相对静止的画面。最典型的例子就是电影放映机。在电子领域中,因为这种动态扫描显示方式极大的缩减了发

单片机系统的设计

单片机系统的设计 The Standardization Office was revised on the afternoon of December 13, 2020

第4章 单片机系统的设计 引言 用V/F 变换器作A/D 转换时,通常由一些硬件电路如振荡器、二分频器、计数器和门电路组成,而由计数器计得的计数值即A/D 转换结果再通过接口电路送入微计算机进行处理,较为复杂和不便,或者采用F/BCD 变换电路将V/F 变换器输出的频率信号变为BCD 码再通过接口电路送入微计算机,也较为复杂,而且还要对BCD 码进行变换。这些方法成本都较高。 本设计介绍一种以单片机直接与V/F 变换器接口进行A/D 转换的方法,不须额外的硬件电路,完全利用单片机内部的硬件资源,简单方便,成本最低,大大地提高了V/F 变换器作为A/D 转换电路的可行性。 当前,单片机特别是Intel 公司的MCS-51系列单片机已在智能仪器仪表和过程控制等方面得到广泛应用,大有取代Z80之势,因此A/D 转换电路与单片机的接口方法也是人们所关注的。下面将主要介绍MCS-51系列的单片机8031为主控器件的硬件电路。 主控器Intel 8031简介 P1.1P1.2P1.3P1.4P1.5P1.6P1.7P3.0P3.1P3.2P3.3 P3.4P3.5P3.6P3.7XTAL 1 XTAL 2 V SS RST/VPD RXD TXD T0 T10INT P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7 P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0 1INT WR RD EA /V P P ALE V CC PSEN 4039383736353433323130292827262524232221 2019181716151413121110 987654321 8031P1.0 图4-1 8031引脚图 8031 cite-feet figure

单片机应用系统设计工程实践报告

2016-2017学年第1学期 单片机应用系统设计/工程实践 (课号:103G06B/D/E) 实验报告 项目名称:基于AT89C51单片机温度报警系统 学号 姓名 班级 学院信息科学与工程学院 完成时间

目录 一、项目功能及要求 (3) 1.1、课程设计的性质和目的 (3) 1.3、项目设计要求 (3) 二、系统方案设计及原理 (3) 2.1、设计主要内容 (3) 2.2 、AT89C51单片机简介 (3) 2.3 、DS18B20简介 (4) 2.4 、数码管显示 (5) 2.5、报警电路 (6) 三、系统结构及硬件实现 (7) 3.1、总电路图 (7) 3.2、单片机控制流程图 (8) 四、软件设计过程 (8) 五、实验结果及分析 (8) 5.1 、Proteus仿真 (8) 5.2 、C程序调试 (9) 六、收获及自我评价 (14) 七、参考文献 (15)

一、项目功能及要求 1.1、课程设计的性质和目的 本温度报警器以AT89C51单片机为控制核心,由一数字温度传感器DS18B20测量被控温度,结合7段LED以及驱动LED的74LS245组合而成。当被测量值超出预设范围则发出警报,且精度高。 利用现代虚拟仿真技术可对设计进行仿真实验,与单片机仿真联系紧密的为proteus仿真,利用keil软件设计单片机控制系统,然后与proteus进行联合调试,可对设计的正确性进行检验。 1.2、课程设计的要求 1、遵循硬件设计模块化。 2、要求程序设计结构化。 3、程序简明易懂,多运用输入输出提示,有出错信息及必要的注释。 4、要求程序结构合理,语句使用得当。 5、适当追求编程技巧和程序运行效率。 1.3、项目设计要求 1、基于AT89C51单片机温度报警系统; 2、设计3个按键分别为:设置按钮、温度加、温度减; 3、DS18B20温度传感器采集温度,并在数码管上显示按键的区别; 二、系统方案设计及原理 2.1、设计主要内容 本设计以AT89C51单片机为核心,从而建立一个控制系统,实现通过3个按键控制温度,以达到设置温度上下限的功能,并在数码管上显示三个数字当前的温度上下限设置值和DS18B20温度采集值的显示(精确到小数点后一位),当温度高于上限或者低于下限蜂鸣器报警。 2.2 、AT89C51单片机简介 AT89C51是一个低功耗,高性能CMOS8位单片机,片内含4kBytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用A TMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及89C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89C51可为许多嵌入式控制应用系统提供高性价比的解决方案.AT89C51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器,32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,片内时钟振荡器。 此外,AT89C51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。AT89C51单片机的基本结构和外部引脚如下图所示。

单片机课程设计——基于51单片机的温度监控系统设计

单片机课程设计报告 题目:温度监控系统设计 学院:能源与动力工程学院 专业:测控技术与仪器专业 班级: 2班 成员:魏振杰 二〇一五年十二月

一、引言 温度是工业控制中主要的被控参数之一,特别是在冶金、化工、建材、食品、机械、石油等工业中,具有举足重轻的作用。对于不同场所、不同工艺、所需温度高低范围不同、精度不同,则采用的测温元件、测方法以及对温度的控制方法也将不同;产品工艺不同、控制温度的精度不同、时效不同,则对数据采集的精度和采用的控制算法也不同,因而,对温度的测控方法多种多样。 随着电子技术和微型计算机的迅速发展,微机测量和控制技术也得到了迅速的发展和广泛的应用。利用微机对温度进行测控的技术,也便随之而生,并得到日益发展和完善,越来越显示出其优越性。 作为获取信息的手段——传感器技术得到了显著的进步,其应用领域较广泛。传感器技术已成为衡量一个国家科学技术发展水平的重要标志之一。因此,了解并掌握各类传感器的基本结构、工作原理及特性是非常重要的。 为了提高对传感器的认识和了解,尤其是对温度传感器的深入研究以及其用法与用途,基于实用、广泛和典型的原则而设计了本系统。本系统利用传感器与单片机相结合,应用性比较强,本系统可以作为仓库温度监控系统,如果稍微改装可以做热水器温度调节系统、实验室温度监控系统,以及构成智能电饭煲等等。课题主要任务是完成环境温度监测,利用单片机实现温度监测并通过报警信号提示温度异常。本设计具有操作方便,控制灵活等优点。 本设计系统包括单片机,温度采集模块,显示模块,按键控制模块,报警和指示模块五个部分。文中对每个部分功能、实现过程作了详细介绍。整个系统的核心是进行温度监控,完成了课题所有要求。 二、实验目的和要求 2.1学习DS18B20温度传感芯片的结构和工作原理。 2.2掌握LED数码管显示的原理及编程方法。 2.3掌握独立式键盘的原理及使用方法。 2.4掌握51系列单片机数据采集及处理的方法。 三、方案设计

基于单片机的秒表课程设计

基于单片机的秒表课程设计

基于单片机的秒表课程设计 姓名: 班级: 学号: 专业: 指导老师: 年月日

目录1、总体设计方案简介 1.1设计课程任务 1.2系统分析 1.3系统方案 1.4方案论证 2、硬件设计 2.1控制芯片的介绍 2.2硬件接线 2.2.1硬件接线接口 2.2.2硬件接线图 3、软件设计 3.1程序设计思路 3.2流程图 3.3源程序 3.4仿真结果 4、元件清单 5、心得体会

基于单片机的秒表课程设计 摘要 本设计的成品是在单片机最小系统的基础上增加显示电路和控制电路来完成数字式秒表的硬件电路的。电子秒表电路主要由AT89S51单片机最小系统电路、七段数码管动态显示电路和控制电路组成,它能实现八段数码显示和计时,能通过控制电路控制时间的暂停和开始。 关键字:AT89S51 数码管最小系统 1总体设计方案简介 1.1设计课题任务 设计一个具有特定功能的数字式秒表。用AT89C52设计一个2位LED 数码显示“秒表”,显示时间为00-59,另设计一个“开始”按钮和一个“复位”按钮。按键说明:按“开始”按键,开始计数,数码管从00开始每秒自动加一;按“复位”按键,系统清零,数码管显示00。 1.2系统分析 设计的电路主要是能多次计时,计时的多少通过显示电路出来,设计框图如图所示; 控制部 分技术和 存储部显示部分

1.3系统方案 利用AT89C52单片机设计数显定时器。此方案采用AT89C52单片机系统来实现。AT89C52芯片内含8KB 的EEPROM ,不需要外扩展存储器,可是系统整体结构更为简单。设计框图如图所示; 1.4方案论证 此方案是以AT89C52芯片为中心控制系统,可实现计时、清零等功能,大大提高了系统的智能化,也是的系统所测结果精度大大提高。所以此方案可行。 2硬件设计 2.1控制芯片的介绍 AT89S52是一种低功耗、高性能的片内含有4KB 快闪可编程/擦除只读存储器,的8位CMOS 微控制器,使用高密度、非易失存储技术制造, 外部控制开关 AT89C52 单 片 机 七段数码显示

单片机课程设计——基于C51简易计算器

单片机双字节十六进制减法实验设计 摘要 本设计是基于51系列的单片机进行的双字节十六进制减法设计,可以完成计 算器的键盘输入,进行加、减、3位无符号数字的简单运算,并在LED上相应的显示结果。 设计过程在硬件与软件方面进行同步设计。硬件方面从功能考虑,首先选择内部存储资源丰富的AT89C51单片机,输入采用5个键盘。显示采用3位7段共阴极LED动态显示。软件方面从分析计算器功能、流程图设计,再到程序的编写进行系统设计。编程语言方面从程序总体设计以及高效性和功能性对C语言和汇编语言进行比较分析,针对计算器四则运算算法特别是乘法和除法运算的实现,最终选用KEIL公司的μVision3软件,采用汇编语言进行编程,并用proteus 仿真。 引言 十六进制减法计算器的原理与设计是单片机课程设计课题中的一个。在完成理论学习和必要的实验后,我们掌握了单片机的基本原理以及编程和各种基本功能的应用,但对单片机的硬件实际应用设计和单片机完整的用户程序设计还不清楚,实际动手能力不够,因此对该课程进行一次课程设计是有必要的。 单片机课程设计既要让学生巩固课本学到的理论,还要让学生学习单片机硬件电路设计和用户程序设计,使所学的知识更深一层的理解,十进制加法计算器原理与硬软件的课程设计主要是通过学生独立设计方案并自己动手用计算机电路设计软件,编写和调试,最后仿真用户程序,来加深对单片机的认识,充分发挥学生的个人创新能力,并提高学生对单片机的兴趣,同时学习查阅资料、参考资料的方法。 关键词:单片机、计算器、AT89C51芯片、汇编语言、数码管、加减

目录 摘要 (01) 引言 (01) 一、设计任务和要求............................. 1、1 设计要求 1、2 性能指标 1、3 设计方案的确定 二、单片机简要原理............................. 2、1 AT89C51的介绍 2、2 单片机最小系统 2、3 七段共阴极数码管 三、硬件设计................................... 3、1 键盘电路的设计 3、2 显示电路的设计 四、软件设计................................... 4、1 系统设计 4、2 显示电路的设计 五、调试与仿真................................. 5、1 Keil C51单片机软件开发系统 5、2 proteus的操作 六、心得体会.................................... 参考文献......................................... 附录1 系统硬件电路图............................ 附录2 程序清单.................................. 一、设计任务和要求

基于单片机的电子钟设计毕业论文。。

基于单片机的电子时钟设计 摘要 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 现代生活的人们越来越重视起了时间观念,可以说是时间和金钱划上了等号。对于那些对时间把握非常严格和准确的人或事来说,时间的不准确会带来非常大的麻烦,所以以数码管为显示器的时钟比指针式的时钟表现出了很大的优势。数码管显示的时间简单明了而且读数快、时间准确显示到秒。而机械式的依赖于晶体震荡器,可能会导致误差。 数字钟是采用数字电路实现对“时”、“分”、“秒”数字显示的计时装置。数字钟的精度、稳定度远远超过老式机械钟。在这次设计中,我们采用LED数码管显示时、分、秒,以24 小时计时方式,根据数码管动态显示原理来进行显示,用12MHz的晶振产生振荡脉冲,定 时器计数。在此次设计中,电路具有显示时间的其本功能,还可以实现对时间的调整。数字钟是其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化而受广大消费的喜爱,因此得到了广泛的使用。 关键字:数字电子钟单片机 数字电子钟的背景 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。 目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。下面是单片机的主要发展趋势。单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法

单片机课程设计——基于C51简易计算器

单片机十进制加法计算器设计 摘要 本设计是基于51系列的单片机进行的十进制计算器系统设计,可以完成计 算器的键盘输入,进行加、减、乘、除3位无符号数字的简单四则运算,并在LED上相应的显示结果。 设计过程在硬件与软件方面进行同步设计。硬件方面从功能考虑,首先选择内部存储资源丰富的AT89C51单片机,输入采用4×4矩阵键盘。显示采用3位7段共阴极LED动态显示。软件方面从分析计算器功能、流程图设计,再到程序的编写进行系统设计。编程语言方面从程序总体设计以及高效性和功能性对C 语言和汇编语言进行比较分析,针对计算器四则运算算法特别是乘法和除法运算的实现,最终选用全球编译效率最高的KEIL公司的μVision3软件,采用汇编语言进行编程,并用proteus仿真。 引言 十进制加法计算器的原理与设计是单片机课程设计课题中的一个。在完成理论学习和必要的实验后,我们掌握了单片机的基本原理以及编程和各种基本功能的应用,但对单片机的硬件实际应用设计和单片机完整的用户程序设计还不清楚,实际动手能力不够,因此对该课程进行一次课程设计是有必要的。 单片机课程设计既要让学生巩固课本学到的理论,还要让学生学习单片机硬件电路设计和用户程序设计,使所学的知识更深一层的理解,十进制加法计算器原理与硬软件的课程设计主要是通过学生独立设计方案并自己动手用计算机电路设计软件,编写和调试,最后仿真用户程序,来加深对单片机的认识,充分发挥学生的个人创新能力,并提高学生对单片机的兴趣,同时学习查阅资料、参考资料的方法。 关键词:单片机、计算器、AT89C51芯片、汇编语言、数码管、加减乘除

目录 摘要 (01) 引言 (01) 一、设计任务和要求............................. 1、1 设计要求 1、2 性能指标 1、3 设计方案的确定 二、单片机简要原理............................. 2、1 AT89C51的介绍 2、2 单片机最小系统 2、3 七段共阳极数码管 三、硬件设计................................... 3、1 键盘电路的设计 3、2 显示电路的设计 四、软件设计................................... 4、1 系统设计 4、2 显示电路的设计 五、调试与仿真................................. 5、1 Keil C51单片机软件开发系统 5、2 proteus的操作 六、心得体会.................................... 参考文献......................................... 附录1 系统硬件电路图............................ 附录2 程序清单..................................

相关主题
文本预览
相关文档 最新文档