实验一 8051单片机最小系统设计与制作
51单片机最小系统设计与制作

51单片机最小系统设计与制作本设计是针对51单片机初学者设计出来的一款单片机学习平台,该制作将单片机40个引脚全部用排针引出,这样可以方便单片机初学者使用时根据自己的想法搭建硬件平台,能够充分培养单片机初学者的动手能力,该设计电源采用5v直流电源供电设计方框图如下下面就图2 所示的单片机最小系统各部分电路进行详细说明。
1. 时钟电路在设计时钟电路之前,让我们先了解下51 单片机上的时钟管脚: XTAL1(19 脚):芯片内部振荡电路输入端。
XTAL2(18 脚):芯片内部振荡电路输出端。
XTAL1 和XTAL2 是独立的输入和输出反相放大器,它们可以被配置为使用石英晶振的片内振荡器,或者是器件直接由外部时钟驱动。
图2 中采用的是内时钟模式,即采用利用芯片内部的振荡电路,在XTAL1、XTAL2 的引脚上外接定时元件(一个石英晶体和两个电容),内部振荡器便能产生自激振荡。
一般来说晶振可以在 1.2 ~ 12MHz 之间任选,甚至可以达到24MHz 或者更高,但是频率越高功耗也就越大。
在本实验套件中采用的11.0592M 的石英晶振。
和晶振并联的两个电容的大小对振荡频率有微小影响,可以起到频率微调作用。
当采用石英晶振时,电容可以在20 ~ 40pF 之间选择(本实验套件使用30pF);当采用陶瓷谐振器件时,电容要适当地增大一些,在30 ~ 50pF 之间。
通常选取33pF 的陶瓷电容就可以了。
2. 复位电路在单片机系统中,复位电路是非常关键的,当程序跑飞(运行不正常)或死机(停止运行)时,就需要进行复位。
MCS-5l 系列单片机的复位引脚RST(第9 管脚)出现2个机器周期以上的高电平时,单片机就执行复位操作。
如果RST 持续为高电平,单片机就处于循环复位状态。
复位操作通常有两种基本形式:上电自动复位和开关复位。
图2 中所示的复位电路就包括了这两种复位方式。
上电瞬间,电容两端电压不能突变,此时电容的负极和RESET 相连,电压全部加在了电阻上,RESET 的输入为高,芯片被复位。
51单片机最小系统学习板的设计与制作

课程设计任务书(指导教师填写)课程设计名称电路板设计与制作学生姓名专业班级设计题目51单片机最小系统学习板的设计与制作一、课程设计的任务和目的任务:设计并制作51单片机最小系统电路板,包括电路原理图设计、版图规划与设计、系统单面电路板制作。
要求:1)电路原理图准确、版图结构清晰、布局合理。
2)使用插针型元件,成品PCB板面布局合理,密度适当;3)板上资源包括LED灯、数码管、蜂鸣器、按钮、串行通讯及USB接口;4)电路板面积适中便于携带,长度15cm,宽8.5cm。
目的:1)掌握并完成基本PCB板的设计与制作工艺;2)学习并掌握实现单片机应用系统的软硬件设计、调试、实现的技能;3)了解单片机最小系统的工作原理与系统开发方法,锻炼动手能力,为毕业设计做准备。
二、设计内容、技术条件和要求1.设计并制作具有实际功能的单片机最小系统:可选择实现的功能⑴.流水灯⑵.电子时钟⑶.数字温度计⑷.交通灯控制器;2.根据所选电路功能,画出电路框图和原理总图。
3.根据电路所需元件及周边设备规划和设计电路板版图,描画版图。
4.根据版图生成gerber工艺文件,进行电路板制作,包括刻板,钻孔,覆铜等。
5.撰写设计总结报告。
三、时间进度安排本课程设计共两周时间。
第一周:功能设计与理论学习周一上午:布置设计任务;提出课程设计的目的和要求;明确对撰写总结报告、手工绘制原理图和电路板版图的要求;安排答疑、实验室开放时间。
讲解印制电路板的制板流程,介绍PCB刻板机等制板设备的软硬件操作方法以及注意事项。
周一下午:讲解电路原理图与PCB版图设计方法。
周二至周五:学生查阅资料,确定设计题目;进行功能设计,在实验室完成电路原理图与PCB 版图的设计和绘制,导出电路总原理图及版图文件。
期间安排两次答疑,指导学生设计。
周五,交设计草图-原理图和版图供老师审阅。
第二周:电路板制作、撰写设计总结报告周一至周四:分组在电子系统加工及评测实验室(225)操作刻板工具和设备进行电路板成品的加工和制作,成品需通过老师验收。
单片机最小系统设计与调试

