单片机I/O口管脚内部结构(锁存器,输出驱动器,三态缓冲器,多路开关)

article/2025/9/17 10:33:20

学习ARM嵌入式的时候,发现自己对以前学过的数模器件的知识遗忘了不少,按照我的进度本来应该继续学习ARM微处理器控制的课程,但想着后来势必还会遇到相同的问题所以就准备中断一下,杀回来把汇编和一些电路知识再总结一下,查漏补缺。如果有写的不合理的地方,还请多多指教。

言归正传,先来一幅图片来引入今天要讲述的三个知识点:
(这是单片机P0端的一路引脚)

锁存器(由一个D触发器构成)
D:数据输入端;
CP/CLK:时序信号输入端;
Q:输出端;
~Q:反向输出端;
工作原理:
当D端输入数据信号,CP/CLK端没有时序信号时,Q和~Q端将不会有信号输出;
当D端输入数据信号,CP/CLK端有时序信号时,Q和~Q端有信号输出;
当D端和CP/CLK端同时有信号输入后突然撤掉CP/CLK信号时,D的值将会被保存到(“锁”)在器件内,此时Q和Q端并没有信号输出,等下一个时序再次输入到CP/CLK端,Q和Q将会正常输出D端传送的信号;

三态缓冲器(三态门)
三态:输出端的高电平,低电平,高阻态;
这里写图片描述
这里小哥偷个懒,百度一哥们儿给的解释,图文并茂想必更加清晰;
这里给各位初学者提个醒:连个三态缓冲器的输出端并不是说输出到了锁存器的D端借口上,而是输出到了单片机内部总线上,至于怎么传的那是后话;

输出驱动器
看图可知管脚的输出是靠两个MOS组成的推挽式结构,而且两个MOS管一次只能导通一个;

多路开关
首先,P0管口是复用管口,由于多路开关的存在是的P0口既可以用作普通I/O口,也可以用作外部拓展时传输数据和地址信号的总线功能;
P0口做低八位地址总线和数据总线,P2做高八位地址总线;

这里解释一下:不同的单片机结构不同,比如8031系列单片机内部没有程序储存器ROM,这就是的必须外置ROM,这是就必须牺牲管脚去外接ROM;
友情链接:
https://wenku.baidu.com/view/3b2fdb33c77da26924c5b070.html


http://chatgpt.dhexx.cn/article/vUnM9Grs.shtml

相关文章

三态(tri-state)门、双向(bi-directional)端口的建模、仿真和综合

目录 1. 概要 2. 三态门 2.1 概念 2.2 三态门建模 3. 双向端口 3.1 HDL语言描述 3.2 直接调用元件库中的模块 3. 仿真 4. 综合 1. 概要 双向端口顾名思义是一种既可以作为输入端口接收数据,也可以作为输出端口发出数据,它对数据的操作是双向的。比如某个设计需要一个…

FPGA基础知识极简教程(8)详解三态缓冲器

博文目录 写在前面正文 全双工与半双工FPGA和ASIC中的三态缓冲器如何在VHDL和Verilog中推断出三态缓冲区 参考资料交个朋友 写在前面 下面用举例子的方式引出三态门,内容过长,大家可直接跳过,进入正文! 三态门在FPGA以及ASIC设计中…

三态缓冲器的工作原理

转载自---百家号 三态缓冲器(Three-state buffer),又称为三态门、三态驱动器,其三态输出受到使能输出端的控制,当使能输出有效时,器件实现正常逻辑状态输出(逻辑0、逻辑1)&#xff…

VSCODE调试时在cygwin.S中发生段错误

起因: C实现矩阵类和向量类 当看了我实现的矩阵类后,一个同学问我: 然后我就试了试1000维,结果运行时在cygwin.S里引发了奇奇怪怪的Segmentation fault,而且这个文件还是一片空白,压根就没有代码 后来一番…

【高并发】高并发环境下如何优化Tomcat性能?看完我懂了!

写在前面 Tomcat作为最常用的Java Web服务器,随着并发量越来越高,Tomcat的性能会急剧下降,那有没有什么方法来优化Tomcat在高并发环境下的性能呢? Tomcat运行模式 Tomcat的运行模式有3种。 1.bio模式 默认的模式,性能非常低下,…

Java-JVM-常用参数和调优方案(超保姆级)

Java-JVM-常用参数和调优方案 必须了解的内容 必须看过Java-JVM基础(调优必须知道)知道JVM大概的情况,这篇文章我博客里有 堆区(Java堆:所有的线程共享该区域) 通过new的方式创建的对象(一个类的实例)、数组所占的空间。 非堆区&#xff1a…

嵌入式知识图谱WiKi(嵌入式开发/研发入门教程和路线图)

