AT89S52单片机的最小应用系统

目录

​一.时钟电路设计

1.内部时钟方式

2.外部时钟方式

3.时钟信号的输出

二.机器周期,指令周期与指令时序

1.时钟周期

2.机器周期

3.指令周期

三.复位操作和复位电路

1.复位操作

2 复位电路设计

四.低功耗节电模式


AT89S52本身片内有8KB闪烁存储器,256B的RAM单元,4个I/0口,外接时钟电路和复位电路即构成了一个AT89S52单片机最小应用系统,如图所示:

该最小应用系统只能作为小型的数字量的测控单元


一.时钟电路设计

时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路有两种方式,一种是内部时钟方式,另一种是外部时钟方式。

1.内部时钟方式

AT89S52内部有一个用于构成振荡器的高增益反相放大器,输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,构成一个稳定的自激振荡器,如图是AT89S52内部时钟方式的电路。

C1和C2的典型值通常选择为30pF。电容大小会影响振荡器频率高低振荡器的稳定性和起振的快速性。晶振频率范围通常是1.2~12MHz串口通信时,为了得到准确的波特率,多采用11.0592M晶体。晶体频率越高,单片机速度就越快
常选6MHz或12MHz的石英晶体。随着集成电路制造工艺技术的发展单片机的时钟频率也在逐步提高,已达33MHz。

2.外部时钟方式

用现成的外部振荡器产生脉冲信号,常用于多片AT89S52同时工作,以便于多片AT89S52单片机之间的同步,一般为低于12MHz的方波。外部时钟源直接接到XTAL1端,XTAL2端悬空,见图:

3.时钟信号的输出

当使用片内振荡器,XTAL1、XTAL2引脚还能为应用系统中的其他芯片提供时钟,但需增加驱动能力。引出的方式有两种,如图所示。

二.机器周期,指令周期与指令时序

各种指令时序与时钟周期相关。

1.时钟周期

时钟控制信号的基本时间单位。若晶振频率为f_{osc},则时钟周期T_{osc}=1/f_{osc}f_{osc}=6MHZ,T_{osc}=166.7ns

2.机器周期

