单片机最小系统原理程序、组成、功能、作用等相关知识详细介绍

下面贤集网小编为大家详细介绍单片机最小系统原理程序、组成、功能、作用等相关知识。单片机最小系统各电路作用以上就是关于单片机最小系统原理程序、组成、功能的介绍,单片机的最小系统作用就是可以稳定运行你开发的软件。

单片机最小系统简介

MCU最小系统,又称最小应用系统,是指以MCU为核心部件,用最少的元器件构成的,能够正常工作、具有特定功能的MCU系统,是MCU产品开发的核心电路。

单片机最小系统的组成:

(1)复位电路:t=RC1(t≥10ms);

(2)时钟电路:C2=C3=(30±10)pF(通常取20~30pF);

(3)存储器访问路径控制:当EA/VPP=+5V时,先从内部向外部访问存储器。

另外,单片机的ISP下载口一般也包含在单片机最小系统中。

本制作采用单片机C语言编程,主要完成单灯闪烁的任务,通过AT89S51单片机控制一颗LED的亮灭来实现闪烁现象。同时应具有上电复位和手动复位功能,利用单片机上的程序存储器存放用户程序。

单片机最小系统原理图如下:

工作准则

1.硬件电路分析

对于51系列单片机来说,单片机要正常工作必须具备五个基本电路,又称五个工作状态:1.电源电路,2.时钟电路,3.复位电路,4.程序存储器选择电路,5.外围电路。为了方便程序下载,还增加了ISP下载电路。因此单片机的最小系统一般应包括单片机、晶振电路、复位电路、外围电路、ISP下载电路等,如下图所示:

单片机的主要控制功能是通过单片机的I/O口在不同时序输出不同的高、低电平来控制外部电路实现特定的功能。

I/O口是IN/OUT的缩写,即输入/输出。AT89S51有四个8位并行I/O口:P0、P1、P2、P3,共32个引脚。这四个端口的电路结构不完全相同,因此用途也不同。

外围电路的设计主要根据项目所要实现的功能来进行,本项目所要实现的功能是利用单片机来控制LED的闪烁。

现在您只需通过指令控制单片机第一个引脚输出高电平,即可控制LED不亮;或者您也可以通过指令控制单片机第一个引脚输出低电平,即可控制LED亮。

单片机最小系统中各电路的功能

电源电路:51单片机作为一个电子设备,肯定是需要电源的,它一般采用5V电源,我们可以从我们熟悉的USB接口上获取5V电源。图中每一个VCC符号都接5V电源正极;而所有的GND符号都连在一起,接电源负极。之所以图中没有连在一起,而是采用了多个VCC和GND符号,是为了让电路图看起来更加清晰简洁(VCC=Volt Current Condenser,表示电源电压;GND=Ground,意思为接地,可以简单理解为接电源负极,而我们以GND作为参考电压,GND的电压值恒为0V)。

特别注意不要给单片机接入过高的电压或者将电源正负极接反,这样可能会烧毁单片机,甚至引起爆炸。如果单片机插在芯片插座上,由于VCC和GND是对称位置,插反了就会导致电源接反,一定要避免这种情况。

这里还要补充一点的是,如果需要了解某个芯片所使用的电源电压,一般可以查看芯片官方的手册,后面会介绍。

时钟电路:连接在引脚XTAL1、XTAL2与GND之间的电路就是时钟电路(XTAL=External Crystal Oscillator,表示外接晶振)。上面说的电源好理解,但是时钟电路是什么呢?它有什么用呢?时钟电路就像人的心脏,无时无刻不在跳动,对单片机来说至关重要。就像心脏源源不断地输送血液和氧气到我们的身体,让身体各个器官正常工作一样,时钟电路是单片机内部各个电路正常工作的驱动力。

