




已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 / 38 单片机编程语言知识点总结 单片机考点总结 1. 单片机由 CPU、存储器及各种 I/O接口三部分组成。 2. 单片机即单片微型计算机,又可称为微控制器和嵌 入式控制器。 3. MCS-51系列单片机为 8 位单片机,共 40个引脚, MCS-51基本类型有 8031、 8051 和 8751. I/O 引脚 8031、 8051 和 8751 的 区别 : 8031片内无程序存储器、 8051片内有 4KB程序存 储器 ROM、 8751片内有 4KB程序存储器 EPROM。 4. MCS-51 单片机共有 16 位地址总线, P2 口作为高 8 位地2 / 38 址输出口, P0口可分时复用 为低 8位地址输出口和数据口。 MCS-51单片机片外可扩展存储最大容量为 216=64KB,地址范围为 0000H FFFFH。 5. MCS-51片内有 128字节数据存储器, 21个特殊功能寄存器。 MCS-51 片内有 128 字节数据存储器,字节地址为00H 7FH; 00H 1FH: 工作寄存器区; 00H 1FH: 可位寻址区; 00H 1FH: 用户 RAM区。 21个特殊功能寄存器 ; 当 MCS-51上电复位后,片内各寄存器的状态,见 34页表 2-6。 PC=0000H, DPTR=0000H, Acc=00H, PSW=00H, B=00H, SP=07H, TMOD=00H, TCON=00H, TH0=00H, TL0=00H, TH1=00H, TL1=00H, SCON=00H, P0 P3=FFH 6. 程序计数器 PC:存放着下一条要执行指令在程序存储器中的地址,即当前 PC 值或现行值。程序计数器 PC 是 16 位寄存器,没有地址,不是 SFR. 3 / 38 7. PC 与 DPTR的区别: PC和 DPTR 都用于提供地址,其中 PC为访问程序存储器提供地址,而 DPTR 为访问 数据存储器提供地址。 8. MCS-51内部有 2 个 16位定时 /计数器 T0、 T1, 1 个 16位数据指针寄存器 DPTR,其中 MOVE DPTR, #data16 是唯一的16位数据传送指令,用来设置地址指针 DPTR。 定时 /计数器 T0 和 T1 各由 2 个独立的 8 位寄存器组成,共有 4 个独立寄存器: TH1、 TL1、 TH0、 TL0,可以分别对对这 4个寄存器进行字节寻址,但不能吧 T0 或 T1 当作 1 个 16 位寄存器来寻址。即: MOV T0, #data16 ; MOV T1, #data16 都是错的, MOV TH0, #data; MOV TL0, #data 是正确的。 9.程序状态字寄存器 PSW PSW 的格式: PSW D7 D6 D5 D4 D3 D2 D1 D0 D0H PSW寄存器中各位的含义; Cy:进位标志位,也可以写为 C。 Ac:辅助进位标志位。 RS1、 RS0:4组工作寄存区选择控制位。 4 / 38 P 为奇偶标志位:该标志位用来表示累加器 A 中为 1 的位数的奇偶数 P=1, A 中 1 的个数为奇数; P=0, A 中 1 的个数为偶数。 另:使用加法指令时,累加器 A中的运算结果对各个标志位的影响: 如果位 7 有进位,则置 1 进位标志位 Cy,否则清0 Cy; 如果位 3 有进位,置 1 辅助进位标志位 Ac,否则清0 Ac; 如果位 6 有进位,而位 7 没有进位,或者位 7有进位,而位6 没有,则溢出标志位 OV置 1,否则清 0 OV。即只要位 7 和位 6 中有一个进位,而另一个没进位, OV就置 1. 10. MCS-51指令系统的七种寻址方式 ,熟练掌握各寻址方式。 11.访问 MCS-51单片机中:访问片内 RAM 应使用 MOV 指令; 访问片外 RAM 应使用 MOVX 指令; 访问程序存储器应使用MOVC指令。 12. MCS-51 有 5 个中断源, 2 级 中断优先级。 5 个中断源名称及其中断入口地址分别是什么?哪些中断源的中断请求标志位在响应中断时由硬件自动清除?那些中断源的中断请标志位必须使用软件清除?记住各个中断请求标志位,优5 / 38 先级标志位,触发方式标志位。 (102 页 108 页 ) 前面 4 种都是硬件自动清 0,串行中断必须使 CPU、一个布尔处理机、一个片内振荡器、 128B 的片内 RAM、 21个特殊功能寄存器、 4个 8位并行 I/O接口、一个全双工的串行口、 2个 16位的定时器 /计数器、 5个中断源、 2个中断优先级。 机器周期是指: 完成 MCS-51一个典型的指令花费的振荡周期称为一个机器周期 ;一个机器周期由 六 个状态组成,包含有 12个 振荡周期; 当外部中断采用低电平触发方式时 ,为了避免在中断返回后再次响应该中断,要求外部中断源在执行的中断程序返回前撤销中断请求信号 ; 程序计数器 PC是用来存放 下一条将要执行的 指令地址,共 16 位。单片机上电复位后, PC = 0000H ; 当单片机的 P1 口做为一般的 I/O 口使用时,为 8 位准双向口的意思是指: 当输入信号时,需先向 P1口锁存器写 1,以保证读引脚的正确性 ; 何谓堆栈?它设置在哪个存储区?在实际编程中,它有何6 / 38 应用价值? 答:堆栈是一个后进先出的特殊的数据缓冲区,并由栈指针SP指示堆栈中的数据深度。 在 MCS-51 系列单片机中,堆栈设置在内部 RAM 数据存储区内。在实际编程中,可用于数据的传递,数据的交换、保存CPU现场等作用 简述 MCS?51 单片机程序存储器的几个特殊入口地址的含义。 0000H:复位入口地址 0003H:外部中断 0 中断服务程序入口地址 000BH:定时器 /计数器 0 溢出中断服务程序入口地址 0013H:外部中断 1 中断服务程序入口地址 001BH:定时器 /计数器 1 溢出中断服务程序入口地址 7 / 38 0023H:串行口中断服务程序入口地址 何谓静态显示?何谓动态显示?两种显示方式有何优缺点? 所谓静态显示,是指当显示器显示某一个字符时,相应的发光二极管恒定地导通或截止,公共端接固定的电平。 LED 动态显示是将所有位的段选线并接在一个 I/O 接口上,称为段口,共阴极端或共阳极端分别由相应的 I/O 接口线控制,称为位口。 静态显示显示稳定,但软件简单;动态显示硬件简单,但软件需要不断地刷新。 编程将片内 RAM 30H 39H单元中的内容送到以 3000H 为首的存储区中。 MOV MOV MOV R0, #30H DPTR,#3000H R7, #10 8 / 38 L1: MOV MOVX INC INC DJNZ RET A,R0 DPTR,A R0 DPTR R7, L1 片内 RAM 60H 开始存放 20 个数据,试统计正数、负数及为零的数据个数,并将结果分别存在 50H、 51H、 52H 单元中。 MOV 50H,#0 MOV 51H,#0 MOV 52H,#0 MOV R7,#20 MOV R0, #60H L3: MOV A,R0 JZ L1 JB ,L2 INC 50H SJMP LEND L2: INC 51H SJMP LEND L1: INC 52H LEND: INC R0 DJNZ R7,L3 RET 9 / 38 从片外 RAM 2000H 单元开始存有 20 个有符号数,要求把它们传送到片外 RAM 3000H开始的单元,但负数不传送,试编写程序。 L1: L2: L3: MOV DPTR,#2000H MOV R0,#20H MOV R7,#20 MOVX A,DPTR MOV R0,A INC DPTR INC R0 DJNZ R7,L1 MOV DPTR,#3000H MOV R0,#20H MOV R7,#20 MOV A,R0 JB ,L3 MOVX DPTR,A INC DPTR INC R0 DJNZ R7,L2 RET 在片外 RAM 2000H、 2001H 和 3000H、 3001H中分别存放两个字数据,试比较两个数的大小,把大数存放在 4000H、 4001H单元中。 MOV DPTR,#2000H L1: L2: MOVX MOV INC MOVX MOV MOV MOVX MOV INC MOVX MOV CLR MOV SUBB MOV SUBB JNC MOV MOV SJMP MOV MOV MOV MOVX INC MOV MOVX RET A,DPTR 20H,A DPTR A,DPTR 21H,A DPTR,#3000H A,DPTR 30H,A DPTR A,DPTR 31H,A C A,21H A,31H A,20H A,30H L1 A,20H B,21H L2 A,30H B,31H DPTR,#4000H DPTR,A 10 / 38 DPTR A,B DPTR,A 试编写一段对中断系统初始化的程序,允许外部中断 0、外部中断 1、定时器 /计数器 T0 溢出中断、串行口中断,且使定时器 /计数器 T0溢出中断为高优先级中断。 SETB EA SETB EX0 SETB EX1 SETB ET0 SETB ES SETB PT0 D6 _ D5 _ D4 ES D3 ET1 D2 EX1 D1 ET0 D0 EX0 D7 IE EA 。 ORG 0000H LJMP MAIN ORG 000BH LJMP T0INT 11 / 38 ORG 0030H MAIN: MOV SP, #60H MOV R7, #0 MOV TMOD, #01H MOV TH0, #0FDH MOV TL0, #66H SETB EA SETB ET0 SETB TR0 L1: SJMP L1;中断服务程序 T0INT: MOV TH0, #0FDH MOV TL0, #66H INC R7 CJNE R7, #1, LL1 CLR SJMP LLEND LL1: CJNE R7,#3, LLEND SETB MOV R7, #00H LLEND: RETI ;初始化 ;定时 666微妙 ;重载初始值 如果 MCS?51单片机系统的晶振频率为 12MHz,分别指出定时器 /计数器方式 1 和方式 2的最长定时时间。 方式 1:65536us; 方式 2:256us 设 MCS?51 单片机的晶振频率为 12MHz,要求在输出周期是200ms的方波,试编 写程序。 ORG 0000H LJMP MAIN ORG 001BH LJMP T1INT ORG 0030H MAIN: MOV SP,#70H MOV TMOD,#10H MOV TH1, #3CH MOV TL1, #0B0H MOV R7, #2 SETB EA SETB ET1 SETB TR1 SJMP $ T1INT: MOV TH1, #3CH ;T1 方式 1 ;定时 50ms ; 50ms*2=100ms 12 / 38 L1: MOV DJNZ MOV CPL RETI TL1, #0B0H R7, L1 R7,#2 设串行异步通信的传送速率为 2400 波特,传送的是带奇偶校验的 ASCII 码字符,每个字符包含 10 位,试编程初始化程序。 设定串行口位方式 1. MOV MOV MOV MOV MOV SCON,#40H PCON,#80H TMOD,#20H TH1, #0F4H TL1,#0F4H SETB TR1 13 / 38 设外部晶频率振为,串行口工作在方式 1,波特率为4800b/s。编写用 T1 作为波特率发生器的方式字并计算 T1的计数初值。 TMOD:20H TH1=TL1=0FAH 设计一个单片机的双机通信系统,串行口工作在方式 1,编写通信程序将甲机内部 RAM 30H 3FH 存储区的数据块通过串行口传送到乙机内部 RAM 40H 4FH 存储区中。 甲机发送: MOV MOV MOV MOV 14 / 38 LOOP: MOV MOV MOV MOV WAIT: JBC SJMP NEXT: INC DJNZ RET SCON, #80H PCON, #00H R0, #30H R2, #10H A,R0 C, P TB8, C SBUF, A TI, NEXT WAIT R0 R2,LOOP ;设置工作方式 2 ;置 SMOD = 0,波特率不加倍 ;数据区地址指针 ;数据长度 ;取发送数据 ;奇偶位送 TB8 ;送串行口并开始发送数据 ;检测是否发送结束并清 TI ;修改发送数据地址指针 15 / 38 乙机 接收: LOOP: MOV MOV MOV MOV JBC SCON, #90H PCON, #00H R0, #40H R2, #10H RI, READ ;工作方式 2,并允许接收 ;置 SMOD = 0 ;置数据区地址指针 ;等待接收数据长度 ;等待接收数据并清 RI 51单片机初学知识点总结 经过这半个月的学习,我对于单片机的定时器、对 I/O口的随意操作、输入检测、中断、串口通信等几大学习模块有了一定了解和掌握。 1. 软件。我主要是在 keil uvision3 实现用 C 语言进行编程和调试。使用 keil 时,新建或者打开已有文件,按步骤一步步来,漏掉哪一步都会影响最后程序是否能顺利写入单片机中。其中应注意保存 C文档、添加文件到工程中和建立hex文档这几个关键步骤。 2. 发光二极管和数码管的显示。发光二极管的静态显示是学 习单片机的入门路标。分析相关模块的电路图,弄清楚引16 / 38 脚连接情况,根据电路图直接控制 LED引脚电位的高低就能实现对相应 LED亮灭的控制。了解后完成走马灯或更多其他规则的 LED显示。数码管的显示较 LED稍微复杂一点点,它分位选和段选,位选控制整个数码管的亮灭,段选控制各数码管以何种形式亮或灭。数码管的显示分三步: .全部数码管显示一样的字符; .选定的数码管以规定的形式亮; .数码管的动态显示。其中利用定时器或者延时程序控制数码管动态显示的频率,以调节其显示亮度和视觉稳定度。 用延时函数完成动态扫描: while(1) D1=nn/100; D2=nn%100/10; D3=nn%10; P1=0x01; P0=tabD1; delay(10); P1=0x02; P0=tabD2; delay(10); P1=0x04; P0=tabD3; delay(10); 延时子程序: void delay(x) / 延时 1ms子程序 unsigned char y; while(x-) for(y=110;y0;y-); 3. 17 / 38 ? ? GATEGATE=1,用软件使 TR0 或 TR1 为 1,同事外部中断引脚也为高,启动。我们一般置 GATE=0。 C/T=0,位定时器; C/T=1,位计数器。 ? 对于定时时间的计算: t?计数值 N?机器周期T?N?12? 1 focs 或:要定时时间 t=*(12/晶振频率 ) ? 定时 /计数器初始化步骤: 18 / 38 根据上面的信息,对 TMOD赋初值,确定 T0、 T1的工作方式。 计算初值,将其写入 TH0、 TL0 或 TH1、 TL1。 为中断方式时,对 IE 赋值,开放中断。 使 TR0 或 TR1 置高,启动定时 /计数器。 例: TMOD=0x01;/T0 处于工作方式 1,为十六位定时 /计数器 TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1;ET0=1; TR0=1; /T0 初始化完毕 定时子程序: void timer0() interrupt 1 / 定 时 子 程 序 TH0=(65536-50000)/256; TL0=(65536-50000)%256; aa+; if(aa=10) aa=0; ? 19 / 38 4. 键盘。单片机键盘分独立键盘和矩阵键盘两类,矩阵键盘涉及键盘扫描程序。而与键盘按下有 关的程序就要注意到消除抖动和松手检测两个重要的细节。松手检测原理是,当键按下时, key2 为低,! key2=1,此时程序一直在 while 语句里面循环,无法跳出来,一旦松手, key2 为高,程序即可跳出 while循环,执行下面接下来的语句。 if(key2=0) delay(5);/延时 5ms if(key2=0) /确定 key2键的确按下,消抖 while(!key2);/松手检测 ? 5. 串口通信。串行通信的传输速率用波特率表示。波特率定义为:每秒发送二进制数码的位数,单位为 “bps” 。波特率的计算公式: 方式 0的波特率 = 20 / 38 SMOD 方式 1的波特率 = ) ?fosc ) SMOD2方式 3的波特率 =51 单片机串行口工作方式0 实质是并行的工作方式,为同步的移位 输出和输入,但要实现工作方式 0必须要借助外接移位寄存芯片,实际应用中常用作并行 I/O口得扩展。 它的波特率固定,且数据传送是以 8 位数为一帧,没有起始和停止位。 我主要研究学习 了串行口工作方式 1,它的数据格式是:一个起始位, 8 个数据位和一个停止位。设 fosc=,波特率为9600,则根据上面的公式, SMOD=0 时, TH1=TL1=0xfd; SMOD=1时, TH1=TL1=0xfa。 工作方式 2和 3的帧格式一样,与工作方式 1的类似,只是在原基础上多加了一位内容由用户决定的数据位。工作方式2 的波特率与 PCON 个 SMOD位有关。 SMOD=1时,波特率为 fosc 21 / 38 , SMOD=0 时,波特率为 fosc 。 ? SMOD 为波特率倍增位。 SMOD=1 时,波特率增加一倍;复位时, SMOD=0。 ? REN 是允许接收控制位: REN=1时允许接收数据;REN=0时禁止接收数据。 TI是发送中断标志位:当发送完一帧数据后,该位由单片机自动置 1,向 CPU 发送中断请求信号。在中断服务程序中,必须用软件将其清 0. RI 是接收中断标志位:与 TI 类似,接收完一帧后自动被置1,需由软件置 0. 6. 液晶显示。常见的单片液晶显示屏分16引脚和 20引脚两种,我使用的是 16引脚的 YJD1602A-2。22 / 38 安装 LCD 时按如下三步走:关闭开发板电源。下载一个关闭数码管个流水灯的程序进单片机。顺时针旋转相应电位器以调节 LCD 的对比度,知道看到 5*7 这四种功能里面,读状态与读数据实用性不大,我们学习单片机时主要联系写指令和写数据,所以我们对 RW置高,给 E高脉冲, 5 引脚直接接地。 ? 关于数据指针: 显示开关及光标: 00001DCB 清屏:指令代码 0x01。执行此指令, HD44780将 DDRAM的数据全部写入 “ 空白 ” 的代码,清除所显示的内容,同事光标移到左上角。 光标归位:指令代码 0x02 或 0x03。 AC 的值被清 “0” ,但是 DDRAM 的逐句不变,光标移到左上角。 移动光标: 23 / 38 写指令函数: void write_com(uchar com) rs=0; lcden=0; P0=com; delay(5); lcden=1; delay(5); lcden=0; 写数据函数: void write_date(uchar date) 单片机概述: 单片机是微单片微型计算机的简称,微型计算机的一种。 它把中央处理器 ,随机存储器,只读存储器 ,定时器 计数器以及 IO 接口,串并通信等接口电路的功能集成与一块电路芯片的微型计算机。 字长:在计算机中有一组二进制编码表示一个信息,这组编码称为计算机的字,组成字 的位数称为 “ 字长 ” ,字长标志着精度, MCS-51是 8 位的微型计算机。 24 / 38 89c51 是 8位单片机 单片机硬件系统仍然依照体系结构:包括 CPU(进行运算、控制 )、 RAM(数据存储器 )、 ROM(程序存储器)、输入设备和输出设备、内部总线等。 由于一块尺寸有限的电路芯片实现多种功能,所以制作上要求单片机的高性能,结构简单,工作可靠稳定。 单片机软件系统包括监控程序,中断、控制、初始化等用户程序。 一般编程语言有汇编语言和 C语言,都是通过编译以后得到机器语 言。 单片机的半导体工艺 一种是 HMOS 工艺,高密度短沟道 MOS 工艺具有高速度、高密度的特点; 另一种是 CHMOS 工艺,互补金属氧化物的 HMOS 工艺,它兼25 / 38 有 HMOS工艺的 特点还具有 CMOS的低功耗的特点。例如: 8051的功耗是 630mW,80C51 的功耗只有 110mW 左右。 开发步 5 骤: 1.设计单片机系统的电路 2.利用软件开发工具编辑 程序,通过编译得到 .hex 的机器语言。 3.利用单片机仿真系统对单片机最小系统以及设计的外围电路,进行模拟的硬软件联合调试。 4.借助单片机开发工具软件读写设备将仿真中调试好的 .hex 程序拷到单片机的程序存储器里面。 5.根据设计实物搭建单片机系统。 单片机的组成: (有两个定时器 ) CPU(进行运算、控制 )、 RAM(数据存储器 )、 ROM(程序存储器)、I/O口 (串口、并口)、内部总线 和中断系统等。 26 / 38 工作过程框图如下: 运算器 组成: 8 位算术逻辑运算单元 ALU、 8 位累加器 A、 8 位寄存器 B、程序状态字寄存器 PSW、 8位暂存寄存器 TMP1 和 TMP2等。 功能:完成算术运算和逻辑运算 控制器 组成:程序计数器 PC、指令寄存器 IR、指令译码器 ID、堆栈指针 SP、数据指针 DPTR、定时控制逻辑和振荡器 OSC 等电路。 功能: CPU 根据 PC 中的地址将欲执行指令的指令码从存储器中取出 ,存放在 IR 中, ID对 IR中的指令码进行译码,定时控制逻辑在 OSC 配合下对 ID 译码后的信号进行分时,以产生执行本条指令所需的全部信号。 27 / 38 存储器 MCS-51 的存储器可分为程序存储器和数据存储器 ,又有片内和片外之分。 程序存储器 一般将只读存储器用做程序存储器。可寻址空间为 64KB,用于存放用户程序、数据和表格等信息。 MCS-51单片机按程序存储器可分为内部无 ROM 型和内部有 ROM 型两种, 连接时 引脚有区别。程序存储器结构如图所示: EA 数据存储器 一般将随机存储器用做数据存储器。可寻址空间为 64KB。MCS-51数据存储器可分为片内和片外两部分。片外 RAM:最大范围: 0000H FFFFH, 64KB;用指令 MOVX访问。片内 RAM:最大范围: 00H FFH, 256B;用指令 MOV访问。又分为两部分:低 128B为真正的 RAM 区 ,高 128B 为特殊功能寄存器区。如图所示。 28 / 38 定时器 /计数器 MCS-51单片机中有两个 16位的定时器 /计数器 T0和 T1,它们由 4 个 8 位寄存器组成, 2 个 16 位定时器 /计数器是完全独立的。可以单独对这 4 个寄存器进行寻址,但不能把 T0和 T1当做 16位寄存器来使用。 8051内部有两个 16位可编程序的定时器 /计数器,均为二进制加 1 计数器,分别命名为 T0 和 T1。 T0 和 T1 均有定时器和计数器两种工作模式。在定时器模式下, T0 和 T1 的计数脉冲可以由单片机时钟脉冲经 12 分频后提供。在计数器模式下, T0 和 T1 的计数脉冲可以从和引脚上输入。对 T0 和T1 的控制由定时器方式选择寄存器 TMOD 和定时器控制寄存器 TCON完成 中断系统 中断:指 CPU暂停原程序执行,转而为外部设备服务,并在服务完后返回到原程序执行的过程。 中断系统:指能够处理上述中断过程所需要的硬件电路。 29 / 38 中断源:指能产生中断请求信号的源泉。 8051可处理 5 个中断源发出的中断请求,并可对其进行优先权处理。 外部中断的请求信号可以从 , 引脚上输入,有电平或边沿两种触发方式;内部中断源有 3个, 2 个定时器 /计数器中断源和 1 个串行口中断源。 8051的中断系统主要由中断允许控制器 IE和中断优先级控制器 IP等电路组成。 单片机外部引脚 8051 单片机有 40 个引脚,分为端口线、电源线和控制线三类。 电源线 GND:接地引脚 20。 VCC:正电源引脚 40。接 5V电源 单片机的工作方式: MCS-51系列单片机的工作方式可分为:复位方式、程序执行30 / 38 方式、单片执行方式、掉电保护方式、节电工作方式和 EPROM编程 /校验方式。 复位电路有两种:上电自动复位和上电 /按键手动复位,如图所示。 程序执行方式是单片机基本工作方式,可分为连续执行工作方式和单步执行工作方式。 节电工作方式是一种低功耗的工作方式,可分为空闲方式和掉电方式。是针对 CHMOS类芯片而设计的, HMOS 型单片机不能工作在节电方式,但它有一种掉电保护功能。 1 HMOS单片机的掉电保护 当 VCC突然掉电时,单片机通过中断将必须保护的数据送入内部 RAM,备用电源 VPD可以维持内部 RAM 中的数据不丢失。 2 CHMOS单片机的节电方式 CHMOS型单片机是一种低功耗器件,正常工作时电流为 1122mA,空闲状 态时为 31 / 38 5mA,掉电方式为 5 50?A。因此, CHMOS 型单片机特别适用于低功耗应用场合,它的空闲方式和掉电方式都是由电源控制寄存器 PCON中相应的位来控制。 3.空闲工作方式:将 IDL 位置为 1,则进入空闲工作方式,其内部控制电路如右图所示。此时, CPU 进入空闲待机状态,中断系统、 串行口、定时器 /计数器,仍有时钟信号,仍继续工作。退出空闲状态有两种方法:一是中断退出,二是硬件复位退出。 4. 掉电工作方式:将 PD 置为 1,可使单片机进入掉电工作方式。此时振荡器停振,只有片内的 RAM 和 SFR中的数据保持不变,而包括中断系统在内的全部电路都将处于停止工作状态。退出掉电工作方式,只能采用硬件复位的方法。 欲使 8051 从掉电方式退出后继续执行掉电前的程序,则必须在掉电前预先把 SFR中的内容保存到片内 RAM中,并在掉电方式退出后恢复 SFR掉电前的内容。 单片机的时序 时序: CPU 在执行指令时所需控制信号的时间顺序称为时序。时序是用定时单位来描述的, MCS-51的时序单位有四个,分32 / 38 别是时钟周期、状态、机器周期和指令周期。 MCS-51的时序单位: 1. 时钟周期:又称为振荡周期、节拍,定义为单片机提供时钟信号的振荡源的周期。它是时序中的最小单位。 2. 状态:单片机振荡脉冲经过二分频后即得到整个单片机工作系统的状态。一个状态有两个节拍,前半周期对应的节拍定义为 P1,后半周期对应的节拍定义为 P2。 3. 机器周期:通常将完成 一个基本操作所需的时间称为机器周期。 MCS-51 中规定一个机器周期包含 12个时钟周期,即有 6 个状态,分别表示为 S1 S6。若晶振为 6MHz,则机器周期为 2s ,若晶振为 12MHz,则机器周期为 1s 。 4. 指令周期:执行一条指令所需要的时间称为指令周期。它是时序中的最大单位。一个指令周期通常含有 1 4 个机器周期。指令所包含的机器周期数决定了指令的运算速度,机器周期数越少的指令,其执行速度越快 。 以机器周期为单位,指令可分为单周期、双周期和四周期指令。 单片机系统的工程设计 33 / 38 设计要求: 一、可靠性和稳定性是衡量单片机系统工程设计指标。 提高系统可靠性的几种基本方法包括: 1.系统采用双机系统2.采用集散式控制系统 3.进行软硬件滤波:几种常用的数字滤波方法包括: (1)中值滤波 (2)算术平均值滤波 (3)防脉冲干扰平均值滤波 4.提高元器件的可靠性 5.提高印制电路板的质量:设计是布线及接地要合理 6.对供电电源采用抗干扰措施 7.加强输入 输出通道的抗干扰性 二、系统自诊断功能 当系统正常运行的时候,定时对各工作模块进行监控,并对外界的情况作出快速应变处理。应能自己及时切换到后备装置投入运行或及时发出信号,以便手动操作。 三、操作维
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 早期文明发祥地品德课件
- 2024年百色市财经职业技术学校招聘教师笔试真题
- 青海高二下数学试卷
- 青岛第一学期数学试卷
- 祁县一模中考数学试卷
- 2024年株洲市工会社会工作者招聘笔试真题
- 2024年内蒙古建投北方工程有限公司招聘笔试真题
- 内黄县高三模拟数学试卷
- 七年级假期直播数学试卷
- 2025云南省曲靖市陆良县博物馆讲解员招聘(2人)笔试备考试题及答案解析
- 花卉大棚可行性研究报告
- 制造业生产线上岗证书证明书(6篇)
- 烹饪技术基础知识单选题100道及答案
- 2024年长沙市芙蓉区招聘社区专职人员真题
- 公司工会内控管理制度
- 初中历史跨学科教学实践与探索
- 塑胶制品研发项目可行性研究报告
- 农机服务合同协议书范本
- 食品代工生产合同协议书
- 合作建房分配协议书
- 法治教育开学第一课
评论
0/150
提交评论