单片机最小系统设计与调试班级: xxx姓名: xxx学号: xxx指导老师: x老师单片机最小系统设计与调试一、实验目的1. 了解单片机的基本工作原理;2. 学习并掌握相关软件的使用方法(Protel、keil);2. 掌握单片机片内程序存储器下载方法;3. 掌握单片机的程序设计(汇编及C51);二、实验原理(一)什么是单片机最小系统单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统。
对51系列单片机来说,单片机+晶振电路+复位电路,便组成了一个最小系统.但是一般我们在设计中把按键输入、显示输出等加到上述电路中,成为小系统。
(二) AT89C51高性能8位单片机功能AT89C51有以下标准功能:8K字节Falsh闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内震荡器及时钟电路,同时AT89C51可降至0HZ的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM的操作,定时/计数器,串行通信口及中断系统持续工作。
掉电方式保存RAM中的内容,但震荡器停止工作并禁止其他所有部件工作直到下一个硬件复位。
主要功能特性:(三) AT89C51高性能8位单片机资料单片机主要擅长系统控制,而不适合做复杂的数据处理,在设计单片机最小系统时通常选用AT89C5l、AT89C52、AT89S51、AT89S52(S系列芯片支持ISP功能)等型号的8位DIP-40封装的单片机作为MCU,一个典型的单片机最小系统一般由时钟电路、复位电路、键盘电路、显示电路等部分组成,有时也外扩有片外RAM和ROM以及外部扩展接口等电路。
图1为单片机最小系统结构框图。
图1 单片机最小系统结构框图(四)单片机系统结构介绍1.系统时钟电路单片机内部具有一个高增益反相放大器,用于构成振荡器。
通常在引脚XTALl和XTAL2跨接石英晶体和两个补偿电容构成自激振荡器,系统时钟电路结构如图2所示,可以根据情况选择6MHz、8MHz或12MHz等频率的石英晶体,补偿电容通常选择20-30pF左右的瓷片电容。
51单片机最小系统的设计与制作(推荐初学者)

51单片机最小系统制作(推荐初学者)实物图功能:1.流水灯2.数码管动态显示3.蜂鸣器唱歌4.红外遥控接受遥控近照:背面:虽然先看着多点。
但其实一点也不复杂,只能说费事而已。
八位LED灯八位LED灯蜂鸣器:蜂鸣器是从网卡上拆下来的,数码管一、确定任务开发单片机最小系统二、任务分析:该系统具有的功能:(1)具有2位LED数码管显示功能。
(2)具有八路发光二极管显示各种流水灯。
(3)可以完成各种奏乐,报警等发声音类实验。
(4)具有复位功能。
三、功能分析(1)两位LED数码管显示功能,我们可以利用单片机的P0口接两个数码管来现这个功能;(2)八路发光二极管显示可以利用P1口接八个发光二极管实现这个功能;(3)各种奏乐、报警等发声功能可以采用P2.0这个引脚接一蜂鸣器来实现。
(4)利用单片机的第9脚可以设计成复位系统,我们采用按键复位;利用单片机的18、19脚可以设计成时钟电路,我们利用单片机的内部振荡方式设计的。
四、设计框图五、硬件电路设计根据本系统的功能,和单片机的工作条件,我们设计出下面的电路图。
本人又添加了红外一体化接收头。
可以对单片机进行遥控了。
使用USB口供电。
六、元件清单的确定:数码管:共阴极2只(分立)电解电容:10UF的一只30PF的电容2只220欧的电阻9只4.7K的电阻一只1.2K的电阻一只4.7K的排阻一只,12MHZ的晶振一只有源5V蜂名器一只AT89S51单片机一片常开按钮开关1只紧锁座一只(方便芯取下来的,绿色的)发光二极管(5MM红色)8只万能板电路版15*17CMS8550三极管一只4.5V电池盒一只,导线若干。
七、硬件电路的焊接按照原理图把上面的元件焊接好,详细步骤省略。
八、相关程序编写针对上面的电路原理图,设计出本系统的详细功能:(1)、第一个发光二极管点亮,同时数码管显示“1”。
(2)、第二个发光二极管点亮,同时数码管显示“2”。
(3)、依次类推到第八个发光二极管点亮,同时数码管显示“8”。
51单片机最小系统板设计与制作的过程

