当前位置:文档之家› 5单片机的内部结构分析(三)时序与时钟

5单片机的内部结构分析(三)时序与时钟

5单片机的内部结构分析(三)时序与时钟
5单片机的内部结构分析(三)时序与时钟

单片机的内外部结构分析(三)

一、延时程序分析

上一次课中,我们已经知道,程序中的符号R7、R6是代表了一个个的RAM单元,是用来放一些数据的,下面我们再来看一下其它符号的含义。

1.MOV:这是一条指令,意思是传递数据。说到传递,我们都很清楚,传东西要从一个人

的手上传到另一个人的手上,也就是说要有一个接受者,一个传递者和一样东西。从指

令MOV R7,#250中来分析,R7是一个接受者,250是被传递的数,传递者在这条指令

中被省略了(注意:并不是每一条传递指令都会省的,事实上大部份数据传递指令都会

有传递者)。它的意义也很明显:将数据250送到R7中去,因此执行完这条指令后,

R7单元中的值就应当是250。在250前面有个#号,这又是什么意思呢?这个#就是用来说明250就是一个被传递的东西本身,而不是传递者。

那么MOV R6,#250是什么意思,应当不用分析了吧。

2.DJNZ:这是另一条指令,我们来看一下这条指令后面跟着的两个东西,一个是R6,一个

是D2,R6我们当然已知是什么了,查一下D2是什么。D2在本行的前面,我们已学过,这称之为标号。标号的用途是什么呢?就是给本行起一个名字。DJNZ

指令的执行过程是这样的,它将其后面的第一个参数中的值减1,然后看一下,这个值是否等于0,如果等于0,就往下执行,如果不等于0,就转移,转到什么地方去呢?可能大家已猜到了,转到第二个参数所指定的地方去(请大家用自已的话讲一下这

条语句是怎样执行的)。本条指令的最终执行结果就是,在原地转圈250次。

3.执行完了DJNZ R6,D2之后(也就是R6的值等于0之后),就会去执行下面一行,也

