C51单片机应用设计与技能训练(第2版)课件全套 李法春 任务1-9 利用单片机设计交通信号灯- 设计六轴机械臂控制系统_第1页
C51单片机应用设计与技能训练(第2版)课件全套 李法春 任务1-9 利用单片机设计交通信号灯- 设计六轴机械臂控制系统_第2页
C51单片机应用设计与技能训练(第2版)课件全套 李法春 任务1-9 利用单片机设计交通信号灯- 设计六轴机械臂控制系统_第3页
C51单片机应用设计与技能训练(第2版)课件全套 李法春 任务1-9 利用单片机设计交通信号灯- 设计六轴机械臂控制系统_第4页
C51单片机应用设计与技能训练(第2版)课件全套 李法春 任务1-9 利用单片机设计交通信号灯- 设计六轴机械臂控制系统_第5页
已阅读5页,还剩444页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机应用技术任务一

单片机控制单灯亮灭■

发布任务■

任务准备■

案例示范■

拓展延伸■

任务作业電子工業出版社PUBLISHING

HOUSEOFELECTRONICSINDUSTRY任务描述假设城市十字路口的红、绿、黄交通信号灯是由单片机控制

的,本任务实现一个路口的信号灯亮灭,即让单片机连接3个发光二极管(颜色分别为红、绿、黄)代表红灯、绿灯和

黄灯,控制任意一只灯亮,而其他两个灯不亮。任务要求由PO口的三个引脚连接3只发光二极管(PO口各脚分别连接

红、绿、黄三种颜色),分别实现如下功能:(1)让红灯亮,其他两只灯不亮;(2)让绿灯亮,其他两只灯不亮;(3)让黄灯亮,其他两只灯不亮。实现方法1.利用Proteus仿真运行,实现任务要求的功能。2.在开发板等实训设备上按任务要求连线,将目标程序下

载到单片机上运行。電子工業出版社

·PUBLISHINGHOUSEOFELECTRONICSINDUSTRY任务一

单片机控制单灯亮灭任务单教学导航教知识重点单片机应用系统设计流程,单片机基本结构知识难点单片机应用系统设计流程推荐教学

方式以任务入手,通过单片机控制单只发光二极管的亮灭任务

的完成初步了解单片机应用系统设计的基本流程及单片机的基本结构,熟悉单片机应用系统设计的开发环境。建议学时2学时学推荐学习

方法通过对教师提供的电路图和给定的程序调试,初步学会使

用Proteus和Keil

C开发环境完成电路图的设计、程序编

辑、编译、调试与仿真运行方法,理解相关理论知识,学会应用。必须掌握的理论知识单片机基本结构;单片机应用系统设计流程;数制;编码必须掌握

的技能利用Proteus8设计电路图,编辑、编译、调试与仿真运行

C51程序的初步过程。任务准备1.1单片机应用系统设计流程

電子工業出版社

·任务一

单片机控制单灯亮灭PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY任务一

单片机控制单灯亮灭1.1

单片机应用系统设计流程1.1.1

什么是单片机应用系统

=1

.

单片机■单片机是将CPU、存储器、定时/计数器、I/O

接口电路等集成在一个芯片的微型计算机,也称单片微型计算机。

Intel公司的MCS-51

系列单片机属高档8位单片机,MCS-51

系列单片机是以8051为核心电路发展起来的,包

括51子系列(基本型)和52子系列(增强型)两大类,因此它们都具有MCS-51的基本结构与软件特征,具有很

强的兼容性。

電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY系

列片内存储器(字节)定时器/

计数器并行I/O串行I/O中断源制造工艺无ROM片内ROM片内EPROM片内RAMMCS—51子系列803180514K87514K1282×16位4×8位15HMOS80C3180C514K87C514K1282×16位4×8位15CHMOSMCS—52子系列803280528K87528K2563×16位4×8位16.HMOS80C23280C2528K87C2528K2563×16位4×8位17CHMOSFlashRom单片机:89X51

89C51

、89S51等。

電子工業出版社

·MCS—51系列单片机配置任务一

单片机控制单灯亮灭PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY任务一

单片机控制单灯亮灭MCS-51系列单片机的结构框图TO

T1中断系统INTO

INT1

電子工業出版社

·并行接口PO

P1

P2

P3串行接口TXDRXDRAM

定时/计数器时钟电路

ROMCPUPUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY1.2.1单片机的内部结构(1)

1个8位的中央处理器(CPU,

具有位处理功能)

和1

个全双工的异步串行口。(2)

2

个16位定时器/计数器(3)3个逻辑存储空间●64KB