嵌入式知识图谱WiKi 作者将狼才鲸创建时间2022-02-18 因图床更新不方便,最新版请跳转到Gitee文档源文件仓库网址 才鲸 / 嵌入式知识图谱WiKi CSDN有图的文档阅读网址 嵌入式知识图谱WiKi Bilibili视频讲解网址(待完成) 才鲸嵌入式主页 一、概…

select、poll和epoll

select、poll和epoll 对select、poll、epoll了解得不多,下面是从《构建高性能Web站点》摘录下来的介绍,等以后真正接触到select、poll和epoll方面的开发再详细写一下使用上的区别。 select select最早于1983年出现在4.2BSD中,它通过一个sele…

Mysql 和 Postgresql(PGSQL) 对比

Mysql 和 Postgresql(PGSQL) 对比 转载自:http://www.oschina.net/question/96003_13994 PostgreSQL与MySQL比较 MySQL使用太广泛了,以至于我不得不将一些应用从mysql 迁移到postgresql, 很多开源软件都是以Mysql 作为数据库标准,并且以Mysq…

JVM系列之常用参数的查看和设置

JVM常用参数 参数名称含义默认值说明-Xms初始堆大小,等价于-XX:InitialHeapSize物理内存的1/64默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制.-Xmx最大堆大小,等价于-XX:MaxHeapSize物理内存的1/…

Tomcat内存调整和默认线程池调整

上线了很久的一个项目(财政数据共享平台),由于领导要求,新来的同事就把新项目(社保数据共享)做在了该项目上,这就导致了许多的问题,先从日志说起,该同事把数据获取和传送…

lunix下修改tomcat的堆内存大小

修改tomcat的初始堆大小和最大堆大小 要添加在tomcat 的bin 下catalina.sh 里,位置cygwinfalse前 。注意引号要带上,红色的为新添加的. # OS specific support. $var _must_ be set to either true or false.JAVA_OPTS"-Xms256m -Xmx512m -Xss1024K -XX:Perm…

java对象内存布局和对象定位

目录 观察对象在内存中的存储布局 利用java agent 利用JOL工具 Java对象定位 直接指针寻址 间接寻址 JIT(Just In-Time Compiler) c1、c2 编译线程 c1, c2编译器线程高CPU消耗 - 潜在的解决方案 使用字节码和汇编语言同步分析volatile,synchron…

【C/C++ 集成内存调试、内存泄漏检测和性能分析的工具 Valgrind 】Linux 下 Valgrind 工具的全面使用指南

目录标题 Valgrind 工具的安装 交叉编译Valgrind Valgrind 工具的作用Memcheck 内存泄漏检测工具常规检测(程序结束后生成报告)重要参数长时间运行的服务使报告输出至文件报告分析示例一分析\_示例一示例二分析\_示例二 Massif堆栈检测工具Massif的基本…

C/C++开发,无可避免的多线程(篇一).跨平台并发编程姗姗来迟

目录 一、编译环境准备 1.1 编译环境配置 1.2 先睹为快的c11多线程编程示例 二、c/c并发编程支持 2.1 进程与线程 2.2 c/c多线程的并发编程 2.3 c11以前的多线程支持 2.4 c11以后的多线程支持 2.5 线程与互斥锁 2.6 跨线程安全问题 三、认识c/c的thread 3.1 std::thread类 3…

windows利器之cygwin

好久没写文章了,诸事烦身,脱不开。。。 不想开虚拟机占内存,同时还想在windows下使用linux命令,那就是cygwin了 第一部分 去官网下一个exe https://cygwin.com/install.html 直接运行, 基本都是默认, …

spi时序图怎么分析,怎么看懂spi时序图

我做产品的时候,最怕就是做IIC和SPI的通信。 这两种协议时序哪怕是延时时间有误差,都有可能导致通信不上。 出现问题的时候,如果没设备也很难排查问题到底出在哪里。 有时候这个产品写好的时序程序,换一个单片机用同一个程序移植过…

怎么看懂单片机时序图?

本人没有上过单片机相关的专业课,是在《计算机系统结构》里遇见的时序图。由于看不懂加之老师没有专门讲,因此自行查阅了相关的视频和博客。(参考视频已放在文末) 网上资源贫瘠,不过我也不需要太过深入的知识。 大家…

UML系列——时序图(顺序图)

引言 用例图、类图、活动图、时序图之间是什么关系? 时序图有什么作用? 先来模拟一下三国演义的赤壁之战的时序图,先知道它到底长什么样子,再深入介绍: 小伙伴惊呆了,这样画战略图,一目了然&…

UML图之五——时序图

一、什么是时序图 序列图表示了系统在参与者互动执行某一个用例期间,系统内部的一群对象的协作情况。一个用例就对应一个时序图。序列图是对系统动态行为进行描述。用于用例分析和设计阶段。 二、对比 1、序列图和协作图 序列图跟协作图相似,两种图传递的意思是一样的。不…