就是DJNZ R7,D1,请大家自行分析一下这句话执行的结果。(转去执行MOV R6,#250,同时R7中的值减1),最终DJNZ R6,D2这句话将被执行250*250=62500次,执行这么多次同一条指令干吗?就是为了延时。

4.一个问题:如果在R6中放入0,会有什么样的结果。

二、时序分析:

前面我们介绍了延时程序,但这还不完善,因为,我们只知道DJNZ R6,D2这句话会被执行62500次,但是执行这么多次需要多长时间呢?是否满足我们的要求呢?我们还不知道,所以下面要来解决这个问题。

1.时序的由来

我们已经知道单片机执行指令的过程就是顺序从ROM(程序存储器)中取出指令一条一条的顺序执行,然后进行一系列的微操作控制,来完成各种指定的动作。它在协调内部的各种动作时必须要有一定的顺序,换句话说,就是这一系列的微操作控制信号在时间上要有一个严格的先后次序,这种次序就是单片机的时序。这就好比学校上课时的电铃,为了保证课堂秩序,学校就必须在铃声的统一协调下安排各个课程和活动。那么单片机的时序如何规定呢?。

2.时序的周期

计算机访问一次存储器的时间,称之为一个机器周期。这是一个时间基准,就像我们人用“秒”作为我们的时间基准一样,为什么不干脆用“秒”,多好,很习惯,学下去我们就会知道用“秒”反而不习惯。

一个机器周期包括12个振荡周期,什么是振荡周期?一个振荡周期是多少时间?振荡周期就是振荡源的周期,也就是我们使用的晶振的时间周期,一个12M晶振,它的振荡周期是1/12(微秒)。那么使用12M晶振的单片机,它的一个机器周期就应该等于12×(1/12)也就是1微秒。(请计算一个工作于6M晶振的单片机,它的机器周期是多少)。

MCS-51单片机的所有指令中,有一些完成得比较快,只要一个机器周期就行了,有一些完成得比较慢,得要2个机器周期,还有两条指令要4个机器周期才行。这也不难再解,不是吗?我让你扫地的执行要完成总得比要你完成擦黑板的指令时间要长。为了恒量指令执行时间的长短,又引入一个新的概念:指令周期。所谓指令周期就是指执行一条指令的时间。INTEL对每一条指令都给出了它的指令周期数,这些数据,大部份不需要我们去记忆,但是有一些指令是需要记住的,如DJNZ指令是双周期指令。

下面让我们来计算刚才的延时。首先必须要知道晶振的频率,我们设所用晶振为12M,则一个机器周期就是1微秒。而DJNZ指令是双周期指令,所以执行一次要2个微秒。一共执行62500次,正好125000微秒,也就是125毫秒。这么大的数字也就是.125秒,怪不得LED1闪烁的那么快。(思考:在上次的延时实验中,如何延长闪烁的时间?想想看,怎么做?)

练习:设计一个延时100毫秒的延时程序。

要点分析:1、一个单元中的数是否可以超过255。2、如何分配两个数。

三、复位电路

任何单片机在工作之前都要有个复位的过程,复位是什么意思呢?它就象是我们上课之前打的预备铃。预备铃一响,大家就自动地从操场、其它地方进入教室了,在这一段时间里,是没有老师干预的,对单片机来说,是程序还没有开始执行,是在做准备工作。显然,准备工作不需要太长的时间,复位只需要5ms的时间就可以了。如何进行复位呢?只要在单片机的RST引脚上加上高

电平,就可以了,按上面所说,时间不少于5ms。为了达到这个要求,可以用很多种方法,这里提供一种供参考,见图1。实际上,我们在上一次实验的图中已见到过了。

这种复位电路的工作原理是:通电时,电容两端有短暂的瞬间电流,电容相当于是短路,于是RST引脚上为高电平,然后电源通过电阻对电容充电,RST端电压慢慢下降,降到一定程度,即为低电平,单片机开始正常工作。

四、单片机的时钟电路

大家已经知道,单片机是在一定的时序控制下工作的。那么时序和时钟又有什么关系呢?时钟是时序的基础,单片机本身就如同一个复杂的同步时序电路,为了保证同步工作方式的实现,电路就要在唯一的时钟信号控制下按时序进行工作,那么单片机内的时钟是如何产生的呢?

1 内部时钟电路

在 MCS-51单片机的内部有一个高增益的反相放大器,其输入端为引脚 XTAL1 19 脚,输出端为XTAL2 18 脚,我们只要在外部接上两个电容和一个晶振就能构成一个稳定的自激振荡器。它的内部电路的工作原理就不介绍了,这里主要讲一下电容和晶振的选择,看上面的图,晶振的大小与单片机的振荡频率有关,我们到串行接口时再详细讲解,电容的大小影响着振荡器振荡的稳定性和起振的快速性,通常选择 10-30P 的瓷片电容或校正电容,另外在设计电路时,晶振和电容应尽可能的靠近芯片,以减少 PCB 板的分布电容,保证振荡器工作的稳定性,提高系统的抗干扰能力

2 外部时钟电路

除了内部时钟方式外,单片机还可以采用引入外部时钟的振荡方式,什么时候需要采用外部时钟方式呢,当我们的系统由多片单片机组成时,为了保证各单片机之间时钟信号的同步,就应当引入唯一的公用的外部脉冲信号作为各单片机的振荡脉冲,此时应将 XTAL2 悬空不用,外部脉冲信号由 XTAL1引入,如上右图所示。

五、习题

1 什么是单片机的机器周期?什么是振荡周期?什么是指令周期?它们之

间的关系是怎么样的?

2 什么是单片机的时序?

3 单片机有几种振荡方式?

4 简述单片机内部时钟的产生过程。

AT89C51单片机的基本结构和工作原理

AT89C51单片机的主要工作特性: ·内含4KB的FLASH存储器,擦写次数1000次; ·内含28字节的RAM; ·具有32根可编程I/O线; ·具有2个16位可编程定时器; ·具有6个中断源、5个中断矢量、2级优先权的中断结构; ·具有1个全双工的可编程串行通信接口; ·具有一个数据指针DPTR; ·两种低功耗工作模式,即空闲模式和掉电模式; ·具有可编程的3级程序锁定定位; AT89C51的工作电源电压为5(1±0.2)V且典型值为5V,最高工作频率为24MHz. AT89C51各部分的组成及功能: 1.单片机的中央处理器(CPU)是单片机的核心,完成运算和操作控制,主要包括运算器和控制器两部分。

(1)运算器 运算器主要用来实现算术、逻辑运算和位操作。其中包括算术和逻辑运算单元ALU、累加器ACC、B寄存器、程序状态字PSW和两个暂存器等。 ALU是运算电路的核心,实质上是一个全加器,完成基本的算术和逻辑运算。算术运算包括加、减、乘、除、增量、减量、BCD码运算;逻辑运算包括“与”、“或”、“异或”、左移位、右移位和半字节交换,以及位操作中的位置位、位复位等。 暂存器1和暂存器2是ALU的两个输入,用于暂存参与运算的数据。ALU的输出也是两个:一个是累加器,数据经运算后,其结果又通过内部总线返回到累加器;另一个是程序状态字PSW,用于存储运算和操作结果的状态。 累加器是CPU使用最频繁的一个寄存器。ACC既是ALU处理数据的来源,又是ALU运算结果的存放单元。单片机与片外RAM或I/O扩展口进行数据交换必须通过ACC来进行。 B寄存器在乘法和除法指令中作为ALU的输入之一,另一个输入来自ACC。运算结果存于AB寄存器中。 (2)控制器 控制器是识别指令并根据指令性质协调计算机内各组成单元进行工作的部件,主要包括程序计数器PC、PC增量器、指令寄存器、指令译码器、定时及控制逻辑电路等,其功能是控制指令的读入、译码和执行,并对指令执行过程进行定时和逻辑控制。AT89C51单片机中,PC是一个16位的计数器,可对64KB程序存储器进行寻址。复位时PC的内容是0000H. (3)存储器 单片机内部的存储器分为程序存储器和数据存储器。AT89C51单片机的程序存储器采用4KB的快速擦写存储器Flash Memory,编程和擦除完全是电器实现。 (4)外围接口电路 AT89C51单片机的外围接口电路主要包括:4个可编程并行I/O口,1个可编程串行口,2个16位的可编程定时器以及中断系统等。 AT89C51的工作原理: 1.引脚排列及功能 AT89C51的封装形式有PDIP,TQFP,PLCC等,现以PDIP为例。 (1)I/O口线 ·P0口 8位、漏极开路的双向I/O口。 当使用片外存储器及外扩I/O口时,P0口作为低字节地址/数据复用线。在编程时,P0口可用于接收指令代码字节;程序校验时,可输出指令字节。P0口也可做通用I/O口使用,但需加上拉电阻。作为普通输入时,应输出锁存器配置1。P0口可驱动8个TTL负载。 ·P1口 8位、准双向I/O口,具有内部上拉电阻。 P1口是为用户准备的I/O双向口。在编程和校验时,可用作输入低8位地址。用作输入时,应先将输出锁存器置1。P1口可驱动4个TTL负载。 ·P2 8位、准双向I/O口,具有内部上拉电阻。 当使用外存储器或外扩I/O口时,P2口输出高8位地址。在编程和校验时,P2口接收高字节地址和某些控制信号。 ·P3 8位、准双向I/O口,具有内部上拉电阻。 P3口可作为普通I/O口。用作输入时,应先将输出锁存器置1。在编程/校验时,P3口接收某些控制信号。它可驱动4个TTL负载。 (2)控制信号线

8051单片机的内部结构

8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。 8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明: 中央处理器(CPU)是整个单片机的核心 部件,是8位数据宽度的处理器,能处理 8位二进制数据或代码,CPU负责控制、 指挥和调度整个单元系统协调的工作,完 成运算和控制输入输出功能等操作。 ·数据存储器(RAM): 8051内部有128个8位用户数据存储 单元和128个专用寄存器单元,它们是统 一编址的,专用寄存器只能用于存放控制 指令数据,用户只能访问,而不能用于存 放用户数据,所以,用户能使用的的RAM 只有128个,可存放读写的数据,运算的 中间结果或用户定义的字型表。 ·程序存储器(ROM): 8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。 ·定时/计数器(ROM): 8051有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。 ·并行输入输出(I/O)口: 8051共有4组8位I/O口(P0、P1、P2或P3),用于对外部数据的传输。 ·全双工串行口: 8051内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以 用作异步通信收发器,也可以当同步移位器使用。 ·中断系统: 8051具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可 满足不同的控制要求,并具有2级的优先级别选择。 ·时钟电路: 8051内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8051 单片机需外置振荡电容。

基于51单片机的室内空气检测文献综述

福州大学至诚学院本科生毕业设计(论文)文献综述 题目:基于单片机的室内空气 质量监测系统设计 姓名:陈志勇 学号:211114112 系别:电气工程及其自动化 专业:自动化 年级:2011级 指导教师:(签名) 年月日 1、研究背景与意义

全球经济的快速发展和工业水平的提高,人类所面临的大气污染问题日益严峻,空气质量的好坏受到越来越多的关注。随着生活水平的提高、居住条件的改善,人们对生活环境质量的要求也越来越高,拥有一个健康无污染的室内环境就成为很多人的共同愿望。特别是近几年,国内各大城市对PM2.5持续居高不下,这引起了广泛的关注。而对于室内环境来说,工业排放的可吸附颗粒物、装修房间排放的甲醛、及厨房排放的油烟等是其污染的主要来源。这些烟尘、甲醛等有害物质的含量远远超出了正常的标准,严重影响了人们的身体健康。 信息技术的发展改变了人们日常办公的方式和环境,更多的人可以选择在室内完成一天的工作。尤其是生活在城市中的群体,有一半以上的时间都是在室内环境中度过。在这种环境下,即使空气中的污染物的浓度不太高,长期处在室内并呼吸受到污染过的空气,健康也势必会受到影响,污染空气带来的伤害也是无法估量的。有时,室内污染比室外污染更加严重,因此对室内空气污染的预防与治理具有重大意义,它直接影响到人们的生活环境和身体健康。 事实上,人类超过一半的疾病都是由于空气污染造成的,全世界每年死于空气污染的人数以数百万计。因此,近年来,人们越来越意识到改善空气质量的重要性。一方面,控制污染源,减少污染物的产生;另一方面,采取措施,减少已存在的污染物。解决室内环境的污染问题,有很多种方法可以选择。因此,本文采用静电式来净化室内空气,一定程度上可以改善室内空气质量。该设计系统能够检测空气环境质量,比如温度、湿度,更重要的是能检测空气中掺杂的一定浓度粉尘、烟雾、甲醛等杂质气体,当浓度超过设定值时进行报警,并启动高压静电模块,将这些杂质颗粒吸附在高压静电的极板上。 2 研究动态 气体传感器测定甲醛成为近年来甲醛检测研究的新热点。早在1983年,压电类甲醛传感器就已问世。这种传感器可以不需要对样品进行任何处理就可以测定,但易受水分子的影响而使晶体震动频率发生漂移,故基本无实用性。为适应室内空气甲醛现场快速检测的要求,目前已开发出不少甲醛快速测定仪,这些仪器可直接在现场测定甲醛浓度,操作方便,适用于室内和公共场所空气中甲醛浓度的现场测定,也适用于环境测试舱法测定木质板材中的甲醛释放量。但这些仪器的工作原理、响应性能、适应范围等都不同。 在测试甲醛、苯等害气体方面,国外比较出名的有:美国ESC公司生产的Z 一300甲醛检测仪、英国PPM公司生产的PPM-400甲醛检测仪;国内的有:江苏安普电子工程有限公司生产的400型甲醛分析仪、北京宾达绿创科技有限公司生产的甲醛测定仪抑一308等。

基于51单片机的温度控制系统的设计

基于单片机的温度控制系统设计 1.设计要求 要求设计一个温度测量系统,在超过限制值的时候能进行声光报警。具体设计要求如下: ①数码管或液晶显示屏显示室内当前的温度; ②在不超过最高温度的情况下,能够通过按键设置想要的温度并显示;设有四个按键,分别是设置键、加1键、减1键和启动/复位键; ③DS18B20温度采集; ④超过设置值的±5℃时发出超限报警,采用声光报警,上限报警用红灯指示,下限报警用黄灯指示,正常用绿灯指示。 2.方案论证 根据设计要求,本次设计是基于单片机的课程设计,由于实现功能比较简单,我们学习中接触到的51系列单片机完全可以实现上述功能,因此可以选用AT89C51单片机。温度采集直接可以用设计要求中所要求的DS18B20。报警和指示模块中,可以选用3种不同颜色的LED灯作为指示灯,报警鸣笛采用蜂鸣器。显示模块有两种方案可供选择。 方案一:使用LED数码管显示采集温度和设定温度; 方案二:使用LCD液晶显示屏来显示采集温度和设定温度。 LED数码管结构简单,使用方便,但在使用时,若用动态显示则需要不断更改位选和段选信号,且显示时数码管不断闪动,使人眼容易疲劳;若采用静态显示则又需要更多硬件支持。LCD显示屏可识别性较好,背光亮度可调,而且比LED 数码管显示更多字符,但是编程要求比LED数码管要高。综合考虑之后,我选用了LCD显示屏作为温度显示器件,由于显示字符多,在进行上下限警戒值设定时同样可以采集并显示当前温度,可以直观的看到实际温度与警戒温度的对比。LCD 显示模块可以选用RT1602C。

3.硬件设计 根据设计要求,硬件系统主要包含6个部分,即单片机时钟电路、复位电路、键盘接口模块、温度采集模块、LCD 显示模块、报警与指示模块。其相互联系如下图1所示: 图1 硬件电路设计框图 单片机时钟电路 形成单片机时钟信号的方式有内部时钟方式和外部时钟方式。本次设计采用内部时钟方式,如图2所示。 单片机内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别为此放大器的输入端和输出端,其频率范围为~12MHz ,经由片外晶体振荡器或陶瓷振荡器与两个匹配电容一 起形成了一个自激振荡电路,为单片机提供时钟源。 复位电路 复位是单片机的初始化操作,其作用是使CPU 和系统中的其他部件都处于一个确定的初始状态,并从这个状态开始工作,以防止电源系统不稳定造成CPU 工作不正常。在系统中,有时会出现工作不正常的情况,为了从异常状态中恢复,同时也为了系统调试方便,需要设计一个复位电路。 单片机的复位电路有上电复位和按键复位两种形式,因为本次设计要求需要有启动/复位键,因此本次设计采用按键复位,如图3。复位电路主要完成系统 图2 单片机内部时钟方式电路 图3 单片机按键复位电路

8051单片机的引脚及其功能

今天我们学习8051单片机的引脚及其功能。 8051系列各种芯片的引脚是互相兼容的,8051,8751和8031均采用40脚双列直播封装型式。当然,不同芯片之间引脚功能也略有差异。8051单片机是高性能的单片机,因为受到引脚数目的限制,所以有不少引脚具有第二功能,其中有些功能是8751芯片所专有的。各引脚功能简要说明如下: Vcc(40脚):电源端,为+5V。 Vss(20脚):接地端。 时钟电路引脚XLAL2(18脚):接外部晶体和微调电容的一端。若需采用外部时钟电路时,该引脚输入外时钟脉冲,要检查8051的振荡电路是否正确工作,可用示波器查看XLAL2端是否有脉冲信号输出。 时钟电路引脚XLAL1(19脚):接外部晶体的微调电容的另一端。在片内它是振荡电路方相放大器的输入端。在采用外部时钟时,该引脚必须接地。 RST(9脚):RST是复位信号输入端,高电平有效。当此输入端保持两个机器周期,即24个时钟振荡周期的高电平时,就可以完成复位操作。RST引脚的第二功能是VPD,即备用电源的输入端。当主电源Vcc发生故障降低到低电平规定值时,将+5V电源自动接入RST端,为RAM 提供备用电源,以保证存储在RAM中的信息不丢失,以使电源正常后能继续正常运行。 ALE(30脚):地址锁存允许信号端。当8051上电正常工作后,ALE引脚不断向外输出正脉冲信号,此频率为振荡器频率fosc的1/6。CPU访问片外存储器时,ALE输出信号作为锁存低8位地址的控制信号。在CPU访问片外数据存储器时,会丢失一个脉冲。平时不访问外存储器时,ALE端也可1/6的振荡频率固定输出正脉冲,因而ALE也可以用作对外输出时钟或定时信号。如果你想看一下8051芯片的好坏,可用示波器查看ALE端是否有脉冲信号输出,如有,则8051基本上是好的。ALE端的负载驱动能力为8个LS型TTL。此引脚的第二功能PROG是对片内带有4K EPROM的8751固化程序时,作为编程脉冲输入端。 PSCN(29脚):程序存储器允许输出信号端。在访问片外程序存储器时,此端口定时输出脉冲作为读片外程序存储器的选通信号。此引脚EPROM的OE端,PSCN端有效,即允许读出片

基于51单片机的室内甲醛测试系统

基于51单片机的室内甲醛测试系统 甲醛是一种具有刺激气味的无色气体,也是一种潜在的致癌物质,对人体健康有较大的危害,许多疾病的诱发都与甲醛有关,如哮喘,白血病等。甲醛浓度在每立方米空气中达到0.06-0.07mg/m3时,儿童就会发生轻微气喘。当室内空气中甲醛含量为0.1mg/m3时,就有异味和不适感。达到0.5mg/m3时,可刺激眼睛,引起流泪,它对人体健康的危害不容忽视。单片机具有通用性强、体积小、价格低、稳定可靠等突出优点,在智能产品、测控系统等领域得到广泛的应用。本文设计的测试仪可现场可直接显示甲醛浓度值。当其浓度值小于国家规定的标准值(可按键修改)时绿灯亮,可以入住,当超过规定的室内居住标准值时红灯亮开始报警提醒人们暂时不要入住。 1 硬件介绍 基于单片机的室内甲醛测试仪由单片机系统,显示电路,功能键盘,甲醛传感器,测量电路及3位半双积分A/D转换器,报警输出电路构成。系统结构: 1.1测量电路 测量电路由CH20/S-10甲醛传感器,I/U(电流/电压)变换器RCV420芯片,5G14433A/D 转换器等组成。 甲醛传感器由甲醛探头,CH20传感器组成。当空气被内部的采样系统吸收后,将产生的电流信号与相连产生一个与甲醛浓度成正比的电流,该电流经过4~20MA甲醛模块的信号调理,与I/U变换器RCV420芯片转换成0~5V的电压,该电压经过5G14433A/D转换器,与8051单片机相连,在显示器上显示出甲醛的浓度值,当超过国家规定的标准时进行报警。CH20/S-10的相关参数如下:电化学工作原理;量程:0-10PPM;最大过载浓度:50PPM;最小分辨率:±0.05PPM;工作寿命:3年;灵敏度:1200±300nA/ppm,4~20MA甲醛模块;工作温度:-20~45,响应时间(T90):<50s。 Burr-Brown公司生产的RCV420精密I/U变换器能将4~20mA的环路电流变换成0~5V的电压输出。作为一种单片集成电路具有可靠的性能和很低的成本。除具有精密运放和电阻网络外,还集成有10V基准电压源。在不需要外调整的情况下,可以获得86dB的共模抑制比和40V的共模电压输入。在全量程范围内输入阻抗仅有1.5V的压降,对于环路电流具有很好的变换能力。其芯片引脚分布及内部结构图。 在使用中10、11和12脚相连,2、5和13脚相连接地,14和15脚相连接,作为0~5V 电压信号的输出端,当需要调整增益时14和15脚之间接入电位器来调整增益,但这样会减小共模抑制比,减少量是增益增加1%,共模抑制比将减少6dB,因此我们在使用时一般直接将14和15脚短接,7和8脚悬空,4和16脚分别接一个1μF的电容接地,IN+或IN-端接输入的电流信号,一般情况下,只使用一端,具体使用那端取决于输入信号的极性和所需输出电压的极性,我们在使用过程中,使用的是IN+端。 1.2 5G14433A/D转换器 5G14433A/D转换器是国产的广为流行的最典型的双积分3位半A/D转换器它具有抗干扰性能好,转换精度高(相当于11位二进制数),自动校零,自动极性输出,自动量程控制信号输出,动态字位扫描BCD码输出,单基准电压,外接元件少,价格低廉等特点。但其转换速度慢,约1~10次/秒在不要求高速转换的场合。5G14433芯片引脚参数及其与单片机的连接如下: VAG:被测电压VX和基准电压VR的接地端(模拟地)。 VR:外接输入基准电压(+2V或+200mv)

单片机技术总结

第一章单片机的内部结构 一.单片机的时序 1.时序的由来 单片机执行指令的过程就是顺序地从ROM(程序存储器)中取出指令一条一条的顺序执行,然后进行一系列的微操作控制,来完成各种指定的动作。它在协调内部的各种动作时必须要有一定的顺序,换句话说就是这一系列微操作控制信号在时间上要有一个严格的先后次序,这种次序就是单片机的时序。 2.时序的周期 计算机每访问一次存储器的时间,我们把它称为一个机器周期。它是一个时间基准。就象我们日常生活中使用的秒一样。计算机中一个机器周期包括12个振荡周期。振荡周期就是振荡源的周期,也就是我们使用的晶振的时间周期。一个12M的晶振它的时间周期是T=1/f,也就是1/12微秒。那么使用12M晶振的单片机它的一个机器周期就应该等于12*1/12微秒,也就是1uS 。 在89C51单片机中有些指令只要一个机器周期,而有些指令则需要两个或三个机器周期,另外还有两条指令需要4个机器周期。如何衡量指令执行时间的长短我们就要用到一个新的概念:指令周期—即执行一条指令所需的机器周期.INTEL公司规定了每一条指令执行的机器周期。 振荡周期:指振荡源的周期,若为内部产生方式时,为石英晶体的振荡周期。 时钟周期:(称S周期)为振荡周期的两倍,时钟周期=振荡周期P1十振荡周期P2。 机器周期:一个机器周期含6个时钟周期(S周期)。 指令周期:完成一条指令占用的全部时间。805l的指令周期含1—4个机器周期,其中多数为单周期指令,还有2周期和4周期指令。 若fosc=6MHz,则805l的: 振荡周期=1/6us;时钟周期=1/3us; 机器周期=2us;指令周期=2—8us。 二.单片机的时钟电路 单片机是在一定的时序控制下工作的,时钟是时序的基础。单片机本身就如同一个复杂的同步时序电路,为了保证同步工作方式的实现,电路就要在唯一的时钟信号控制下按时序进行工作。 1 内部时钟电路 在MCS-51单片机的内部有一个高增益的反相放大器,其输入端为引脚XTAL1(19脚),输出端为XTAL2(18脚),我们只要在外部接上两个电容和一个晶振,就能构成一个稳定的自激振荡器,看上面的图,晶振的大小与单片机的振荡频率有关,我们到串行接口时再详细讲解。电容的大小影响着振荡器振荡的稳定性和起振的快速性,通常选择10-30P的瓷片电容或校正电容;另外在设计电路时晶振和电容应尽可能的靠近芯片,以减少PCB板的分布电容保证振荡器工作的稳定性,提高系统的抗干扰能力。 2 外部时钟电路 除了内部时钟方式外,单片机还可以采用引入外部时钟的振荡方式,当我们的系统由多片单片机组成时,为了保证各单片机之间时钟信号的同步,就应当引入唯一的公用的外部脉冲信号作为各单片机的振荡脉冲,此时应将XTAL2悬空不用,外部脉冲信号由XTAL1引入。如下图所示。

基于51单片机控制的智能窗的设计

基于单片机控制的智能窗的设计 摘要 我们现在使用的窗户大部分采用人工关闭方式,不具有自动防盗、防雨、防煤气中毒等人性化的功能;平时我们外出时经常忘记关闭窗户,遇上下雨时,雨水会进入室内,对室内的电器、摆设等物品造成不必要的损害。晚上睡觉时我们通常把窗户关死,一旦燃气发生泄漏,由于室内不透气造成窒息中毒致残、致死的事件时有发生。为了防盗,我们一般在窗户外面安装防护栏,但如今很多城市为了美化市容通常不允许安装防盗窗。再者,现在使用的窗户大多数是单纯推拉式或平移式的,这给在楼层高的住户擦拭玻璃带来很大困难。本文借助单片机、电子电路及传感器的知识设计了可以实现清晨自动开窗、防雨、智能防盗和可燃性气体泄漏时报警并开窗,从而可解决现实生活中存在的很多问题。本智能窗的设计本着安全、方便、节能、人性化的原则进行,可使现代生活显著提高。 关键词:防风雨防盗 51单片机智能 目录 第1章总体方案的设计 (3) 1.1 本设计的主要任务和内容 (3) 1.2 控制系统架构图 (6) 第2章机械结构的设计 (4) 2.1 自动开关窗机械传动形式设计 (4) 2.1.1自动开关窗任务分析 (4) 2.1.2齿轮齿条参数选择 (4) 第3章自动控制系统主要硬件的设计 (5) 3.1 单片机选型 (5) 3.1.1单片机发展过程 (5) 3.1.2单片机发展趋势 (5) 3.1.3AT89S51单片机简介 (6) 3.2 数据检测传感器的选择 (6) 3.2.1数据检测传感模块组成 (6) 3.2.2传感器选型及电路 (10) 3.3 A/D转换电路的设计.................................................... 11

基于51单片机的空气智能加湿器设计毕业设计论文

三门峡职业技术学院 信息工程系 毕 业 设 计 论 文 毕业设计题目:基于51单片机的空气智能加湿器设计专业:计算机应用技术(嵌入式方向)

在日常生活中加湿器得到了广泛的应用,但是现有的加湿器都需要手工控制开启和关闭并且不具备对室内空气温湿度的监测,人们在使用过程中存在过度加湿和干烧的问题,不仅给室内空气舒适度造成负面影响并且还存在安全隐患。因此开发设计一种价格低廉、功耗低、具有自动控制功能的加湿器显得尤为必要。本设计采用智能控制,以AT89C51单片机为核心,外接辅助电路,通过实现加湿器的防干烧、声光报警、智能开启和关闭以及室内温湿度的显示功能基本实现加湿器的智能化。 关键词:单片机、智能、加湿器、相对湿度、传感器

摘要-------------------------------------------------------------- 1目录-------------------------------------------------------------- 2第一章任务来源意义及目的------------------------------------------- 3第二章设计方案---------------------------------------------------- 4 2.1 总体设计---------------------------------------------------- 4 2.2 实现方式---------------------------------------------------- 4 2.3 理论基础---------------------------------------------------- 5 2.3.1 单片机---------------------------------------------------- 5 2.3.2 DS18B20传感器--------------------------------------------- 5 2.3.3 1602LCD液晶显示屏----------------------------------------- 6第三章硬件设计---------------------------------------------------- 8 3.1 设计方案---------------------------------------------------- 8 3.2 电路图------------------------------------------------------ 8 3.3 信号分析---------------------------------------------------- 9 3.4 功能描述---------------------------------------------------- 9 3.5 复位电路---------------------------------------------------- 9 3.6液位定位及光电开关------------------------------------------ 10 3.7 1602显示屏------------------------------------------------- 10 3.8 DS18B20温度传感器------------------------------------------ 11 第四章软件设计--------------------------------------------------- 11 4.1整体设计及说明---------------------------------------------- 11 4.2 DS18B20流程设计-------------------------------------------- 13 4.3 1602字符型LCD流程设计------------------------------------- 15 第五章系统调试--------------------------------------------------- 17 第六章总结------------------------------------------------------- 18 参考文献----------------------------------------------------------- 19 致谢------------------------------------------------------------- 20 附录一 LCD控制及显示子程序--------------------------------------- 21

MCS-51单片机的指令时序

MCS-51单片机的指令时序 时序是用定时单位来描述的,MCS-51的时序单位有四个,它们分别是节拍、状态、机器周期和指令周期,接下来我们分别加以说明。 ·节拍与状态: 我们把振荡脉冲的周期定义为节拍(为方便描述,用P表示),振荡脉冲经过二分频后即得到整个单片机工作系统的时钟信号,把时钟信号的周期定义为状态(用S表示),这样一个状态就有两个节拍,前半周期相应的节拍我们定义为1(P1),后半周期对应的节拍定义为2(P2)。 ·机器周期: MCS-51有固定的机器周期,规定一个机器周期有6个状态,分别表示为S1-S6,而一个状态包含两个节拍,那么一个机器周期就有12个节拍,我们可以记着S1P1、S1P2……S6P1、S6P2,一个机器周期共包含12个振荡脉冲,即机器周期就是振荡脉冲的12分频,显然,如果使用6MHz的时钟频率,一个机器周期就是2us,而如使用12MHz的时钟频率,一个机器周期就是1us。 ·指令周期: 执行一条指令所需要的时间称为指令周期,MCS-51的指令有单字节、双字节和三字节的,所以它们的指令周期不尽相同,也就是说它们所需的机器周期不相同,可能包括一到四个不等的机器周期(这些内容,我们将在下面的章节中加以说明)。 ·MCS-51的指令时序: MCS-51指令系统中,按它们的长度可分为单字节指令、双字节指令和三字节指令。执行这些指令需要的时间是不同的,也就是它们所需的机器周期是不同的,有下面几种形式: ·单字节指令单机器周期 ·单字节指令双机器周期 ·双字节指令单机器周期

·三字节指令双机器周期 ·单字节指令四机器周期(如单字节的乘除法指令) 下图是MCS-51系列单片机的指令时序图: 上图是单周期和双周期取指及执行时序,图中的ALE脉冲是为了锁存地址的选通信号,显然, 每出现一次该信号单片机即进行一次读指令操作。从时序图中可看出,该信号是时钟频率6分 频后得到,在一个机器周期中,ALE信号两次有效,第一次在S1P2和S2P1期间,第二次在 S4P2和S5P1期间。 接下来我们分别对几个典型的指令时序加以说明。 ·单字节单周期指令: 单字节单周期指令只进行一次读指令操作,当第二个ALE信号有效时,PC并不加1,那么读出的还是原指令,属于一次无效的读操作。 ·双字节单周期指令: 这类指令两次的ALE信号都是有效的,只是第一个ALE信号有效时读的是操作码,第二个ALE信号有效时读的是操作数。

基于51单片机的室内空气质量检测系统设计毕业论文

基于单片机的气体质量检测系统的设计 摘要 本论文研究设计了一种用于公共场所及室内具有检测及超限报警功能的室内空气质量检测系统。其设计方案基于89C51单片机,选择瑞士蒙巴波公司的CH20/S-10甲醛传感器和MQ-5气体传感器。系统将传感器输出的4~20mA的标准信号通过以AD0832为核心的A/D转换电路调理后,经由单片机进行数据处理,最后由LCD显示甲醛浓度值。文中详细介绍了数据采集子系统、数据处理过程以及数据显示子系统和报警电路的设计方法和过程。系统对于采样地点超出规定的甲醛容许浓度和天然气规定浓度时采用三极管驱动的单音频报警电路提醒监测人员。同时,操作人员对于具体报警点的上限值可以通过单片机编程进行设置。 另外,该系统对浓度信号进行了信号补偿等处理,减少了测量误差,因此,具有较高的测量精度,而且结构简单,性能优良。本系统的量程为0-10ppm,精度为0.039ppm 。 关键词: 甲醛检测/天然气检测/AT89C52单片机

ABSTRACT This thesis design of a paper for public places and indoor testing and over-limit alarm functions with indoor air quality testing system. Its design is based on 89C51 single chip, with the choice of MQ-5 gas sensors and CH20/S-10 formaldehyde sensor from Switzerland mengbabo company. Sensor system will output 4 ~ 20mA standard signal through the core ADC0832 for A / D conversion circuit after conditioning, by the single-chip microcomputer for data processing, at last display the formaldehyde concentration on the LCD . The article detailed the data acquisition subsystem, data processing and data display and alarm system circuit design method and process. When the sampling sites when the formaldehyde and Natural gas concentration exceeded,To the single-transistor drive circuit audio alarm will sound the alarm,Testing staff to remind. At the same time,The concentration of formaldehyde, Can be set through the single-chip programming. In addition, the system signals a concentration compensation signal processing, a reduction of measurement error, therefore, have a high measurement accuracy, and simple structure, excellent performance. The range of the system for 0-10ppm, accuracy 0.039ppm. Keywords: Formaldehyde detection,Natural gas detection, AT89C52 single-chip

单片机串口时序time sequence

串行通信(Serial Communication) 方式0。串行口为同步移位寄存器的输入\输出方式,主要用于扩展并行输入或输出口。对51单片机,数据由RXD(P3.0)引脚输入或输出,同步移位脉冲由TXD(P3.1)引脚输出。发送和接收均为8位数据,低位在先,高位在后,波特率固定为f osc/12. 方式1。方式1是10位数据的异步通信口,其中,1位起始位,8位数据位,1位停止位。TXD(P3.1)为数据发送引脚,RXD(P3.0)为数据接收引脚。其传输波特率是可变的,对于51单片机,波特率由定时器1的溢出率决定。方式1的使用很普遍,需要完全掌握。 方式2,3。方式2,3为11位数据的异步通信口。TXD(P3.1)为数据发送引脚,RXD (P3.0)为数据接收引脚。这两种方式下起始位1位,数据9位(含一位附加的第9位,发送时为SCON的TB8,接收时为RB8),停止位1位,一帧数据为11位。方式2的波特率固定为晶振频率的1/64或1/32。方式3的波特率由定时器T1的溢出率决定。 方式2和方式3的差别仅在于波特率的选取方式不同,在两种方式下,接受到的停止位与SBUF、RB8及RI都无关。 串行口基本结构 SBUF相当于一个8位的寄存器。 SBUF共用一个地址99H,但是在物理上是两个独立的寄存器,由指令操作决定访问哪一个寄存器。接收器具有双缓冲结构,即在从接收寄存器中读出前一个已收到的字节之前,便能接收第二个字节。若果第二个字节已接收完毕,第一个字节还没有读出,则将丢失第一个字节。

串行口方式1的时序(Time Sequence) 串行口方式1传送一帧数据(A frame of data)的格式如下: 一帧数据供10位,1位起始位(0),8位数据位,最低位在前,最高位在后,1位停止位(1),帧与帧之间有空闲,也可以无空闲。 方式1数据输出时序图如下: 方式1数据输出时序图 当数据被写入SBUF寄存器后,单片机自动开始从起始位发送数据,发送到停止位的开始时,由内部硬件将TI置1,向CPU申请中断,接下来可在中断服务程序中作相应处理,也可以选择不进入中断。 方式1数据输入时序图 用软件置REN为1时,接收器以所选择波特率的16倍速率采样RXD引脚电平,检测到RXD引脚输入电平发生负跳变时,则说明起始位有效,将其移入输入移位寄存器,并开始接收这一帧信息的其余位。接收过程中,数据从输入移位寄存器右边移入,起始位移至输

51单片机CPU的内部结构

51单片机CPU的内部结构 在前面的课程中,我们已知道了单片机内部有一个8位的CPU,同时知道了CPU 内部包含了运算器,控制器及若干寄存器。在这节课,我们就与大家一起来讨论一下51单片机CPU的内部结构及工作原理。 从上图中我们可以看到,在虚线框内的就是CPU的内部结构了,8位的MCS-51单片机的CPU内部有数术逻辑单元ALU(Arithmetic Logic Unit)、累加器A (8位)、寄存器B(8位)、程序状态字PSW(8位)、程序计数器PC(有时也称为指令指针,即IP,16位)、地址寄存器AR(16位)、数据寄存器DR(8位)、指令寄存器IR(8位)、指令译码器ID、控制器等部件组成。 1、运算器(ALU)的主要功能 A)算术和逻辑运算,可对半字节(一个字节是8位,半个字节就是4位)和单字节数据进行操作。 B)加、减、乘、除、加1、减1、比较等算术运算。 C)与、或、异或、求补、循环等逻辑运算。 D)位处理功能(即布尔处理器)。 由于ALU内部没有寄存器,参加运算的操作数,必须放在累加器A中。累加器A 也用于存放运算结果。 例如:执行指令 ADD A,B 执行这条指令时,累加器A中的内容通过输入口In_1输入ALU,寄存器B通过内部数据总线经输入口In_2输入ALU,A+B的结果通过ALU的输出口Out、内部