程序存储器空间(包括4KB片内程序存储器ROM●

128B

内部数据存储器(RAM)●

64KB数据存储器空间(4)

4个双向并可按位寻址的I/O口(5)

5

个中断源,具有两个优先级(6)片内还有振荡器和时钟电路任务一

单片机控制单灯亮灭電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY1.1.1

什么是单片机应用系统2.

单片机应用系统■单片机应用系统就是以单片机为核心,连接输入

输出、显示等相关电路,为完成某项具体任务而

研制开发的用户系统。其实单片机连接了相关电

路后,并不能让他自动工作,还要编写运行程序■单片机应用系统不仅包括硬件电路,而且包括软

件程序,二者缺一不可。

電子工業出版社

·任务一

单片机控制单灯亮灭PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY任务一

单片机控制单灯亮灭1.1.2

单片机应用系统开发的一般方法绘制印制板图、制作硬件在样机中运行软件软硬件修改与完善反复调试以达设计要求现场运行样机组装定型、软件固化编写技术报告及说明书任务分析明确设计目标确定功能、性能要求制定总体方案系统功能分配确定软硬件功能关系

拟定调试方案确算法与数据结构

程序模块划分绘制程序流程图程序编写仿真调试电路和程序修改与完善

反复调试以达设计要求绘制硬件原理图

配置元器件硬件功能分调硬件制作收

与联调工業出版社

·确定任务总体设计考考机型硬件设计软件设计任务一

单片机控制单灯亮灭1.1.2

单片机应用系统开发的一般方法1.

确定任务2.

总体设计3.

硬件设计4.

软件设计5.软件调试6.

硬件制作与联调7.

考机定型

電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY1.

确定任务■进行广泛的市场调查,了解该系统的市场应用

概况,分析系统当前存在的问题,研究系统的

市场前景,确定系统开发设计的目的和目标。■对系统的具体实现进行规划,包括应该采集的

信号的种类、数量、范围,输出信号的匹配和

转换,控制算法的选择,技术指标的确定等。任务一

单片机控制单灯亮灭

電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY2.

总体设计■根据任务的繁杂程度和技术指标要求选择机型。■选择系统中要用到的其它外围元器件,如传感器

、执行器件等。■

对软件和硬件进行分工●

能够由软件实现的任务就尽量用软件来实现●要求大致规定各接口电路的地址、软件的结构和功能、上下位机的通信协议、程序的驻留区域及工作缓冲

電子工業出版社

·任务一

单片机控制单灯亮灭PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY硬件的设计是根据总体设计要求,在选择完单片

机机型的基础上,具体确定系统中所要使用的元

件,并设计出系统的电路原理图。(1)单片机电路设计:主要完成时钟电路、复位电

路、供电电路的设计。(2)扩展电路和输入/输出通道设计:主要完成程序

存储器、数据存储器、

I/O

接口电路、传感器电路、放

大电路、多路开关、

A/D转换电路、开关量接口电路

、驱动及执行机构的设计。(3)控制面板设计:主要完成按键、开关、显示器

、报警等电路的设计。16電子工業出版社PUBLISHING

HOUSE

OF

ELECTRONICS

INDUSTRY3.

硬件设计任务一

单片机控制单灯亮灭·4.

软件设计■

用于管理单片机系统工作的监控程序●尽可能利用现成单片机系统的监控程序。许

多单片机开发系统的监控软件功能相当强,

并附有丰富的实用子程序,可供用户直接调

用,例如键盘管理程序、显示程序等。■

用于执行实际具体任务的功能程序●要根据应用系统的功能要求来编程序。例如

,外部数据采集、控制算法的实现、外设驱动、故障处理及报警程序等等。软件设计通

常采用模块化程序设计、自顶向下的程序设任务一

单片机控制单灯亮灭電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY计方法。5.

软件调试■利用Proteus

等开发工具进行仿真调试,除发现

和解决程序错误外,也可以发现硬件故障。■软件调试的原则是先单步后连续、先分块后组

合、先独立后联机,软件调试一般是各个模块

、各个子程序分别调试,最后联起来统调。■在调试过程中,要不断调整、修改系统的硬件

和软件,直到其正确为止。任务一

单片机控制单灯亮灭電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY6.

硬件制作与联调■根据硬件电路图绘制印制板图,制作电路板和样机组装,进行样机联调,包括电路板加电运

行后观察其运行状态,电源等是否点亮、各电

容电阻有无过热等,用万用表测量各模块和端

口,看其是否有大电压、大电流。通过调试,排除系统的硬件电路故障,包括设

计性错误和工艺性故障。必要时要对原电路图

进行修改完善。任务一

单片机控制单灯亮灭電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY7.

考机定型■样机联调运行正常后,将软件目标程序下载到

芯片上中,脱机运行。■到生产现场投入实际工作,检验其可靠性和抗

干扰能力,直到完全满足要求,系统才算研制

。任务一

单片机控制单灯亮灭電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY20案例示范【案例1】

单片机控制一个发光二极管亮■让单片机连接绿、黄、红三个颜色的发光二极管

(代表一个路口的交通信号灯),要求一个发光

二极管亮(假定让最右边的红灯亮),请实现这

个功能。21

22

23任务一

单片机控制单灯亮灭電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY■

步骤1:确定任务■

步骤2:总体设计■

步骤3:

硬件设计■

步骤4:软件设计#include

<reg51.h>void

main(void){PO=0xfb;//

给并行输入/输出口PO

赋值,该值为二进制数11111011while

(1);■

步骤5:软件调试案例完成步骤:任务一

单片机控制单灯亮灭電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY1.2Proteus仿真软件的使用=1.Proteus简介=2.Proteus主界面3.

原理图绘制拓展延伸任务一

单片机控制单灯亮灭電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY1.Proteus简介模块功能说明Schematic

CaptureISIS原理图设计和仿真ISIS:智能原理图输入系统交互式仿真、图表仿真虚拟激励源丰富的辅助工具PCB

Layout自动布线布局覆铜操作Gerber

View功能强大的PCB辅助工具PCB:印制电路板VSM

StudioIDEVSM

StudioVSM:虚拟系统模型支持程序单步、中断调试支持多种嵌入式微处理器不仅可仿真

51、AVR、PIC、MSP430、Basic

Stamp和HC11等多种MCU,还可仿真GAL

Device(AM29M16

等)、DSP(TITMS320F2802X)、ARM(Philip

ARM7)/Cortex和8086(Intel)等。硬件中断源、Active

Popups任务一

单片机控制单灯亮灭電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY(1)互动的电路仿真(2)仿真处理器及其

外围电路(1)仿真元器件资源(2)仿真仪表资源(3)图形显示功能(4)

Proteus

可提供的调试手

段(1)

用Proteus实现软件仿

真(

2

)

用Proteus单独仿真1.Proteus简介Proteus软件特点Proteus所提供的资源任务一

单片机控制单灯亮灭電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRYPROTEUS仿

5香

S回

D鲁主页×PROTEUS

DESIGN

SUITE

8.9入门教程●原理图设让·PCB布版

·

仿直●旧版本移植向导*新特性开始设计开工程新建工程新建流程图打开示钢工程最近打开的工程D1个人资料教材C51单片机第二版室例家例22ADCQ831ladcQ831pdspnD:1个人资料教材C51单片机第二版案例案例32六轴机械臂控制墓单kboard.pdspoD.1个人资料教材C51单片机第二版案例案例23温度测量计ladc0831.pdspnD:1个人资料教材C51单片机PAEE培训从外部ROM启动istartexrom.pdspriD1个人资料教材C51单片机PAEE培训ADCQ831ADC

pdspi更

多帮助中心盐助主页原理图设让PCB布版仿直可视化设让最新消息Proteus专业设计套件新版本可用描述ProteusProfessiona8.10SP3[8.10.29560]发布日期18/052020USC有效确定下载手动升级检测,口忽略测试版更新New

in

Version

8.10GerberX2FileOutput

(Updated

Length

Matching

(Updated)(C)Labcenter

Electronies

1989-2019中文版由广州风标教育技术股份有限公司提供发布版本8.9SP2(28501)具有高级仿真功能WWW

labcenter

com注册给:TheOponfnieraity

of

GuangdongTheOpen

lniversityofGuangdong用户编号:12-14050-080网络许可证有效期:06/09/2020风

育(

):www.fengbiaoedu

com中文

社区(普客图

):WWW.Windows10(x54)v10.00.Bul1d

15363●Dif

Pair

Routing

.Design

ReportingPCB

Des

This

videos

showsDesign

Vaniants(Updated)·Poweredfentdu

tion

o

Miscellaneous

Updates

V8.10

New

in

VerslooBorus·Pick

and

Place

Confourator+Layer

Stackup(Updated)·EDIF2

Fie

ImporterSamacsysLibrary

Import

Design

Rules-Important!·Zone

Via

Stitching.DirectLibraryPart

Importer

DesignVariants-Important!LengthMatching.PCBPanelization

(Updated).UItraLibranian

ImportPowerPlanes-ImportanttAutoCompleteRoutingSnapEDALibrary

Import·Layer

Stackup-Important!Getting

Started

Moviesc

nstalaton

and

Fing

New

Project(PCB)cImport

Project

(PCB)2.Proteus主界面(1)Proteus的启动>双击桌面的Proteus8

Professional图标>单击“开始”→“Proteus

8Professional”→“Proteus

8Professional”任务

单片机控制单灯亮灭電子工紫出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY文件(F)系统(Y)帮助(H)五

;2.Proteus主界面配件2D

图形菜单工真栏图编辑窗led-Proteus

8

Professional-

原理图设计文件(F)

编辑(E)

视图(V)

工具(T)

设计(N)图表(G)

调)库(L)

模版(M)

系统(Y)

帮助(H)任务一

单片机控制单灯亮灭電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY方向工

真栏仿真工具预览

窗口元件列表PLDEVICES+5600.0在“Keywords”处键入要选取的元件,如AT89C51,在预览窗口中可以看到要选择

的元件;在库列表中双击该元件,元件就出现在ISIS的元件列表中,也可以按Enter健或“确定”按钮。3.原理图绘制界面1.从元件库中选取元件通过以下

两种方法,可以弹出“元件库选取”对话框。任务

单片机控制单灯亮灭①单击元件列表之上的“P”按钮②按P键(在英文输入法下)電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY3.原理图绘制界面2.

放置元件■

在元件列表中,单

击要放置的元件,

如选中AT89C51,再在原理图编辑窗

口中单击就放置了一

个元件。也可以在按下左键

选中元件后,移动

鼠标,在合适的位任务一

单片机控制单灯亮灭置释放。PDDVAraP3.4/□P3B電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY黄P13P16P1.7TS05■

用鼠标指针指向对象并右击可以选中该对象。该

操作可使选中的对象高亮显示,然后可以对其进

行编辑。选中对象时该对象上的所有连线同时被

。■

要选中一组对象,可以通过依次右击每个对象来

选中每个对象的方式;也可以通过右键拖出一个

选择框的方式,但只有完全位于选择框内的对象

才可以被选中。■

在空白处右击可以取消所有对象的选择。3.原理图绘制界面任务一

单片机控制单灯亮灭(3)选中对象電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY(4)删除对象■用鼠标指向选中的对象并右击可以删除该对象,同时删除该对象的所有连线。也可以选中对象,

然后按键盘上的Delete(删除)键删除。3.原理图绘制界面任务一

单片机控制单灯亮灭電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY■

(1)拖动一个对象:若对象位置需要移动,将鼠标移到该对象上,单击

鼠标右键,此时我们已经注意到,该对象的颜色已变至红色,表明该对象

已被选中,按下鼠标左键,拖动鼠标,将对象移至新位置后,松开鼠标,

完成移动操作。该方式不仅对整个对象有效,而且对对象所属的网格标号

也有效。如果误拖动了一个对象,则所有的连线都将很乱,可以使用Undo

(

消3.原理图绘制界面)命令撤销操作,恢复原来的状态。■

(2)拖动多个对象:选中多个对象,单击主工具栏块移动图标

移动被选中的所有对象。任务一

单片机控制单灯亮灭電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY”可以■许多类型的对象有一个或多个属性标签附着。例

如,每个元件有一个reference

(参考)标签和一

个value(值)标签。单击相应的标签,将其移动

到合适位置,可以很容易地通过移动这些标签使

电路图看起来更美观。3.原理图绘制界面(6)拖动对象标签U1XTAL1XTAL2RSTPSENP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51P0.0/AD0

P0.1/AD1P0.3/AD3

P0.4/AD4P0.5/AD5

P0.6/AD6P0.7IAD7P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7A15P3.0/RXD

P3.1/TXD

P3.2/INTO

P3.3/INT1

P3.4/T0

P3.5/T1P3.6RP3.7RD任务

单片机控制单灯亮灭電子工紫出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY353321242711929①编辑单个对象的步骤选中对象;>

单击对象。编辑对象的对话框如右图所示。②以特定的编辑模式编辑对象的步骤>

用鼠标指向对象;>

使用键盘Ctrl+E键。③文本脚本的编辑:在鼠标指针没有指向任何

对象,该命令将对当前的图形进行编辑。3.原理图绘制界面任务一

单片机控制单灯亮灭>

“E”;>

在弹出的对话框中输入元件的名称。编辑元件元件参考(B):元件值V):ModelType:ForwardVoltage:Fulldrivecurrent:PCB

Package:AdvancedProperties:BreakdownVoltageOtherProperties:YELLOWAnalog10mA[INotSpecified]▽4V(7)编辑对象隐藏:隐藏:Hide

AIlHide

AIlHideAllHide

AI電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY本元件不进行仿真(S)本元件不用于PCB

制版L)使用文本方式编辑所有属性A)确定(Q)取

