单片机最小系统

合集下载

单片机最小系统的概念

单片机最小系统的概念

1.单片机最小系统的概念:能使单片机正常工作的最小硬件单元电路,就叫单片机最小系统。

2.单片机最小系统的组成:(1)复位电路:t=RC1(t≥10ms);(2)时钟电路:C2=C3=(30±10)pF(一般是20~30pF);(3)存储器访问路经控制:EA/VPP=+5V时,先内后外。

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

3.51系列单片机的最小系统电路的原理图:这学期开了一门新的课程,单片机。

一门实用性很强的课程!而我们所学习的就是以Atemel 公司出的8051为基础的结构及编程。

在接触过程中,我们学到了8051的最小系统,通过该最小系统,我们可以用keil软件进行编程从而实现对一些外设的控制!比如一些简单的实验:闪烁灯、模拟开关灯等等!所以制作一个最小系统就显得很重要。

下面就介绍一下我所知道的一些简单的电路图:1.电源电路:我们知道单片机正常工作所需要的电压是+5V的电压,而我们不能直接得到,所以只能进行转换,用7805将+9V的电压转换成+5V的电压,焊接电路的时候注意C1,C2为极性电容,所以注意正负极。

还有那个+9V的电源,本来是很方便的,往电路上焊一个接口,直接插上电源就OK了。

但是考虑到经济问题,我给大家买的不是那种。

用的时候把线前面的接头剪了,里面应该有4条线,2根是+9V的,另两根是+24V的,我们用+9V的线就行了!电源电路图如下:2.单片机焊接电路:这个电路较为简单,而且用得是上电复位电路,所用到的元器件也很少,但是要特别注意单片机的接口,尤其是I/O接口,因为我们要用它们输出或者是进行数据传输,所以最好是能多有几个接口,所以用到双排插针或者是单排插针,用排线连接它们和外设。

3.串口焊接,也就是下载线!我们通过Keil软件编译一些程序,通过单片机实现一些功能,但是我们必须通过下载线将程序下载到单片机内部,也可以用烧写器,但是成本太高,而且利用率太低,所以我们选用下载线!本来是打算焊USB接口的,但是感觉难度很大,所以感觉还是用这个串口电路比较好,成功率较高!这个电路主要用到的就是74373锁存器。

什么是单片机最小系统_单片机的最小系统简述

什么是单片机最小系统_单片机的最小系统简述

什么是单片机最小系统_单片机的最小系统简述单片机简介单片机是一种集成电路芯片。

它采用超大规模技术将具有数据处理能力的微处理器(CPU)、存储器(含程序存储器ROM和数据存储器RAM)、输入、输出接口电路(I/O接口)集成在同一块芯片上,构成一个即小巧又很完善的计算机硬件系统,在单片机程序的控制下能准确、迅速、高效地完成程序设计者事先规定的任务。

所以说,一片单片机芯片就具有了组成计算机的全部功能。

由此来看,单片机有着一般微处理器(CPU)芯片所不具备的功能,它可单独地完成现代工业控制所要求的智能化控制功能,这是单片机最大的特征。

然而单片机又不同于单板机(一种将微处理器芯片、存储器芯片、输入输出接口芯片安装在同一块印制电路板上的微型计算机),单片机芯片在没有开发前,它只是具备功能极强的超大规模集成电路,如果对它进行应用开发,它便是一个小型的微型计算机控制系统,但它与单板机或个人电脑(PC机)有着本质的区别。

单片机的应用属于芯片级应用,需要用户(单片机学习者与使用者)了解单片机芯片的结构和指令系统以及其它集成电路应用技术和系统设计所需要的理论和技术,用这样特定的芯片设计应用程序,从而使该芯片具备特定的功能。

不同的单片机有着不同的硬件特征和软件特征,即它们的技术特征均不尽相同,硬件特征取决于单片机芯片的内部结构,用户要使用某种单片机,必须了解该型产品是否满足需要的功能和应用系统所要求的特性指标。

这里的技术特征包括功能特性、控制特性和电气特性等等,这些信息需要从生产厂商的技术手册中得到。

软件特征是指指令系统特性和开发支持环境,指令特性即我们熟悉的单片机的寻址方式,数据处理和逻辑处理方式,输入输出特性及对电源的要求等等。

开发支持的环境包括指令的兼容及可移植性,支持软件(包含可支持开发应用程序的软件资源)及硬件资源。

要利用某型号单片机开发自己的应用系统,掌握其结构特征和技术特征是必须的。

单片机控制系统能够取代以前利用复杂电子线路或数字电路构成的控制系统,可以以软件控制来实现,并能够实现智能化,现在单片机控制范畴无所不在,例如通信产品、家用电。

单片机最小系统

单片机最小系统
千里之行始于足 下, 百丈高台起于垒 土。
什么是最小系统 什么是最小系统
单片机最小系统,或者称为最小应用系统,是 指用最少的元件组成的单片机可以工作的系 统.
最小系统
单片机
晶振电路
复位电路
电源
晶振电路
• 单片机系统正常工作的保证,如果振荡器 不起振,系统将会不能工作;假如振荡器 运行不规律,系统执行程序的时候就会出 现时间上的误差,这在通信中会体现的很 明显:电路将无法通信。他是由一个晶振 和两个瓷片电容组成的,x1和x2分别接单 片机的x1和x2,晶振和瓷片电容是没有正 负的,注意两个瓷片电容相连的那端一定 要接地。
最小系统的应用
有了最小系统后,就能够自己做东西了, 可以利用P0,P1,P2,P3.等管脚对外围模块 进行控制,例如,液晶,数码管,键盘, 点击等等。
ห้องสมุดไป่ตู้
晶振
• 产生原始的时钟频率,放大或缩小后成为 总线频率。 • 机电器件,加电产生振动,加力产生电流。 • 性能稳定,热膨胀系数较小。
复位电路
• 给单片机一个复位信号(一个一定时间的 低电平)使程序从头开始执行;一般有两 种复位方式:上电复位,在系统一上电时 利用电容两端电压不能突变的原理给系统 一个短时的低电平;手动复位,通过按钮 接通低电平给系统复位,

单片机最小系统

单片机最小系统

单片机最小系统
单片机最小系统包含两部分:一是复位电路;二是晶振电路。

一、复位电路
复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。

为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分-合过程中引起的抖动而影响复位。

图1所示的RC复位电路可以实现上述基本功能,图3为其输入-输出特性。

但解决不了电源毛刺(A 点)和电源缓慢下降(电池电压不足)等问题而且调整 RC 常数改变延时会令驱动能力变差。

左边的电路为高电平复位有效右边为低电平 Sm为手动复位开关 Ch可避免高频谐波对电路的干扰。

二、晶振电路
单片机需要一定的运行速度,晶振电路就是提供单片机振荡频率从而来控制单片机的运行速度。

其电路图如图所示。

单片机最小系统

单片机最小系统