一、概述51单片机是一种广泛应用于嵌入式系统领域的微控制器,具有低成本、易编程、易使用等特点,因此在各种电子设备中被广泛使用。
而51单片机的最小系统板也是在应用中常见的一种开发板,本文将介绍51单片机最小系统板的设计与制作过程。
二、材料准备在设计与制作51单片机最小系统板之前,首先需要准备一些必要的材料与工具。
通常包括:1. 51单片机芯片:如STC89C52或AT89S52等;2. 时钟电路:通常采用晶振和电容构成的晶振电路;3. 复位电路:包括复位电路和复位按钮;4. 电源电路:可采用稳压电路或简单的电源滤波电路;5. 连接电路:用于与外部器件连接的通用引脚;6. PCB板:用于焊接上述电路的电路板;7. 焊接工具:包括焊锡、焊台、焊锡丝等。
三、设计电路图设计51单片机最小系统板的第一步是绘制电路图。
电路图是电路设计的图纸,可以清晰展现各个元器件之间的连接关系,是制作PCB板的重要依据。
1. 时钟电路设计时钟电路是51单片机最小系统板的核心部分,一般采用晶振和两个电容构成。
在绘制时钟电路的电路图时,需要注意晶振的型号和频率,并正确连接晶振引脚和电容引脚。
2. 复位电路设计复位电路用于对51单片机进行复位操作,通常由复位电路和复位按钮构成。
在绘制复位电路的电路图时,需要正确连接复位引脚和复位按钮,并注意复位电路的稳定性和可靠性。
3. 电源电路设计电源电路用于为51单片机提供稳定的工作电压,可采用稳压电路或简单的电源滤波电路。
在绘制电源电路的电路图时,需注意输入电压范围、输出电压稳定性和滤波效果。
4. 连接电路设计连接电路用于与外部器件连接,通常采用通用引脚。
在绘制连接电路的电路图时,需要考虑引脚的分配和连接关系,以及外部器件的需求和接口定义。
四、制作PCB板制作PCB板是设计与制作51单片机最小系统板的关键步骤之一。
通常包括以下几个步骤:1. 打样首先需要将设计好的电路图转换为PCB板的设计文件,并选择合适的PCB板厂家进行打样。
单片机最小系统实验报告

单片机最小系统实验报告
实验目的:
本实验目的是探究微处理器系统最小化原理并实际运用该原理设计一个基于单片机主控的最小系统,用来分析各部件之间的作用以及学习计算机系统的操作。
实验设备:
1.单片机主芯片:亚宝半导体C02晶振
2.外部电路元器件:2个8位数据输入输出口,4个4位数据的输入输出口,4个开关,10K水银温度计,7个键盘,1个指示灯。
实验步骤:
1. 设计单片机最小系统电路:根据实验指导书绘制单片机最小系统电路图,接线涉及到的所有元器件,并标注出每个元器件的引脚号。
2. 编写相关的程序:根据实验的要求,编写相关的CH02语言程序来完成IO口的输入输出功能。
3. 上传程序:将编写的程序用串口烧录到单片机内存中
4. 测试程序:检查所有的管脚,检查程序的正确性,根据程序要求使用按键输入信号,测试输出结果。
实验结果:
在实验过程中,我发现单片机最小系统电路设计较为简单,只需要有基本的电路和编程知识,即可完成本次实验。
经过多次修改和测试,我可以得出程序正确运行的结论。
经过本次实验,我深刻理解了计算机系统的结构,学会了io口的编程,还认识了有关电子元器件的基本用途和功能,研究了系统的最小化原理,以及其背后的道理。
更重要的是,本次实验提高了我的动手能力和分析问题的能力。
51单片机最小系统原理图

51单片机最小系统原理图接触过单片机的朋友们都时常会听到别人提"最小系统"这个词.那到底什么是最小系统,有怎样设计称上"最小"呢?下面让依依电子来告诉大家:单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统.对51系列单片机来说,单片机+晶振电路+复位电路,便组成了一个最小系统.但是一般我们在设计中总是喜欢把按键输入、显示输出等加到上述电路中,成为小系统。
应用89C51(52)单片机设计并制作一个单片机最小系统,达到如下基本要求:1、具有上电复位和手动复位功能。
2、使用单片机片内程序存储器。
3、具有基本的人机交互接口。
按键输入、LED 显示功能。
4、具有一定的可扩展性,单片机I/O口可方便地与其他电路板连接。
51单片机学习想学单片机,有一段时间了,自己基础不好,在网上提了许多弱智的问题,有一些问题网友回答了,还有一些为题许多人不屑一顾。
学来学去,一年多过去了,可是还是没有入门,现在我就把我学习中遇到的一些问题和大家分享一下,希望在大虾的帮助下能快速的入门:)在学习之前我在网上打听了一下atmel公司的单片机用的人比较多,avr系列这几年在国内比较流行,但是考虑到avr还是没有51系列用的人多,51系列的许多技术在实践中都已经的到了前人的解决,遇到问题后,有许多高人可以帮助解决,所以这次学习,选用了atmel公司的at89s52,来进行学习。
学习单片机是需要花费时间实践的;学之前我们先准备好所需的东西一、所需硬件at89s52一片;8m晶振一个,30pf 的瓷片电容两个;10uf电解电容一个,10k的电阻一个;万用板(多孔板)一块;其他的器件如电烙铁一把30w的,松香,焊锡若干,如果是第一次学习,不知道这些东西,没关系,以下是它们的照片:Atmel公司生产的at89s52 8m晶振22pf瓷片电容电解电容图1/4 w 10k 的电阻普通的电木万用板好了,有了这些东西,我们就可以把它们组合到一起做成我们的最小系统了:)有了这些东西我们怎么焊接丫?不用着急,过一会我们把原理图给大家画出来大家就会了。
51单片机最小系统电路图及实验

