历史上的今天
今天是:2024年09月04日(星期三)
2019年09月04日 | 51单片机系列知识1--单片机的内外结构
2019-09-04 来源:eefocus
一、单片机的典型结构
0.(《单片机MCS—51原理及应用开发教程》晁阳。清华大学出版社)
1、 单片机的内部结构
中央处理器
存储器
内部总线
I∕O接口 并行接口
穿行接口
中断系统
特殊功能部件 时钟电路
布尔处理器
定时器∕计数器
A∕D、D∕A转换器
直接存储器访问通道DMA.PWM.WDT
①内部总线:内部总线是CPU连接片内主要部件的纽带,是各类信息传送的公共通道。内部总线主要由3种不同性质的连线组成,分别是地址线、数据线、控制线。地址线主要用来传送存储器所需要的地址码和外部设备的设备号,通常由CPU发出并被存储器或I∕O接口电路所接受。数据线用来传送CPU写入存储器或经I∕O接口送到输出设备的数据,也可以传送从存储器或输入设备经I∕O接口读入的数据。控制线∕状态线有两类:一类是CPU发出的控制命令,如读命令、写命令和中断响应等;另一类是存储器或外没的状态信息,如外没的中断请求、存储器忙和系统复位信号等。
②中央处理器
a. 运算器
运算器包括算术逻辑单元ALU,布尔处理器、累加器A、累加器B、暂存器和程序状态字PSW等许多部件。它ALU为核心,功能是实现数据的算术逻辑运算、位变量处理和数据传输操作。51单片机的ALU具有一般计算机ALU不具备的功能,即位操作处理。单片机指令系统中的位处理指令集、存储器中的位地址空间,以及位操作累加器(借用程序状态寄存PSW中的进位标志CY)构成51单片机内的布尔处理机。它可对直接寻址的位(bit)变量进行位处理。
b.定时控制部件
控制部是控制单片机整个系统各种操作的部件,是单片机的神经中枢,它由时钟发生器、复位电路、定时控制逻辑、指令译码器ID、指令寄存器IR以及信息传送控制(程序计数器PC、堆栈SP、数据指DPTR)等组成。它先以主振频率为基准发出CPU的时序,对指令译码,然后以时序为时间基准发出各种控制信号,完成一系列定时控制的微操作,如协调单片机内部各功能部件之间的数据传送,数据运输等,对外发出地址锁存信号ALE、外部程序存储器选通信号PSEN、通过P3.6和P3.7发出数据存储器读信号RD,写信号WR等控制信号,接受处理外接的复位和外部存储器访问控制信号EA等。
c.专用寄存器组
专用寄存器主要包括:PC、A、B(通用寄存器)、PSW、SP、DPTR等。
程序计数器PC的基本工作方式有下列3种。
方式1:程序计数器自动力加。
方式2:执行有条件或无条件转移指令时,程序计数器被置入新的数值,从而使程序的流向发生变化。
方式3:在执行子程序调用指令或中断向量的地址送PC,程序流向发生变换,执行子程序或中断子程序。执行完毕后,遇到返回指令时,堆栈顶的断点值弹到程序计数器。
2、 单片机外部结构、
数据总线—PO口直接输入∕输出的8位三态传送通道。
地址总线—PO口分时方式传送地址总线的低8位、P2口输出地址总线高8位。
控制总线—P3口第三功能提供的控制线单片机本身输出∕入的控制线。
用户端口—由P1口和P3第一功能共同组成的。
电源及时钟—电源输出特性要满足一定的要求。
史海拾趣
|
我急需高手解决这个问题!本人大二!想做这个东西送给女朋友!跪求啊!最好是有源代码和电路图啊!跪求哦!跪求哦!我急需高手解决这个问题!本人大二!想做这个东西送给女朋友!跪求啊!最好是有源代码和电路图啊!跪求哦!跪求哦!… 查看全部问答> |
|
请问:platform builder是装在windows 2000/xp 下,还是在windows ce下呀,或者是都行呀? 那我们写程序是在windows 2000/xp下,还是在windows ce下呀… 查看全部问答> |
|
高手快进啊,DM9000网口芯片的内部物理层回环测试没有调通是什么原因啊?网口驱动方面的 目前在做DM9000网口芯片的驱动,该芯片集成了MAC层和PHY层,它一端连接DSP,一端由网线联入PC机的终端,现已完成了芯片的初始化,和MAC层的回环接收(数据的自发自收),但是在调内部物理层的回环测设时,却怎么也调不通,我已经通过DSP给网口芯片 ...… 查看全部问答> |
|
笔记本硬盘坏了,谁有电路板,买一个。 三星MP0402H。新旧皆可,只要电路板是好的。 笔记本硬盘坏了,谁有电路板,买一个。 三星MP0402H。新旧皆可,只要电路板是好的。 有的,PM我。… 查看全部问答> |
|
我用 CreateProcess(\"\\\\Windows\\\\pword.exe\", sPath, IntPtr.Zero, IntPtr.Zero, 0, 0, IntPtr.Zero, IntPtr.Zero, new Byte[128], pi);打开了一个文档,想在打开的时候使文档的属性为只读,该如何实现呢,找了很多方法都不行。 请各位大侠 ...… 查看全部问答> |
|
为什么要设地址偏移量是4位?是因为它有20条地址总线,并且寄存器是16位,所以:20-16=4? 那32位处理器地址总线32位,寄存器有32位。它是不是就没有偏移量了?谢谢! … 查看全部问答> |




