首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
MCU 单片机技术
» 51单片机最小系统原理及编程电路设计
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
51单片机最小系统原理及编程电路设计
发短消息
加为好友
我是MT
当前离线
UID
1023166
帖子
6651
精华
0
积分
3328
阅读权限
90
来自
燕山大学
在线时间
230 小时
注册时间
2013-12-19
最后登录
2016-1-5
论坛元老
UID
1023166
性别
男
来自
燕山大学
1
#
打印
字体大小:
t
T
我是MT
发表于 2014-3-15 14:47
|
只看该作者
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”就可以让发光二极管闪烁发光。
下面以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
1.7输出高电平"1",熄灭发光二极管
ACALL DELAY ;调用延时子程序延时一段时间,让发光二极管熄灭一段时间
AJMP MAIN ;跳转到程序开头重复执行
;******** 下面是延时子程序 ********
DELAY: MOV R7,#255
Y1: MOV R6,#255
DJNZ R6,$
DJNZ R7,Y1
RET ;延时子程序返回
END ;程序结束
启动“
Keil
uVision2”单片机集成开发环境,输入上面的源程序,最后编译得到一个lich1.hex目标文件,用编程器把lich1.hex写入单片机AT89S51中,插到实验板上就可以看到第一个程序的运行效果了(P1.7端口的发光二极管不停闪烁)。这就是我们学习的第一个最简单的程序,是一个完整的单片机开发过程,再复杂庞大的程序都是由简单的语句、程序构成的,希望该教程能给初学者对单片机开发有一个感性的认识。不懂如何在Keil中编辑源程序的初学者请看
keil教程
图4:ISP编程器将产生的目标程序lich1.hex写入AT89S51单片机
图5:单片机插入实验板上程序的运行效果
单片机的学习是一个循序渐进的过程,制作单片机最小系统,并彻底了解其原理,能把你快速带入单片机世界的大门,这只是一个最简单的制作,有什么问题,欢迎大家回复帖子。
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议