单片机期末总复习_第1页
单片机期末总复习_第2页
单片机期末总复习_第3页
单片机期末总复习_第4页
单片机期末总复习_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1、总复习第一章:1、什么是单片机?单片机的基本概念。它的几个名称32.1 51内核单片机的内部基本结构 51内核单片机的内部结构框图内核单片机的内部结构框图外部晶体振荡外部晶体振荡器与内部振荡器与内部振荡电路共同产生电路共同产生单片机运行所单片机运行所需的时钟信号需的时钟信号负责运算、控制负责运算、控制和调度和调度用于存放用户程用于存放用户程序、常数、表格序、常数、表格等信息等信息用于存放单用于存放单片机运行过片机运行过程中的运算程中的运算数据及运算数据及运算地址等地址等用来对片内各功能模块进行管理用来对片内各功能模块进行管理、控制和监控的寄存器和反映各、控制和监控的寄存器和反映各功能运行状态的

2、寄存器功能运行状态的寄存器4个个8位的并行位的并行I/O口口1个全双工异步个全双工异步串行口串行口2个个16位的定时位的定时/计数器,实现定计数器,实现定时和计数功能时和计数功能5个中断源、个中断源、2级中断优先级级中断优先级 的中断系统的中断系统1、16位寄存器位寄存器2、存放下一条将要、存放下一条将要执行的指令地址执行的指令地址.程程序中的指令是按照序中的指令是按照顺序存放在存储器顺序存放在存储器中的某个连续区域中的某个连续区域.每条指令都有自己每条指令都有自己的地址的地址,CPU根据根据PC中的指令地址从存中的指令地址从存储器中取出将要执储器中取出将要执行的指令行的指令.3、具有自动加、

3、具有自动加1功功能能,从而指向下一条从而指向下一条将要执行的指令地将要执行的指令地址址.4、PC的值可以修改的值可以修改,一般程序是按顺,一般程序是按顺序执行指令的序执行指令的.若改若改变了的变了的PC的值的值,则程则程序将不再按顺序执序将不再按顺序执行。行。算术逻辑运算部件算术逻辑运算部件主要用来完成数据的主要用来完成数据的算术和逻辑运算。算术和逻辑运算。ALU有有2个输入端和个输入端和2个输出端,其中一个输出端,其中一端接至累加器,接收端接至累加器,接收由累加器送来的一个由累加器送来的一个操作数;另一端接收操作数;另一端接收暂存器中的第二个操暂存器中的第二个操作数。参加运算的操作数。参加运

4、算的操作数在作数在ALU中进行规中进行规定的操作运算,运算定的操作运算,运算结束后,一方面将结结束后,一方面将结果送至累加器,同时果送至累加器,同时将操作结果的特征状将操作结果的特征状态送标志寄存器态送标志寄存器4CPU的内部结构图存放指令码存放指令码所在存储单所在存储单元的地址编元的地址编码码用于存放从用于存放从程序存储器程序存储器中读出的指中读出的指令代码,作令代码,作为指令译码为指令译码器的输入锁器的输入锁存器存器用来对指令用来对指令代码进行分代码进行分析、译码,析、译码,根据指令译根据指令译码的结果,码的结果,输出相应的输出相应的控制信号控制信号 单片机的控制单片机的控制中心中心1、8

5、位寄存器位寄存器2、累加器是一个特殊的寄存器,它的字长和、累加器是一个特殊的寄存器,它的字长和微处理器的字长相同,累加器具有输入输出微处理器的字长相同,累加器具有输入输出和移位功能,和移位功能,微处理器采用累加器结构可以简微处理器采用累加器结构可以简化某些逻辑运算。化某些逻辑运算。 8位寄存器,进行乘除法运位寄存器,进行乘除法运算时,存放参与运算的一个算时,存放参与运算的一个操作数。除此之外,作为一操作数。除此之外,作为一般般REG使用使用 8位寄存器,用于记录运算过位寄存器,用于记录运算过程中的状态,如是否借位、溢程中的状态,如是否借位、溢出等。出等。STC12C5A60S2单片机内部资源和

6、特点:单片机内部资源和特点:1T运行模式(运行模式(1时钟时钟/机器周期)机器周期)8位位CPU;程序存储器程序存储器60KB;数据存储器:数据存储器:256B片内片内RAM+1024B片内扩展片内扩展RAM;特殊功能寄存器;特殊功能寄存器;2个个16位定时位定时/计数器计数器T0、T1;2个全双工异步串行口;个全双工异步串行口;4个个8位并行位并行I/O口口P0、P1、P2、P310个中断源、个中断源、4级优先级的中断系统级优先级的中断系统 8通道通道10位高速位高速AD、1个同步串行通信接口个同步串行通信接口SPI2路路PCA/PWM-LVD_P4.6ALE_P4.5NA_P4.4- -

