《单片机原理及应用》2013期末复习资料控制信号有:--ALE地址锁存;--/PSEN片外ROM取指令信号;--/RD,/WR片外RAM读/写控制;--/EA低电平时只访问外ROM,高电平时先内ROM后外ROM;--RESET高电平系统复位信号;CPU时序:振荡周期。
●状态周期(S周期)含两个振荡周期,分P1和P2节拍。
●机器周期(6个状态周期)。
●指令周期(执行一条指令的时间)MCS-51系列:三个独立的逻辑空间(1)(2)(3)1.片外ROM 和RAM 分别有64K 寻址能力,由16根地址线实现:高8位(P2口)P2.7P2.0( A15A8 )低8位(P0口)P0.7P0.0( A7A0 )2.寻址控制线相互独立:片外ROM------/PSEN片外RAM------/RD ,/WR片内RAM 地址空间081624324812700H 20H30H7FH工作寄存器可寻址位(1)数据存储单元(RAM )4个工作寄存器区均为R0~R7, 由PSW 中的RS1,RS0指定。
RS1 RS00 00 11 01 1(D4) (D3)0 区0 区0 区0 区(2)位寻址空间从20H~2FH 共128bit, 位地址为00H~7FH , 亦可作普通RAM 使用。
P0口作一般I/O 口输入数据,条件:控制信号为“0”时。
*输入数据时P0为准双向口,因需向端口先写入“1”,使两个FET 断。
P3口1.为双功能口,第二功能定义为:P3.0RXD;串行输入P3.1TXD;串行输出P3.2/INT0;外中断0P3.3/INT1;外中端1P3.4T0;定时器/计数器0外入P3.5T1;定时器/计数器1外入 P3.6/WR ;外部RAM 写选通 P3.7/RD ;外部RAM 读选通定时器/计数器方式和控制方式寄存器TMODD7D4D3D0T1方式T0方式TMOD 89H不可位寻址控制寄存器TCOND7D0溢出TCON 88H可位寻址用于外部中断启动方式2:计数脉冲中断请求定时器预置举例已知:fosc=6MHx,T=2us,要求定时TC=1ms,求时间常数X。
方式1:解:(216-X)2us=1000usX=216-500=65036=FE0CH所以THx=0FEH,TLx=0CH五个中断源及标志中断源标志入口地址 /INT0IE00003H T0TF0000BH /INT1IE10013H T1TF1001BH 串行口TI 发 RI 收上述均由硬件置位,软件清零。
外部中断的输入触发方式控制位 /INT0→IT0(TCON.0) /INT1→IT1(TCON.2)当ITx=0,低电平触发, ]002BH]软件置位=1,下降沿触发,复位状态● 堆栈SP →07H ● 程序状态字PSW →0区 ● P0~P3口→FFH● 特殊功能寄存器SFR →00H ● 内部RAM →随机串行口专用寄存器串行口控制寄存器:SCONSM0SM1SM2REN TB8RB8TIRID7D098H(可位寻址)模式选择位SM0SM1模式说明波特率000移位寄存器固定0118位数据可变1029位数据固定1139位数据可变电源控制寄存器:PCOND7D0PCON 87H() 不可位寻址 2-38只有D7位对串行口起作用SMOD=0不变波特率SMOD=1加倍波特率串行通信方式归纳模式1SM0SM1SM2(波特可变)0108位数据停止位或0107位,校验停止位模式2,3SM0SM1SM2数据N0.9(双机通信)1008校验停止位1108校验停止位模式2,3(波特前者固定,后者可变)(多机通信)发方2:SM0SM1SM2数据N0.910181地址停止位0数据发方3:11181地址停止位0数据收方2:SM0SM1SM2数据N0.910181地址停止位10080数据收方3:11181地址停止位11080数据波特率计算定时器T1用方式2(自动重装),(3)波特率=2SMOD /32〃(每秒的溢出率) =2SMOD /32〃fosc/[12〃(28-X )](4)由波特率求定时预置常数,(3)式移项TH1=28-fosc/[12〃n 〃波特率]串行通信应用1.收/发方式:中断或查询(双方相同,或相互混合) {)0(32)1(16===SMO D SMO D n 其中2.编程要点:(1)初始化:控制字设定,波特率(时间常数),开放中断,定时器启动等. (2)收/发过程:MOVSBUF,A;首先发送CRLTI;然后清标志(3)9位数据和奇偶校验的通信:发方:确立TB8的值偶校验→TB8=P(特征校验位本身)奇校验→TB8=/P(特征校验位之反)收方:检验RB8的值偶校验→无错:RB8=P→出错:RB8≠P奇校验→无错:RB8=/P→出错:RB8≠/P汇编程序设计示例编写延时子程序50ms给定fosc=6MHz,汇编机器执行执行程序周期次数时间DY:MOVR2,#50111×1×2(2us)D1:MOVR3,#2481501×50×2(100us) DJNZR3,$2248×50248×50×2×2(49600us)DJNZR2,D125050×2×2┄┄┄┄┄┄┄┄┄┄┄(200us)全译码:不参与片内寻址的高端地址全部参加译码,地址空间唯一确定(另见图4-3). 如:两片8K字节ROM,用3-8译码器.4-12A15A14A13A12┆A11A10A9A8┆A7A6A5A4┆A3A2A1A0000×,××××,××××,××××00001FFF001×,××××,××××,××××20003FFF地址范围:ROM1(Y0)→0000H~1FFFH,ROM2(Y1)→2000H~3FFFH.8255的工作状态的实现是基于: ▲读/写控制逻辑:单片机输出的地址A1、A0,和控制信号/WR、/RD、/CS用以选择口操作状态。
(8255的口操作状态)8155的RAM和I/O口编址IO/M=0→对RAM读/写,IO/M=1→对I/O口读/写,(由AD0-AD2寻址)。
模拟题一、判断题1.中断服务程序的最后一条指令是RET。
(×)2.MCS-51的程序存储器只能用来存放程序。
(×)3.MCS-51的串口是一个可编程的全双工异步串行通信接口。
(√) 4.在程序执行过程中,由PC提供数据存储器的读/写地址。
(×)5.内部RAM的位寻址区,只能供位寻址使用而不能供字节寻址使用。
(×)6.存储器分成内存和外存两大部分,其中外存可以直接与CPU交换信息。
(×)7.P2口既可以作为I/O使用,又可以作地址/数据复用口使用。
(√) 8.MOVA,30H的源操作数为立即寻址方式。
(×)9.DPTR是由DPH和DPL两个8位特殊寄存器组成的。
(√)10.MCS-51单片机串行口控制寄存器为SCON。
(√)二、填空题1.通常、单片机上电复位时PC=0000H,SP= 07H;而工作寄存器则缺省采用第00组,这组寄存器的地址范围是从00H-07H。
2.10根地址线可选1024(或1KB)个存储单元,32KB存储单元需要15根地址线。
3.MOVDPTR,#6712H;(DPTR)= 6712HMOV12H,DPH;(12H)= 67HMOVR0,DPL;(R0)= 12HMOVA,@R0;(A)= 67H三、单项选择题1、在CPU内部,反映程序运行状态或反映运算结果的一些特征寄存器是(B)。
(A)PC(B)PSW(C)A(D)SP2、要用传送指令访问MCS-51片外RAM,它的指令操作码助记符应是(B)。
(A)MOV(B)MOVX(C)MOVC (D)以上都是3、指令AJMP的跳转范围是(C)。
(A)256B(B)1KB(C)2KB(D)64KB4、串行口中断的入口地址是(A)。
(A)00023H(B)000BH(C)0013H(D)0003H5、各中断源发出的中断请求信号,都会记在MCS-51系统中的(B)。
(A)IE(B)IP(C)TCON(D)SCON6、CPU寻址外设端口地址的方法有两种,一种是统一编址,还有一种是(C)。
(A)混合编址(B)动态编址(C)独立编址(D)变址编址7、定时/计数器有4种操作模式,它们由(A)寄存器中的M1M0状态决定。
(A)TMOD(B)TCON(C)PCON (D)SCON8、当执行调用指令时,首先将该指令下一条指令的地址压入到堆栈区,保护其下一条指令的地址,然后再将转移的地址送(B)实现转移;当再执行RET指令时自动将堆栈中的地址弹入PC从而实现返回。
(A)DPTR(B)PC(C)SP(D)PSW9、在寄存器间接寻址方式中,指定寄存器中存放的是(B)。
(A)操作数(B)操作数地址(C)转移地址(D)地址偏移量10、某种存储器芯片容量是8KB,那么它的地址线根数是(D)。
(A)10根(B)11根(C)12根(D)13根四、综合题1.用图示MCS-51单片机的存储器空间,并给出各自的地址范围和容量是多少?(P14)2.某51单片机的P1.0~P1.4口接有5个发光二极管,INT1引脚接有1个R-S触发器,要求按键开关每来回拨动一次,就改变一次发光二极管的状态,令其轮流点亮,试画出电路连接图,编写实现的完整程序。
(P85)ORG 0000HLJMP MAINORG 0013HLJMP INTORG 0030H MAIN: MOV P1,#0FEHMOV A,P1SETB IT1SETB EX1SETB EASJMP $ORG 0100HINT: RL AMOV P1,ACJNE A,#0EFH,RETUMOV A,#7FHRETU: RETIEND3.利用T0的工作模式2计数,每计100个外部脉冲,累加器A的内容就加1,计数初值为9CH,试编程实现。
(P101)ORG 0000HLJMP MAINORG 0030HMAIN: CLR AMOV TMOD,#06HLOAD: MOV TH0,#9CHMOV TL0,#9CHSTART: SETB TR0WAIT: JNB TF0,WAITCLR TF0INC AAJMP STARTEND4.某51单片机的串口上外接一个74LS165芯片以扩展8位并行输入接口,要求通过扩展并行I/O口读入10个8位数据,并将其依次放入内部数据存储器地址从30H开始的单元中,试编写程序实现。