51单片机最小系统原理及编程电路设计

发布者:mmsg3814最新更新时间:2013-01-15 来源: 21IC 关键字:51单片机  最小系统  编程电路 手机看文章 扫描二维码
随时随地手机看文章

本课以AT89S51单片机最小系统来教你如何实现单片机编程,该程序驱动单片机P1.7端口上的发光二极管不停闪烁,系统程序用keil 汇编语言编写,电路参考下图1所示。

点击浏览下一页

《51单片机最小系统原理及编程电路设计》

首先来认识一下发光二极管(LED),发光二极管实物如下图2所示,发光二极管具有单项导电,体积小、耗电省、寿命长、响应速度快、显示清晰等特点,广泛用于电子电路中当作LED数码管、LED指示灯、LED电子显示屏,既然是51单片机最小系统我们当然只进行了最简单的电路设计与编程

图2: 《发光二极管介绍》

发光二极管导通时,产生一个正向的工作电流IF,工作电流根据发光二极管的材料、功率等不同,额定电流一般在10~40mA左右,发光二极管导通时的正向压降VF比较大,一般为1.5~3V(普通硅二极管约为0.7V)。因此在正常使用中,为了保证发光二极管在电源电压V的作用下管子的工作电流不超过额定值,必须给发光二极管串联一只限流电阻R,R的阻值可由下式算出:R=(V-VF)/IF。其中V为工作电源电压,VF为发光二极管的正向压降,IF为额定工作电流。

从上面原理图1可知,当单片机的P1.7输出低电平(0V)时,有正向工作电流流过发光二极管,发光二极管就亮;相反,当P1.7输出高电平(5V)时,发光二极管没有足够电压差产生工作电流,此时发光二极管不亮。因此,程序中只需交替让单片机的P1.7输出低电平“0”和高电平“1”就可以让发光二极管闪烁发光。[page]

下面以51单片机汇编语言来编程,让某个端口输出高电平语句是SETB,让端口输出低电平的语句是CLR语句,让P1.7端口输出高电平的语句是: SETBP1.7; 让P1.7端口输出低电平的语句是: CLRP1.7,实现发光二极管LED闪烁的编程思路如下图3所示。


图3: 《51单片机最小系统原理编程框图》

完整的源程序如下:
;******** 51单片机最小系统原理及编程电路设计主程序 ********
MAIN: CLRP1.7;主程序开始,P1.7输出低电平"0",让点亮发光二极管
ACALLDELAY ;调用延时子程序延时一段时间,让发光二极管亮一段时间
SETB P1.7;P1.7输出高电平"1",熄灭发光二极管
ACALLDELAY ;调用延时子程序延时一段时间,让发光二极管熄灭一段时间
AJMP MAIN;跳转到程序开头重复执行

;******** 下面是延时子程序 ********
DELAY:MOVR7,#255
Y1: MOVR6,#255
DJNZ R6,$
DJNZ R7,Y1
RET;延时子程序返回
END;程序结束

启动“Keil uVision2”单片机集成开发环境,如没有请再这里下载 keil下载 建立一个新工程,输入上面的源程序,最后编译得到一个lich1.hex目标文件,用编程器把lich1.hex写入单片机AT89S51中,插到实验板上就可以看到第一个程序的运行效果了(P1.7端口的发光二极管不停闪烁)。这就是我们学习的第一个最简单的程序,是一个完整的单片机开发过程,再复杂庞大的程序都是由简单的语句、程序构成的,希望该教程能给初学者对单片机开发有一个感性的认识。不懂如何在Keil中编辑源程序的初学者请看 keil教程


图4:ISP编程器将产生的目标程序lich1.hex写入AT89S51单片机


图5:单片机插入实验板上程序的运行效果

单片机的学习是一个循序渐进的过程,制作单片机最小系统,并彻底了解其原理,能把你快速带入单片机世界的大门,这只是一个最简单的制作,有什么问题请联系我

关键字:51单片机  最小系统  编程电路 引用地址:51单片机最小系统原理及编程电路设计

上一篇:TC1602液晶模块与单片机接口字符显示试验
下一篇:单片机流水灯设计方法

推荐阅读最新更新时间:2024-03-16 13:16

51单片机红外接收代码加解码
头文件 stc12c5a.h下载: http://www.51hei.com/mcu/2564.html 头文件 1602.h 下载: http://www.51hei.com/bbs/dpj-24671-1.html ///*redPC838.c文件 * 红外接收数据,中断方式,并通过串口发送 * 晶振:11.0592M*/ #include STC12c5a.h #include 1602.h typedef unsigned char uint8; sbit Ir_Pin = P3^3; uint8 Ir_Buf ; //用于保存解码结果 extern int keynum=1; void int1_init(vo
[单片机]
基于51单片机的GPS公交车自动报站系统
一.硬件方案 本设计主要是制作出一款基于51单片机的GPS自动报站公交车,根据设计需求,硬件部分应该具有的功能有,GPS定位、语音播报、液晶显示、按键操作以及相应的指示灯提示,所以本次设计采用了STC89C58RC单片机作为主控芯片、GPS模块采用了VK2828U7G5LF、液晶显示部分采用了LCD12864液晶、音频播放部分采用了Miniplay模块,以及按键电路、指示灯提示电路还增加了时钟显示电路。整体硬件框图如图: 二.设计功能 (1)本设计播报主要有两种方式,其一是当到达播报站点时,司机按下对应按键进行播报;另一种是全自动语音播报方式,到达播报站点时,设计会自动进行播报。 (2)自带时钟显示,并且设有GPS自动校时
[单片机]
基于<font color='red'>51单片机</font>的GPS公交车自动报站系统
80C51单片机产生几种基本波形的方法
  简介:介绍了基于80C51单片机产生几种基本波形的方法。采用微处理器兼容的14位数模转换器MAX7534,高速,稳定,具有良好的线性。用户通过按键选择输出需要的波形,波形精度能够满足一般的使用条件。   本文利用80C51单片机外接数模转换器和I/V转换电路,由用户通过按键选择输出实验中经常使用到的几种基本波形:方波、锯齿波、正弦波。方波由80C51单片机内部自带的计数器/定时器产生,并由用户通过小键盘选择波形周期。与微处理器兼容的14位数模转换器MAX7534将数字量转换为模拟量电流信号,通过I/V转换电路得到双极性的锯齿波和正弦波信号,波形保证了他的精度和平滑、稳定。   1硬件电路设计   80C51单片机时钟电