电路 244实现了输入数据的缓冲,273实现了输出数据的锁存。P2.0和WR接或门 后控制273输出,P2.0和RD接或门后控制244输入。 74LS244:8缓冲驱动器(三态输出),低电平有效的使能端,当二者之一为高电 平时,输出为三态。 74LS273:8D锁存器,为低电平有效的清除端。当为0时,输出全为0且与其它 输入端无关;CP端是时钟信号,当CP由低电平向高电平跳变时刻,D端输入数 据传送到Q输出端。
单片机I/O接口扩展
I/O扩展接口的目的 扩展接口的目的 • 单片机与外设的速度匹配。 单片机与外设的速度匹配。 • 输出数据锁存(由于数据在数据总线上保留的时 输出数据锁存( 间很短)。 间很短)。 • 输入数据三态缓冲(避免占用总线)。 输入数据三态缓冲(避免占用总线)。 I/O与片外 与片外RAM统一编址 与片外 统一编址 • 51单片机扩展I/O的时候,扩展的I/O口采用与片 外数据存储器统一编址。因此,扩展I/O的电路与 扩展存储器的电路与差别不大。而且对片外I/O口 的输入/输出指令就是访问片外RAM的指令。
片选端CE直接接地,也可以与P2口地址线的某位以线选法相连,也可以译码输 出
MCS-51单片机对外部存储器的扩展应考虑的问题: 单片机对外部存储器的扩展应考虑的问题: 单片机对外部存储器的扩展应考虑的问题 (1)选择合适类型的存储器芯片 只读存储器用于固化程序和常数。可分为掩膜ROM、可编程PROM、紫外线 可擦除EPROM和电可擦除E2PROM几种。若所设计的系统是小批量生产或开发 产品,则建议使用EPROM和E2PROM;若为成熟的大批量产品,则应采用 PROM或掩膜ROM 。 随机存取存储器常用来存取实时数据、变量和运算结果。可分为静态RAM (SRAM)和动态RAM(DRAM)两类。 此外,还可以选择OTP ROM、Flash存储器、FRAM、NVSRAM、用于多处 理机系统的DSRAM(双端口RAM)等。 (2)选择合适的存储容量 在MCS-51应用系统所需存储容量不变的前提下,若所选存储器本身存储容量 越大,则所用芯片数量就越少,所需的地址译码电路就越简单。 (3)合理分配存储器地址空间的分配 存储器的地址空间的分配必须满足存储器本身的存储容量,否则会造成存储 器硬件资源的浪费。 (4)合理选择地址译码方式 可根据实际应用系统的具体情况选择线选法、全地址译码法、部分地址译码 法等地址译码方式机有128或256字节的内部数据存储器,但是在实际 应用中这些数据存储器经常是不够,因此要扩展外部的数据存储器,扩展的最 大容量可以达到64K字节。在单片机应用系统中经常选用静态随机存储器 SRAM,也可以选用EEPROM或者FLASH存储器。常用的SRAM有:6116 (2K)、6264(8K)、62256(32K)等。 引脚功能如下: I/O0-I/O7: 数据线; A0-Ai(I=1-14): 地址线; /OE: 输出允许; /CE: 片选端; /WE: 写允许; CS: 6264第二片选端高电平有效; VCC: 电源; GND: 接地线; NC: 未连接。

单片机最小系统定义及其组成部分

单片机最小系统定义及其组成部分

单片机最小系统定义及其组成部分单片机最小系统是指由单片机、外部晶体振荡器、复位电路和供电系统组成的一个基本的硬件电路。

它是单片机正常工作所必需的最基本的硬件环境,也是单片机应用开发的起点。

本文将对单片机最小系统的定义及其组成部分进行详细介绍。

一、单片机最小系统的定义单片机最小系统是指由单片机芯片、与之配套的外围器件及电路组成的一个基本硬件电路系统。

它是单片机正常工作所必需的最基本硬件环境。

单片机最小系统的设计合理与否,直接关系到单片机的正常工作以及应用的可靠性。

二、单片机最小系统的组成部分1.单片机芯片单片机芯片是单片机最基本的核心部件,其内部集成了中央处理器(CPU)、存储器(RAM和ROM)、输入输出口(IO口)、定时器/计数器、串行通信接口等功能模块。

根据具体的应用需求选择合适的单片机型号。

2.外部晶体振荡器外部晶体振荡器是单片机工作的时钟源,负责提供稳定的时钟信号,使单片机按照特定的频率工作。

一般情况下,选择常用的晶体振荡器频率,如11.0592MHz、12MHz等。

3.复位电路复位电路是为了保证单片机的正常启动而设计的。

当单片机上电或外部复位信号到来时,复位电路能够将单片机复位至初始状态。

复位电路通常由电容、电阻和稳压芯片等元件组成,能够提供稳定的复位脉冲。

4.供电系统供电系统是保证单片机供电的基本电路。

单片机通常需要提供3.3V 或5V的直流电源,供电系统需要具备稳压、滤波和过流保护等功能。

供电系统可以采用降压芯片、稳压模块或者电源管理芯片等进行设计搭建。

除了以上四个基本组成部分外,根据实际需求,单片机最小系统还可以包括外设电路、通信电路、显示电路等其他功能电路。

