1,微机基础知识

微机:

具有完整运算及控制能力的计算机。包括微处理器,储存器,接口适配器,输入输出设备。

微处理器:

控制器:由程序计数器,指令寄存器,指令译码器,时序发生器,操作控制器等组成,是发布命令,协调指挥计算机系统的器件。①从内存取出指令,并指向下一个指令。②对命令进行译码或测试。③指挥并控制CPU,内存和输入输出的数据流。

 运算器:由算数逻辑单元(ALU)可完成来自累加器和数据寄存器数据的加减运算,累加器,数据寄存器组成。

寄存器:

        累加器(A):用运算前于保存操作数。运算后保存所得的和,差,逻辑运算结果

数据寄存器(DR):保存译码指令和数据字节。

指令寄存器(IR):保存正在执行的一条指令

指令译码器(ID):对操作码进行译码

程序计数器(PC):存放下一条将要执行指令的地址。

地址寄存器(AR):用于保存当前CPU所访问的内存单元或I/O设备地址。

单片机:

将微处理器,一定容量的ROM,RAM以及I/O,定时器集成在一块芯片上。

程序执行的过程:

经历两个阶段。第一个取指阶段,从存储器中取出指令并通过CUP译码。第二个执行阶段,执行完一条指令,接着执行下一条指令。

BCD码:

4位二进制数,表1位十进制数的码。

有符号数位:最高位0表+,最高位1表-。

无符号数位:则均为数据位:

正数的原码,反码,补码相同。

负数的原码:最高位是符号位,其他数数据本身;反码:除符号位,其余按位取反;补码:为反码加一。

2,89C51单片机原理

51单片机的存储结构:

哈佛结构。它的数据存储器和程序存储器是分开的结构形式。

89C51单片机内部芯片:

一个8位C51微处理器(cpu)。

片内256字节数据存储器RAM/SFR。

片内4KB程序存储器flashROM。

两个16位定时器/计数器

5个中断,两个中断优先级的中断控制系统。

一个全双工UART的I/O口。

存储地址空间分为:

片内外统一编址0000H~FFFFH,64K程序存储器地址

64K片外数据存储器地址。也在0000H~FFFFH。

256字节数据存储器地址空间(8位地址)

如何区别不同空间:

MOVC:CPU访问片内,外ROM。

MOV:访问片内RAM。

MOVX:访问片外ROM。

位地址和字节地址如何区别:

单片机的内部数据存储器(RAM)共有128个字节,地址为00H~7FH 。其中的20H~2FH单元是可作为可位寻址的一个区域,共128位,用位地址00H~7FH与之对应。 如果命令是字节寻址则这个字节就是字节地址,相应地如果命令是位寻址则这个字节就是位地址。

例如:

MOV A 30H    ;对字节地址操作
SETB 30H      ;对位操作

位地址30H具体在RAM的字节地址26处。利用对应关系可以算到。

程序状态寄存器(psw):

        一个8位特殊功能寄存器,包含了程序执行后的状态信息。

PSW程序状态字
位地址 D7 D6 D5 D4 D3 D2D D1 D0
位名称 CY AC F0 RS1 RS0 OV - P
位意义 进,借 辅进 用户标定 寄存器组选择 溢出 保留 奇偶

RS0与RS1组合切换可以选定当前工作寄存器组。

RS0,RS1组合方式
RS0 RS1 寄存器组 片内RAM地址
0 0 第0组 00H~07H
0 1 第1组 08H~0FH
1 0 第2组 10H~17H
1 1  第3组 18H~1FH

程序计数器(pc):

由两个8位的计数器pch和pcl组成,pc实际上是程序等待字节的地址计数器,pc 中的内容是将要执行的下一条指令的地址。

数据指针(DPTR):

一个16位的特殊功能寄存器,其高位字节寄存器用DPH表示,低位用DPL表示。可分开使用,对62K片外RAM间接寻址。

时序单位:

振荡周期:晶振的振荡周期,最小的时序单位。

状态周期:一个状态周期,包含2个振荡周期。

机器周期:1个机器周期由6个状态周期即12个振荡周期组成。是单片机执行的一种基本操作的时间单位。

指令周期:执行一条指令所需要的时间。由1~4个机器周期组成.

复位操作:

上电复位:加电瞬间电容通过充电实现。

手动复位:通过按钮开关,使单片机实现。

复位后

PC=0000H,单片机从0000H开始执行程序。

A=00H,累加器清零。

PSW=00H,此时工作的寄存器为第0组。

SP=07H,堆栈指针指向片内RAM07H字节单位。