[单片机]
80C<font color='red'>51单片机</font>产生几种基本波形的方法
基于51单片机的多点温度控制系统设计
摘 要:针对目前壁挂炉采暖中温度控制不准确的现状,以单片机为控制中心,采用Dalias公司的“一线总线”数字化温度传感器DSl8820以及脉冲控制器件,设计一款多点测温及温度控制系统;系统能够同时测量多点温度,并根据温度设定实时控制各回路通断及壁挂炉的燃烧与停止,从而进一步提高居室的舒适性及采暖系统的经济性。 关键词:51单片机;DSl8820;多点温度检测;温度控制系统 随着生活水平的提高,人们对家居需求由面积需求变为舒适需求。地板采暖采用辐射方式供暖,符合人体生理需求曲线,如果控制系统选取得当,不仅可以提高房间舒适度,更可以使系统运行费用降低许多。如今一般是在典型位置安装一个温控装置,温控装置连接到壁挂炉,温控器根据室温
[工业控制]
基于<font color='red'>51单片机</font>的多点温度控制系统设计
以AT89C51单片机为智能单元的全自动太阳跟踪系统设计
引言 随着社会经济的快速发展,人类所面临的能源问题越来越突出,太阳能作为一种清洁能源,无疑受到各国的普遍重视。在相同条件下,光照强度越大,太阳能电池输出功率越大。因而增大太阳能电池受光面的光照强度,就可增大太阳能电池输出功率。除了提高太阳光电池本身的转换效应和提高蓄电池充放电效应外,对太阳的自动跟踪是太阳光伏发电系统中另一种提高转换效率的有效手段。因此,在太阳能的利用过程中,实施太阳跟踪是很有必要的。 对太阳进行跟踪的方法很多,但不外乎为采用确定太阳位置所用的两种坐标系统,即赤道坐标系和地平坐标系,并分为双轴跟踪和单轴跟踪。单轴跟踪已在很多文献作了介绍,本文要讨论的为双轴跟踪。为了叙述方便,在以后的陈述中将两种坐标系下的整个系
[单片机]
以AT89C<font color='red'>51单片机</font>为智能单元的全自动太阳跟踪系统设计
51单片机 串口发送数据(只是发送)
51单片机 串口发送数据(只是发送)用于调试。 #include reg51.h #define uchar unsigned char #define uint unsigned int #define XTAL 11059200 // CUP 晶振频率 #define baudrate 9600 // 通信波特率 /************************************************* 函数:uart_init 功能:初始化串口 出口:void 入口:void *************************************************/ void uart
[单片机]
51单片机在表决系统中的应用
0 引言 随着我国社会主义民主的提高,表决器作为一种公正,迅速准确的表决工具,应用日益广泛。通过表决器,与会代表只需根据会议议程轻按表决器按钮,即可轻松地完成从签到到各类议案的电子表决工作。在不记名模式下,系统特有的保密功能使得代表按键能最大限度地反映其真实意愿,而不用担心被人窥视或记录追查。表决结果可自动统计产生,并根据会议要求以图文或报表方式来显示和打印。 1 设计方案 系统包括PC机:用于文件的编辑储存、打印、显示表决结果。大屏监视器显示表决结果及其它文件。表决采集网络:采集各代表的表决结果并做处理。经对系统功能要求的分析,认为单片机80C51最为适合多点分散,每单点功能相对简单的系统。从而组成主-从型“单片机网”
[单片机]
<font color='red'>51单片机</font>在表决系统中的应用
基于51单片机的电子钟闹钟温度显示设计
仿真图proteus7.8及以上 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:S0057 1.主要功能: 基于51单片机AT89C51/52(与AT89S51/52、AT89C51/52、STC89C51/52等51内核单片机通用) 1、通过DS18B20检测环境温度。 2、能通过LCD1602显示年月日时分秒和温度。 3、有整点报时和闹钟功能。 4、具有高低温报警功能,上下限值可调,蜂鸣器提醒。 5、可以通过按键调整年月日时分秒和闹钟功能,具有闰年判断,自动计算星期功能。 需注意仿真中51单片机芯片是兼容的,AT89C51,AT89C52是51单片机的具体型号,内核是一样的。相同的原理图里,无论stc还是
[单片机]
基于<font color='red'>51单片机</font>的电子钟闹钟温度显示设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved