电子发烧友网 > 控制/MCU > 正文

单片机P0口的内部结构及工作原理

2019年01月11日 15:39 次阅读

学习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端传送的信号;

三态缓冲器(三态门)

三态:输出端的高电平,低电平,高阻态;

单片机P0口的内部结构及工作原理

这里小哥偷个懒,百度一哥们儿给的解释,图文并茂想必更加清晰;

这里给各位初学者提个醒:连个三态缓冲器的输出端并不是说输出到了锁存器的D端借口上,而是输出到了单片机内部总线上,至于怎么传的那是后话;

输出驱动器

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

多路开关

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

P0口做低八位地址总线和数据总线,P2做高八位地址总线;

这里解释一下:不同的单片机结构不同,比如8031系列单片机内部没有程序储存器ROM,这就是的必须外置ROM,这是就必须牺牲管脚去外接ROM

下载发烧友APP

打造属于您的人脉电子圈

关注电子发烧友微信

有趣有料的资讯及技术干货

关注发烧友课堂

锁定最新课程活动及技术直播

电子发烧友观察

一线报道 · 深度观察 · 最新资讯
收藏 人收藏
分享:

评论

相关推荐

如何有效编程单片机有源蜂鸣器驱动

蜂鸣器是很常见的设备,分为无源和有源两种。根据项目需求选择不同类型的蜂鸣器。

发表于 2019-01-11 15:04 92次阅读
如何有效编程单片机有源蜂鸣器驱动

求推荐便宜的5毛左右的单片机,量很大:检测一个NTC温度传感器的温度

发表于 2019-01-11 11:01 46次阅读
求推荐便宜的5毛左右的单片机,量很大:检测一个NTC温度传感器的温度

MSP430F5529通过串口发送字符无法进入中断也没有数据发回来

发表于 2019-01-11 09:46 45次阅读
MSP430F5529通过串口发送字符无法进入中断也没有数据发回来

STM32F107 LWIP网络假死,但单片机的程序还在跑

发表于 2019-01-11 09:31 22次阅读
STM32F107 LWIP网络假死,但单片机的程序还在跑

请问PC通过串口助手如何给单片机发送小数?

发表于 2019-01-11 09:25 19次阅读
请问PC通过串口助手如何给单片机发送小数?

请问怎么写一个音符控制程序?

发表于 2019-01-11 06:35 23次阅读
请问怎么写一个音符控制程序?

请问lcd彩屏和触摸屏有什么区别?

发表于 2019-01-11 06:35 6次阅读
请问lcd彩屏和触摸屏有什么区别?

请问怎样设置待机唤醒为RTC闹钟事件唤醒?

发表于 2019-01-11 06:35 6次阅读
请问怎样设置待机唤醒为RTC闹钟事件唤醒?

毕业心得

发表于 2019-01-11 00:56 34次阅读
毕业心得

请问单片机控制uc3843/TL494的基准电压实现输出15-36可调的dc/dc boost直流升压开关电源具体怎么弄?

发表于 2019-01-10 19:13 35次阅读
请问单片机控制uc3843/TL494的基准电压实现输出15-36可调的dc/dc boost直流升压开关电源具体怎么弄?

目标未创建什么意思?

发表于 2019-01-10 16:56 71次阅读
目标未创建什么意思?

探究单片机控制板PCB设计需要注意的原则和细节

设计电路板最基本的过程可以分为三大步骤:电路原理图的设计,产生网络表,印制电路板的设计。不管是板上的...

发表于 2019-01-10 16:56 242次阅读
探究单片机控制板PCB设计需要注意的原则和细节

单片机中如何用C语言实现查表找到对应的值

第二个问题是:比方说我有一数据 char data=0xa2 ;我要串行发送出去,那么我采用从高位发...

发表于 2019-01-08 15:18 129次阅读
单片机中如何用C语言实现查表找到对应的值

AltiumDesigner视频教程第2课时 |...

发表于 2019-01-07 15:14 85次阅读
AltiumDesigner视频教程第2课时 |...

单片机数字滤波算法详解

单片机主要作用是控制外围的器件,并实现一定的通信和数据处理。但在某些特定场合,不可避免地要用到数学运...

发表于 2019-01-07 14:19 206次阅读
单片机数字滤波算法详解

AVR单片机对数码管数据P0口与P2口的控制设计