这些电路可根据具体需求进行选择和扩展,以满足应用的多样化需求。

总结单片机最小系统是单片机正常工作的基础,也是单片机应用开发的起点。

它由单片机芯片、外部晶体振荡器、复位电路和供电系统组成。

单片机最小系统的设计需要合理选择电路元件,确保单片机的正常工作和应用的可靠性。

单片机最小系统电路

单片机最小系统电路

未来展望与挑战
01
人工智能应用
随着人工智能技术的不断发展,未来单片机最小系统电路将更多地应用
于人工智能领域。通过集成神经网络算法和深度学习技术,可以实现更
加智能化的控制和应用。
02
安全性挑战
随着单片机最小系统电路应用的不断扩大,安全性问题也日益突出。未
来需要加强对单片机最小系统电路的安全防护和加密技术研究,确保系
分析最小系统电路在 单片机应用中的重要 性。
最小系统电路概述
最小系统电路的定义
是指能够使单片机正常工作的最基本 的电路,包括电源电路、时钟电路和 复位电路。
最小系统电路的作用
为单片机提供稳定的工作电压、准确 的时钟信号和可靠的复位信号,确保 单片机的正常运行。
02 单片机最小系统电路组成
电源电路
可靠性优化
提高抗干扰能力
通过增加滤波电容、采用差分信号传输等方式,提高系统的抗干 扰能力。
加强ESD保护
在关键信号线上增加ESD保护器件,提高系统的静电放电防护能 力。
优化布局布线
合理规划PCB布局布线,减小信号传输延迟和串扰,提高系统稳 定性。
06 单片机最小系统电路应用 与展望
应用领域介绍
设计调试接口电路,包括接口芯 片或模块与单片机的连接和参数 配置。
通过调试工具与调试接口连接, 实现对单片机的在线编程和调试 功能。
04 单片机最小系统电路测试 与验证
测试方案制定
确定测试目标
明确要测试的单片机型号、功能及性能指标,以及最小系统电路的 基本构成和预期功能。
设计测试用例
根据测试目标,设计针对不同功能模块和性能指标的测试用例,包 括正常情况下的操作测试和异常情况下的容错测试。

单片机最小系统

单片机最小系统

单片机最小系统STC89C52单片机简介概述STC89C5是51系列单片机的一个型号,它是STCME公司生产的。

STC89C5是一个低电压,高性能CMOS 位单片机,片内含8k bytes的可反复擦写的Flash 只读程序存储器和256 bytes的随机存取数据存储器(RAM,器件采用STCMEL 公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的STC89C52单片机可为您提供许多较复杂系统控制应用场合。

STC89C52有40个引脚,32个外部双向输入/输出(I/O )端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,STC89C52 可以按照常规方法进行编程,但不可以在线编程(S系列的才支持在线编程)。

其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。

STC89C52有PDIP、PQFP/TQF及PLCC 等三种封装形式,以适应不同产品的需求。

主要功能特性兼容MCS5指令系统8k可反复擦写(>1000次)Flash ROM32 个双向I/O 口? 256x8bit 内部RAM3个16位可编程定时/计数器中断?时钟频率0-24MHZ2个串行中断可编程UART串行通道2个外部中断源共8个中断源2个读写中断口线3级加密位低功耗空闲和掉电模式软件设置睡眠和唤醒功能8051单片机的引脚功能MCS-51系列单片机一般采用40个引脚,双 列直插式封装,用HMO 工艺制造,其外部 引脚排列如图所示。

其中,各引脚的功能为: (a ) DIP 引脚图(b ) 逻辑符号8051单片机的引脚⑴主电源引脚Vcc (40脚):接+ 5V 电源正端Vss (20脚):接+ 5V 电源地端一般Vcc 和Vss 间应接高频去耦电容和低频 滤波电容。

⑵外接晶体或外部振荡器引脚F1.0 Vcc F1.1 FO.O Pl.2 PD.l Pl.3 P0.2 P] J P0.3 Pl.S P0.4 Pl.6 9051 PQ.5 Pl.7 P66 KST/V FD PCI] P3.0/RxD E£/T FF F3.1;TsD ALE/PROG P3.27IKT0 PSEW F3,3/IIII1 F2.7 F3.4/T0 F2.S P3.5u/Tl F2.5 P3.fi/TC P2.4 F3.7/RP F2.3 XIAL2 F2.2 STAL1 F2J Vss P2.0 XT2L1 XTAL2EA/Vpr PSEII — ALE/PROG * RST/VPD - 「 K K D -----* T K D — INTO —K) 8051 (地址/■数据总枝)口3 P3(I T1TO I1WED II] 40 237 6 36 357 34 3 33 11 13 28 14 27 15 16 17 24 19 23 22 19 20 21 _1 10 32 31 39 33 FD 口 P1口 门用P2 (地址 总线)XTAL1( 19脚):接外部晶振的一个引脚。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机是一门实践性较强的技术,很多初学者在学习单片机技术开发的时候往往一头雾水,不知何从下手。