数据总线,送回到累加器A。 2、程序计数器PC PC的作用是用来存放将要执行的指令地址,共16位,可对64K ROM直接寻址,PC低8位经P0口输出,高8位经P2口输出。也就是说,程序执行到什么地方,程序计数器PC就指到哪里,它始终是跟蹿着程序的执行。我们知道,用户程序是存放在内部的ROM中的,我们要执行程序就要从ROM中一个个字节的读出来,然后到CPU中去执行,那么ROM具体执行到哪一条呢?这就需要我们的程序计数器PC来指示。 程序计数器PC具有自动加1的功能,即从存储器中读出一个字节的指令码后,PC自动加1(指向下一个存储单元)。 3、指令寄存器IR 指令寄存器的作用就是用来存放即将执行的指令代码。 在这里我们先简单的了解下CPU执行指令的过程,首先由程序存储器(ROM)中读取指令代码送入到指令寄存器,经译码器译码后再由定时与控制电路发出相应的控制信号,从而完成指令的功能。关于指令在单片机内部的执行过程,我们在后面将会以另一节课来进行详细的讲解。 4、指令译码器ID 用于对送入指令寄存器中的指令进行译码,所谓译码就是把指令转变成执行此指令所需要的电信号。当指令送入译码器后,由译码器对该指令进行译码,根据译码器输出的信号,CPU控制电路定时地产生执行该指令所需的各种控制信号,使单片机正确的执行程序所需要的各种操作。 5、地址寄存器AR(16位) AR的作用是用来存放将要寻址的外部存储器单元的地址信息,指令码所在存储单元的地址编码,由程序计数器PC产生,而指令中操作数所在的存储单元地址码,由指令的操作数给定。从上图中我们可以看到,地址寄存器AR通过地址总线AB与外部存储器相连。 6、数据寄存器DR 用于存放写入外部存储器或I/O端口的数据信息。可见,数据寄存器对输出数据具有锁存功能。数据寄存器与外部数据总线DB直接相连。 7、程序状态字PSW 用于记录运算过程中的状态,如是否溢出、进位等。 例如,累加器A的内容83H,执行: ADD A,#8AH ;累加器A与立即数8AH相加,并把结果存放在A中。 指令后,将产生和的结果为[1]0DH,而累加器A只有8位,只能存放低8位,即0DH,元法存放结果中的最高位B8。为些,在CPU内设置一个进位标志位C,当执行加法运算出现进位时,进位标志位C为1。 8、时序部件 由时钟电路和脉冲分配器组成,用于产生微操作控制部件所需的定时脉冲信号在后面的课程中我们将会安排一节课来讲解这些专用的寄存器。