51单片机最小系统电路图及实验(含调试程序)--------------------------------------------------------------------------------51单片机最小系统电路图及实验一、任务开发单片机最小系统二、任务分析:该系统具有的功能:(1)具有2位LED数码管显示功能。
(2)具有八路发光二极管显示各种流水灯。
(3)可以完成各种奏乐,报警等发声音类实验。
(4)具有复位功能。
三、功能分析(1)两位LED数码管显示功能,我们可以利用单片机的P0口接两个数码管来现这个功能;(2)八路发光二极管显示可以利用P1口接八个发光二极管实现这个功能;(3)各种奏乐、报警等发声功能可以采用P2.0这个引脚接一蜂鸣器来实现。
(4)利用单片机的第9脚可以设计成复位系统,我们采用按键复位;利用单片机的18、19脚可以设计成时钟电路,我们利用单片机的内部振荡方式设计的。
四、设计框图五、最小系统电路图设计根据本系统的功能,和单片机的工作条件,我们设计出下面的电路图。
六、元器件件清单的确定:数码管:共阴极2只(分立)电解电容:10UF的一只30PF的电容2只220欧的电阻9只4.7K的电阻一只1.2K的电阻一只4.7K的排阻一只,12MHZ的晶振一只有源5V蜂名器一只AT89S51单片机一片常开按钮开关1只紧锁座一只(方便芯取下来的,绿色的)发光二极管(5MM红色)8只万能板电路版15*17CMS8550三极管一只4.5V电池盒一只,导线若干。
七、硬件电路的焊接按照原理图把上面的元件焊接好,详细步骤省略。
八、相关程序设计针对上面的电路原理图,设计出本系统的详细功能:(1)、第一个发光二极管点亮,同时数码管显示“1”。
(2)、第二个发光二极管点亮,同时数码管显示“2”。
(3)、依次类推到第八个发光二极管点亮,同时数码管显示“8”。
以上出现的是流水灯的效果(4)、所有的发光二极管灭了,同时数码管现实“0”。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【1. 实验目的和要求】
(1)掌握采用Keil uVision集成开发环境下单片机程序的编辑、编译、连接方法;
(2)掌握Keil uVision集成开发环境与Proteus仿真软件的联调;
(3)掌握单片机最小系统的仿真设计;
【2. 实验工具与软件】
计算机、Keil uVision4集成开发环境、Proteus 8 Professional仿真软件
【3.主要原理和方法步骤】
(1)任务说明
➢完成8051最小系统仿真原理图设计;并在最小系统基础上完成2个独立按键与8个发光二极管的驱动电路设计;
➢编写测试程序,实现按键控制循环点亮8个灯,时间间隔约1秒。
(2)仿真电路原理图
(3)程序流程图
(4)实例代码及注释分析
#include "reg51.h"
sbit S0=P1^0; //数据IO口设置
sbit S1=P1^1;
unsigned char flag; //设置flag标志位,表示哪一个按键被按下
unsigned char step; //设置step标志位,表示需要显示的二极管位码
unsigned char code D[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; //发光二极管的段码
void delay_ms(unsigned int ms) //ms延时函数(******************)
{
unsigned int i;
while(ms--)
for(i = 0; i < 110; i++);
}
void main(void) //主函数
{
unsigned char i;
while(1)
{
for(i=1;i<=20;i++) //对延时1S的时间进行划分,多次检测按键是否按下,以提高按键灵敏度
{
if(S0==0)
{
flag=1;
P0=~D[step];
}
else
{
if(S1==0)
{
while(!S1);
flag=2;break;
}
}
delay_ms(50);
}
if(flag==1) //循环左移
{
step++;
if(step==8) step=0;
P0=~D[step];
}
else if(flag==2) //循环右移
{
step--;
if(step==-1) step=7;
P0=~D[step];
}
}
}
【4. 数据记录】
点击运行开始仿真按键时,8个发光二极管均处于熄灭状态。
当点击按键S0时,发光二极管从D0→D7循环向左依次点亮;点击按键S1时,发光二极管从D7→D0循环向右依次点亮;
在循环点亮发光二极管的时候,按下S1可以立即改变方向循环左移点亮,按下S2可以立即改变方向循环右移点亮。
运行仿真图如下所示:
【5. 实验思考与小结】
通过本次实验,我知道了怎么使用Proteus仿真软件去设计单片机最小系统,并在最小系统基础上完成2个独立按键与8个发光二极管的驱动电路设计,在Keil uVision集成开发环境下编辑、编译单片机程序,并与Proteus仿真软件进行联调。
整个程序设计下来,大体没有什么问题,基本功能都可以完成,只是我觉得存在一个小的缺陷,由于发光二极管循环显示需要延时1S,如果在这延时一秒的过程中按下按键,按键功能就会没有效果,对此我做了一个改进,将1S时间改为20个50ms,并在每一个50ms延时之前检测一下按键是否按下,以此来提高按键的灵敏度,解决有时候按键不灵敏的问题。
在完成了整个实验之后,感觉收获颇多。