C语言面试之旅:掌握基础,探索深度(面试实战之单片机硬件结构)
?????????人生就像一场旅行,不知道在下一站邂逅什么样的人,发生怎么样的故事!
引言
????????单片机是一种集成芯片,它包括CPU、内存、外围功能等部分。其中,CPU是单片机的核心,负责思考和执行程序;内存用于存储程序和数据;外围功能则相当于人体的感官系统及控制手脚动作的神经系统。
?
一、80C51单片机的内部逻辑结构?
????????单片机是把 CPU、存储器、输入输出接口、定时/计数器和时钟电路集成到一块芯片上的微型计算机。
(1)中央处理器CPU
? ? ? ? 1.运算电路
????????????????以 ALU 为核心,完成算术运算和逻辑运算,运算结果存放于 ACC 中,运算结果的特征存放于PSW中。
? ? ? ? 2.控制电路
????????????????单片机的指挥控制部件,保证单片机各部分能自动而协调地工作。程序计数器 PC 是一个16 位寄存器,PC 的内容为将要执行的下一条指令地址,具有自动加1功能以实现程序的顺序执行。
(2)存储器
? ? ? ? 1.随机存取存储器 RAM
?????????????????能读能写,信息在关机后消失。可分为静态 RAM(SRAM)和动态RAM(DRAM)两种。
? ? ? ? 2.只读存储器
????????????????信息在关机后不会消失。
? ? ? ? 3.掩膜 ROM
????????????????信息在出厂时由厂家一次性写入。
? ? ? ? 4.可编程PROM
????????????????信息由用户一次性写入。?
? ? ? ? ?5.可擦除可编程EPROM
????????????????写入后的内容可由紫外线照射擦除。
? ? ? ? 6.电可擦除可编程EEPROM
????????????????可用电信号进行清除和改写。
? ? ? ? 7.存储容量:
????????存储容量指存储器可以容纳的二进制信息量,M 位地址总线、N 位数据总线的存储器容量为2MXN位。
例子:
? ???????80C51单片机的存储器有内部 RAM(128B,高128B 为专用寄存器)外部RAM(64KB)内部ROM (4KB 掩膜 ROM)、外部ROM (64KB)。
(3)输入输出接口
????????4个8位并行 I/0 口(PO、P1、P2、P3)
(4)其它资源
????????一个全双工串行口、5 个中断源、2个16 位的定时/计数器、时钟电路
二、80C51 单片机的信号引脚
?????????(1)电源部分:VCC 接+5V、VSS 接地。
????????(2)时钟电路部分:XTAL1 和XTAL2 接品振。
????????????????1个机器周期=6个状态=12 个拍节
????????????????6MHZ的晶体机器周期2us,12MHZ的品体机器周期1us。
????????(3)I/0 口部分:PO--8 位数据总线/地址总线低 8 位、P1一一用户口、P2一一地址高8位、P3一一第二功能。
????????(4)控制部分:地址锁存控制信号 ALE,用于控制把 PO 口输出的低8位地址送入锁存器锁存地起来外部程序存储器读选通信号 PSEN,低电平有效,以实现外部 ROM 单元的读操作。访问程序存储器控制信号 EA,低电平时只读外部ROM,高电平时先读内部ROM,再读外部ROM,复位信号 RST,当输入的复位信号延续 2个机器周期以上高电平时即为有效复位值: PC=0000H,SP=07H,PO=0FFH。
?
?三、内部RAM的基本结构与功能
????????80C51的内部数据存储器低128 单元区,称为内部RAM,地址为00~7FH。
????????(1)寄存器区(00~1FH)共分为4组,组号依次为 0、1、2、3,每组有8个寄存器,在组中按 R7~RO 编号。由PSW中RS1、RSO位的状态组合来决定哪一组。
????????(2)位寻址区 (20H~2FH)可对单元中的每一位进行位操作,16个字节单元共128 个可寻址位,位地址为00~7FH。位起始地址 DO=(字节地址-20H)*8
????????(3)用户RAM区(30H~7FH)堆栈、缓冲区。堆栈是在内部 RAM 中开辟的,最大特点就是“后进先出”的数据操作原则两项功能:保护断点和保护现场。两种操作:进栈和出栈。SP 堆栈指针,它的内容就是堆栈栈顶单元的地址。
? ? ?
四、专用寄存器(内部数据存储器高 128 单元)
????????(1)累加器A (ACC)
????????(2)寄存器 B
????????(3)程序状态字 PSW
????????????????CY一一进位标志位,最高位的进位或借位。
????????????????AC一一半进位标志位,低4位向高4 位的进位或借位。
????????????????OV一一溢出标志位,同符号数相加,结果为异符号,有溢出:异符号数相减,结果和减数符号相同,有溢出。
????????????????P——A中1的个数,奇数个P=1,偶数个P=O。
????????(4)数据指针DPTR: 80C51中惟一一个供用户使用的16位寄存器。高8位DPH,低8位.DPL。
五、单片机的外围功能
????????单片机的外围功能是实现其控制能力的重要保障。常见的单片机外围功能包括:
(1)中断控制器
????????中断控制器用于实现单片机的中断功能,当外部设备触发中断时,单片机可以暂停当前执行的程序,转而执行相应的中断服务程序。
(2)定时/计数器
????????定时/计数器用于实现单片机的定时和计数功能,它可以用于产生定时信号、计数值或作为脉冲发生器等。
(3)串行通信接口
????????串行通信接口用于实现单片机与其他设备之间的串行通信,常见的接口标准包括UART、SPI、I2C等。
(4)A/D转换器
????????A/D转换器用于将模拟信号转换为数字信号,以便单片机进行处理和控制。
(5)D/A转换器
????????D/A转换器用于将数字信号转换为模拟信号,以便实现模拟控制和输出。
(6)键盘接口
????????键盘接口用于连接按键开关或触摸屏等输入设备,以便用户进行输入和控制。
(7)显示接口
????????显示接口用于连接LED显示屏或其他显示设备,以便单片机的输出信息能够被用户看到。
?
?
六、总结?
?????????单片机的硬件结构包括CPU、存储器、输入/输出端口、特殊功能寄存器以及时钟电路和复位电路等部分。通过灵活配置和使用这些硬件资源,单片机可以实现各种复杂的控制任务。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!