P0~P3=FFH已向各端口线写入1,此时端口可用于输入与输出。

IP=0000B各中断源处于低优先级

IE=0000B各中断处于关闭状态

TMOD=00H,T0,T1均为工作方式0,处于定时器状态。

TCON=00H,T0,T1均被关闭。

SCON=00H串行口处于工作方式0,允许发送,不允许接收。

PCON=00H   ,SMOD=0.波特率不加倍。

利用双重循环写一个延时子程序:

TIME: MOV R1,#0FAH ;将250赋值给R1L1: MOV R0,#0FFH ;将255赋值给R0W1: DJNZ R0,W1;如果R0不为0则执行减一,到为0跳转。内循环255次DJNZ R1,L1;如果R1不为0则执行减一,到为0跳转。外循环250次NOPNOPRET

3,汇编指令与程序设计:

汇编指令简介。

4,中断系统:

中断的概念:当CPU正在处理某件情的时候,外部发生的某一件事请求CPU立即去处理,于是CPU停止当前的工作转去处理所发生的事件。

中断结构示意图

中断系统的5个中断源:

INT0:外部中断0请求,低电平有效。P3.2输入。

INT1:外部中断1请求,低电平有效。P3.3输入。

T0:定时器/计数器0溢出中断请求。

T1:定时器/计数器1溢出中断请求

TXD/RXD:串行口中断请求。当串行口完成一帧数据的发送或接收时,请求中断。

5个中断源对应的矢量地址:

中断源 中断矢量地址
外部中断0 0003H
定时器 T0 000BH
外部中断1 0013H
定时器T1 001BH
串行口中断 0023H

中断系统的特殊功能寄存器:

定时器控制寄存器TCON(用6位)

串行口控制寄存器SCON(用2位)

中断允许寄存器IE

中断优先级寄存器IP

TCON中断标志位:

8FH 8EH 8DH 8CH 8BH 8AH 89H 88H
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0

TF1:定时器/计数器T1的溢出中断请求标志位

TF0:定时器/计数器T0的溢出中断请求标志位

IE1:外部中断1的中断请求标志位

IT1:外部中断1的中断触发方式控制位。IT1=0时为外部中断1为电平触发方式,IT1=1时为外部中断1为边沿触发方式。

IE0:外部中断0的中断请求标志。

IT0:外部中断0的中断触发方式控制位。

SCON中断标志位:

99H 98H
TI RI

TI:串行口发送中断请求标志。RI:串行口接收中断请求标志

中断允许控制: 

AFH AEH ADH ACH ABH AAH A9H A8H
EA ES ET1 EX1 ET0 EX0

EA:中断允许总控制位。EA=0屏蔽中断请求,EA=1开启。

ES:串口中断允许位。ES=0禁止串口中断,ES=1允许。

ET1:定时器/计数器T1的溢出中断允许位。

EX1:外部中断1中断允许位。

ET0:定时器/计数器T0的溢出中断允许位。

EX0:外部中断允许位

中断优先级控制:

BCH BBH BAH B9H B8H
PS PT1 PX1 PT0 PX0

PS:串行口中断优先级控制位。

PTX1:定时器/计数器T1中断优先级控制位。

PX1:外部中断1优先级控制位。

PT0:定时器/计数器T0中断优先级控制位。

PX0:外部中断0优先级控制位。

中断源优先级排列顺序:

中断源 同级内的中断优先级
外部中断0 最高
定时器/计数器0溢出中断
外部中断1
定时器/计数器1溢出中断
串行口中断 最低

中断响应条件:

        ①有中断源发出中断请求。

②中断总允许位EA=1。

③申请中断的中断源的中断允许位为1,中断没有被屏蔽。

④无同级或更高级中断正在服务

⑤当前指令周期已经结束

⑥RETI或访问IE,IP时,另一指令执行完。

5,定时器及其应用:

T1,T0定时器,它们都有定时和事件计数的功能,可用于控制,延时,对于外部事件计数和检测等场合。

定时器结构

TOMD:用于控制T0,T1的工作模式。

D7 D6 D5 D4 D3 D2 D1 D0
GATE C/T M1 M0 GATE C/T M1 M0
定时器T1 定时器T0

TCON:

8FH 8EH 8DH 8CH 8BH 8AH 89H 88H
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0

M1和M0控制的4种工作模式

M1  M0 工作模式 功能描述
0  0  模式0 13位计数器    8192
0  1 模式1 16位计数器    65536
1  0  模式2 自动再装入8位计数器    256
1  1 模式3

定时器0:分成二个8位计数器

定时器1:停止计数