为此,笔者结合自己使用单片机多年的经验,特意设计了单片机开发所需的Study-c 整机和硬件套件,并结合套件精心编写了单片机从入门到精通系列教程。

通过讲述单片机原理、电路设计、应用开发软件工具、编写实验实例让读者全面接触单片机技术。

教程编排上由浅入深,循序渐进,内容力求完整、实用、趣味并存,使读者在轻松愉快的学习过程中逐步提高单片机软硬件综合设计水平。

一、内容提要本讲主要向大家介绍51 系列单片机的最小系统的实现并通过编写程序来实现对单片机IO 口的输出控制。

以点亮外部连接的LED<发光二极管)为例,简要的介绍单片机的原理、最小系统的组成,并通过简单的C51 程序设计来讲述编译软件Keil的使用并下载Hex 文件烧写单片机。

二、原理简介在了解原理之前,首先让我们思考一个问题,什么是单片机,单片机有什么用?这是一个有意思的问题,因为任何人都不能给出一个被大家都认可的概念,那到底什么是单片机呢?普遍来说,单片机又称单片微控制器,是在一块芯片中集成了CPU< 中央处理器)、RAM< 数据存储器)、ROM< 程序存储器)、定时器/ 计数器和多种功能的I/O< 输入/ 输出)接口等一台计算机所需要的基本功能部件,从而可以完成复杂的运算、逻辑控制、通信等功能。

在这里,我们没必要去找到明确的概念来解读什么是单片机,特别在使用C 语言编写程序的时,不用太多的去了解单片机的内部结构以及运行原理等。

从应用的角度来说,通过从简单的程序入手,慢慢的熟悉然后逐步深入精通单片机。

在简单了解了什么是单片机之后,然后我们来构建单片机的最小系统,单片机的最小系统就是让单片机能正常工作并发挥其功能时所必须的组成部分,也可理解为是用最少的元件组成的单片机可以工作的系统。

对51 系列单片机来说,最小系统一般应该包括:单片机、时钟电路、复位电路、输入/ 输出设备等<见图1)。

图1 单片机最小系统框图三、电路详解依据上文的内容,设计51 系列单片机最小系统见图2。

图2 51系列单片机最小系统下面就图2 所示的单片机最小系统各部分电路进行详细说明。

1. 时钟电路在设计时钟电路之前,让我们先了解下51 单片机上的时钟管脚:XTAL1<19 脚):芯片内部振荡电路输入端。

XTAL2<18 脚):芯片内部振荡电路输出端。

XTAL1 和XTAL2 是独立的输入和输出反相放大器,它们可以被配置为使用石英晶振的片内振荡器,或者是器件直接由外部时钟驱动。

图2 中采用的是内时钟模式,即采用利用芯片内部的振荡电路,在XTAL1、XTAL2 的引脚上外接定时元件<一个石英晶体和两个电容),内部振荡器便能产生自激振荡。

一般来说晶振可以在1.2 ~ 12MHz 之间任选,甚至可以达到24MHz 或者更高,但是频率越高功耗也就越大。

