单片机技术教案综合版文档格式.docx
《单片机技术教案综合版文档格式.docx》由会员分享,可在线阅读,更多相关《单片机技术教案综合版文档格式.docx(28页珍藏版)》请在冰豆网上搜索。
片内RAM、ROM的容量加大,且寻址范围可达64KB,个别片内还带有A/D转换接口。
第4阶段(1983~80年代末):
16位单片机阶段。
1983年Intel公司又推出了高性能的16位单片机MCS—96系列,由于其采用了最新的制造工艺,使芯片集成度高达12万只晶体管/片。
第5阶段(90年代):
单片机在集成度、功能、速度、可靠性、应用领域等全方位向更高水平发展。
三、单片机的特点
⏹
(1)体积小、重量轻、功耗低、功能强、性价比高。
⏹
(2)数据大都在单片机内部传送,运行速度快,抗干扰能力强,可靠性高。
⏹(3)结构灵活,易于组成各种微机应用系统。
⏹(4)应用广泛,既可用于工业自动控制等场合,又可用于测量仪器、医疗仪器及家用电器等领域。
四、单片机系列简介
目前世界上单片机生产厂商很多,如:
Intel、Motorola、Philips、Siemens、NEC、ADM、Zilog等公司,其主流产品有几十个系列,几百个品种。
尽管其各具特色,名称各异,但作为集CPU、RAM、ROM(或EPROM)、I/O接口、定时器/计数器、中断系统为一体的单片机,其原理大同小异。
现以Intel公司的系列产品为例,说明各系列之间的区别。
Intel公司从其生产单片机开始,发展到现在,大体上可分为3大系列:
MCS—48系列、MCS—51系列、MCS—96系列。
该3大系列的性能简介见表1。
表1Intel单片机系列性能简介
4、MCS—51单片机系列
MCS—51系列单片机虽已有10多种产品,但可分为两大系列:
MCS—51子系列与MCS—52子系列。
MCS—51子系列中主要有8031、8051、8751三种类型。
而MCS—52子系列也有3种类型8032、8052、8752。
在某些性能上略有差异。
由此可见,在本子系列内各类芯片的主要区别在于片内有无ROM或EPROM;
MCS—51与MCS—52子系列间所不同的是片内程序存储器ROM从4KB增至8KB;
片内数据存储器由128个字节增至256个字节;
定时器/计数器增加了一个;
中断源增加了1~2个。
另外,对于制造工艺为CHMOS的单片机,由于采用CMOS技术制造,因此具有低功耗的
特点,如8051功耗约为630mW,而80C51的功耗只有120mW。
五、单片机的应用
由于单片机具有体积小、重量轻、价格便宜、
功耗低,控制功能强及运算速度快等特点,因而在国民
经济建设、军事及家用电器等各个领域均得到了广
泛的应用。
(1)家用电器领域
目前国内各种家用电器已普遍采用单片机控制取代传统的控制电路,而做成单片机控制系统。
例如洗衣机、电冰箱、空调机、微波炉、电饭煲、电视机、录像机及其它视频音像设备的控制器。
⑵办公自动化领域
现代办公室中所使用的大量通信、信息产品多数都采用了单片机,如通用计算机系统中的键盘译码、磁盘驱动、打印机、绘图仪、复印机、电话、传真机、考勤机等。
(3)智能仪表。
用单片机改造原有的测量、控制仪表,促进仪表向数字化、智能化、多功能化、综合化、柔性化方向发展。
(4)机电一体化产品。
单片机与传统的机械产品相结合,使传统机械产品结构简化,控制智能化。
(5)商业营销领域
由于在商业营销系统已广泛使用的电子称、收款机、条形码阅读器、仓储安全监测系统、商场保安系统、空气调节系统、冷冻保鲜系统等中,目前已纷纷采用单片机构成专用系统,主要由于这种系统有明显的抗病菌侵害、抗电磁干扰等高可靠性能的保证。
(6)汽车电子与航空航天电子系统
通常在这些电子系统中的集中显示系统、动力监测控制系统、自动驾驭系统、通信系统以及运行监视器(黑匣子)等都要构成冗余的网络系统。
第二讲
2.1单片机的基本组成2.280C51单片机的引脚功能和结构框图
二|、教学要求:
掌握单片机的存储器结构与复位方式,以及80C51单片机的引脚功能,内部结构和工作原理
重点:
80C51单片机的引脚功能和内部结构,单片机的存储器结构与复位方式.
难点:
单片机的内部结构和工作原理
1、借助多媒体教学,一方面可以使课堂生动,另一方面可以腾出大量时间加强对重难点知识的讲解.
2、借助EWB软件做演示实验,增强学生对知识的理解,同时提高他们对本学科的兴趣.
(板书)
2.1.1MCS-51单片机的基本组成
(1)一个8位微处理器CPU。
(2)数据存储器RAM和特殊功能寄存器SFR。
(3)内部程序存储器ROM。
(4)两个定时/计数器,用以对外部事件进行计数,也可用作定时器。
(5)四个8位可编程的I/O(输入/输出)并行端口,每个端口既可做输入,也可做输出。
(6)一个串行端口,用于数据的串行通信。
(7)中断控制系统。
(8)内部时钟电路。
时钟电路
SFR和RAM
ROM
CPU
定时/计数器
并行端口
中断系统
串行端口
时钟源
T0T1
P0P1P2P3
TXDRXD
INT0INT1
二、80C51单片机的引脚功能结构框图(如上图)
1.主电源引脚VCC和VSS
2.外接晶振引脚XTAL1和XTAL2
3.控制或其他电源复用引脚RST/VPD、ALE/、和/VPP
4.输入/输出引脚P0、P1、P2、P3(共32根)
三、引脚功能
(1)主电源引脚Vcc和Vss
VCC:
接+5V电源正端;
VSS:
接+5V电源地端。
(2)外接晶体引脚XTAL1和XTAL2
XTAL1:
接外部石英晶体的一端。
在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。
当采用外部时钟时,对于HMOS单片机,该引脚接地;
对于CHMOS单片机,该引脚作为外部振荡信号的输入端。
XTAL2:
接外部晶体的另一端。
在单片机内部,接至片内振荡器的反相放大器的输出端。
当采用外部时钟时,对于HMOS单片机,该引脚作为外部振荡信号的输入端;
对于CHMOS芯片,该引脚悬空不接。
图1内部振荡方式
图2外部振荡方式
(3)输入/输出(I/O)引脚P0口、P1口、P2口及P3口
(a)P0口(39脚~32脚):
P0.0~P0.7统称为P0口。
(b)P1口(1脚~8脚):
P1.0~P1.7统称为P1口,可作为准双向I/O接口使用。
(c)P2口(21脚~28脚):
P2.0~P2.7统称为P2口,一般可作为准双向I/O接口。
(d)P3口(10脚~17脚):
P3.0~P3.7统称为P3口。
第三讲
2.380C51CPU的结构和特点2.4存储器结构和地址空间
掌握单片机的存储器结构与复位方式,80C51单片机的引脚功能,内部结构和工作原理
MCS-51单片机的基本结构
2.1.2MCS-51单片机硬件结构特点
1.内部程序存储器(ROM)和内部数据存储器(RAM)容量(如表2-1所示)。
2.输入/输出(I/O)端口
3.外部程序存储器和外部数据存储器寻址空间
4.中断与堆栈
5.定时/计数器与寄存器区
6.指令系统
2.1.3MCS-51单片机内部结构
1.运算器
运算器由8位算术逻辑运算单元ALU(ArithmeticLogicUnit)、8位累加器ACC(Accumulator)、8位寄存器B、程序状态字寄存器PSW(ProgramStatusWord)、8位暂存寄存器TMP1和TMP2等组成。
2.控制器
主要由程序计数器PC、指令寄存器IR、指令译码器ID、堆栈指针SP、数据指针DPTR、时钟发生器及定时控制逻辑等组成。
2.3MCS-51单片机的存储器配置
2.3.1片内数据存储器
2.3.2片外数据存储器
2.3.3程序存储器
2.3.1片内数据存储器
片内数据存储器结构如图2-9(a)所示;
其具体位地址单元如表2-3所示;
专用寄存器的地址映像如表2-4所示。
2.1.4单片机复位电路及复位状态
1.复位电路
单片机复位电路包括片内、片外两部分。
外部复位电路就是为内部复位电路提供两个机器周期以上的高电平而设计的。
MCS-51单片机通常采用上电自动复位和按键手动复位两种方式。
如图2-14所示。
2.单片机复位后的状态
单片机运行出错或进入死循环时,可按复位键重新运行。
21个特殊功能寄存器复位后的状态为确定值,如表2-6所示。
3、时钟电路
(1)振荡周期/时钟周期:
为单片机提供时钟信号的振荡源的周期。
(3)机器周期:
通常将完成一个基本操作所需的时间称为机器周期。
(4)指令周期:
是指CPU执行一条指令所需要的时间。
一个指令周期通常含有1~4个机器周期。
若80C51单片机外接晶振为12MHz时,则单片机的四个周期的具体值为:
振荡周期=1/12MHz=1/12μs=0.0833μs
时钟周期=1/6μs=0.167μs
机器周期=1μs
指令周期=1~4μs
4、80C51指令时序
六、作业:
P47页4,6,10,11
第四讲
第三章80C51单片机的指令系统
掌握单片机的寻址方式,指令特点,功能和使用
寻址方式,指令特点,功能和使用
难点:
寻址方式
•3.1MCS-51指令系统的分类、格式及一般说明
•3.2寻址方式
•3.3分类指令
MCS-51单片机指令系统有如下特点:
(1)指令执行时间快。
(2)指令短,约有一半的指令为单字节指令。
(3)用一条指令即可实现2个一字节的相乘或相除。
(4)具有丰富的位操作指令。
(5)可直接用传送指令实现端口的输入输出操作。
3.1MCS-51指令系统的分类、格式及一般说明
3.1.1指令分类
3.1.2指令格式
3.1.3指令描述符号介绍
3.1.1指令分类
按指令功能,MCS-51指令系统分为数据传递与交换、算术运算、逻辑运算、程序转移、布尔处理操作、CPU控制等6类。
布尔处理操作类指令又称位操作指令。
在MCS-51指令中,一般指令主要由操作码、操作数组成。
指令应具有以下功能:
(1)操作码指明执行什么性质和类型的操作。
例如,数的传送、加法、减法等。
(2)操作数指明操作的数本身或者是操作数所在的地址。
(3)指定操作结果存放的地址。
3.1.3指令描述符号介绍
Rn——当前选中的寄存器区中的8个工作寄存器R0~R7(n=0~7)。
Ri——当前选中的寄存器区中的2个工作寄存器R0、R1(i=0,1)。
direct—8位的内部数据存储器单元中的地址。
#data——包含在指令中的8位常数。
#data16——包含在指令中的16位常数。
addr16——16位目的地址。
addr11——11位目的地址。
rel——8位带符号的偏移字节,简称偏移量。
DPTR——数据指针,可用作16位地址寄存器。
bit——内部RAM或专用寄存器中的直接寻址位。
A——累加器。
B——专用寄存器,用于乘法和除法指令中。
C——进位标志或进位位,或布尔处理机中的累加器。
@——间址寄存器或基址寄存器的前缀,如@Ri,@DPTR。
/——位操作数的前缀,表示对该位操作数取反,如/bit。
×
——片内RAM的直接地址或寄存器。
(×
)——由×
寻址的单元中的内容。
——箭头左边的内容被箭头右边的内容所代替。
3.2寻址方式
3.2.1立即寻址
3.2.2直接寻址
3.2.3寄存器寻址
3.2.4寄存器间接寻址
3.2.5变址寻址
3.2.6相对寻址
3.2.7位寻址
指令中直接给出操作数的寻址方式。
立即操作数用前面加有#号的8位或16位数来表示。
例如:
MOVA,#60H;
A←#60H
MOVDPTR,#3400H;
DPTR←#3400H
MOV30H,#40H;
30H单元←#40H
上述三条指令执行完后,累加器A中数据为立即数据60H,DPTR寄存器中数据为3400H,30H单元中数据为立即数40H。
3.2.2直接寻址
指令中直接给出操作数地址的寻址方式,能进行直接寻址的存储空间有SFR寄存器和内部数据RAM。
MOVPSW,#20H;
PSW←#20H
PSW为直接寻址寄存器的符号地址。
MOVA,30H;
A←30H内部RAM单元中的内容
30H为直接给出的内部RAM的地址。
3.2.3寄存器寻址
以通用寄存器的内容为操作数的寻址方式。
通用寄存器指A、B、DPTR以及R0~R7。
例如:
CLRA;
A←0
INCDPTR;
DPTR←DPTR+1
ADDR5,#20H;
R5←#20H+R5
以寄存器中内容为地址,以该地址中内容为操作数的寻址方式。
间接寻址的存储器空间包括内部数据RAM和外部数据RAM。
能用于寄存器间接寻址的寄存器有R0,R1,DPTR,SP。
其中R0、R1必须是工作寄存器组中的寄存器。
SP仅用于堆栈操作。
MOV@R0,A;
内部RAM(R0)←A其指令操作过程示意图如图3-1所示。
又如:
MOVXA,@R1;
A←外部RAM(P2R1)其指令操作过程示意图如图3-2所示。
再如:
MOVX@DPTR,A;
外部RAM(DPTR)←A
其指令操作过程示意图如图3-3所示。
变址寻址只能对程序存储器中数据进行操作。
由于程序存储器是只读的,因此变址寻址只有读操作而无写操作,在指令符号上采用MOVC的形式(如图3-4所示)。
MOVCA,@A+DPTR;
A←(A+DPTR)
又如,MOVCA,@A+PC;
A←(A+PC)
这条指令与上条指令不同的是,基址寄存器是PC。
以当前程序计数器PC的内容为基础,加上指令给出的一字节补码数(偏移量)形成新的PC值的寻址方式。
相对寻址用于修改PC值,主要用于实现程序的分支转移。
例如,SJMP08H;
PC←PC+2+08H
指令操作示意图如图3-5所示。
位寻址只能对有位地址的单元作位寻址操作。
位寻址其实是一种直接寻址方式,不过其地址是位地址。
SETB10H;
将10H位置1若22H单元中存放着数据40H,22H单元的D0位的位地址为10H,执行上述指令后(22H)=41H。
又如:
MOV32H,C;
32H←进位位C
ORLC,32H;
C←C∨32H
第五讲
3.3.1数据传送类指令
•数据传送类指令共28条,是将源操作数送到目的操作数。
指令执行后,源操作数不变,目的操作数被源操作数取代。
数据传送类指令用到的助记符有MOV、MOVX、MOVC、XCH、XCHD、S、POP8种。
•源操作数可采用寄存器、寄存器间接、直接、立即、变址5种寻址方式寻址,目的操作数可以采用寄存器、寄存器间接、直接寻址3种寻址方式。
MCS-51单片机片内数据传送途径如图3-6所示。
1.以A为目的操作数
MOVA,Rn;
A←Rn
MOVA,direct;
A←(direct)
MOVA,@Ri;
A←(Ri)
MOVA,#data;
A←#data
2.以Rn为目的操作数
MOVRn,A;
Rn←A
MOVRn,direct;
Rn←(direct)
MOVRn,#data;
Rn←#data
3.以直接地址为目的操作数
MOV@Ri,A;
(Ri)←A
MOV@Ri,direct;
(Ri)←(direct)
MOV@Ri,#data;
(Ri)←#data
4.以间接地址为目的操作数
设(30H)=6FH,R1=40H,执行MOV@R1,30H后,30H单元中数据取出送入R1间接寻址的40H单元,(40H)=6FH。
5.以DPTR为目的操作数
MOVDPTR,#data16;
DPTR←#data16
例如执行MOVDPTR,#2000H后,
(DPTR)=2000H。
6.访问外部数据RAM
MOVXA,@DPTR;
A←(DPTR)
MOVX@DPTR,A;
(DPTR)←A
MOVXA,@Ri;
A←(P2Ri)
MOVX@Ri,A;
(P2Ri)←A
7.读程序存储器
MOVCA,@A+DPTR;
A←(A+DPTR)
MOVCA,@A+PC;
A←(A+PC)
例如已知A=30H,DPTR=3000H,
程序存储器单元(3030H)=50H,执行MOVCA,@A+DPTR后,A=50H。
8.数据交换
l
字节交换
XCHA,Rn;
A<
=>
Rn
XCHA,direct;
(direct)
XCHA,@Ri;
(Ri)
半字节交换
XCHDA,@Ri;
A0~3<
(Ri)0~3
SWAPA;
A4~7
9.堆栈操作
所谓堆栈是在片内RAM中按“先进后出,后进先出”原则设置的专用存储区。
数据的进栈出栈由指针SP统一管理。
堆栈的操作有如下两条专用指令:
PUSHdirect;
SP←(SP+1),(SP)←(direct)
POPdirect;
(direct)←(SP),SP←SP-1
PUSH是进栈(或称为压入操作)指令。
指令执行过程如图3-7所示。
【例3.1】将片内RAM30H单元与40H单元中的内容互换。
方法1(直接地址传送法):
MOV31H,30H
MOV30H,40H
MOV40H,31H
SJMP$
方法2(间接地址传送法):
MOVR0,#40H
MOVR1,#30H
MOVA,@R0
MOVB,@R1
MOV@R1,A
MOV@R0,B
方法3(字节交换传送法):
MOVA,30H
XCHA,40H
MOV30H,A
方法4(堆栈传送法):
PUSH30H
PUSH40H
POP30H
POP40H
3.3.2算术运算类指令
1.加法指令
ADDA,Rn;
A←A+Rn
ADDA,direct;
A←A+(direct)
ADDA,@Ri;
A←A+(Ri)
ADDA,#data;
A←A+#data
2.带进位加指令
ADDCA,Rn;
A←A+Rn+C
ADDCA,direct;
A←A+(direct)+C
ADDCA,@Ri;