单片机应用技术课件.ppt
《单片机应用技术课件.ppt》由会员分享,可在线阅读,更多相关《单片机应用技术课件.ppt(242页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、l全国高职高专规划教材全国高职高专规划教材精品与示范系列精品与示范系列单片机应用技术(C语言版)本章内容本章内容p什么是单片机什么是单片机 pMCS-51内部组成及信号引脚内部组成及信号引脚p单片机最小系统电路单片机最小系统电路pMCS-51存储器结构存储器结构第第1 1章章 单片机硬件系统单片机硬件系统什么是单片机什么是单片机 单片微型计算机(Single Chip Microcomputer)简称单片机,是指集成在一个芯片上的微型计算机,它的各种功能部件,包括CPU(Central Processing Unit)、存储器(memory)、基本输入/输出(Input/Output,简称I/
2、O)接口电路、定时/计数器和中断系统等,都制作在一块集成芯片上,构成一个完整的微型计算机。单片机内部基本结构如图1.7所示。由于它的结构与指令功能都是按照工业控制要求设计的,故又称为微控制器(Micro-Controller Unit,简称MCU)。什么是单片机什么是单片机 C P U 存 储 器定 时 器/计 数 器 中 断 系 统P0-P3TxDRxD TINT并行I/O口串行I/O口单片机种类 目前目前8 8位位单片机仍是单片机的单片机仍是单片机的主流主流机型;机型;生产厂商:生产厂商:单片机的发展经历了由单片机的发展经历了由单片机的发展经历了由单片机的发展经历了由4 4 4 4位位位位
3、机到机到机到机到8 8 8 8位位位位机机机机,再到再到再到再到16161616位位位位机的发展过程机的发展过程机的发展过程机的发展过程美国微芯片公司美国微芯片公司美国微芯片公司美国微芯片公司:PIC16C:PIC16C:PIC16C:PIC16C系列、系列、系列、系列、PIC17CPIC17CPIC17CPIC17C系列、系列、系列、系列、PIC1400PIC1400PIC1400PIC1400系列,系列,系列,系列,美国英特尔公司的美国英特尔公司的美国英特尔公司的美国英特尔公司的MCS-48MCS-48MCS-48MCS-48和和和和MCS-51MCS-51MCS-51MCS-51系列,系
4、列,系列,系列,美国摩托罗拉公司的美国摩托罗拉公司的美国摩托罗拉公司的美国摩托罗拉公司的MC68HC05MC68HC05MC68HC05MC68HC05系列和系列和系列和系列和MC68HC11MC68HC11MC68HC11MC68HC11系列,系列,系列,系列,美国齐洛格公司的美国齐洛格公司的美国齐洛格公司的美国齐洛格公司的Z8Z8Z8Z8系列,系列,系列,系列,日本电气公司的日本电气公司的日本电气公司的日本电气公司的PD78PD78PD78PD78系列,系列,系列,系列,美国莫斯特克公司和仙童公司合作生产的美国莫斯特克公司和仙童公司合作生产的美国莫斯特克公司和仙童公司合作生产的美国莫斯特克
5、公司和仙童公司合作生产的F8F8F8F8(3870387038703870)系列等。)系列等。)系列等。)系列等。单片机硬件结构单片机硬件结构时钟电路CPUROMRAMT0T1中断系统串行接口并行接口P0P1P2P3TXDRXDINT0INT1定时计数器中央处理器中央处理器CPU:8位,位,运算和控制运算和控制功能功能内部内部RAM:共共256个个RAM单单元,用户使用元,用户使用前前128个单元,个单元,用于存放可读用于存放可读写数据,后写数据,后128个单元被个单元被专用寄存器占专用寄存器占用。用。内部内部ROM:4KB掩膜掩膜ROM,用于存放程,用于存放程序、原始数据序、原始数据和表格。
6、和表格。定时定时/计数器:计数器:两个两个16位的定位的定时时/计数器,实计数器,实现定时或计数现定时或计数功能。功能。并行并行I/O口:口:4个个8位的位的I/O口口P0、P1、P2、P3。串行口:串行口:一个全一个全双工串行口。双工串行口。中断控制系统:中断控制系统:5个中断源(外个中断源(外中断中断2个,定时个,定时/计数中断计数中断2 个,串行中断个,串行中断1个)个)时钟电路:时钟电路:可可产生时钟脉冲产生时钟脉冲序列,允许晶序列,允许晶振频率振频率6MHZ和和12MHZ复位电路80518051单片机的基本组成单片机的基本组成中央处理器中央处理器CPU:8位,运算和控制功能位,运算和
7、控制功能内部内部RAM:共共256个个RAM单元,用户使用前单元,用户使用前128个单元,个单元,用于存放可读写数据,后用于存放可读写数据,后128个单元被专用寄存器占用。个单元被专用寄存器占用。内部内部ROM:4KB掩膜掩膜ROM,用于存放程序、原始数据和表格。,用于存放程序、原始数据和表格。定时定时/计数器:计数器:两个两个16位的定时位的定时/计数器,实现定时或计数功能。计数器,实现定时或计数功能。并行并行I/O口:口:4个个8位的位的I/O口口P0、P1、P2、P3。串行口:串行口:一个全双工串行口。一个全双工串行口。中断控制系统:中断控制系统:5个中断源(外中断个中断源(外中断2个,
8、定时个,定时/计数中断计数中断2个,个,串行中断串行中断1个)个)时钟电路:时钟电路:可产生时钟脉冲序列,允许晶振频率可产生时钟脉冲序列,允许晶振频率6MHZ和和12MHZ时钟电路与复位电路时钟电路与复位电路(1)时钟振荡电路时时 序序 关于MCS-51系列单片机的时序概念有4个,可用定时单位来说明,从小到大依次是:节拍、状态、机器周期和指令周期,下面分别加以说明。l1)节拍与状态 把振荡脉冲的周期定义为节拍,用P表示,也就是晶振的振荡频率fosc。l2)状态 振荡脉冲fosc经过二分频后,就是单片机时钟信号的周期,定义为状态,用S表示。一个状态包含两个节拍,其前半周期对应的节拍叫P1,后半周
9、期对应的节拍叫P2。l3)机器周期 MCS-51系列单片机采用定时控制方式,有固定的机器周期。规定一个机器周期的宽度为6个状态,即12个振荡脉冲周期,因此机器周期就是振荡脉冲的十二分频。l小提示小提示 当振荡脉冲频率为12 MHz时,一个机器周期为1s;当振荡脉冲频率为6 MHz时,一个机器周期为2 s。12345678910111213142827262524232221 201918171615EPROM276412345678910111213142827262524232221 201918171615EPROM2764123456789101112819204039383736353
10、433323252424222112345678910111213142827262524232221 201918171615RAM6264 12345678910111213142827262524232221 201918171615RAM6264 存储器80318751805189C51片内片内片内片内RAMRAM片内片内片内片内ROMROM256B(字节)4Kl在单片机C语言程序设计中,用户无需考虑程序的存放地址,编译程序会在编译过程中按照上述规定,自动安排程序的存放地址。l例如:C语言是从main()函数开始执行的,编译程序会在程序存储器的0000H处自动存放一条转移指令,跳转到m
11、ain()函数存放的地址;中断函数也会按照中断类型号,自动由编译程序安排存放在程序存储器相应的地址中。因此,读者只需了解程序存储器的结构就可以了。0000HFFFFH(64K)内部外部(2)(2)数据存储器数据存储器数据数据存储器存储器00HFFH7FH80H(高128B)(低128B)RAM专用寄存器00H00H07H07H08H08H0FH0FH10H10H17H17H18H18H1FH1FH0区区R0R0R7R7R0R0R7R7R0R0R7R7R0R0R7R71区区2区区3区区工作寄存器区工作寄存器区可位寻址区可位寻址区20H2FH7F 7807 0030H7FH数据缓冲区数据缓冲区/堆
12、栈区堆栈区内部内部RAMRAM存储器存储器1 11 1第第第第 3 3 区区区区18H1FH18H1FH0 10 1第第第第 1 1 区区区区08H0FH08H0FHRS1 RS0RS1 RS0寄存器区寄存器区寄存器区寄存器区片内片内片内片内RAMRAM地址地址地址地址0 00 0第第第第 0 0 区区区区00H07H00H07H 1 0 1 0第第第第 2 2 区区区区10H17H10H17H工作寄存器区选择位RS0、RS1高高128128个单元个单元离散分布有离散分布有2121个个特殊功能寄存器特殊功能寄存器SFRSFR。1111个可以进行个可以进行位寻址。位寻址。特别提示:对特别提示:对
13、SFRSFR只能使用直接只能使用直接寻址方式,书写时寻址方式,书写时可使用寄存器符号,可使用寄存器符号,也可用寄存器单元也可用寄存器单元地址。地址。在单片机的C语言程序设计中,可以通过关键字sfr来定义所有特殊功能寄存器,从而在程序中直接访问它们,例如:sfr P1=0 x90;/特殊功能寄存器P1的地址是90H,对应P1口的8个I/O引脚在程序中就可以直接使用P1这个特殊功能寄存器了,下面语句是合法的:P1=0 x00;/将P1口的8位I/O口全部清0C语言中,还可以通过关键字sbit来定义特殊功能寄存器中的可寻址位,在程序ex1_1.c中,采用了下面语句定义P1口的第0位:sbit P1_
14、0=P10;通常情况下,这些特殊功能寄存器已经在头文件reg51.h中定义了,只要在程序中包含了该头文件,就可以直接使用已定义的特殊功能寄存器。如果没有头文件reg51.h,或者该文件中只定义了部分特殊功能寄存器和位,用户也可以在程序中自行定义。AVR,单片机,C语言,C51,编程基础,实例,好资料AVR,单片机,C语言,C51,编程基础,实例,好资料 本章内容本章内容p单片机开发系统及功能单片机开发系统及功能pKeil C51软件的使用软件的使用第第2 2章章 单片机开发系统单片机开发系统单片机开发系统及功能单片机开发系统及功能 单片机开发系统是单片机应用系统设计的必需工具,包括计算机、单片
15、机在线仿真器、工具软件、编程器等。p在线仿真功能p调试功能 1)运行控制功能 2)目标系统状态的读出修改功能p辅助设计功能 1)程序设计语言 2)程序编译p程序固化功能Keil C51Keil C51软件的使用软件的使用 KeilC51启动窗口Keil C51Keil C51软件的使用软件的使用 选择目标CPUKeil C51Keil C51软件的使用软件的使用 图2.17文本编缉窗口Keil C51Keil C51软件的使用软件的使用 增加文件到组中Keil C51Keil C51软件的使用软件的使用 目标属性Keil C51Keil C51软件的使用软件的使用 产生执行文件Keil C51
16、Keil C51软件的使用软件的使用 Keil C51内建了一个仿真CPU来模拟执行程序,该仿真CPU功能强大,可以在没有硬件和仿真器的情况下进行程序的调试。不过,软件模拟与真实的硬件执行程序还是有区别的,其中最明显的就是时序,具体表现在程序执行的速度和用户使用的计算机有关,计算机性能越好,运行速度越快。本章内容本章内容p单片机开发系统及功能单片机开发系统及功能pKeil C51软件的使用软件的使用第第2 2章章 单片机开发系统单片机开发系统单片机开发系统及功能单片机开发系统及功能 单片机开发系统是单片机应用系统设计的必需工具,包括计算机、单片机在线仿真器、工具软件、编程器等。p在线仿真功能p
17、调试功能 1)运行控制功能 2)目标系统状态的读出修改功能p辅助设计功能 1)程序设计语言 2)程序编译p程序固化功能Keil C51Keil C51软件的使用软件的使用 KeilC51启动窗口Keil C51Keil C51软件的使用软件的使用 建立工程文件Keil C51Keil C51软件的使用软件的使用 选择目标CPUKeil C51Keil C51软件的使用软件的使用 图2.17文本编缉窗口Keil C51Keil C51软件的使用软件的使用 增加文件到组中Keil C51Keil C51软件的使用软件的使用 选择文件类型Keil C51Keil C51软件的使用软件的使用 目标属性
18、Keil C51Keil C51软件的使用软件的使用 产生执行文件Keil C51Keil C51软件的使用软件的使用 选择仿真方式Keil C51Keil C51软件的使用软件的使用 Keil C51内建了一个仿真CPU来模拟执行程序,该仿真CPU功能强大,可以在没有硬件和仿真器的情况下进行程序的调试。不过,软件模拟与真实的硬件执行程序还是有区别的,其中最明显的就是时序,具体表现在程序执行的速度和用户使用的计算机有关,计算机性能越好,运行速度越快。本章内容本章内容p并行并行I/O口电路结构口电路结构p认识认识C语言语言pC语言的基本语句语言的基本语句pC语言数据与运算语言数据与运算p数组的概
19、念数组的概念第第3 3章章 单片机并行单片机并行I/OI/O口应用口应用并行并行I/OI/O口电路结构口电路结构 MCS-51系列单片机共有四个8位并行I/O口,分别用P0、P1、P2、P3表示。每个I/O口既可以按位操作使用单个引脚,也可以按字节操作使用8个引脚。P0P0口的结构口的结构 输出控制电路输出驱动电路P0口逻辑电路 当P0口作为输出口使用时,内部总线将数据送入锁存器,内部的写脉冲加在锁存器时钟端CP上,锁存数据到Q、端。经过MUX,T2反相后正好是内部总线的数据,送到P0口引脚输出。当P0口作为输入口使用时,应区分读引脚和读端口两种情况,所谓读引脚,就是读芯片引脚的状态,这时使用
20、下方的数据缓冲器,由“读引脚”信号把缓冲器打开,把端口引脚上的数据从缓冲器通过内部总线读进来。读端口是指通过上面的缓冲器读锁存器Q端的状态。读端口是为了适应对I/O口进行“读-修改-写”操作语句的需要。例如下面的C51语句:P0=P0&0 xf0;/将P0口的低4位引脚清0输出P0口的结构口的结构 除了I/O功能以外,在进行单片机系统扩展时,P0口是作为单片机系统的地址/数据线使用的,一般称为地址/数据分时复用引脚。当输出地址或数据时,由内部发出控制信号,使“控制”端为高电平,打开与门,并使多路开关MUX处于内部地址/数据线与驱动场效应管栅极反相接通状态。此时,输出驱动电路由于两个FET处于反
21、相,形成推拉式电路结构,使负载能力大为提高。输入数据时,数据信号直接从引脚通过输入缓冲器进入内部总线。P0口的结构口的结构 P1P1口的结构口的结构 P1口逻辑电路pP1口是准双向口,只能作为通用I/O口使用。pP1口作为输出口使用时,无需再外接上拉电阻。pP1口作为输入口使用时,应区分读引脚和读端口。读引脚时,必须先向电路中的锁存器写入“1”,使输出级的FET截止。P1口的结构口的结构 P2P2口的结构口的结构 P2口逻辑电路pP2口是准双向口,在实际应用中,可以用于为系统提供高8位地址,也能作为通用I/O口使用。pP2口作为通用I/O口的输出口使用时,与P1口一样无需再外接上拉电阻。pP2
22、口作为通用I/O口的输入口使用时,应区分读引脚和读端口。读引脚时,必须先向锁存器写入“1”。P2口的结构口的结构 P3P3口的结构口的结构 P3口逻辑电路pP3口是准双向口,可以作为通用I/O口使用,还可以作为第二功能使用。作为第二功能使用的端口,不能同时当作通用I/O口使用,但其他未被使用的端口仍可作为通用I/O口使用。pP3口作为通用I/O的输出口使用时,不用外接上拉电阻。P3口的结构口的结构 认识认识C C语言语言 C语言程序以函数形式组织程序结构,C程序中的函数与其他语言中所描述的“子程序”或“过程”的概念是一样的。C程序基本结构认识认识C C语言语言p一个C语言源程序是由一个或若干个
23、函数组成,每一个函数完成相对独立的功能。每个C程序都必须有(且仅有)一个主函数main(),程序的执行总是从主函数开始,调用其他函数后返回主函数main(),不管函数的排列顺序如何,最后在主函数中结束整个程序。pC语言程序中可以有预处理命令,预处理命令通常放在源程序的最前面。pC语言程序使用“;”作为语句的结束符,一条语句可以多行书写,也可以一行书写多条语句。认识认识C C语言语言p结构化语言p丰富的数据类型p便于维护管理p与汇编语言相比,C语言的优点如下:不要求编程者详细了解单片机的指令系统,但需了解单片机的存储器结构;寄存器分配、不同存储器的寻址及数据类型等细节可由编译器管理;结构清晰,程
24、序可读性强;编译器提供了很多标准库函数,具有较强的数据处理能力。C C语言的基本语句语言的基本语句语言程序的执行部分由语句组成。C语言提供了丰富的程序控制语句,按照结构化程序设计的基本结构:顺序结构、选择结构和循环结构,组成各种复杂程序。这些语句主要包括表达式语句、复合语句、选择语句和循环语句等。表达式语句和复合语句表达式语句和复合语句 p表达式语句是最基本的C语言语句。表达式语句由表达式加上分号“;”组成,其一般形式如下:表达式;表达式;执行表达式语句就是计算表达式的值。p在 C 语言中有一个特殊的表达式语句,称为空语句。空语句中只有一个分号“;”,程序执行空语句时需要占用一条指令的执行时间
25、,但是什么也不做。在C51程序中常常把空语句作为循环体,用于消耗CPU时间等待事件发生的场合。表达式语句和复合语句表达式语句和复合语句 p把多个语句用大括号括起来,组合在一起形成具有一定功能的模块,这种由若干条语句组合而成的语句块称为复合语句。在程序中应把复合语句看成是单条语句,而不是多条语句。p复合语句在程序运行时,中的各行单语句是依次顺序执行的。在C语言的函数中,函数体就是一个复合语句。选择语句选择语句 基本if语句的格式如下:if(表达式)语句组;if语句执行过程:当“表达式”的结果为“真”时,执行其后的“语句组”,否则跳过该语句组,继续执行下面的语句。选择语句选择语句 pif语句中的“
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 应用技术 课件
限制150内