一般使用定时器的步骤:

①向TOMD中写入工作方式。

②向定时/计数器TH1,TL1装入初值

③启动定时器/计数器(TR1)

④查询是否到TF1,定时到了就反转电平。

例题:

题:设时钟频率为6MHz。试编写利用T0产生1s定时的程序在p1.7端口产生一个周期为2S方波。
解:    定时器   T0的工作模式确定
模式0最长定时16.384ms;
模式1最长定时131.072ms;
模式2最长定时512us;题中每1s可选择模式1,每隔100ms中断一次,中断10次为1s。
因为无法控制结束,所以要控制初始值X达到每次都是100ms。
(2^16-T初始值)*12/6*10^6Hz=0.1s
T初始值为15536=3CB0H
所以 TL0=0B0H,TH0=3CH
程序:ORG 0000H ;初始程序书写地址LJMP MAIN ;跳转主程序ORG 000BH ;T0中断入口地址AJMP SERVE ;转向中断服务程序主程序:ORG 0030H ;主程序
MAIN: MOV SP,#60H ;栈指针MOV B,#0AH  ;循环次数MOV TOMD,#01H ;设置T0工作模式1MOV TL0,#0B0H ;装入计数器低8位MOV THO,#3CH  ;装入计数器高8位SETB TR0 ;启动定时器T0SETB ET0 ;允许T0中断SETB EA ;允许CPU中断SJMP $ ;等待中断ORG 00BH
SERVE:MOV TL0,#0B0HMOV TH0,#3CH ;重新赋计数值DJNZ B,LOOPCPL P1.7 ; 1s定时到,停止T0工作MOV B,#0AH
LOOP:RETI ;中断返回END

6,七八九章考点总结:

串并行通信

并行通信:数据的各位同时进行传送的通讯方式(速度快,数据位与线数相同占线多。)

串行通信的概念:数据一位一位按顺序传送的通讯方式。(适用于远距通讯。)

三种传输方式:单工,只允许数据一个方向传送。

半双工,允许数据两个方向的任一方向传送,一次一个站点发送。

全双工,允许两个数据同时双向传递。

同步通信数据帧和异步区别:

异步通信中:通信双方的时针是各自独立的,双方的发送和接收可以不在同一时刻进行。数据也是一帧一帧传送的。

同步通信中:双方的物理时钟是相同的,双方发送接收是同时进行的,同步通信为保证接收正确,发送方不仅发送传送数据,还同时传送时钟信号。

波特率:

数据传输速率。表示每秒传送二进制代码的位数b/s,假设数据传送速率是120字符/s,而每个字符格式包含10个代码。

波特率为:        10b/字符*120字符/s=1200b/s

每一位代码的传送时间为波特率的倒数。

串行口的控制字及工作方式:

对应控制字:

对应串行口工作方式:

SM0 SM1 工作方式 说明 波特率
0  0 0 同步位移寄存器 fosc/12
0  1 1 10异步收发,双机 由定时器控制
1  0 2 11位异步收发,多机 fosc/32或fosc/64
1  1 3 11位异步收发,多机 由定时器控制

矩阵键盘的扫描原理:

首先判断键盘中是否按下,由单片机I/O向键盘送全扫描字,然后读入列线状态来判断。

把全部行线置为低电平,然后将列线的电平状态读入累加器A中如果有按键按下,总有一根列线拉至低电平,从而列输出不全为1。然后将行线逐行置低电平,检查列输出状态。如果全为1,则按下的键不在这行,不全为1,则按下的键再这行与零电平列线相交的交点上。

LED动态显示:

采用扫面方式,轮流点亮各位LED,再每个瞬间只使某位显示字符。在这个瞬间段选I/O口输出相应字符。下方的位选I/o口送入选通电平。

单总线的概念及结构示意图:

概念:外围串行控制总线。单总线只有一根数据输入/输出线,可由单片机或PC机的1根I/O线作为输入或者输出线,所有器件都挂在这跟线上。

SPI串行外设接口总线:

概念:SPI是同步串行外设接口,用于MCU与外设串行通信,配置主从操作。它需要4条线,串行时钟线(SCK),主机输入/从机输出数据线(MISO),主机输出/从机输入数据线(MOSI),低电平有效从机选择线(CS)。在SPI中数据传输只需要1个时钟信号和2条数据线。