在本实验套件中采用的11.0592M 的石英晶振。

和晶振并联的两个电容的大小对振荡频率有微小影响,可以起到频率微调作用。

当采用石英晶振时,电容可以在20 ~ 40pF 之间选择<本实验套件使用30pF);当采用陶瓷谐振器件时,电容要适当地增大一些,在30 ~ 50pF 之间。

通常选取33pF 的陶瓷电容就可以了。

另外值得一提的是如果读者自己在设计单片机系统的印刷电路板<PCB)时,晶体和电容应尽可能与单片机芯片靠近,以减少引线的寄生电容,保证振荡器可靠工作。

检测晶振是否起振的方法可以用示波器可以观察到XTAL2 输出的十分漂亮的正弦波,也可以使用万用表测量< 把挡位打到直流挡,这个时候测得的是有效值)XTAL2 和地之间的电压时,可以看到2V 左右一点的电压。

2. 复位电路在单片机系统中,复位电路是非常关键的,当程序跑飞<运行不正常)或死机<停止运行)时,就需要进行复位。

MCS-5l 系列单片机的复位引脚RST< 第9 管脚)出现2个机器周期以上的高电平时,单片机就执行复位操作。

如果RST 持续为高电平,单片机就处于循环复位状态。

复位操作通常有两种基本形式:上电自动复位和开关复位。

图2 中所示的复位电路就包括了这两种复位方式。

上电瞬间,电容两端电压不能突变,此时电容的负极和RESET 相连,电压全部加在了电阻上,RESET 的输入为高,芯片被复位。

随之+5V电源给电容充电,电阻上的电压逐渐减小,最后约等于0,芯片正常工作。

并联在电容的两端为复位按键,当复位按键没有被按下的时候电路实现上电复位,在芯片正常工作后,通过按下按键使RST管脚出现高电平达到手动复位的效果。

一般来说,只要RST 管脚上保持10ms 以上的高电平,就能使单片机有效的复位。

图中所示的复位电阻和电容为经典值,实际制作是可以用同一数量级的电阻和电容代替,读者也可自行计算RC 充电时间或在工作环境实际测量,以确保单片机的复位电路可靠。

3. EA/VPP<31 脚)的功能和接法51 单片机的EA/VPP<31 脚)是内部和外部程序存储器的选择管脚。

当EA 保持高电平时,单片机访问内部程序存储器;当EA 保持低电平时,则不管是否有内部程序存储器,只访问外部存储器。

对于现今的绝大部分单片机来说,其内部的程序存储器<一般为flash)容量都很大,因此基本上不需要外接程序存储器,而是直接使用内部的存储器。

在本实验套件中,EA 管脚接到了VCC 上,只使用内部的程序存储器。

这一点一定要注意,很多初学者常常将EA 管脚悬空,从而导致程序执行不正常。

4. P0 口外接上拉电阻51 单片机的P0 端口为开漏输出,内部无上拉电阻<见图3)。

所以在当做普通I/O 输出数据时,因为V2 截止,输出级是漏极开路电路,要使“1”信号<即高电平)正常输出,必须外接上拉电阻。

图3 P0端口的1位结构另外,避免输入时读取数据出错,也需外接上拉电阻。

在这里简要的说下其原因:在输入状态下,从锁存器和从引脚上读来的信号一般是一致的,但也有例外。

例如,当从内部总线输出低电平后,锁存器Q = 0, Q = 1,场效应管V1 开通,端口线呈低电平状态。

此时无论端口线上外接的信号是低电平还是高电平,从引脚读入单片机的信号都是低电平,因而不能正确地读入端口引脚上的信号。

又如,当从内部总线输出高电平后,锁存器Q = 1, Q = 0,场效应管V1 截止。

如外接引脚信号为低电平,从引脚上读入的信号就与从锁存器读入的信号不同。

所以当P0 口作为通用I/O 接口输入使用时,在输入数据前,应先向P0 口写“1”,此时锁存器的Q 端为“0”,使输出级的两个场效应管V1、V2 均截止,引脚处于悬浮状态,才可作高阻输入。