时钟电路由晶振和电容组成。晶振是用石英做成的电子元件,通电后其表面会产生特定频率的振荡,最后通过电路输出一个频率非常稳定的时钟信号,驱动单片机工作。我们人体的心脏每分钟跳动几十到几百次,这个速度对于单片机来说太慢了,图中晶振频率为12MHz(1MHz=1,000,000Hz),正常工作时,每秒振荡12,000,000次!其实时钟电路的晶振不一定非要12M,也可以是其它的,但要注意的是STC89C51单片机最高工作频率不能超过80M(这个在芯片手册上也可以查到),其实我们用的比较多的是11.0592M晶振,为什么会出现这么奇怪的频率呢?相信后面讲到串口的时候读者就明白了。

时钟电路还用到了C2、C3两个电容,如果对电容不太了解,可以找一下常见电子元器件的资料,这里就不介绍了。这两个电容一般都是陶瓷电容,容量一般为30pF。

对了,如果自己设计时钟电路的话,晶振与单片机之间的连线不宜太长,否则电路可能无法正常工作(起不到振荡)。

时钟振荡一次的时间叫做一个时钟周期,对于我们使用的51单片机来说,单片机每12个时钟周期做一次运算,叫做一个机器周期(STC也推出了1T单片机,每1个时钟周期做一次运算)。如果是12M晶振,时钟周期就是1/12us,机器周期就是1us。

大家应该还记得前面说的巨型计算机ENIAC吧,ENIAC每秒可以进行5000次加法运算,这在当时已经是相当高的水平了。但是跟我们的51单片机比起来,真的是小巫见大巫了。51单片机一个机器周期就可以进行一次加法运算(即汇编指令ADD),加上12M晶振,每秒可以进行高达一百万次加法运算,是ENIAC的200倍(不考虑数据在寄存器和内存之间的移动)。看到这里,是不是暗自庆幸自己可以用上这么高科技的东西了呢?^_^

复位电路:图中与RST引脚相连的部分电路为复位电路,由电阻、电容等组成。复位电路的作用是在电源刚接通时给单片机发出一个信号(对51单片机来说至少是连续两个机器周期的高电平),告诉单片机现在可以开始工作了。然后单片机从初始状态开始,孜孜不倦地执行特定的程序,直到断电或出现特殊情况导致程序终止。一般情况下,单片机正常工作时不应该终止程序执行。这个问题以后讲单片机程序的特点时再讲。

复位电路的原理就是在通电时通过电阻给电容充电,使得接在RST引脚上的电容电压由5V变为0V,即高电平变为低电平。电阻、电容的取值可以参照图中给出的参考值,如果对模拟电路有一定的了解,也可以自己计算确定值。

另外,图中的EA/VPP引脚用于接入内部或者外部程序存储器选择信号,提供编程电压,一般不怎么用,直接接VCC就可以了。

我在实际做实验的时候发现,单片机一般情况下没有复位电路和晶振上的两个电容也是可以工作的,但为了安全起见,有条件的话还是要接上这些,需要严谨的科学态度。

单片机最小系统编程

根据上面设计的硬件电路,设计源程序如下:

#include<reg52.h>//52系列MCU头文件

sbit LED1=P1^0; //声明单片机P1口第一个引脚

void delay unsigned char k //延迟子函数

无符号字符 i,j;

对于(i = 0;i <k;i ++)

对于(j = 0; j < 200; j ++);

Main() //主函数

while(1) // 实现永久循环

LED1=0; //点亮LED1

延迟(200);//延迟

LED1=1; //关闭LED1

延迟(200);//延迟

以上就是对单片机最小系统的原理、程序、组成、功能的介绍,单片机最小系统是为了稳定运行你开发的软件,单片机最小系统就是指单片机中运行程序所需要的最小配置,如果你需要用到IO口驱动LED,写好程序后直接运行就可以了。

注:文中图片均转载自网络,如有侵权,删除!

单片机

覆盆子:一种具有多种药物价值的水果,你了解多少?

2024-5-29 1:03:42

单片机

树莓:春夏季的美味水果,富含多种营养,还有药用价值

2024-5-29 2:02:37

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索