版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章:单片机硬件结构本章重点:MCS-51的基本特性;单片机的引脚与I/O口结构;存储器、堆栈与特殊功能寄存器.1组成:
CPU(进行运算、控制)RAM(数据存储器)I/O口(串口、并口等)ROM(程序存储器)PC机:上述部件以芯片形式安装在主板上。单片机:上述部件被集成到单芯片中。通用PC包括:键盘、显示器、鼠标、硬/软/光驱、音箱、打印机、扫描仪…等外设。单片机则只是一片集成电路。单片机与计算机之异同(1)2功能:PC机:数据运算、采集、处理、存储、传输;单片机:控制(或受控于)外设。通用计算机擅长于数据运算、采集、处理、存储和传输;单片机的专长则是测控,往往嵌入某个仪器/设备/系统中,使其达到智能化的效果。单片机与计算机之异同(2)3MCS-51单片机基本特性8位的CPU,片内有振荡器和时钟电路,工作频率为1~12MHz(Atmel89Cxx为0~24MHz)片内有128/256字节
RAM片内有0K/4K/8K字节程序存储器ROM可寻址片外64K字节数据存储器RAM可寻址片外64K字节程序存储器ROM5片内21/26个特殊功能寄存器(SFR)4个8位的并行I/O口(P0-P3)1个全双工串行口(UART)2/3个16位定时器/计数器(TIMER/COUNTER)可处理5/6个中断源,两级中断优先级内置1个布尔处理器和1个布尔累加器(Cy)MCS-51指令集含111条指令6MCS-51系列单片机配置一览表系列片内存储器(字节)定时器计数器并行I/O串行I/O中断源片内ROM片内RAM无有ROM有EPROMIntelMCS-51子系列803180C31805180C51(4K字节)875187C51(4K字节)128字节2x164x8位15IntelMCS-52子系列803280C32805280C52(8K字节)875287C52(8K字节)256字节3x164x8位16注意:今后将会经常提到ATMEL的AT89C2051/51/52等MCU!ATEML89C系列(常用型)1051(1K)/2051(2K)/4051(4K)(20条引脚DIP封装)1282151589C51(4K)/89C52(8K)(40条引脚DIP封装)128/2562/33215/67单片机的引脚定义从一片集成电路的角度去认识单片机9认识单片机的引脚MCS-51单片机40脚Vcc,GND2XTAL1,XTAL22RESET1EA/Vpp1ALE/PROG1PSEN1P0.0—P0.78P1.0—P1.78P2.0—P2.78P3.0—P3.7810单片机的引脚(电源端)Vcc,GND:正电源端与接地端(+5V/3.3V/2.7V)不同的单片机可以允许不同的工作电压,不同的单片机表现出的功耗也不同。11单片机的引脚(晶振端)CPU总是按照一定的时钟节拍与时序工作:振荡周期/时钟周期:Tc=晶振频率fosc(或外加频率)的倒数机器周期:Tm=12个振荡周期(Tc)指令周期:Ti:执行一条指令所需的机器周期(Tm)数牢牢记住:振荡周期=晶振频率fosc的倒数;1个机器周期=12个振荡周期;1个指令周期=1、2、4个机器周期13复位使单片机进入某种确定的初始状态:
▼PC值归零(0000H);▼各个SFR被赋予初始值
P0~P3=0FFH,Acc=0,B=0,TH0=0,TL0=0,TH1=0,TL1=0,SP=7,PSW=0……▼退出处于节电工作方式的停顿状态、退出一切程序进程、退出程序的死循环,从头开始。单片机的引脚(复位端)RESET:复位端(正脉冲有效,时间大于2个机器周期)14PC与SFR复位状态表寄存器复位状态寄存器复位状态PC0000HTCON00HA00HT2CON00HB00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HP0~P3FFHSCON00HIPXX000000BSBUFXXHIE0X000000BPCON0XXX0000BTMOD00H15单片机的引脚(EA端)EA/Vpp:
寻址外部ROM控制端/编程电源输入端。低有效,片内无ROM时必须接地;片内有ROM时应当接高电平;对片内ROM编程时编程正电源加到此端。17单片机的引脚(ALE端)ALE/PROG:地址锁存允许/编程脉冲输入端。
P0口寻址外部低8位地址时接外部锁存器G端;
ALE端平时会输出周期正脉冲:ffosc/6;对片内ROM编程时编程脉冲由此端加入。18单片机锁存器74LS373P0.0-P0.7ALEPSENP2.0-P2.48D8QOEA8-A12A0-A7D0-D7GEAOECEEPROM单片机的引脚(PSEN端)PSEN:寻址外部程序存储器时选通外部EPROM的读控制端(OE)低有效。19单片机的引脚(P1口)P1.0—P1.7:准双向I/O口(内置了上拉电阻)输出时一切照常,仅在作输入口用时要先对其写“1”。21DQCK/Q读引脚读锁存器写锁存器内部总线Vcc引脚P1.X内部上拉电阻2121DQCK/Q读引脚读锁存器写锁存器内部总线Vcc引脚P1.X内部上拉电阻输出数据=1时110截止=1P1口2221DQCK/Q读引脚读锁存器写锁存器内部总线Vcc引脚P1.X内部上拉电阻输出数据=0时001=0导通P1口23简单测控实例原理图25P1.3作输入端口光路通畅,R亮2K光路阻断,R暗400KR亮<2.2KR暗
>250K26JOB3:CLRP1.1;亮绿灯REDO:SETBP1.3;P1.3作输入口必先置1CHECK:JNBP1.3,CHECK;检测通道是否被阻断?LOOP:…………;有入侵者,报警!
AJMPREDO;再跳回去检测任务三:红外防盗报警P1.3口用于输入状态检测的语句:
R亮<2.2K,红外线光路通畅时,P1.3端=低电平R暗>250K,红外线光路阻断时,P1.3端=高电平2721DQCK/Q读引脚=1读锁存器写锁存器内部总线地址/数据控制引脚P0.X34控制=0时,此脚作输入口(事先必须对它写“1”)00100截止截止=0VccP0口2921DQCK/Q读引脚=0读锁存器写锁存器内部总线地址/数据控制=1引脚P0.X34控制=1时,此脚作地址/数据复用口:(1)输出地址/数据=0时1011=0导通截止=0VccP0口3021DQCK/Q读引脚=0读锁存器写锁存器内部总线地址/数据控制=1引脚P0.X34控制=1时,此脚作地址/数据复用口:(2)输出地址/数据=1时1100=1截止导通=1VccP0口3121DQCK/Q读引脚=1读锁存器写锁存器内部总线地址/数据控制=1引脚P0.X34控制=1时,此脚作地址/数据复用口:(3)输入数据时,输入指令将使引脚与内部总线直通VccP0口32单片机的引脚(P2口)P2.0—P2.7:准双向I/O(内置了上拉电阻)寻址外部程序存储器时输出高8位地址;不接外部程序存储器时可作为8位准双向I/O口使用。21DQCK/Q读引脚读锁存器写锁存器内部总线地址高8位控制引脚P2.X3内部上拉电阻Vcc3321DQCK/Q读引脚=0读锁存器写锁存器内部总线地址高8位控制引脚P2.X控制=0时,此脚作通用输出口:输出=1时110截止3内部上拉电阻11Vcc=1=0P2口3421DQCK/Q读引脚=0读锁存器写锁存器内部总线地址高8位控制引脚P2.X控制=0时,此脚作通用输出口:输出=0时001导通3内部上拉电阻00Vcc=0=0P2口3521DQCK/Q读引脚=0读锁存器写锁存器内部总线地址高8位控制=1引脚P2.X控制=1时,此脚作高8位地址A8—A15输出口:当输出=1时10截止3内部上拉电阻1=1Vcc=1P2口3621DQCK/Q读引脚=0读锁存器写锁存器内部总线地址高8位控制=1引脚P2.X01导通3内部上拉电阻0=0Vcc=0控制=1时,此脚作高8位地址A8—A15输出口:当输出=0时P2口37单片机的引脚(P3口)P3.0—P3.7:双功能口(内置了上拉电阻)它具有特定的第二功能。在不使用它的第二功能时它就是普通的通用准双向I/O口。21DQCK/Q读引脚读锁存器写锁存器内部总线第二功能输出引脚P3.X3内部上拉电阻Vcc第二功能输入43821DQCK/Q读引脚读锁存器写锁存器内部总线第二功能输出(WR,RD,TxD)引脚P3.X3内部上拉电阻Vcc4第二功能输出时,内部自动D=1111反相器P3口3921DQCK/Q读引脚读锁存器写锁存器内部总线此端自动=1引脚P3.X3内部上拉电阻Vcc
第二功能输入(RxD,T0,T1,INT0,INT1)4第二功能输入时,信号经缓冲器4直接进入内总线1110截止P3口40P3口第二功能表引脚第二功能P3.0RxD:串行口接收数据输入端P3.1TxD:串行口发送数据输出端P3.2INT0:外部中断申请输入端0P3.3INT1:外部中断申请输入端1P3.4T0:外部计数脉冲输入端0P3.5T1:外部计数脉冲输入端1P3.6WR:写外设控制信号输出端P3.7RD:读外设控制信号输出端4151单片机的8个特殊引脚Vcc,GND:电源端XTAL1,XTAL2:片内振荡电路输入、输出端RESET:复位端正脉冲有效(宽度8mS)EA/Vpp:寻址外部ROM控制端。低有效片内有ROM时应当接高电平。ALE/PROG:地址锁存允许控制端。PSEN:选通外部ROM的读(OE)控制端。低有效小结4251单片机的4个8位的I/O口P0.0—P0.7:8位数据口和输出低8位地址复用口
(复用时是双向口;不复用时也是准双向口)P1.0—P1.7:通用I/O口(准双向口)P2.0—P2.7:输出高8位地址(用于寻址时是输出口;不寻址时是准双向口)P3.0—P3.7:具有特定的第二功能(准双向口)注意:在不外扩ROM/RAM时,P0~P3均可作通用I/O口使用,而且都是准双向I/O口(例如:AT89C51)!小结43P3口第二功能表引脚第二功能P3.0RxD:串行口接收数据输入端P3.1TxD:串行口发送数据输出端P3.2INT0:外部中断申请输入端0P3.3INT1:外部中断申请输入端1P3.4T0:外部计数脉冲输入端0P3.5T1:外部计数脉冲输入端1P3.6WR:写外设控制信号输出端P3.7RD:读外设控制信号输出端小结44存储器、堆栈、SFR45数据存储器——RAM(RandomAccessMemory)程序存储器——ROM(ReadOnlyMemory)闪速存储器——FlashMemoryEPROM——(UV)ErazibleProgrammableROMEEPROM/E2PROM——ElectricalErasableProgrammableROM单片机的存储器——几个有关的概念:46静态存储器SRAM——StaticRAM
(动态存储器DRAM——DynamicRAM)按字节寻址:每个字节(8个位)占一个地址按位寻址:有的存储器每一个位就有一个地址4789C51单片机存储器配置片内RAM128字节(00H—7FH);片内RAM前32个单元是工作寄存器区(00H—1FH)片内RAM有128个可按位寻址的位,占16个单元。位地址编号为:00H—7FH,分布在20H—2FH单元片内21个特殊功能寄存器(SFR)中:地址号能被8整除的SFR中的各位也可按位寻址可寻址片外RAM64K字节(0000H—FFFFH)可寻址片外ROM64K字节(0000H—FFFFH)片内FlashROM4K字节(000H—FFFH)48存储器配置(片内RAM)片内RAM128字节(00H—7FH)00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM区普通RAM区位寻址区工作寄存器区SFR分布在80H-FFH其中92个位可位寻址80HFFH所有的RAM区(包括位寻址区、工作寄存器区)都可以用于存放数据,故也称为数据缓存寄存器89C51128字节4900H20H2FH7FH1FH30H80HFFH52子系列才有的RAM区普通RAM区位寻址区工作寄存器区R0R2R1R3R4R5R6R707H02H01H00H06H04H05H03H08H1FH工作寄存器区3工作寄存器区2工作寄存器区1工作寄存器区00FH10H17H18H片内RAM前32个单元是工作寄存器区(00H—1FH)存储器配置(片内RAM)5000H20H2FH7FH1FH30H80HFFH52子系列才有的RAM区普通RAM区位寻址区工作寄存器区27H22H21H20H26H24H25H23H28H2FH单元地址07060504030201000F0E0D0C0B0A090817161514131211101F1E1D1C1B1A191827262524232221202F2E2D2C2B2A292837363534333231303F3E3D3C3B3A393847464544434241407F7E7D7C7B7A7978位地址总共128个可按位寻址的位片内RAM中有128个可按位寻址的位。位地址:00H—7FH
分布在:20H—2FH单元存储器配置(片内RAM)51可寻址片外RAM64K字节(0000H—FFFFH);可寻址片外ROM64K字节(0000H—FFFFH);片内FlashROM4K字节(000H—FFFH);FFFFH0000H可寻址片外RAM64K字节FFFFH0000H可寻址片外ROM64K字节FFFH000H可寻址片内FlashROM4K字节89C517FH00H片内RAM128字节FFH80H存储器配置(片内RAM)52堆栈:在片内RAM中,常常要指定一个专门的区域来存放某些特别的数据,它遵循顺序存取和后进先出(LIFO/FILO)的原则,这个RAM区叫堆栈。功能:1)子程序调用和中断服务时CPU自动将当前PC值压栈保存,返回时自动将PC值弹栈。2)保护现场/恢复现场3)数据传输5300H20H2FH7FH1FH30H80HFFH52子系列才有的RAM区普通RAM区位寻址区工作寄存器区SP栈顶下一个进栈的数据将存在此数据进栈已经进栈的数据存放在此初始SP复位后SP=07H,数据进栈时:首先SP+1指向08H单元,第一个放进堆栈的数据将放进08H单元,然后SP再自动增1,仍指着栈顶……堆栈区由特殊功能寄存器堆栈指针SP管理堆栈区可以安排在RAM区任意位置,一般不安排在工作寄存器区和可按位寻址的RAM区,通常放在RAM区的靠后的位置。54从堆栈取出数据时:取出的数据是最近放进去的一个数据,也就是当前栈顶的数据。然后SP再自动减1,仍指着栈顶……00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM区普通RAM区位寻址区工作寄存器区SP栈顶当前要出栈的数据数据出栈SP-1指向下一个将要出栈的数据初始SP5589C51特殊功能寄存器(SFR)▼特殊功能寄存器SFR(专用寄存器)专用于控制、选择、管理、存放单片机内部各部分的工作方式、条件、状态、结果的寄存器。▼不同的SFR管理不同的硬件模块,负责不同的功能——各司其职换言之:要让单片机实现预订的功能,必须有相应的硬件和软件,而软件中最重要的一项工作就是对SFR写命令(要求)。56程序计数器PC(ProgramCounter)PC不是一个特殊功能寄存器SFR,但其作用又十分重要和特殊!!!特点:▼它是16位的按机器周期自动增1计数器▼一切分支/跳转/调用/中断/复位等操作的本质就是:改变PC值▼总指向下一条指令所在首地址(当前PC值)特殊功能寄存器(PC)5789C51有21个SFR(89C52有26个)已知的P0、P1、P2、P3等四个8位I/O口分别由名为P0、P1、P2、P3四个SFR代表。堆栈指针寄存器SP(StackPointer):总是指向栈顶,压栈时先(SP)+1然后数据进栈;弹栈时数据先出栈然后(SP)-1。累加器ACC:一个被众多指令用得最频繁的特殊功能寄存器(如:运算、数据传输…)。副累加器B:一个经常与ACC配合在一起使用的特殊功能寄存器(如:乘法、除法),此外,它也经常当作普通寄存器使用。特殊功能寄存器(P0—P3,SP,A,B)58程序状态字寄存器PSW:CYACF0RS0OVPRS1PSW.7P
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 第四单元学情评估(含答案)2024-2025学年统编版七年级语文下册
- 《认清国情》课件
- 子宫角妊娠的健康宣教
- 头皮毛囊炎的临床护理
- 《教你门窗工程预算》课件
- 《机械设计基础》课件-第6章
- 《Java程序设计及移动APP开发》课件-第09章
- 粉刺的临床护理
- 痱子的临床护理
- JJF(陕) 092-2022 医用电动颈腰椎牵引治疗仪校准规范
- 大部分分校:地域文化形考任务三-国开(CQ)-国开期末复习资料
- 2024年国家保密培训
- 2024年全新初二生物上册期末试卷及答案(人教版)
- 内部创业基础智慧树知到期末考试答案章节答案2024年湖南大学
- ISO28000:2022供应链安全管理体系
- 咬合桩施工工艺
- 汽轮机课程设计
- 购买二手船流程介绍及经验总结
- 财务部内控工作流程图
- CRTSⅠ型双块式无砟轨道施工技术
- 龙门吊拆除安全措施及应急预案
评论
0/150
提交评论