基于51单片机的智能家居控制系统设计

基于单片机的智能家居控制系统设计 摘要 智能家居是时代发展的产物,是住户想享受快速网上冲浪、便捷实时的通讯、安全防范、丰富娱乐生活、便捷的生活家居管理,优质物业管理等智能化住宅所特有的生活方式,使忙碌一天的人们真正体会到智慧家带来的生活乐趣。本设计以STC89C52RC单片机为核心设计数字时钟和智能窗帘:通过光敏电阻检测光线强弱,当光线强度达到一定的程度时,通过单片机控制电机将窗帘拉上,否则打开窗帘。另外用点阵显示时间和当前室内温度,由于下午十点后基本属于睡眠时间,故忽略光线强度,拉上窗帘并自动切换到手动模式,以节约电能,待第二天起床再将其切换至自动模式。由于一般电机无法自主精确定位,需要辅助器件构成一个闭环系统才能精确的控制窗帘的张合程度,故本设计采用步进电机控制,通过齿轮变速,精确控制窗帘的张合程度,避免窗帘由于过度的张合造成损害,同时由于减少了辅助器件,节省了能源。同时,本设计还选用DS12C887时钟芯片,该芯片内部自带锂电池,即使在断电的情况下仍然能继续工作。该芯片有内置晶振,能够提供准确的时间,正常工作状态下工作一个月误差为+ 1分钟。芯片内部带有闹钟功能,带有世纪寄存器,能够解决世纪问题,还有闰年补偿能多项功能。比只利用晶振驱动的电子时钟功能更强大,时间更准确。 关键词:单片机;智能窗帘;时钟芯片

