基于STC15单片机资料.doc

上传人:xin****828 文档编号:6720645 上传时间:2020-03-02 格式:DOC 页数:23 大小:92.50KB
返回 下载 相关 举报
基于STC15单片机资料.doc_第1页
第1页 / 共23页
基于STC15单片机资料.doc_第2页
第2页 / 共23页
基于STC15单片机资料.doc_第3页
第3页 / 共23页
点击查看更多>>
资源描述
单片机原理复习要点考试题型:填空题、选择题、判断题(共计45分左右)程序分析题、简答题(主第二章)、编程题(共计55分左右)前言:经过大家的奋战,单片机的复习资料出炉了!感谢所有为本资料无私奉献的小伙伴们!如果资料有错误,请自行修改。第一章1.微型计算机:微处理器,存储器(ROM RAM)与输入输出接口(I/O接口)及连接他们的总线组成。2.存储器的两个重要的指标是容量与速度。3.已知一个存储器有12根数据总线,则该存储器的容量为4KB。(算法:212=22*210=4K)4.已知某单片机有16根地址总线,则该单片机的寻址范围为:0-64KB。5.微机的总线结构是:三总线结构,而单片机的总线结构是:单总线结构。6.总线分为地址总线、数据总线、控制总线、其中地址总线的I/O口是P0口和P2口,数据总线的I/O口是P0 口。第二章(看完要有印象)1.关于STC15F2K60S2系列单片机的功能叙述:.有8通道10位ADC转换。.两个全双工异步串行口。.三个定时器T0 T1 T2。(其中T0有4种工作方式,T1有3种工作方式,T2有1种工作方式。但是T1和T2可以作为波特率发生器).增强型8051 CPU,每个机器周期只有一个系统时钟,时钟频率分为12分频或不分频。2.关于STC15F2K60S2的引脚(有印象就行) 数据总线:P0口 访问外部存储器时地址总线:P0口(低8位);P2口(高8位) 外部中断入口:P3.2(外部中断0);P3.3(外部中断1) P3.6(外部中断2);P3.7(外部中断3);P3.0(外部中断4) 定时器脉冲输入:P3.4(T0脉冲输入);P3.5(T1脉冲输入);P3.1(T2脉冲输入) 控制引脚:1 地址锁存信号线(ALE):P4.52 外部存储器读操作():P4.43 外部存储器写操作():P4.23.单片机的中央处理器是由运算器和控制器组成。4.STC15单片机的储存结构。(要有印象)v 0000HEFFFH:程序Flash0000H3FFFH:数据Flash00H7FH:低128字节基本RAM80HFFH:高128字节基本RAMv 片内基本RAM分为低128字节RAM、高128字节的RAM的特殊功能寄存器(SFR)v 其中低128字节又分为工作寄存器区,位寻址区。与通用RAM 区。工作寄存器区的功能由RS0与RS1决定。v 位寻址区:片内的基本RAM的20H-2FH共16个字节是位寻址区,每个字节8个位,共128位,其对应的地址分别为00H-7EH.位地址还可以用字节地址加位号表示,如20H的单位的B5位,其地址可用05H 表示,也可用20.5H表示。v 通用RAM区;30H-7FH共80个字节 。其中高128字节的RAM的地址为80H-FFH .高128字节的RAM只能采用寄存器间接寻址方式访问;特殊功能寄存器只能采用直接寻址方式。第四章1.指令寻址方式:(要了解)a. 直接寻址:直接累加器或寄存器访问目标。比如:MOV A,20Hb. 寄存器间接寻址:将地址赋给一个寄存器,然后利用该寄存器的内容作为地址,让累加器或寄存器访问。比如:MOV R0,#30HMOV A,ROc. 立即寻址:将立即数赋给累加器或寄存器。d. 寄存器寻址:寄存器间的数据传送,或者自加自减。e. 变址寻址:一个地址加另一个地址中的数据送到累加器或者寄存器。比如:MOV A,A+DPTR2.指令表(必须记住,提供英文全称辅助记忆)MOV A,B 赋值(传送)(Move) MOVX A,B (片外)赋值MOVC A,B (存储器)赋值(Move Code) XCH A,B (寄存器间)交换(Exchange)XCHD A,B (寄存器间低4位)交换SWAP A (自己的低4位与高4位)交换PUSH A 入栈操作POP A 出栈操作ADD/ADDC A,B 加法/带进位的加法(Addition)SUBB A,B 减法(Subtraction)MUL AB 乘法(Multiplication)DIV AB 除法(Division)INC A 自加(Increment)DEC A 自减(Decrement)ANL A,B 逻辑与(And Logic)ORL A,B 逻辑或(Or Logic)XRL A,B 逻辑异或(Exclusive Or Logic)CLR A 清零(Clear)CPL A 取反(Converse Position Logical)RL A 循环左移(Rotate Left)RLC A 循环左移加CY(Rotate Left with CY)RR A 循环右移(Rotate Right)RRC A 循环右移加CY(Rotate Right with CY)AJMP addr 短转移(绝对转移)(Absolute Jump)LJMP addr 长转移(Long Jump)SJMP addr 相对转移(Short Jump)NOP 空操作(Not Operation)JZ addr 为0转移(Jump if Zero)JNZ addr 非0转移(Jump if Not Zero)CJNE A,B,addr 比较不等转移(Compare Jump if Not Equal)DJNZ A,addr 减1非0转移(Decrement Jump if Not Zero)LCALL addr 子程序长调用(Long Call)ACALL addr 子程序绝对调用(Absolute Call)RET 子程序返回(Return)RETI 中断返回( Return from Interruption)还有其他剩余指令,自己稍微了解一下就行。(备注:A,B为源操作数和目的操作数,addr为地址或程序标志)。第五章(要学会应用)v 伪指令:ORGv 作用:设定程序起始地址指令第六章(整合到大题中考)第七章(建议记住)1.引起中断的根源或者原因称为中断源,STC15中,中断源共有14个。2.CPU在处理较低优先级的中断服务子程序时,有更高优先级程序申请中断,使CPU转而执行更高优先级的中断服务子程序称为中断嵌套。3.中断标志清零的方式有软件清零和硬件清零。4.响应中断的条件:中断总开关EA以及相应中断的控制位都开放中断,并且中断源的信号满足中断要求。5.中断方式跳转与调用方式跳转的区别?答:中断方式跳转需要事先设置中断服务程序的入口地址,并且需要设置相应的中断控制位,开放相应的中断。在设置好相关的程序后还需要需要等待中断。中断产生后,需要在中断服务子程序中设置入栈操作,用来保护断点。中断服务执行后,程序会自动返回断点处。调用方式跳转则不需要设置中断服务入口地址,只需要查询相关中断申请标志位,若有申请就发生跳转。在执行调用子程序中,系统会自动对断点进行保护,不需要设置入栈操作。返回时,需要在调用子程序中设置跳转指令,跳转回断点。(本题较长,建议结合自己的观点精简答案。)6.中断服务程序入口地址:(如果擅长用中断方式编程的童鞋必须记住,擅长调用方式编程就不重要了。)外部中断0 0003H定时器/计数器T0中断 000BH外部中断1 0013H定时器/计数器T1中断 001BH串行口中断 0023HA/D转换中断 002BHLVD中断 0033HPCA中断 003BH串行口2中断 0043HSPI中断 004BH外部中断2 0053H外部中断3 005BH定时器T2中断 0063H预留中断 006BH、0073H、007BH外部中断4 0083H第八章u 定时器初始化工作:(要了解如何操作)1) 对TMOD赋值,以确定T0和T1的工作方式。2) 对AUXR赋值,确定定时脉冲的分频系数,默认为12分频,与传统8051单片机兼容。3) 计算初值,并将其写入TH0、TL0或TH1、TL1。4) 为中断方式时,则对IE赋值,开放中断,必要时,还需要对IP操作,确定各个中断源的优先级。5) 置位TR0或TR1,启动T0和T1开始计时或者计数。u T0、T1工作方式:(建议记住)M1 M0 工作方式 功能0 0 方式0 16位自动重装初值0 1 方式1 16位不自动重载初值1 0 方式2 8位自动重载初值1 1 方式3 两个8位(仅限T0)第九章1.并行通信和串行通信的区别是什么?有哪些优缺点?答:并行通信是将数据字节的各位用多条数据同时进行传送。优点是控制简单,传送速度快。缺点是由于传输线较多,长距离传送成本较高,因此仅适用于短距离传送。串行通信是将数据字节分为一位一位的形式在一条传输线上逐个地传送。优点是传输线少,长距离传送成本很低。缺点是传输速度慢,因此适用于长距离传输。2.同步通信和异步通信的区别是什么?有哪些优缺点?答:异步通信的数据通常是以字符(或字节)为单位组成字符帧传送的。优点是不需要传送同步时钟,字符帧长度不受限制,故而设备简单。缺点是字符帧中因为包含起始位和停止位而降低了有效数据的传输速率。同步通信是一种连续串行传送数据的通信方式,一次通信传输一组数据(包含若干个字符数据)。优点是数据传输速率较高,通常可达 56000 bit/s或更高。缺点是要求发送时钟和接收时钟必须保持严格同步,硬件电路也很复杂。3.多机通信选择第十章(要记住会运用啊!)1.选择A/D模块的重要的指标是:转换精度和转换速度。2.A/D模块编程过程:1 打开ADC电源(设置ADC_CONTR中的ADC_POWER)。2 适当延时,等ADC内部模拟电源稳定。一般延时1 ms即可。3 设置P1口中的相应口线作为AD转换模拟量输入通道(设置P1ASF寄存器)。4 选择ADC通道(设置ADC_CONTR中的CHS2-CHS0)。5 根据需要设置转换结果存储格式(设置CLK_DIV中的ADRJ)。6 查询A/D转换结果标志ADC_FLAG,判断A/D转换是否完成,若完成,则读出A/D转换结果(保存在ADC_RES和ADC_RESL寄存器中),并进行数据处理。如果是多通道模拟量进行转换,则更换A/D转换通道后要适当延时,使输入电压稳定,延时量取20-200s即可(与输入电压源的内阻有关),如果输入电压源的内阻在10K以下,可不加延时。7 若采用中断方式,还需要进行中断设置(中断允许和中断优先级)。8 在中断服务程序中读取A/D转换结果,并将ADC中断请求标志ADC_FLAG清零。3.A/D转换速度:SPEED1SPEED0A/D转换所需时间1190个时钟周期转换一次,CPU工作频率21MHz时,A/D转换速度约300KHz,9位精度10180个时钟周期转换一次,可达到10位精度01360个时钟周期转换一次,可达到10位精度00540个时钟周期转换一次,可达到10位精度4.A/D模拟通道选择:CHS2CHS1CHS0模拟输入通道选择000选择P1.0作为A/D输入信号001选择P1.1作为A/D输入信号010选择P1.2作为A/D输入信号011选择P1.3作为A/D输入信号100选择P1.4作为A/D输入信号101选择P1.5作为A/D输入信号110选择P1.6作为A/D输入信号111选择P1.7作为A/D输入信号v 附加重点: 特殊功能寄存器(从上到下依次对应寄存器的高位到低位)1、 程序状态标志寄存器PSWCY:进位标志。执行加减指令时,如果操作结果的最高位D7进/借位,则CY位置1。否则置0,执行乘法指令时,CY 清0。 AC:辅助进位标志。当执行加减指令时,如果低四位数向高四位数产生进/借位。则AC置1,否则置0。F0:用户自定义。 RS1 RS0:工作寄存器组选择控制位。 OV:溢出标志位,指示运算过程中是否发生了溢出,有溢出时,OV为1。否则为0。 F1:用户标志位1 P:奇偶标志位,如果累加器ACC中的1的个数为偶数,P=0,否则P=1。2、 辅助寄存器AUXRT0x12:决定定时器T0是否12分频。 0:12分频,定时周期为1s。 1:不分频,定时周期为1T。T1x12:决定定时器T1是否12分频。 0:12分频,定时周期为1s。 1:不分频,定时周期为1T。UART_M0x6:串行口模式0状态下的速度设置。TR2:定时/计数器T2运行控制位。T2_C/:定时/计数器T2功能选择位。T2x12:T2是否12分频。EXTRAM:内部扩展RAM访问控制位。S1ST2:串行口1波特率发生器选择位。 0:选择T1为波特率发生器。 1:选择T2为波特率发生器。3、 中断允许控制器IE(0:关闭中断;1:开放中断)EA:中断总开关。ELVD:低电压中断允许控制位。EADC:A/D转换中断允许位。ES:串行口中断允许标志。ET1:定时器T1中断允许控制位。EX1:外部中断1允许控制位。ET0:定时器T0中断允许控制位。EX0:外部中断0允许控制位。4、 中断优先级控制寄存器IP(0:低优先级;1:高优先级)PPCA:PCA中断优先级。PLVD:低电压中断优先级。PADC:A/D转换中断优先级。PS:串行口中断优先级。PT1:定时/计数器T1中断优先级。PX1:外部中断1优先级。PT0:定时/计数器T0中断优先级。PX0:外部中断0优先级。5、 定时/计数器控制寄存器TCON TF1:T1溢出中断请求标志。 TR1:T1的运行控制位。 0:T1停止运行。 1:T1启动运行。 TF0:T0溢出中断请求标志。 TR0:T0的运行控制位。 0:T0停止运行。 1:T0启动运行。 IE1:外部中断1的中断请求标志。 IT1:外部中断1的中断触发方式控制位。 IE0: 外部中断0的中断请求标志。 IT0:外部中断0的中断触发控制位。6、 工作方式寄存器TMODGATE:门控位。C/:功能选择位。0:设定为定时器工作模式。1:设定为计数器工作模式。 M1 MO:选择定时器/计数器工作模式。7、 串口1控制寄存器SCONSM0/FE:为1时,该位用于帧错误检测,它必须由软件清零。为0时,SM0/FE位和SM1一起指定串行通信的工作方式。SM1:多机通信控制位。SM2:多机通信控制位。REN:允许接收控制位。 1:允许串行口接收数据; 0:禁止串行口接收数据。TB8:在方式2和3时,它是要发送的第9个数据位,按需要由软件进行置位或清零。该位可用作数据的奇偶校验位,或在多机通信中用作地址帧/数据帧的标志位。RB8:在方式2和3时,它是接收到的第9位数据,为奇偶检验位或地址帧/数据帧标志位。在方式1时,若SM2=0,则RB8是接收到的停止位。在方式0时,不使用RB8。TI:发送中断标志位,必须用软件清零。RI:接收中断标志位。8、 掉电控制寄存器PCONSMOD:串行口波特率系数控制位。1:使方式1、方式2和方式3的波特率加倍。 0:各工作方式的波特率不加倍。SMOD0:帧错误检测有效控制位。 1:SCON寄存器中的SM0/FE位用于FE(帧错误检测)功能。 0:SCON寄存器中的SM0/FE位用于SM0功能,和SM1一起指定串行通信的工作方式。LVDF:片内低电压检测中断请求标志位。9、 ADC控制寄存器ADC_CONTRADC_POWER:ADC电源控制位。SPEED1:ADC转换速度控制位。SPEED0:ADC转换速度控制位。ADC_FLAG:A/D转换结束标志位。ADC_START:A/D转换起动控制位。CHS2:模拟输入通道选择。CHS1:模拟输入通道选择。CHS0:模拟输入通道选择。10、 模拟功能控制寄存器P1ASFP17ASFP16ASFP15ASFP14ASFP13ASFP12ASFP11ASFP10ASF功能:如果要使用相应口的模拟功能,需将P1ASF特殊功能寄存器中的相应位置为1。v 附加试卷一填空题1.MCS-51的程序存储器空间为 程序Flash ,其地址指针为0000H-EFFFH;MCS-51的外部数据存储器空间为 扩展ROM ,其地址指针为 0000H-06FFH 。(P20)2.指出以下指令中源操作数的寻址方式:MOVC A,A+DPTR 属于 变址 寻址;MOV C,01H 属于 直接 寻址;MOV A,P1属于 寄存器 寻址。3.中断过程一般应包括 将相应的优先级状态触发器置1 、 硬件自动产生一个长调用指令 、 把断点地址压入栈保护 和 把中断程序服务入口地址送到程序计数器PC 4个步骤。(P152)4.在单片机的控制应用系统中,可供选择的定时方式有 软件定时 、 硬件定时 和 可编程定时器定时 3种。(P159)5.计算机的数据传送方式有 串行通信 和 并行通信 两种方式。 (这个题目有点看不懂,答案我不敢肯定是正确的)6.8155是Intel公司生产的可编程RAM和I/O扩展芯片,其片内资源有: 256 字节的静态RAM,最快存取时间为 400ns ;两个可编程的 8 位并行I/O口PA口、PB口,一个可编程的 6 位并行I/O口PC口;一个可编程的 14 位 减一 计数器。(这个我们没有学过)7.STC15系列单片机中是一种 8 通道 10 位高速电压输入型A/D转换器。8.STC15系列单片机的5个中断源、T0、T1和串行口中断所对应的中断服务程序入口地址分别是 0003H 、 0013H 、 000BH 、 OO1BH 和 0023H 。二简答题1.简述单片机的特点。答:微型计算机的基本组成成分(CPU.储存器,I/O接口以及连接他们的总线)集成在一块芯片中而构成的计算机,简称为微型计算机。简称为计算机。由于单片机具有较高的性能价格比,良好的控制性能和灵活的嵌入特性,单片机的应用极其广泛。2. 简述机器周期、状态周期及指令周期之间的区别。答:指令周期是CPU的关键指标,指取出一条并执行一条指令的时间。一般由机器时间为周期,在计算机中,为了管理方便,常常把一条指令分为若干个阶段,每一个阶段完成一项工作。完成一个基本操作的时间称之为机器周期。一般情况下一个机器周期是由若干个状态周期组成的。3.简述程序状态字(PSW)的几个标志的意义及置位和复位的条件。答:程序状态字的各个标志位意义如下:CY:进位标志位。执行加减指令时,如果操作结果的最高位D7进/借位,则CY位置1。否则置0,执行乘法指令时,CY 清0。AC:辅助进位标志位,当执行加减指令时,如果低四位数向高四位数产生进/借位。则AC置1,否则置0。FO:用户标志0RS1 RS0:工作寄存器组选择控制位。OV:溢出标志位,指示运算过程中是否发生了溢出,有溢出时,OV为1。否则为0。F1:用户标志位1P:奇偶标志位,如果累加器ACC中的1的个数为偶数,P=0,否则P=1。4. 在STC15中,哪些中断可以随着中断响应而自动撤除?哪些中断需要用户来撤除?撤除的方法是什么?答:对于定时器/计数器T0或T1溢出中断,CPU在响应中断后,由硬件自动清除其中断标志位TF0或TF1,无需采取其他方式。当相应中断服务执行后,这些中断请求标志位也会自动清零。对于串行口中断,CPU在响应中断后,硬件不会自动清除标志位TI或RI,必须在中断服务程序中,在判别TI还是RI引起的中断后,在用软解将其清零。外部中断0和外部中断1的触发方式可以由ITx(x=0,1)设置为0还是1,都属于边沿触发,CPU在响应中断后由硬件自动清除其中的标志位IE0或IE1,无需再用其他的方式。电源低电压检测中断的中断标志位需要用软件清零。三程序分析题1.指出下列指令中哪些是非法的?如果非法请改正。 DEC DPTR RL B JNZ A,NEXT MOV A,R2答:非法指令是DEC DPTR,改正:INC DPTR。四综合应用题在STC15单片机中,请用定时器1,由p1.0输出400ms的方波。要求:(1)写出定时器1的方式控制字,计算定时器1的初值; (2)试编写完成此功能的程序段。附录:TMOD格式说明: 位序 D7 D6 D5 D4 D3 D2 D1 D0位符GATEC/T1M1M0GATE C/T0M1M0GATE门控位GATE=0 由运行控制位TR启动定时器;GATE=1 由外中断请求信号(INT0或INT1)启动定时器;C/T定时方式或计数方式选择位 C/T=0 定时工作方式; C/T=1 计数工作方式;M1 M0工作方式选择位0 0 方式0为13位定时器/计数器;0 1 方式1为16位定时器/计数器;1 0 方式2为常数自动装入的8位定时器/计数器;1 1 方式3(仅适用于T0)为两个8位定时器/计数器,在方式3时T1停止计数。答:设定定时器T1工作在方式0,定时时间为50ms,计数次数为4次。计数初值:65536-50000=15536=3CBOH查询方式编程:ORG 0100H MAIN:MOV TMOD,#00HMOV TH1,#3CHMOV TL1,#0B0HMOV R0,#04SETB TR1 Check_TF1:JBC TF1,Timer1_OverflowSJMP Check_TF1 Timer1_Overflow:DJNZ RO,Check_TF1MOV RO,#04CPL P1.0AJMP Check_TF1END中断方式编程:ORG 0000HLJMP MAINORG 001BHLJMP Timer1_ISRORG 0100H MAIN:MOV TMOD,#00HMOV TH1,#3CHMOV TL1,#0B0HSETB EASETB ET1SETB TR1SJMP Timer1_ISR:DJNZ R0,Timer1_ExitMOV R0,#04CPL P1.0 Timer1_Exit:RETIEND
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 其他分类 > 大学论文


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!