CPU完成一个基本操作所需时间为机器周期。执行一条指令分为几个机器周期。每个机器周期完成一个基本操作,如取指令、读或写数据等。每12个时钟周期为1个机器周期(机器周期=12*T_{osc}

1个机器周期包括12个时钟周期,分6个状态: S1~S6。每个状态又分两拍: P1和P2。因此,一个机器周期中的12个时钟周期表示为S1P1、S1P2、S2P1、S2P2、··、S6P2,如图所示。

3.指令周期

执行一条指令所需的时间。简单的单字节指令,取出指令立即执行,只需一个机器周期的时间。而有些复杂的指令,如转移、乘、除指令则需两个或多个机器周期
从指令执行时间看:
单字节和双字节指令一般为单机器周期和双机器周期;

三字节指令都是双机器周期;

乘、除指令占用4个机器周期;

三.复位操作和复位电路

单片机的初始化操作,给复位脚RST加上大于2个机器周期(即24个时钟振荡周期)的高电平就使AT89S52复位。

1.复位操作

复位时,PC初始化为0000H,程序从0000H单元开始执行。除系统的正常初始化外,当程序出错(如程序跑飞) 或操作错误使系统处于死锁状态时,需按复位键使RST脚为高电平,使AT89S52摆脱“跑飞”或“死锁”状态而重新启动程序。

复位操作还对其他一些寄存器有影响,这些寄存器复位时的状态如图:


由表可看出,复位时,SP=07H ,而P0~P3引脚均为高电平
在某些控制应用中,要注意考虑PO~P3引脚的高电平对接在这些引脚上的外部电路的影响
例如,当P1口某个引脚外接一个继电器绕组,当复位时,该引脚为高电平继电器绕组就会有电流通过,就会吸合继电器开关,使开关接通,可能会引起意想不到的后果。

2 复位电路设计

AT89S52单片机的复位是由外部的复位电路实现的。复位电路应兼有上电复位(一开机就复位  )和人工按键复位两种功能。典型的复位电路如图:

注:信号一定要>2个机器周期,要想做到这一点,就要使复位的时间长一点,上电复位(电容的充放电速率缓慢),人工按键复位(按下按键的时候停留一会儿,保证>2个机器周期)



当时钟频率选用6MHz时,电容C的参考取值为22uF,两个电阻Rs和Rk的参考阻值分别为220\Omega和1k\Omega

四.低功耗节电模式

两种低功耗节电工作模式:空闲模式(idle mode)和掉电保持模式(power down mode)

空闲模式:表示使CPU停止工作,单片机的中断,串行口定时/计时器继续工作。

掉电模式:使外部时钟停止工作,没有外部时钟信号,内部的部件都不会进行工作。


掉电保持模式下,Vcc可由后备电源供电。图中为两种节电模式的内部控制电路。


两种节电模式可通过PCON的位IDL和位PD的设置来实现。格式如图所示。

PCON寄存器各位定义:

SMOD:串行通信波特率选择。

一:保留位。

GF1、GF0:通用标志位,两个标志位用户使用。

PD:掉电保持模式控制位,PD=1,则进入掉电保持模式

IDL:空闲模式控制位,若IDL=1,则进入空闲运行模式

恢复方式:

空闲模式恢复:1.中断信号使IDL=0     2.硬件复位使IDL=0

掉电模式恢复:1.外部中断信号使PD=0    2.硬件复位使PD=0

注:如果是硬件复位,那么之前运行的程序,需要重新开始,如果是中断信号,那么只需要从中断程序继续开始

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/179045.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【AI】行业消息精选和分析(11月22日)

今日动态 👓 Video-LLaVA:视觉语言模型革新: - 图像和视频信息转换为文字格式。 - 多模态理解能力,适用于自动问答系统等。 📈 百度文心一言用户数达7000万: 🔊 RealtimeTTS:实时文本…

乐划锁屏插画大赏热度持续,进一步促进价值内容的创造与传播

锁屏,原本只是为了防止手机在口袋里“误触”而打造的功能,现如今逐渐成为文化传播领域的热门入口。乐划锁屏不断丰富锁屏内容和场景玩法,通过打造“乐划锁屏插画大赏”系列活动为广大内容创作者提供了更多展示自我的机会,丰富平台内容。 从2020年到2023年,乐划锁屏插画大赏已连…

什么是Zero-shot(零次学习)

1 Zero-shot介绍 Zero-shot学习(ZSL)是机器学习领域的一种先进方法,它旨在使模型能够识别、分类或理解在训练过程中未见过的类别或概念。这种学习方法对于解决现实世界中常见的长尾分布问题至关重要,即对于一些罕见或未知类别的样…

万界星空科技QMS质量管理系统介绍

QMS(Quality Management System)质量管理系统是五大基础系统之一,在工业企业中被广泛的应用,在质量策划、生产过程质量监督、体系审核和文档管理等业务上发挥着不可替代的作用。 一般制造业工厂现状:质量成本高&#x…

SQLite3

数据库简介 常用的数据库 大型数据库:Oracle 中型数据库:Server 是微软开发的数据库产品,主要支持 windows 平台。 小型数据库:mySQL 是一个小型关系型数据库管理系统,开放源码 。(嵌入式不需要存储太多数据。) SQL…

[Unity+OpenAI TTS] 集成openAI官方提供的语音合成服务,构建海王暖男数字人

1.简述 最近openAI官方发布了很多新功能,其中就包括了最新发布的TTS语音合成服务的api接口。说到这个语音合成接口,大家可能会比较陌生,但是说到chatgpt官方应用上的聊天机器人,那个台湾腔的海王暖男的声音,可能就有印…

C语言——结构体的应用

归纳编程学习的感悟, 记录奋斗路上的点滴, 希望能帮到一样刻苦的你! 如有不足欢迎指正! 共同学习交流! 🌎欢迎各位→点赞 👍 收藏⭐ 留言​📝 路还在继续,梦还在期…

【C++入门到精通】 Lambda表达式 C++11 [ C++入门 ]

阅读导航 引言一、C98中的一个例子二、Lambda表达式1. Lambda表达式语法(1)Lambda表达式各部分说明(2)捕获列表说明 三、Lambda表达式的底层原理温馨提示 引言 当今软件开发行业的快速发展和日益复杂的需求,要求程序员…

No matching variant of com.android.tools.build:gradle:7.4.2 was found.

一、报错信息 创建个新项目,运行直接报错,信息如下: No matching variant of com.android.tools.build:gradle:7.4.2 was found. The consumer was configured to find a runtime of a library compatible with Java 8, packaged as a jar,…

高防服务器的工作原理

在当今互联网时代,网络安全问题日益突出,各种网络攻击层出不穷。为了保护企业的网络安全,高防服务器应运而生。那么,你是否了解高防服务器的工作原理呢?下面就让我们一起来探索一下。 高防服务器是一种能够有效抵御各种…

DRF-项目-(1):构建纯净版的drf项目,不再使用django的后台管理,django的认证,django的session等功能,作为一个纯接口项目

项目的目录结构: -HeartFailure |-- apps |--user |--HeartFailure |-- static |--manage.py 一、django项目相关的 1、命令行中创建django项目 #1、切换到指定的虚拟环境中 workon my_drf#2、该虚拟环境已经安装好django和rest_framework了 django-admin startp…

Matlab进阶绘图第33期—双曲面图

在《Matlab论文插图绘制模板第56期—曲面图(Surf)》中,我分享过曲面图的绘制模板。 然而,有的时候,需要在一张图上绘制两个及以上的曲面图,且每个曲面图使用不同的配色方案。 在Matlab中,一张…

const修饰

const 起保护作用,禁止修改。 此时a变为常量,常量不可修改。 const放在*p的左端限制*p,即不能通过修改指针变量(*p)的值来修改p指向空间的内容,但p不受限制。 const放在*的右端限制p,即不能修…

【10套模拟】【8、9】

关键字: 建立有序单链表、多维数组是特殊线性结构、直接选择排序、哈夫曼树高度及wpl、中序最后叶子先序最后也是、堆是完全二叉树、分块查找 统计二叉树结点数、统计二叉树值和、奇偶数划分、判断链表是否递增

RPG项目_UI登录

首先创建一个项目 将资源包导进Resources文件夹 创建一个Scripts脚本文件夹 然后再对Scripts脚本文件夹分门别类 导入UI资源包 创建一个Image 按住Alt 选择右下角 image就会覆盖整个面板 修改image名字为BG 将image图片放置背景栏 再创建一个image 改名为MainMenu 修改MainMenu…

josef约瑟 电压继电器DJ-132 100~200V柜内板前接线,带附件

DJ-100系列电压继电器 DJ-111电压继电器; DJ-112电压继电器; DJ-121电压继电器; DJ-122电压继电器; DJ-131电压继电器; DJ-132电压继电器; DJ-131/60C电压继电器; DJ-131/60CN电压继电器…

【JavaEE初阶】认识线程、创建线程

1. 认识线程(Thread) 1.1 概念 1) 线程是什么 一个线程就是一个 "执行流". 每个线程之间都可以按照顺序执行自己的代码. 多个线程之间 "同时" 执行着多份代码. 举例: 还是回到我们之前的银⾏的例⼦中。之前我们主要描…

【libGDX】使用Mesh绘制矩形

1 前言 使用Mesh绘制三角形 中介绍了绘制三角形的方法,本文将介绍绘制正方形的方法。 libGDX 以点、线段、三角形为图元,没有提供绘制矩形内部的接口。要绘制矩形内部,必须通过三角形拼接而成,如下图,是通过GL_TRIANGL…

srs的webrtc信令分析

关于webrtc的流信令只有四个 /rtc/v1/publish/,这是推流接口,是推流客户端跟SRS交换SDP的接口 /rtc/v1/play/,这是拉流接口,是拉流客户端跟SRS交换SDP的接口 /rtc/v1/whip/,这也是推流接口,作用是也是交换…

Qt全球峰会2023中国站 参会概要

Qt全球峰会2023中国站 参会概要 前言峰会议程签到 & Demo 演示开场致辞Qt Group 产品总监演讲(产品开发的趋势-开放的软件、工具和框架)产品战略QtQuick or QtWidgets(c or qml)Qt如何定义AI个人看法 Qt 在券商数字化转型和信…