总结来说:为了能使P0 口在输出时能驱动NMOS 电路和避免输入时读取数据出错,需外接上拉电阻。

在本实验套件中采用的是外加一个10K 排阻。

此外,51 单片机在对端口P0—P3 的输入操作上,为避免读错,应先向电路中的锁存器写入“1”,使场效应管截止,以避免锁存器为“0”状态时对引脚读入的干扰。

5. LED 驱动电路细心的读者可能已经发现,在最小系统中,发光二极管<LED)的接法是采取了电源接到二极管正极再经过1K 电阻接到单片机I/O 口上的<见图4 中的接法1)。

为什么这么接呢?首先我们要知道LED 的发光工作条件,不同的LED 其额定电压和额定电流不同,一般而言,红或绿颜色的LED 的工作电压为1.7V~2.4V,蓝或白颜色的LED 工作电压为2.7~4.2V,直径为3mm LED 的工作电流2mA~10mA。

在这里采用红色的3mm 的LED。

其次,51 单片机<如本实验板中所使用的STC89C52单片机)的I/O 口作为输出口时,拉电流<向外输出电流)的能力是μA 级别,是不足以点亮一个发光二极管的。

而灌电流<往内输入电流)的方式可高达20mA,故采用灌电流的方式驱动发光二极管。

当然,现今的一些增强型单片机,是采用拉电流输出<接法2)的,只要单片机的输出电流能力足够强即可。

另外,图4 中的电阻为1K 阻值,是为了限制电流,让发光二极管的工作电流限定在2mA~10mA。

图4 LED的接法四、程序设计在单片机编程语言上,有C 语言和汇编两种选择。

本系列教程采用C 语言编写程序,在此对C语言和汇编语言在进行单片机开发时进行下简单比较,汇编语言面向硬件,要求对硬件的特性如寄存器之类的比较熟悉,执行效率高,但可读性和移植性差,不同的单片机之间的程序不能通用,例如学会了51 单片机的汇编指令,却没法用到AVR 单片机上。

C语言面向过程,可读性和移植性很好,效率要比汇编低一些。

对于刚接触单片机的人来说,学习这两种语言是一样的,但在以后的开发效率上,C 语言的优势就体现出来了,其可以几乎完全不改动的情况下移植,大大提高了开发速度。

控制发光二极管D1 闪烁的C 语言源程序:1. 程序详细说明<1)头文件包含。

程序接下来调用的P0_0 就是该头文件中定义好的一个寄存器地址。

在对单片机内部的寄存器操作之前,应申明其来处,有兴趣的读者可以看看AT89X52.h 文件中的内容。

<2)宏定义led, 便于直观理解也便于程序修改,将P0_0 口命名为led, 这样在程序中就可以用led代替P0_0 口进行操作。

<3)延时函数声明。

函数在调用之前必须进行声明,因为函数定义放在主函数之后,所以在主函数之前对延时函数进行了声明。

<4)主函数入口。

主函数不传递参数也不返回值。

<5)死循环。

<6)输出高电平,led 不亮。

<7)延时一段时间,以便人眼能够直观看到。

<8)输出低电平,led 点亮。

<9)延时一段时间。

<10)延时函数定义。

<11)for 语句循环延时。

2. 程序流程图与实验现象程序流程如图5 所示。

经编译软件<keil)编译,生成单片机烧写文件,然后就可下载到单片机内部运行了,硬件电路板如图6 所示,本实验板上用的是STC89C52RC,可以用通过板载USB 转串口烧写程序。

故将USB 线<本实验套件中有)连接电脑和实验板。

供电电源可以从USB 取,也可以从外部电源取电。

冷启动,即先点击下载,然后再上电。

下载程序到单片机内运行后,可以看到实验板上P0_0 口外接的LED 灯<D1)一亮一灭的闪烁。

图5 程序流程图图6 硬件电路板图五、总结本讲主要介绍了51 单片机最小系统的设计以及编写第一个简单的程序。

从过该实验,可以掌握单片机的开发流程,从而快速入门。

相关文档
最新文档