微机基础与89C51单片机部分知识相关推荐

  1. 单片机学习笔记——微机基础知识

    微机基础知识 微处理器,微机和单片机概念 微处理器的组成 一.运算器 主要寄存器 主要寄存器(IR),指令译码器(ID) 程序计数器(PC) 地址寄存器(AR) 二.控制器 存储器和输入输出接口 一. ...

  2. 单片机控制秒表C语言程序,89C51单片机秒表的设计(全文完整版)

    <89C51单片机秒表的设计.doc>由会员分享,可免费在线阅读全文,更多与<89C51单片机秒表的设计>相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜 ...

  3. 零基础学习51单片机

    零基础学习51单片机 前言 51单片机是一款非常经典的8位单片机,广泛应用于各种嵌入式系统和电子产品中.本文将从零开始,以简明易懂的方式介绍51单片机的基本原理.基本语法和应用. 什么是单片机 单片机 ...

  4. 基于89C51单片机的数码管显示拨码开关设计

    目    录 1 课程设计任务和要求 1.1 设计任务 1.2 设计要求 2 设计方案 2.1 工作原理 2.2 单片机系统方框图 3 电路设计和软件设计 3.1 电路设计 3.2 程序设计流程 3. ...

  5. js基础--数据类型检测的相关知识

    欢迎访问我的个人博客:www.xiaolongwu.cn 前言 最近工作有点忙,好几天都没更新技术博客了. 周末起床打开有道云笔记,发现自己的博客todolist里躺了一堆只有名字的文件. 话不多说, ...

  6. python开发需要掌握哪些知识-Python基础学习需要掌握哪些知识

    1.1Python的对象 python的内置对象类型有很多,包括数字,字符串,列表,集合,元组,字典等等,在Python中,一切皆对象 pickle腌制--在Python中,如果有一些对象需要持久性存 ...

  7. ioca0中断 pic单片机_单片机入门知识-PIC为例程序.ppt

    PIC单片机原理及应用 内容提要 单片机概述 PIC单片机的特色 PIC单片机的程序设计 单片机概述 单片机正名为:微控制器 --MCU ,MicroController Unit 单片机概述 何为单 ...

  8. 单片机系统怎么用c语言复位,第11章 单片机小知识(复位 )

    第11章 单片机小知识(复位 ) 1 外部RST引脚复位(不断电下载程序) 2 软件复位 3 内部低压检测复位 4 看门狗复位 复位将使单片机内核及其它功能部件都处在一个确定的初始状态,并从这个状态 ...

  9. 【proteus仿真】89C51单片机实现十字路口的交通灯控制系统代码

    完成以下任务:运用89C51单片机十字路口的交通灯控制系统,四组灯(红黄绿)对应十字路口的四个方向,用两位的数码管显示剩余的时间. 仿真视频: https://www.bilibili.com/vid ...

最新文章

  1. Vs2015 mysql ef_VS2015 +EF6 连接MYSQL数据库生成实体
  2. VCSA中配置时间和时区,实测至6.5适用
  3. Udacity并行计算课程笔记-The GPU Hardware and Parallel Communication Patterns
  4. linux 访问windows共享
  5. C语言字符串压缩显示
  6. Dora.Interception,为.NET Core度身打造的AOP框架:全新的版本
  7. 谈区块链的时候别忘记了“新零售”
  8. Spring Boot(13)——使用RestTemplate
  9. Firebug 教程
  10. android10解决NetworkInfo废弃替代NetworkInfo isConnected()问题
  11. 【学习笔记】《Web安全深度剖析》整理
  12. ECharts 实现地图功能
  13. Microsoft Excel 教程,如何在 Excel 中使用自动求和?
  14. linux中如何从txt转为nc文件,【转】linux下nc的使用
  15. win10u盘被写保护怎么解除_磁盘被写保护怎么解除,小编告诉你如何解决U盘磁盘被写保护...
  16. springboot banner制作
  17. word2vec与相关应用
  18. 对辊柱塞式成型机总体设计
  19. ssm+bootsrap人力资源考勤系统-JAVA【数据库设计、源码、开题报告】
  20. 正则表达式字符串匹配和字符串提取

热门文章

  1. 2022新规驾驶人考试科目一总结
  2. 【热】培训班的学习资料泄露了 我看完了 一波大福利 分享给大家
  3. CentOS7搭建XSS平台
  4. 【Bio】基础生物学 - 细胞 cell
  5. OSS Compass 开源指南针发布,剑指开源生态健康
  6. nikita popov php,PHP新知:PHP 7.4 新语法:箭头函数
  7. 天然气分布式能源系统在数据中心领域的应用
  8. mysql支持啥系统_MySQL支持的操作系统列表MySQL综合 -电脑资料
  9. 【Linux】Linux多线程(下)
  10. 阿里云ACP考试内容是什么?考试时间是什么时候?