Abstract Intelligent furniture is outcome of the developing time. It is a special lifestyle with which residents can enjoy fast online surfing, convenient communication, safety guard and which can enrich residents’ entertainment, make their furnishing management more convenient and which can optimize their property management. It can provide people who have been busy for a whole day with entertainment that intelligent ones bring to them. These are designs called digital clock and intelligent curtain that center on STC89C52RC MCU. It detects whether the light is hard or not through photosensitive electric resistance. When light is hard to some level, the curtain is closed under the control of the MCU on the generator, and is opened on the contrary. In addition, it shows time and the present indoor’s temperature with dot matrix. Light can be neglected after 10 o’clock pm when most people have fallen asleep. At this time, the curtain is closed and get to be under manual mode, so as to cut down electricity consumption, it was not turned to automatic mode until residents’ getting up in the morning. Commonly seen generators are not able to fix precisely, they can form a closed loop system to realize precise control on curtains only with the help of some assistant devices. Thus, this design precisely controls curtains under the control of steering engines and with gears to alter the speed. By that, curtains are protected from damages by over-operation. At the same time, less assistant devices are used and energy consumption is cut down. Meanwhile, the design selects DS12C887 chips which contain lithium cells themselves and which can continue operating even when it is out of electricity. Such chips contain some internally installed crystal that can provide precise time with only one minute’s error within one month when operating normally. Such chips also have alarm function and century register. Thus, they can solve century problem. This design is much stronger and preciser than any electric clocks using only crystal to operate. Keywords: MCU; intelligent curtain; clock chip

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