code const ucharLED_7[16] = {0x28, 0x7E, 0xA2, 0x6...

发表于 2019-01-07 09:05 74次阅读
AVR单片机对数码管数据P0口与P2口的控制设计

如何选择一块实用的适合自己的单片机开发版

对于初学者来说,开发板还是必须的,对于初学者自己DIY一块的可能性不大,除非你电路基础知识非常强大,...

发表于 2019-01-07 08:57 152次阅读
如何选择一块实用的适合自己的单片机开发版

IAR开发EFM32单片机的一些经验和技巧

俗话说“工欲善其事、必先利其器”,为了能更好的开发ARM系单片机EFM32,熟练掌握一个或者多个ID...

发表于 2019-01-06 09:42 94次阅读
IAR开发EFM32单片机的一些经验和技巧

51单片机的片内RAM和片外RAM的区别

51 单片机的 RAM 分为两个部分,一块是片内 RAM,一块是片外 RAM。标准 51 的片内 R...

发表于 2019-01-06 09:27 135次阅读
51单片机的片内RAM和片外RAM的区别

解析8051单片机的三种数据传输方式

单片机CPU与外部设备交换信息通常有如下几种方式:无条件传送方式,查询传送方式和中断传送方式。我们以...

发表于 2019-01-04 10:12 298次阅读
解析8051单片机的三种数据传输方式

整理大牛的单片机C语言编程心得

写这个8*8按键程序的过程中,不管是在自己写还是参考别人程序的过程中,发现自己对C语言有些基本知识点...

发表于 2019-01-04 10:09 457次阅读
整理大牛的单片机C语言编程心得

单片机应用系统的结构及工作原理

将CPU、存储器和输入/输出接口等制作在一块集成电路中就构成了单片机,但单独一块单片机集成电路时无法...

发表于 2019-01-03 15:58 194次阅读
单片机应用系统的结构及工作原理

单片机无功补偿装置的控制过程解析

单片机是无功补偿装置的控制器,单片机控制系统由放大电路、比较器、衡数转换器等组件构成,通常由八个容量...

发表于 2019-01-03 15:42 116次阅读
单片机无功补偿装置的控制过程解析

如何用51单片机来产生PWM波

89C51芯片没有自带PWM发生器,如果要用51来产生PWM波就必须要用软件编程的方法来模拟。

发表于 2019-01-02 15:59 370次阅读
如何用51单片机来产生PWM波

如何使用AT89C2051制作一个彩灯控制系统

此款电路非常适合各种彩灯、霓虹灯控制。电路见附图,其特点如下:1.储存了40种精选的花样不重复运行达...

发表于 2019-01-01 11:18 64次阅读
如何使用AT89C2051制作一个彩灯控制系统

如何选择合适的单片机开发版初学者必备选型手册

在QQ群里和微信上,我一无数次的回答过如何选开发板的问题,完了还是有无数个小伙伴来问同样的问题,最头...

发表于 2018-12-31 10:27 433次阅读
如何选择合适的单片机开发版初学者必备选型手册

几幅草图教你区分数字地、模拟地、电源地,单点接地

从这个图可以看出:模拟地和数字地是完全分开的,最后都单点接到了电源地,这样可以防止地信号的相互串扰而...

发表于 2018-12-31 09:40 383次阅读
几幅草图教你区分数字地、模拟地、电源地,单点接地

单片机晶振不起振有哪些原因如何解决这个问题

单片机晶振不起振原因有哪些?如何排除?遇到单片机晶振不起振是常见现象,那么引起晶振不起振的原因有哪些...

发表于 2018-12-31 08:23 492次阅读
单片机晶振不起振有哪些原因如何解决这个问题

单片机C语言基本语法总结和误用总结

单片机的时候才真正知道C语言是什么它是来干什么的~但是C语言用到嵌入式只是它小小的一部分他的应用还有...

发表于 2018-12-30 17:27 583次阅读
单片机C语言基本语法总结和误用总结

单片机调试过程中的调试组件导致的问题

单片机调试过程中,经常会遇到类似第3只眼的问题。何谓第3只眼呢?

发表于 2018-12-30 17:12 605次阅读
单片机调试过程中的调试组件导致的问题

单片机C语言编程中定时器初值计算的两种方法

单片机C语言编程中,定时器的初值对于初学者真的是比较不好计算,因此总结了以下几种方法。

发表于 2018-12-30 16:59 502次阅读
单片机C语言编程中定时器初值计算的两种方法

为什么说嵌入式开发比单片机要难很多?

单片机和嵌入式,其实没有什么标准的定义来区分他们,对于进行过单片机和嵌入式开发的开发者来说,都有他们...

发表于 2018-12-29 17:18 1539次阅读
为什么说嵌入式开发比单片机要难很多?

单片机串口通讯原理解析

在串口的异步通信中,数据以字节为单位的字节帧进行传送,发送端和接收端必须按照相同的字节帧格式和波特率...

发表于 2018-12-29 14:36 477次阅读
单片机串口通讯原理解析

解析单片机里的中断优先级

抢占优先级和非抢占优先级的协同,可以使单片机中断系统有条不紊的工作,既不会无休止的嵌套,又可以保证必...

发表于 2018-12-28 17:03 932次阅读
解析单片机里的中断优先级

单片机与PC机的区别及用途解析

它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离...

发表于 2018-12-28 15:49 419次阅读
单片机与PC机的区别及用途解析

单片机spi通信的通用程序分享

以下是单片机spi通信的通用程序,在不同晶振情况下可能需调整延时。这里单片机晶振为11.0592MH...

发表于 2018-12-28 15:23 361次阅读
单片机spi通信的通用程序分享

单片机初学者快速学习的四大步骤及方法

首先要选好兵器。现在学校实验室都有单片机实验箱,把握好实验的时间,或者和老师搞好关系,有时间就玩两把...

发表于 2018-12-28 15:18 471次阅读
单片机初学者快速学习的四大步骤及方法

单片机系统参数储存与读取的处理方法

参数可以存储在EEPROM中,可以放在外挂的存储器上,或者RTC的后备域中,这样是一种通用的方法。本...

发表于 2018-12-27 16:15 338次阅读
单片机系统参数储存与读取的处理方法

【电路查错】一个常见单片机IO口LED电路,有哪...

单片机IO口在驱动外部继电器等器件时会串联一个LED,这样可以直观地显示输出状态,但是这个电路存在不...

发表于 2018-12-27 15:07 0次阅读
【电路查错】一个常见单片机IO口LED电路,有哪...

单片机界联网UIP如何实现tcp与udp协议

//配置网卡硬件,并设置MAC地址 //返回值:0,正常;1,失败; u8 tapdev...

发表于 2018-12-26 15:53 127次阅读
单片机界联网UIP如何实现tcp与udp协议

如何实现STM32F407单片机的ADC转换

ADC转换是把外面输入到引脚的电压值转换成数字信号,单片机里面有一个模拟至数字的转换模块,我们可以控...

发表于 2018-12-26 15:08 100次阅读
如何实现STM32F407单片机的ADC转换

深度解析STM32单片机JTAG的复用方法

JTAG是一种国际标准测试协议,主要用于芯片内部测试。现在多数的高级器件都支持JTAG协议,如DSP...

发表于 2018-12-26 10:27 546次阅读
深度解析STM32单片机JTAG的复用方法

单片机modbus例程解析

#include #defineuint8unsignedchar #defineuin...

发表于 2018-12-25 15:22 204次阅读
单片机modbus例程解析

什么是单片机的逻辑与指令ANL

ANL A,Rn ;A与Rn中的值按位‘与’,结果送入A中 ANL A,direct ;A与d...

发表于 2018-12-23 15:33 206次阅读
什么是单片机的逻辑与指令ANL

单片机I/O控制的作用及应用方法

如果你是刚刚步入电子的新手,那你最好要知道一下I/O口具体能做什么。感性的认识对你的学习是很有帮助的...

发表于 2018-12-23 15:26 137次阅读
单片机I/O控制的作用及应用方法

开发单片机程序时常犯的一个错误

这里利用一个实际发生的例子,针对初级工程师经常犯的一个小错误,或者经常要走的一个弯路,做了针对性的纠...

发表于 2018-12-23 14:11 449次阅读
开发单片机程序时常犯的一个错误

如何学习嵌入式ARM嵌入式ARM详细学习心得资料...

我这个专业没学过C++,一开始不知道什么是向对象,什么叫面向过程,这可能让大家笑话了。不过这说的是实...

发表于 2018-12-23 12:03 607次阅读
如何学习嵌入式ARM嵌入式ARM详细学习心得资料...

单片机定时器和计数器的类型及工作原理解析

在51单片机中,分为软件定时器,不可编程硬件定时器,可编程定时器。 软件定时:CPU每执行一条...

发表于 2018-12-21 15:16 222次阅读
单片机定时器和计数器的类型及工作原理解析

PIC18F4550单片机三个操作寄存器的使用方...

PIC18系列单片机是美国微芯公司(Microchip)8位单片机系列中的高档系列,其任一I/O引脚...

发表于 2018-12-21 15:00 113次阅读
PIC18F4550单片机三个操作寄存器的使用方...

PIC16F877A单片机数码管数值循环显示设计

#include __CONFIG(0XF73A); //芯片配置字节 const un...

发表于 2018-12-21 14:49 196次阅读
PIC16F877A单片机数码管数值循环显示设计

PIC16C5X单片机内部结构组成及工作原理解析

PIC16C5X在一个芯片上集成了一个8位算术逻辑单元ALU和工作寄存器(W);384~2K的12位...

发表于 2018-12-20 16:07 119次阅读
PIC16C5X单片机内部结构组成及工作原理解析

如何采用单片机访问EEPROM的地址

我们知道,打电话的时候,当拨通电话,接听方捡起电话肯定要回一个“喂”,这就是告诉拨电话的人,这边有人...

发表于 2018-12-20 15:57 135次阅读
如何采用单片机访问EEPROM的地址

什么是单片机的中断响应时间

中断响应时间:从外部中断请求有效(外部中断请求标志置1)到转向中断入口地址所需要的响应时间。每个机器...

发表于 2018-12-19 15:57 117次阅读
什么是单片机的中断响应时间

SAM4E单片机USART与DMAC的设置方法

因为之前已经做过相关的实验,这里不再重复。需要注意的是,要注意JP11的跳线,以选择正确的协议(RS...

发表于 2018-12-19 15:52 68次阅读
SAM4E单片机USART与DMAC的设置方法

单片机软定时器设计

timer.h #ifndef __SOFT_TIMER_H__ #define __S...

发表于 2018-12-19 15:36 103次阅读
单片机软定时器设计

基于fpga和单片机的程控滤波器

以单片机和可编程逻辑器件(FPGA)为控制核心,设计了一个程控滤波器,实现了小信号程控放大、程控调整...

发表于 2018-12-19 10:26 113次阅读
基于fpga和单片机的程控滤波器

高水平单片机工程师养成记

对于嵌入式系统来讲,嵌入式软件相当于嵌入式系统的灵魂,整个嵌入式系统如何工作,都是由嵌入式软件来控制...

发表于 2018-12-18 16:16 544次阅读
高水平单片机工程师养成记

单片机的抗干扰措施有哪些

外时钟是高频的噪声源,除能引起对本应用系统的干扰之外,还可能产生对外界的干扰,使电磁兼容检测不能达标...

发表于 2018-12-18 15:50 160次阅读
单片机的抗干扰措施有哪些

基于树莓派和openHAB2的家庭设备控制平台设...

本项目开发了一种家庭设备控制平台,提供家庭环境的实时监控功能(温度、湿度、火灾报警),提供安防功能(...

发表于 2018-12-18 15:39 260次阅读
基于树莓派和openHAB2的家庭设备控制平台设...

如何让SPI nRF24L01无线在两个单片机里...

main.c 1 #include 2 #include“2401.h” 3 ...

发表于 2018-12-18 15:17 198次阅读
如何让SPI nRF24L01无线在两个单片机里...

单片机驱动蜂鸣器产生警报声的设计

//实验目的: //熟悉使用单片机驱动蜂鸣器产生警报声 //**************...

发表于 2018-12-18 15:14 254次阅读
单片机驱动蜂鸣器产生警报声的设计

如何编制单片机串行通信的数据发送程序

请编制串行通信的数据发送程序,发送片内RAM50H~5FH的16B数据,串行接口设定为方式2,采用偶...

发表于 2018-12-17 16:33 192次阅读
如何编制单片机串行通信的数据发送程序

用Proteus在51单片机进行串口连接

由于用的是Proteus来模拟串口(我的笔记本电脑根本没串口),所以需要一个虚拟串口的软件。推荐使用...

发表于 2018-12-16 11:23 187次阅读
用Proteus在51单片机进行串口连接

51单片机P0口的特性及使用方法解析

P0口为三态双向I/O口。对于内部有程序存贮器的单片机基本系统(如定制的8051),P0口可以作为输...

发表于 2018-12-14 15:21 180次阅读
51单片机P0口的特性及使用方法解析

单片机硬软并重,嵌入偏软件

做量的公司,永远都是以市场业务为核心的,在这样的公司里名义上是做单片机开发,实际上是做维护或者技术支...

发表于 2018-12-13 08:40 554次阅读
单片机硬软并重,嵌入偏软件

单片机程序控制指令解析

表程序控制指令 操作码 操作数 条 件 转 移 地 址 说明 A...

发表于 2018-12-12 15:14 145次阅读
单片机程序控制指令解析

STM32F107系列单片机USB通信的用法解析

开发板文档资料里提供了演示程序,当然对于PID,VID和字符串描述符不做修改也可以用于我们的程序,但...

发表于 2018-12-12 14:58 114次阅读
STM32F107系列单片机USB通信的用法解析

单片机SPI通信协议的应用

SPI 是一种高速的、全双工、同步通信总线,标准的 SPI 也仅仅使用4个引脚,常用于单片机和 EE...

发表于 2018-12-12 14:47 169次阅读
单片机SPI通信协议的应用

SAM4E16E单片机对LED灯的闪烁控制设计

对单片机的操作需要通过对相关寄存器的访问来实现。比如,为调节PA0引脚上的电平,首先我们需要允许PI...

发表于 2018-12-11 16:12 180次阅读
SAM4E16E单片机对LED灯的闪烁控制设计

单片机有源蜂鸣器驱动之效率编程

蜂鸣器是很常见的设备,分为无源和有源两种。根据项目需求选择不同类型的蜂鸣器。最近的项目里有用到有源蜂...

发表于 2018-12-10 16:40 525次阅读
单片机有源蜂鸣器驱动之效率编程