本文我们来谈一谈51单片机的最小化应用系统的问题,相信你做了这个简单的最小系统试验以后,会对单片机逐渐感兴趣起来的,单片机要正常运行,必须具备一定的硬件条件,其中最主要的就是三个基本条件:1.电源正常;2.时钟正常;3.复位正常。下面就以我们实验用的51单片机AT89S51为例介绍其硬件连接方法。
下图就是AT89S51单片机构成的最小系统(仅驱动1个发光二极管)的电路,在AT89S51单片机的40个引脚中:电源引脚2根,晶振引脚2根,控制引脚4根,可编程输入输出引脚32根。
《51单片机的最小化应用系统电路图》
1、工作电源:电源是单片机工作的动力源泉,废话!没有电源当然不能工作啦:),对应的接线方法为:40脚(VCC)电源引脚,工作时接+5V电源,20脚(GND)为接地线。
2、时钟电路:时钟电路为单片机产生时序脉冲,单片机所有运算与控制过程都是在统一的时序脉冲的驱动下的进行的,时钟电路就好比人的心脏,如果人的心跳停止了,人就。。。同样,如果单片机的时钟电路停止工作(晶振停振),那么单片机也就停止运行了。当采用内部时钟时,连接方法如下图所示,在晶振引脚XTAL1(19脚)和XTAL2(18脚)引脚之间接入一个晶振,两个引脚对地分别再接入一个电容即可产生所需的时钟信号,电容的容量一般在几十皮法,如30PF。
3、接着我们给单片机加一个指示灯。我们在单片机P1.7(8脚)上接一个发光二极管,这样就可以用来做单片机驱动发光二极管的简单实验了,图中发光二极管负极对单片机引脚P1.7之间串接了一个560欧姆的限流电阻,防止发光二极管和单片机的引脚P1.7因为电流过大烧坏,使发光二极管和单片机都工作在安全状态。
4、控制引脚EA接法。EA/VPP(31脚)为内外程序存储器选择控制引脚,当EA为低电位时,单片机从外部程序存储器取指令;当EA接高电平时,单片机从内部程序存储器取指令。。。AT89S51单片机内部有4KB可反复擦写1000次以上的程序存储器,因此我们把EA接到+5V高电平,让单片机运行内部的程序,我们就可以通过反复烧写来验证我们的程序了。
5、复位电路:在复位引脚(9脚)脚持续出现24个振荡器脉冲周期(即2个机器周期)的高电平信号将使单片机复位。如下图所示电容C和电阻R构成了单片机上电自动复位电路,复位后,单片机从0000H单元开始执行程序,并初始化一些专用寄存器为复位状态值,受影响的专用寄存器如下表所示:
至此,我们完成了51单片机的最小化应用系统的连接,只要正确的烧写程序,并接上+5V电源就可以了,单片机剩下的其他可以不接线悬空。
下面我们来写一个驱动发光二极管闪烁的程序,这是很简单的事情,只需要以一定的世界间隔,给p1.7高电平,然后低电平,如此重复,我们就看到了发光2极管在闪烁,程序如下:
完整的源程序如下:
;******** 51单片机的最小化应用系统主程序 ********
MAIN: CLRP1.7;主程序开始,P1.7输出低电平“0”,让点亮发光二极管
ACALLDELAY ;调用延时子程序延时一段时间,让发光二极管亮一段时间
SETB P1.7;P1.7输出高电平“1”,熄灭发光二极管
ACALLDELAY ;调用延时子程序延时一段时间,让发光二极管熄灭一段时间
AJMP MAIN;跳转到程序开头重复执行
;******** 51单片机的最小化应用系统延时子程序 ********
DELAY:MOVR7,#255
Y1: MOVR6,#255
DJNZ R6,$
DJNZ R7,Y1
RET;延时子程序返回
END;程序结束
关键字:51单片机 最小系统 编程
引用地址:
51单片机的最小系统应用说明
推荐阅读最新更新时间:2024-11-01 09:45
基于51单片机的喷墨打印机控制技术
单片机应用系统中最常用的输出打印设备是微型打印机,例如TP系列、UP系列打印机等,对它们的控制技术也较为成熟。但是近年来随着通用打印机的广泛使用,微型打印机的缺点也日益明显:一是通用性及互换性不强;二是打印输出文档的幅面过小,不便于装订及存档。而通用打印机都配有国际标准并行接口(CENTRONICS)和串行接口(RS232/422),纸张大小可任意选择。这些特点是微型打印机所无法抗衡的。因此在越来越多的单片机应用系统中逐渐趋向于使用通用打印?魑?蛴∈涑錾璞浮1疚慕樯芰艘訫CS-51系列单片机为核心,通过CENTRONICS国际标准8位并行接口控制驱动HP-DJ 600/800系列喷墨打印机的硬件接口电路没计方法及控制程序设计方法。
[单片机]
JTAG推出有助于PCB测试和系统内编程的工具
JTAG Technologies推出有助于加速并简化基于IEEE 1149.x标准的边界扫描的工具JTAG ProVision,该工具可帮助工程师用最少的时间实现系统内编程。 ProVision的应用程序向导有助于用户准备测试和系统编程应用程序。图形化工具可简化设计数据的管理,JTAG Technologies的为测试而设计(DFT)的分析软件可监视覆盖范围。 该工具创建了一套测试和系统内编程方案,分析设计的边界扫描和非边界扫描部分。JTAG Technologies的器件建模方法为控制非扫描簇提供所需信息。该工具还可处理各类复杂目标,可实现从单板的单个或多个测试到复杂的多板测试。 JTAG ProVision将在四月中旬
[新品]
单片机和PLC编程的区别
单片机与PLC的程序设计有很大的区别,单片机的全部程序都是用户设计的,PLC的程序包括系统程序(西门子称为操作系统)和用户程序。操作系统用来组织与具体的控制任务无关的所有的CPU功能。操作系统的任务包括处理启动过程,刷新输入/输出过程映像,调用用户程序,检测中断事件和调用中断组织块,检测和处理错误,管理存储器,以及处理通信任务等。PLC的很多功能,例如扫描工作方式、定时器功能和中断处理,是操作系统完成的。在画流程图时,应考虑这个问题。 PLC的开关量控制系统的程序用顺序功能图来描述比较简洁。用流程图来描述PLC的用户程序原则上也是可以的,但是应区分哪些功能是操作系统完成的,哪些是用户程序实现的。 例如有人问是否需要用跳转指令来等待某
[单片机]
51单片机—步进电机程序
4相5线的步进电机,在51hei单片机开发板上用uln2003驱动,此程序可实现正反转和加减速功能。 电路图如下: c语言源程序 #include reg52.h sbit p10=P1^0; sbit p11=P1^1; sbit p12=P1^2; sbit p13=P1^3; sbit p32=P3^2;//减速 sbit p33=P3^3;//加速 sbit p34=P3^4;//正转 sbit p35=P3^5;//反转 #define A {p10=1;p11=0;p12=0;p13=0;} #define B {p10=0;p11=1;p12=0;p13=0;} #define C {p10=0;p11=0;
[单片机]
关于51单片机的P0口上拉电阻取值问题
有很多朋友在学习51单片机的时候,都会对其P0口上拉电阻阻值的取值问题而头疼。其实,P0口接不接上拉电阻,电阻值该选择多大的都是根据不同的情况来选择的。下面来简单分析下如下的几种情况: 第一种:P0口作为共阳极LED数码管的驱动端口。这种情况下,P0口主要是以吸收电流来作为有效工作方式,不对外输出高电平,此时,不应接上拉,任何上拉都不要接。接多少丢多少。不仅增加成本,而且增大了工作电流。至于数码管的鬼影问题,那是程序部分的问题,与硬件无关。 第二种:P0口作为数据传输接口。这种情况下,P0口需要输出高电平,而高电平的输出其实就是来自于上拉电阻。在数据输出状态下,P0口的负载都是逻辑器件,不需要大的输入功率,那么,就可以采用电阻值较
[单片机]
AT89S51单片机计数器的设计
1.实验任务 利用AT89S51单片机的P1.0-P1.3接四个发光二极管L1-L4,用来指示当前计数的数据;用P1.4-P1.7作为预置数据的输入端,接四个拨动开关K1-K4,用P3.6/WR和P3.7/RD端口接两个轻触开关,用来作加计数和减计数开关。具体的电路原理图如下图所示 2.电路原理图 图4.12.1 3.系统板上硬件连线 (1).把“单片机系统”区域中的P1.0-P1.3端口用8芯排线连接到“八路发光二极管指示模块”区域中的L1-L4上;要求:P1.0对应着L1,P1.1对应着L2,P1.2对应着L3,P1.3对应着L4; (2).把“单片机系统”区域中的P3.0/RXD,P3.1/TXD,P3.2/IN
[单片机]
80C51单片机定时计数器的功能详解
单片机结构是什么样的,由什么模块组成 单片机(Micro Control Unit)全称微型控制单元,简称单片机(MCU),从字面意思可以了解到它其实就是一个微型的计算机系统,51单片机包含CPU(8051内核),SRAM(内存)惨不忍睹的1K,闪存(硬盘)也只有可怜的几十K,然后外围的模块基本就是下载代码用的ISP,中断模块,基本输入输出I/O模块,复位模块,串口模块,EEPROM,看门狗。单片机种类比较多,51是我们常用的单片机型号,主要应用的场合有数码家电(洗衣机,电饭锅,电磁炉,微波炉),工业现场数据采集与传输等。 80C51定时计数器有两个功能,定时功能和计数功能,定时计数器实质是一个加一计数器,无论做定时还是做
[单片机]
编程点滴:AVR的UART数据收发测试程序
本程序实现UART中断方式发送和接收数据功能,将接收到的数据立即发出,形成回环。 由测试程序 main.c ,相关头文件 uart_test.h ,UART数据处理程序 uart_test.c 组成。 main.c /* ************************************************ * File name: main.c * Function: AVR的UART数据收发测试程序 * Description: 实现将RXD端口收到的数据转发至TXD端口 * 收发工作由UART中断自动完成 * Author & Date: Joshua Chan, 2012/03/28 * *******
[单片机]