7、- -P4SW功能切换寄存器功能切换寄存器每个并行口每个并行口的功能要知的功能要知道。道。引脚引脚符号符号功能功能P1.0CLKOUT2独立波特率发生器的时钟输出引脚独立波特率发生器的时钟输出引脚P1.2RxD2串行口串行口2数据接收端数据接收端ECIPCA计数器外部脉冲输入端计数器外部脉冲输入端P1.3TxD2串行口串行口2数据发送端数据发送端CCP0PCA模块模块0的外部捕获触发信号输入、脉冲的外部捕获触发信号输入、脉冲输出及输出及PWM输出输出P1.4SPI同步串行接口的从机选择信号端同步串行接口的从机选择信号端CCP1PCA模块模块1的外部捕获触发信号输入、脉冲的外部捕获触发信号输入、

8、脉冲输出及输出及PWM输出输出P1.5MISOSPI同步串行接口的主入从出(主器件的输同步串行接口的主入从出(主器件的输入和从器件的输出)入和从器件的输出)P1.6MOSISPI同步串行接口的主出从入(主器件的输同步串行接口的主出从入(主器件的输出和从器件的输入)出和从器件的输入)P1.7SCLKSPI同步串行接口的时钟信号同步串行接口的时钟信号程序状态字寄存器程序状态字寄存器PSW:保存指令执行结果的状态:保存指令执行结果的状态D7D6D5D4D3D2D1 D0CYACF0RS1RS0OVF1PPSW寄存器中的四个状态标志位有哪四个?寄存器中的四个状态标志位有哪四个?怎么通怎么通过计算得到四

9、个状态标志的值?其它四个位起到什么过计算得到四个状态标志的值?其它四个位起到什么作用?作用?1FH1FH00H00H20H20H2FH2FH7FH7FH30H30H用户用户RAMRAM区和区和堆栈区堆栈区位寻址区位寻址区工作寄存器区工作寄存器区2.5.2 片内片内RAM低低128字节字节内部内部RAM区区(通用(通用RAM区)区)高高128字节字节内部内部RAM区区特殊功能寄存器特殊功能寄存器SFR00H7FHFFH80H注意:虽然高注意:虽然高128128字节的字节的RAMRAM和和特殊功能寄存器特殊功能寄存器地址都是地址都是80-FFH80-FFH,但是在物理空间上,但是在物理空间上二者是

10、独立的,使用时需要用二者是独立的,使用时需要用不同的寻址方式加以区分。不同的寻址方式加以区分。2.6 I/O口工作方式及配置口工作方式及配置各种工作方式的特点:各种工作方式的特点:准双向口准双向口:输出拉电流:输出拉电流150-250uA较小;输入灌电流较小;输入灌电流20mA较大。较大。要注意:要注意:读外部引脚状态前,要先输出高电平,读回读外部引脚状态前,要先输出高电平,读回来的状态才是正确的。来的状态才是正确的。强推挽输出方式强推挽输出方式:输入输出都可达到:输入输出都可达到20mA电流,适合电流,适合需要较需要较大输出电流大输出电流的情况。的情况。仅为输入:仅为输入:所有输出均截止,对

11、外是高阻状态,对输入没有所有输出均截止,对外是高阻状态,对输入没有影响。影响。开漏输出:开漏输出:内部上拉电阻断开。做输入输出时需要外加上拉内部上拉电阻断开。做输入输出时需要外加上拉电阻。电阻。MOV P1M1,#00HMOVP1M0,#00HMOV P1,#0FFHMOVA,P1D7D6D5D4D3D2D1D010100000P2M1寄存器寄存器D7D6D5D4D3D2D1D011000000P2M0寄存器寄存器第三章 指令系统 寻址方式寄存器寻址,寄存器寻址,MOV AMOV A,R0R0直接寻址,直接寻址,MOV AMOV A,30H30H立即数寻址,立即数寻址,MOV AMOV A,#

12、33H#33H寄存器间接寻址,寄存器间接寻址,MOV AMOV A,R0R0变址寻址,变址寻址,MOVC AMOVC A,A+DPTRA+DPTR相对寻址,相对寻址,SJMP $ JZ L1SJMP $ JZ L1位寻址位寻址,MOV C ,07H ,MOV C ,07H 1、下列数据传送指令是否有问题?如果有问题该如、下列数据传送指令是否有问题?如果有问题该如何改正?何改正? MOV A,#1000H ;(A)1000H MOVX A,1000H;(A)片外片外RAM (1000H) MOVC A,1000H;(A)片外片外ROM (1000H) MOVX 60H,A;片外;片外RAM (6