消(C)附加层次模块M)(8

)布线ISIS中没有布线的按钮,这是因为ISIS的智能

化使用户想要布线时进行自动检测。①在两个对象间连线>

单击第一个对象连接点;②架果要使ISIS自动给出走线路径,只需单击>重复的布线完至复制了上一根线的路径。>如果要自己设定走线路径,需在想要拐点处单击鼠标。3.原理图绘制界面任务一

单片机控制单灯亮灭電子工業出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY③线路自动嚣径器>线路自动路径器为用户省去了必须标明每根

线的具体路径的麻烦。自动接线功能默认是

打开的,可通过使用“工具→

自动连线(W命令来关闭或打开。尽管连线一般使用连接和拖动的方法但也有一訾特殊方法可以使用。选中勘路径

端,就会现一个可以拖动的角。3.原理图绘制界面任务一

单片机控制单灯亮灭電子工紫出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY①编辑单个对象标签的步骤:>

选中对象;>

单击对象。②网络标号>将输入法调制大写模式,然后按字母A;>

在字符串后的文本框输入NET=_#;3.原理图绘制界面帮助:对象

标准属性元件

REF,VALUE,DEVICE,PINSWAP子电路

REF,CIRCUIT终端

NET,TYPE,SYMBOL端口

NET,TYPE,SYMBOL引脚

NAME,NUM,TYPE,SYMBOL字符串中的“#”可用于指定连续的计数值确定(O)

取消(C)端点、连线和总线都可以像元件一样编辑,需使用“连

线标号模式”工具。>把鼠标放在需要添加标号的连线上,此时鼠标旁边就

会出现一个绿色的方块,代表可以放标号。字符串(S):

NET=P1#计数初值(C)增量(1):操作A)O移除O重命名O

显示O隐藏O调整大小应用到(P):O

单击对象O

当前选中对象◎全局选中对象

O

全体对象(8)编辑对象标签任务

单片机控制单灯亮灭電子工紫出版社

·PUBLISHING

HOUSEOF

ELECTRONICS

INDUSTRY模块一

MCS-51单片机基本结构与Proteus软件1.1

单片机基本结构1.1

单片机基本结构■

MCS-51系列单片机都是以8051为核心电路发展起来的,包括51

子系列(基本型)

和52子系列(增强型)两大类,因此它们

都具有MCS-51的基本结构与软件特征,具有很强的兼容性。系

列片内存储器(字节)定时器/

计数器并行I/O串行I/O中断源制造工艺无ROM片内ROM片内EPROM片内RAMMCS—51子系列803180514K87514K1282×16位4×8位15HMOS80C3180C514K87C514K1282×16位4×8位15CHMOSMCS—52子系列803280528K87528K2563×16位4×8位16.HMOS80C23280C2528K87C2528K2563×16位4×8位17CHMOSMCS—51系列单片机配置Flash

Rom单片机:89X51——89C51

、89S51等。1.1.1

MCS-51系列单片机的内部结构(1)

1个8位的中央处理器(CPU,

具有位处理功能

)和1

个全双工的异步串行口。(2)

2个16位定时器/计数器(3

)3

个逻辑存储空间⑩64KB程序存储器空间(包括4KB片内程序存储器ROM⑩128B内部数据存储器(RAM)⑩64KB数据存储器空间(4)

4

个双向并可按位寻址的I/O

口(5)

5

个中断源,具有两个优先级

(6片内还有振荡器和时钟电路SPSFR特殊功能

寄存器中断、串行口

及定时器P3锁存器P3驱动器P3.0~P3.7ACC暂存2

暂存1ALUPSWP1锁存器VCC

一VSSPSENALEEARESET用EPROM,为

8751程序地址

寄存器

缓冲器PC

加1PCDPTRP0.0~P0.7P0驱动器RAM

P0锁存器指令寄存器指令译码器个

定时及控制内部时钟外接晶振P2.0~P2.7P2驱动器P1驱动器P1.0~P1.7RAM

地址寄存器无ROM为8031P2锁存器寄存器B1.1.2

MCS-51系列单片机的结构框图TO

T1并行接口PO

P1

P2

P3串行接口TXDRXD中断系统INTO

INT1RAM

定时/计数器时钟电路

ROMCPU1.1.3MCS-51系列单片机CPU的结构1.CPU

结构MCS-51内部有一个8位CPU(8

位是

CPU

的字长,指CPU对数据的处理是按一个

字节进行的),它象通常的微处理器一样

,也是由算术逻辑运算单元ALU、定时控

制部件(即控制器)和各种专用寄存器等

组成的。ACC

SP运算器

(ALU

、专ALU用寄存器)中断、串行口和定时器DPTR由定时和控制部件构成的控制器,包括

定时控制逻辑、指令寄存器、指令译码

器、数据指针DPTR、程序计数器PC、堆栈指针SP

、RAM

地址寄存器以及16

位地址缓冲器等。B寄存器

TMP1TMP2缓冲器PC增1程序地址寄

存器指

器指

器定

制PSWPC2.CPU的专用寄存器组■

MCS-51的CPU专用寄存器组包括6个寄存器⑩程序计数器PC⑩累加器ACC⑩寄存器B⑩程序状态标志寄存器PSW⑩堆栈指针SP⑩数据指针DPTR。■除PC

外,其余5个寄存器均为可编程可访问寄存器■专用寄存器组中只有PC

在物理上是独立的(即没

有与其他器件共同编码的物理地址),其余5个寄

存器都有相应的直接地址(称字节地址)。(1)程序计数器PC(Program

Counter)是一个独立的计数器,用于存放下一条待执行指令的地址。>

PC

的基本工作过程可以描述为:PC

中的数作为指令地址输出给程序存储器,程序存储器按此地址输出指令字节,同时PC本身

自动加1,指向下一条指令。>

MCS-51的PC

是一个16位寄存器,其寻址范围是64KB(即21⁶Byte)。工作寄存器组选择控制位若A中有奇数个“1”,则P

置位,否则清用户通用状态标志辅助进位标志进

器CyACF0RS1RSOOV·P奇

位保留位溢出标志(2)程序状态字PSW(Program

State

Word)D₇

D₆D₅

D₄

D₃

D₂

D₁

D₀PSW单片机应用系统开发流程单片机应用系统开发的一般方法单片机应用系统是为完成某项具体任务而研制开发的用户系统,可以分为智能仪器仪表和工

业测控系统两大类。虽然每个系统都有很强的针

对性,结构和功能也不相同,但它们的开发过程

和方法大致相同,1.

确定任务■在系统设计前,首先要进行广泛的市场调查,了

解该系统的市场应用概况,分析系统当前存在的

问题,研究系统的市场前景,确定系统开发设计

的目的和目标。■对系统的具体实现进行规划,包括应该采集的信

号的种类、数量、范围,输出信号的匹配和转换,

控制算法的选择,技术指标的确定等。2.

总体设计在对应用系统进行总体设计时,应根据应用系统提

出的各项技术性能指标,拟订出性价比最高的一套方

案。首先,应根据任务的繁杂程度和技术指标要求选

择机型。选定机型后,再选择系统中要用到的其它外

围元器件,如传感器、执行器件等。在选取定单片机

机型和器件时,应注意:(1)性能特点要适合所要完成的任务,避免过多

的功能闲置。(2)性能价格比要高,以提高整个系统的性能价

格比

。(3)结构原理要熟悉,以缩短开发周期。(4)货源要稳定,有利于批量的增加和系统的维■

用硬件实现速度比较快,节省CPU的时间,但系统的硬件接线复杂、系统成本较高。■

用软件实现则较为经济,但要更多地占用CPU的时间■

能够由软件实现的任务就尽量用软件来实现,

以降低成本,简化硬件结构。硬件和软件如何分工?3.

硬件设计硬件的设计是根据总体设计要求,在选择完单片机机型

的基础上,具体确定系统中所要使用的元件,并设计出系

统的电路原理图,经过必要的实验后完成工艺结构设计、

电路板制作和样机的组装。主要硬件设计包括:(1)单片机电路设计:主要完成时钟电路、复位电路、

供电电路的设计。(2)扩展电路和输入/输出通道设计:主要完成程序存储

器、数据存储器、I/O

接口电路、传感器电路、放大电路、多路开关、

A/D

转换电路、开关量接口电路、驱动及执行机

构的设计。硬件设计应注意:1)程序存储器。

一般选用容量较大的EPROM芯片,如

2764(8KB)、27128(16KB)

或27256(32KB)等。2)

数据存储器和I/O

接口。□根据系统功能的要求,如果需要扩展外部RAM或□I/O接口芯片一般选用8255或8155(带有256KB静态RAM)。

这类芯片具有口线多、硬件逻辑`简

单等特点。若口线要求很少,且仅需要简单的输入或输出功能,则可用不可编程的TL

电路或CMOS

路。□A/D

和D/

A电路芯片主要根据精度、速度和价格等来选用,同时还要考虑与系统的连接是否方便。I/O口,那么RAM芯片可选用6216(2

KB)、6264(8KB)或62256

(

32KB)

。3)地址译码电路。通常采用全译码、部分译码或线选法,应

考虑充分利用存储空间和简化硬件逻辑等方面的问题。MCS-51系统

有充分的存储空间,包括64

KB程序存储器和64

KB数据存储器,所

以在一般的控制应用系统中,主要是考虑简化硬件逻辑。当存储和

I/O

芯片较多时,可选用专用译码器74

S138或74

LS139等。4)总线驱动能力。MCS-51系统单片机的外部扩展功能很强,但4个8位并行口的负载能力是有限的。

PO口能驱动8个TTL

电路,P1~P3口只能驱动3个TL

电路。在实际应用中,这些端口的负载不

应超过总负载能力的70%,以保留一定的余量。如果驱动较多的

TTL电路,则应采用总线驱动电路,以提高端口的驱动能力和系统

的抗干扰能力。数据总线宜采用双向8

路三态缓冲器74

LS245作为总线驱动器,

地址和控制总线可采用单向8路三态缓冲区74

LS244作为单向总线驱

。硬件设计应注意:(3)

控制面板设计:■主要完成按键、开关、显示器、报警等电路的设

计。4.

软件设计单片机应用系统的软件设计是研制过程中任务最繁重的一项

工作,难度也比较大。单片机应用系统的软件主要包括两大部

分:用于管理单片机微机系统工作的监控程序:应尽可能利

用现成微机系统的监控程序。许多单片机开发系统的监控

软件功能相当强,并附有丰富的实用子程序,可供用户直

接调用,例如键盘管理程序、显示程序等,可以直接选用。用于执行实际具体任务的功能程序。要根据应用系统的

功能要求来编程序。例如,外部数据采集、控制算法的实

现、外设驱动、故障处理及报警程序等等。软件设计通常

采用模块化程序设计、自顶向下的程序设计方法。5.

系统调试—

包括硬件调试和软件调试■硬件调试的任务是排除系统的硬件电路故障,包括设计性错误和工艺性故障。软件调试是利用开发工具进行在线仿真调

试,除发现和解决程序错误外,也可以发现硬件故障。■程序调试一般是一个模块一个模块地进行,一个子程序一个

子程序地调试,最后联起来统调。在调试过程中,要不断调整、修改系统的硬件和软件,直到其正确为止。联机调试运行正常后,将软件固化到EPROM中,脱机运行,并到生产现场

投入实际工作,检验其可靠性和抗干扰能力,直到完全满足要求,系统才算研制成功。>在样机中运行软件>软硬件修改与完善>反复调试以达设计要求>现场运行样机>组装定型、软件固化>编写技术报告及说明书>任务分析>确定功能、性能要求>制定总体方案系统功能分配>确定软硬件功能关系

拟定调试方案>确定算法与数据结构>程序模块划分>绘制程序流程图>程序编写与仿真调试>绘制硬件原理图

>绘制印制板图>配置元器件>硬件功能分调任确务定设总

计体联样

调机定考

型机硬件设计软件设计案例示范1

.确定任务■本任务是在单片机最小系统下,由P2

、PO口连接12个发光二极管,分别代表四个路口的红、绿、黄灯,

初始态为四个路口的红灯全亮之后,东西路口的绿

灯亮20秒,南北路口的红灯亮,东西路口方向通车;延时一段时间后,东西路口的绿灯熄灭,黄灯开始

闪烁,每隔1s闪烁1次,闪烁3次后,东西路口红灯

亮,而同时南北路口的绿灯亮20秒,南北路口方向

开始通车;延时一段时间后,南北路口的绿灯熄灭,

黄灯开始闪烁,每隔1s闪烁1次,闪烁3次后,再切

换到东西路口的绿灯亮,东西方向通车;之后重复

以上过程。2.

硬件电路设计■根据本任务的要求,选用AT89S51,配备晶振电

路和复位电路,晶振频率为12MHz。为了方便线路连接,PO口的低6位分别接西、北路口的红、黄、绿灯(发光二极管,采用共阳极的连接方式),

P2口的低6位分别接东、南路口的红、黄、绿

。2.

硬件电路设计C1

C23

30pX1CRYSTALR7R8C311FYELLO0D6GREEND7REDD3GREEND4REDD2YELLO0D8YELLOWU1XTAL2RSTPSENP10P1.1P12P13P1.4P15P16P1.7AT89551D1REDD9GREENPD几ADD

PD.1AD1PD2.D2PD3.D3

PD.4RD4

PD.5AD5

PD6RD6

PD.78D7P2几

8P2.189

P220810

P23011

P2.4012

P25A13

P26014

P2.7815P3DRXD

P3.1/TXDP321NTDP3.3ANT1P3.4/TDP35/T1P350RP3.7/RDD12GREEND11YELLOWD10RED3936335

3332212223242525

Z7

Z1但1112131415164533RP2RP1D5S13.软件设计■根据本任务要求及设计的硬件电路图,各路口的灯亮的规律与P2、

PO口的取值有关系到,其规律如下表所示。交通灯控制系统真值表规

狸F2.5F2.4F2.3F2.2F2.1F2.0F0.5F0.4F0.3F0.2F0.1F0.0+六谁制数东绿东黄东红南条南黄南红西绿西黄西红北绿北黄北红红灯全亮1101101101100z36东西绿灯亮,南北红灯亮0111100111100x1E东西黄灯亮,南北红灯亮1011101011100-2E东西红灯亮,南北绿灯亮1100111100110-33东西红灯亮,南北黄灯亮1101011101010-353.软件设计■本任务涉及两个定时时间,

一是每个路口的绿灯亮

20s,另一个是黄灯闪烁时间间隔0.5s,显然最容易

实现的方法就是利用定时器,可以用定时器0控制路

口绿灯亮的时间,用定时器1控制黄灯闪烁的时间间隔,但是两个定时器的定时都不可达到20

s或0.5s,所以可以让两个定时器都工作于方式1,定时时间为

50ms,

引进两个变量time

(初值为400)和timey(初值为20),当定时器发出中断时,这两个变量

分别减1,直到为0则达到定时时间。■根据以上分析,TMOD

应赋值为0x11,

两个定时器

计数次数为50000。#include<reg51.h>unsigned

char

time=20*20,timey=10,county=6;unsignedcharallr=0x36;

//

所有路口的灯全红unsigned

char

ewg_snr=0x1e;//东西路口绿灯亮,南北路口红灯

亮unsigned

char

ewy=0x2e;//东西路口黄灯亮,南北路口红灯亮unsigned

char

sng_ewr=0x33;//南北路口绿灯亮,东西路口红灯

亮unsigned

char

sny=0x35;

//南北路口黄灯亮,东西路口红灯亮sbit

P01=P0^1;sbit

P04=P0^4;sbit

P21=P2^1;sbit

P24=P2^4;bit

ewg=1;//刚才是否是东西路口绿灯亮过|unsigned

int

i;PO=P2=allr;for(i=50000;i>0;i--);PO=P2=ewg_snr;TMOD=0x11;//定时器1和定时器0均工作于方式1

TLO=-50000;TH0=-50000>>8;//T1、

TO

均定时50

msTL1=-50000;TH1=-50000>>8;EA=1;ETO=1;ET1=1;TRO=1;while(1);main(){主函数}void

isr

time0()interrupt1

//定时器0的中断服务程序{TLO=-50000;TH0=-50000>>8;time--;if(time==0){TRO=0;TR1=1;time=400;if(ewg){P0=ewy;P2=ewy;}else{P0=sny;P2=sny;}}}:88..voidisr

time1()interrupt3//定时器T1的中断服务函数

{TL1=-50000;TH1=-50000>>8;timey--;if(timey==0){timey=10;county--;if(county){if(ewg){P04=~P04;P24=~P24;}else

{P01=~P01;P21=~P21;}}else{county=6;if(ewg){P0=sng_ewr;P2=sng_ewr;}else{PO=ewg

snr;P2=ewg

snr;}TR1=0;TRO=1;ewg=~ewg;11}88模块一

MCS-51单片机基本结构与Proteus软件1.2

存储器结构■自学,回答以下问题:●1、MCS-51存储器的ROM

和RAM分别存放什么内容,其体系

结构是什么样的结构?有何特点?●2、8051

单片机的片内ROM

的容量有多大?如果要扩展了程序存储器,单片机的程序存储在片内ROM

和片外ROM

两个空

间中,必须对单片机的引脚如何处理?片外ROM的地址范围

是怎样的?●3、8031

没有片内ROM,则对单片机的引脚如何处理?●

4、51子系列单片机片内RAM容量多大,分为哪几大区域?●5、51

单片机片机RAM中的工作寄存器区有多少个单元,分

几组,每组多少个单元?这些单元如何命名的?●6、ROM、

片内RAM、片外RAM分别称为什么区?空岁品

8台凹

出台古

BK4而nna

nnnn85

8

9

与品008日

出8

品256B(字节)片内8051片

内NOddROK64K64KRA276451.2.1

程序存储器■程序存储器(

Program

memory)主要用于存放经

调试正确的应用程序和常数表格,称为CODE区。■由于MCS-51系列单片机采用16位的程序计数器PC和16位的地址总线,因而程序存储器可扩展的地址

空间为64

KB,

并且这64KB

地址在空间分布范围上

是连续和统一的。■当EA为高电平时,程序运行先从片内ROM

取指令,当片内ROM

指令取完后(PC>0FFFH)

,

再从

片外ROM

取指令。■当EA为低电平时,只

从片外ROM取指令。1000H0FFFH片内ROM

EA=10000H程序存储器的应用形态0FFFH0000H片外ROM

EA=0程序存储器0FFFFH片

RO

M程序存储器的应用形态■

8051中含有4KB

容量的掩膜ROM,8751

有4KB容量的EPROM,89C51

中含有4KB容量

的FlashROM——

EA接高电平。■

8031/8032中不设程序存储器,这种单片机在

供应状态上称为ROM

Less型器件,使用过程中必须外部扩展ROM——EA接低电平。数据缓冲区/

堆栈区可位寻址区RS1

RSO0

0011

00130H2FH20H1FHR7

18HRO

17HR7

10HRO

0FHR7

08HRO07HR7

00HRO数据存储器称为7F073组2组1组0组1.2.2

内部数据存储器(高128BF)FH

特殊功能(低128B00HL0组1组2组3组内部RAM存储器DATA区内部RAM寄存器78007FH单元地址MSB

位地址

LSB2FH2EH2DH2CH2BH2AH29H28H27H26H25H24H23H22H21H20H7F7E7D7C7B7A797877767574737271706F6E6D6C6B6A696867666564636261605F5E5D5C5B5A595857565554535251504F4E4D4C4B4A494847464544434241403F3E3D3C3B3A393837363534333231302F2E2D2C2B2A292827262524232221201F1E1D1C1B1A191817161514131211100FOEOD0COB0A090807060504030201001、可位寻址区2

、特殊功能寄存器

(sfr)定义:单片机内的各种控制寄存器、状态寄存器以及I/O端口锁存器、定时器、串行端口数据缓冲器是内

部数据存储器的一部分,离散地分布在80H~FFH的

地址空间范围内,这些寄存器统称特殊功能寄存器(

SFR,Special

Function

Registers)

。(2)说明:◆51子系列离散分布有21个特殊功能寄存器SFR

、52子系列为26个。◆凡地址能被8整除的寄存器(共11个)都是可位寻址的寄存器。持殊功能寄存器内部RAMFFH(高128B)80H

7FH(低128B)数据存储器00HSFR助记符位地址/位定义地址FOHBF7HF6HF5HF4HF3HF2HF1HFOHACCE7HE6HE5HE4HE3HE2HE1HE0HEOHPSWD7HD6HD5HD4HD3HD2HD1HDOHD0HCyACFORS1RSOOV-PIPBFHBEHBDHBCHBBHBAHB9HB8HB8H---PSPT1PX1PTOPXOP3B7HB6HB5HB4HB3HB2HB1HBOHBOHIEAFHAEHADHACHABHAAHA9HA8HA8HEA--ESET1EX1ETOEXOP2A7HA6HA5HA4HA3HA2HA1HAOHAOHSBUF99HSCON9FH9EH9DH9CH9BH9AH99H98H98HSM0SM1SM2RENTB8RB8TIRIP1979695949392919090HP1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0TH18DHTHO8CHTL18BHTLO8AHTMODGATEC/TM1MOGATEC/TM1MO89HTCON8F8E8D8C8B8A898888HTF1TR1TF0TROIE1IT1IE0ITOPCONSMOD///GF1GFOPDIDL87HDPH83HDPL82HSP81HPO8786858483828180P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.080H■可以扩展64

KB■称XDATA区■页内寻址(没有高8

位地

)区

为PDATA区FFFFH(64K)0000H1.2.3

外部数据存储器外部数据存储器模块一

MCS-51单片机基本结构与Proteus软件1.

3

并行输入/输出接口1.3

并行输入/输出接口■接口电路是微机应用系统中必不可少的组成部分

,其中并行输入/输出接口是CPU与外部进行信息

交换的主要通道。■

MCS-51单片机内部有4个并行的I/O接口电路:P0、P1、P2、P3,

它们都是双向口,既可以输入又

可以输出。PO、P2口经常用作外部扩展存储器时

的数据、地址总线,

P3口除了可用作I/O口外,每

一根都有第二功能。■通过这些I/O接口,单片机可以外接键盘、显示器等外围设备,还可以进行系统扩展,以解决片内

硬件资源不足问题。1.

P0口1.

PO口总结特点:(1)P0口可作通用I/O口使用,又可作地址/数据总线

口;(2)P0

既可按字节寻址,又可按位寻址;(3)作通用I/O

口输出时:是开漏输出,

应外接上

阻;(4)P0

是一个准双向口。读引脚(1)只能作I/O

口,没有地址/数据复用功能(2)可按字节寻址,

也可按位寻址(3)是一准双向口,输出驱动接有上拉电阻,不是VccR*内部上拉电阻P1.X引脚读锁存器内部总线写锁存器D

QP1.XCL锁存器Q2.P1

口开漏输出。3.P2口读锁存器内部总线写锁存器读引脚内部上拉电阻P2.X引脚DP2.X锁存器地址

Vcc控制R*MUX3.

P2口(1)

当P2口作为通用I/O

时,是一准双向口。(2)

从P2口输入数据时,先向锁存器写“1”。(3)

可位寻址,也可按字节寻址。(4)

可输出地址高8位。读引脚

第二功能输入(1)当P3口作为通用I/O

接口时,第2功能输出线为高电平;(2)当P3口作为第2功能使用时,应先向锁存器写1;(3)当P3

口作为第二功能输入时,第2功能输出线自动为1。4.

P3口读锁存器内部总线写锁存器第二功能输出DP3.XCL

锁存器VccR*

内部上拉电阻P3.X引脚引脚第2功能P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7RXD

(串行口输入端)TXD

(串行口输出端)INT0

(外部中断0请求输入端,低电平有效)INT1(外部中断1请求输入端,低电平有效)T0T1WRRD(定时器/计数器0计数脉冲输入端)(定时器/计数器1计数脉冲输入端)(外部数据存储器写选通信号输出端,低电平有效)(外部数据存储器读选通信号输出端,低电平有效)P3口的第二功能1.3.2并行I/0口的使用特性MCS-51系列单片机的4个并行I/O口均由内部总线控制,

端口的功能复用会自动识别,不用指令选择。P0是8位、漏极开路的双向I/O口,当用作片外存储器或接

口扩展时,分时复用为数据总线和低8位地址总线,可驱动8个

LSTTL

负载。P1是8位、准双向I/O口,具有内部上拉电阻,驱动为4个

LSTTL

负载。P2是8位、准双向I/O口,具有内部上拉电阻,可驱动4个

LSTTL负载,外部扩展时用作高8位地址总线。P3是8位、准双向I/O口,具有内部上拉电阻,可驱动4个

LSTTL负载。P3口的所有口线都具有第二功能,实现控制总线

的作用

。C51分支控制语句2.2.1C51语句概述■一个完整的C51程序包括数据描述和数据操

作。●数据描述定义数据结构和数据初值,由数

据定义部分来实现;●数据操作是对己提供的数据进行加工,这

部分的功能就是由语句来实现的。●既包括与底层硬件无关的数据●也包括如特殊功能寄存器

(SFR)等与底层硬件状态

直接相关的数据。2.2.1C51语句概述■分号是语句的终结符,一个语句必须在最后出现

分号,分号是语句中不可缺少的一部分,在后面

介绍空语句时会看到,甚至一个单独的分号也可

以构成一个语句。■C51的语句按其复杂度可以分为简单语句和复杂语句。■可以用花括号“{”和“}”把一些语句组合在

一起,使其在语法上等价于一个简单语句,这样

的语句就称之为复合语句。■复合语句中最后一个语句中最后的分号不能忽略

不写;结束一个复合语句的右花括号之后不能带

。1.if…else…

语句if(表

){分支一}else{分支二T表达式分支22.2.2

分支控制语句T分支1}2.

2.2

分支控制语句2.if…

语句if(表达式){语句}

else{}既可以是简单语句也可以是复合语句if(表达式){语句}实例2-3PO口接8只发光二极管,

P1.0接一个按钮,要求将按钮按下时,左边四个发光二极管亮,当按钮放开

时,右边四个发光二极管亮。实例2-3#include<reg51.h>

sbitp10=P1^0;main()while(1)if(p10==1)P0=0x0f;elseP0=0xf0;)#include<reg51.h>sbit

p10=P1^0;void

main()while(1){if(p10==1)P0=0x0f;if(p10==0)P0=0xf0;}}if(表达式1)分支一else

if(表达式2)分支二else

if(表达式3)

{分支三}·

·else{分支n}3.

多级if...else..语句.假表达式1真

表达式2真分支1分支2假

表达式3真分支3多级if语句流程图假分支n假实例2-4■P0口接8只发光二极管,

P1.0

、P1.1

分别接一个按键S1

、S2,要求当没有键按下时,8全灭,当S1按键按下时,左边四个亮,当S2按键按下时,右边四个亮,

当两个按键按下时,全亮。流程图开始S1

、S2同时按TP0←0(全亮)结束F

T只S1按

F只S2按P0←0x0f(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论