13、0H)(A) MOV R0,#60H;片内;片内RAM(61H)( 60H) MOV 61H,R0 MOVX 60H,DPTR ;片内片内RAM(60H)片外片外RAM(DPTR) MOV 50H ,#0FCB0H简单编程 片内片内RAM 50H单元的内容送到片外单元的内容送到片外RAM 2000H单元。单元。 将片内将片内RAM 01H-FFH单元的内容清零。单元的内容清零。 外部外部RAM 1000H的内容传送到内部的内容传送到内部RAM20H 程序存储器程序存储器2000H的内容传送到的内容传送到R1第7章 中断控制、定时/计数器及PCA/PWM的应用继续执行原程序继续执行原程序中断中断

14、 中断是计算机在执行程序的过程中,当出现中断是计算机在执行程序的过程中,当出现异常情况或特殊请求时,计算机停止现行程序异常情况或特殊请求时,计算机停止现行程序的运行,转向对这些异常情况或特殊请求的处的运行,转向对这些异常情况或特殊请求的处理,处理结束后再返回现行程序的间断处,继理,处理结束后再返回现行程序的间断处,继续执行原程序。续执行原程序。 当前程序当前程序中断服务程序中断服务程序中断包括以下几个过程:中断包括以下几个过程:中断源中断源:产生中断的请求源。:产生中断的请求源。中断响应中断响应:中止当前程序,:中止当前程序, 准备处理异常事件。准备处理异常事件。中断服务程序中断服务程序:对异

15、常事件的处理。:对异常事件的处理。中断返回:中断返回:处理完毕,返回到原程序。处理完毕,返回到原程序。图72 STC12C5A60S2单片机中断系统的结构图167.2中断系统的结构中断系统的结构中断源、中断源、中断请求中断请求中断允许寄中断允许寄存器存器IE和和IE2PCA 使能只使能只与与EA有关有关1.1.中断允许寄存器中断允许寄存器IEIE和和IE2IE22.2.中断优先级控制寄存器中断优先级控制寄存器IPIP、IP2IP2和和IPHIPH、IP2H IP2H TCON 8FH 8EH 8DH 8CH 8BH 8AH 89H 88H TF1 TF0 IE1 IT1IE0IT0 (88H)

16、3、中断请求寄存器、中断请求寄存器 (TCON)外部中断举例外部中断举例要求:要求:每次按键,使外接发光二极管每次按键,使外接发光二极管LEDLED改变一次亮灭状态。改变一次亮灭状态。解:解:INT0INT0输入按键信号,输入按键信号,P1.0P1.0输出改变输出改变LEDLED状态。状态。ORG 0000H AJMP MAINO R G0 0 0 3 H; 中 断 入 口中 断 入 口CPL P1.0;改变改变LEDLEDRETI;返回主程序返回主程序ORG0030H ;主程序主程序MAIN:SETB EA;开总允许开关开总允许开关SETB EX0;开开INT0INT0中断中断SETB IT

17、0;负跳变触发中断负跳变触发中断Here:SJMP Here ;相当于执行其它任务相当于执行其它任务ENDEND INT0 P1.05V5V定时定时/ /计数器的控制:计数器的控制:TMTMOD D方式寄存器(方式寄存器(89H89H)GATEC/TM1M0GATEC/TM1M0AUXR(8EH)定时器定时器T0T1的前三种工作方式的特点。最大计数的前三种工作方式的特点。最大计数值和最大定时时间分别为多少?值和最大定时时间分别为多少?定时计数初值的计算定时计数初值的计算程序的编写程序的编写例例 若单片机时钟频率为若单片机时钟频率为12MHz,请计算定时,请计算定时2ms所需的定时器初值(所需的

18、定时器初值(12T模式)模式)各种方式定时时间比较:各种方式定时时间比较:方式方式0:213 *1us=8192us=8.192ms方式方式1:216 *1us=65.536ms方式方式2、方式、方式3:28 *1us=0.256ms所以只能采用方式所以只能采用方式0、1方式方式0时:(时:(213 TC)*1us=2ms TC=1830H;TH0=C1H、TL0=10H 方式方式1:(:(216 TC)*1us=2ms TC=F830H; TH0=F8H、TL0=30H 21【例【例7 72 2】利用】利用STC12C5A60S2STC12C5A60S2单片机的定时单片机的定时/ /计数器计

19、数器T0T0功能,在功能,在P1.0P1.0引脚输出周期为引脚输出周期为2ms2ms的方波,假设系统时钟频率为的方波,假设系统时钟频率为6MHz6MHz,编写,编写相应的程序。相应的程序。分析:分析:若要产生若要产生2ms2ms的方波,只需要每定时的方波,只需要每定时1ms1ms对对P1.0P1.0引脚的输出取反引脚的输出取反。采用采用T0T0、方式、方式1 1定时中断的方式实现。定时中断的方式实现。机器周期机器周期T=2usT=2us(12T12T模式)模式)初值计算:初值计算:1ms1msP1.0P1.0引脚引脚FE0CHC1000us2us*C)(21622【例【例73】设】设STC12

20、C5A60S2单片机的系统时钟频率为单片机的系统时钟频率为12MHz,编程实现从,编程实现从P1.1引脚输出引脚输出周期为周期为1s的方波。的方波。分析:分析:P1.1P1.1引脚的输出应每隔引脚的输出应每隔500ms500ms取反一次,即定时时间为取反一次,即定时时间为500ms500ms,长时间定时。长时间定时。定时定时/ /计数器方式计数器方式1 1最大定时最大定时65.5ms65.5ms。可用定时。可用定时/ /计数器计数器T1T1进行进行10ms10ms的定时,然后用寄存器的定时,然后用寄存器R7R7对对10ms10ms定时中断次数计数定时中断次数计数5050次来实次来实现。现。定时

21、初值:定时初值:500ms500msP1.1P1.1引脚引脚F0HTL1D8H,TH1D8F0H;C10000us1us*C)(21623【例【例7 74 4】用】用T0T0作为计数器计数一生产流水线上的工件,每生产作为计数器计数一生产流水线上的工件,每生产100100个工件,发出一包装命令,包装成一箱,并记录其箱数,个工件,发出一包装命令,包装成一箱,并记录其箱数,23 第第8章章 串行口通信串行口通信串行同步通信、异步通信各自的特点。串行同步通信、异步通信各自的特点。串行口串行口1的工作方式有哪些?每种工作方式下的波特的工作方式有哪些?每种工作方式下的波特率和帧格式是什么样的?率和帧格式是

22、什么样的?可以做为波特率发生器的是()、()可以做为波特率发生器的是()、()SM0SM0SM1SM1方式方式功能说明功能说明波特率波特率0 00 0方式方式0 0同步串行移位同步串行移位寄存器方式寄存器方式当当AUXRAUXR寄存器中的位寄存器中的位UART_M0 x6=0UART_M0 x6=0时,波特率等于时,波特率等于fosc/12fosc/12;UART_M0 x6=1UART_M0 x6=1时,波特率等于时,波特率等于fosc/2fosc/20 01 1方式方式1 18 8位异步通信位异步通信(2(2SMODSMOD/32)/32)( (定时定时/ /计数器计数器T1T1的溢出率或

23、独立波特的溢出率或独立波特率发生器的溢出率率发生器的溢出率) )1 10 0方式方式2 29 9位异步通信位异步通信(2(2SMODSMOD/32) /32) foscfosc1 11 1方式方式3 39 9位异步通信位异步通信与方式与方式1 1相同相同串行口方式串行口方式0的应用:作为串并转换和并串转换。的应用:作为串并转换和并串转换。串行口方式串行口方式1、3的应用:可变波特率的串口通信,而且串口的应用:可变波特率的串口通信,而且串口3多用于有校验的或者多机通信。多用于有校验的或者多机通信。如何初始化串行口?编程。如何初始化串行口?编程。(1)设置设置SCON寄存器中各个相关位,由寄存器中

24、各个相关位,由SM0、SM1两位确定两位确定工作方式,将工作方式,将TI、RI清清0,如果需要接收,将,如果需要接收,将REN位置位置1;(2)设置合适的波特率,选择波特率发生器,设置定时设置合适的波特率,选择波特率发生器,设置定时/计数计数器器T1的工作方式、给的工作方式、给TL1、TH1赋初值,启动赋初值,启动T1工作;或者使工作;或者使用独立波特率发生器时,给用独立波特率发生器时,给BRT赋初值,并初始化赋初值,并初始化AUXR寄存寄存器的器的BRTR及及BRTx12两位;两位;(3)根据需要确定是否需要开放中断及中断优先级;根据需要确定是否需要开放中断及中断优先级;(4)编写相应的中断

25、或查询方式的服务程序。编写相应的中断或查询方式的服务程序。27例如:要求串行通信的波特率为例如:要求串行通信的波特率为62.5kbps,fosc=12MHZ,12T模式,模式,SMOD=1,使用定时器,使用定时器T1做做波特率发生器,计算计数初值。波特率发生器,计算计数初值。使用串行口方式使用串行口方式1和方式和方式3,波特率波特率=(2SMOD /32 )定时器定时器/计数器计数器T1或或BRT溢出率溢出率 定时计数器定时计数器1如果使用方式如果使用方式2定时方式,定时方式,8位自动重装初值的计数。位自动重装初值的计数。机器周期机器周期 1us。定时器定时时间定时器定时时间=(28-C)*1us所以:所以:811*62.516(2)*1k

温馨提示

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

评论

0/150

提交评论