STM32中使用GPIO的总结超强资料全.doc

上传人:可****阿 文档编号:48823445 上传时间:2022-10-07 格式:DOC 页数:14 大小:56KB
返回 下载 相关 举报
STM32中使用GPIO的总结超强资料全.doc_第1页
第1页 / 共14页
STM32中使用GPIO的总结超强资料全.doc_第2页
第2页 / 共14页
点击查看更多>>
资源描述

《STM32中使用GPIO的总结超强资料全.doc》由会员分享,可在线阅读,更多相关《STM32中使用GPIO的总结超强资料全.doc(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、STM32STM32 G GPIOPIO 使用使用操作步骤:操作步骤:1.1.使能使能 GPIOGPIO 对应的外设时钟对应的外设时钟例如:例如:/使能使能 GPIOAGPIOA、GPIOBGPIOB、GPIOCGPIOC 对应的外设时钟对应的外设时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOARCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOCRCC_APB2Periph_GPIOC,ENAB

2、LE);ENABLE);2.2.声明一个声明一个 GPIO_InitStructureGPIO_InitStructure 结构体结构体例如:例如:GPIO_InitTypeDefGPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure;3.3.选择待设置的选择待设置的 GPIOGPIO 管脚管脚例如:例如:/*/*选择待设置的选择待设置的 GPIOGPIO 第第 7 7、8 8、9 9 管脚位管脚位,中间加,中间加“|”符号符号*/*/GPIO_InitStructure.GPIO_PinGPIO_InitStructure.GPIO_Pi

3、n=GPIO_Pin_7GPIO_Pin_7|GPIO_Pin_8GPIO_Pin_8|GPIO_Pin_9;GPIO_Pin_9;4.4.设置选中设置选中 GPIOGPIO 管脚的速率管脚的速率例如:例如:/*/*设置选中设置选中 GPIOGPIO 管脚的速率为最高速率管脚的速率为最高速率 2MHz2MHz*/*/GPIO_InitStructure.GPIO_SpeedGPIO_InitStructure.GPIO_Speed=GPIO_Speed_2MHz;GPIO_Speed_2MHz;/最 高 速最 高 速率率 2MHz2MHz5.5.设置选中设置选中 GPIOGPIO 管脚的模式管

4、脚的模式例如:例如:/*/*设置选中设置选中 GPIOGPIO 管脚的模式为开漏输出模式管脚的模式为开漏输出模式*/*/GPIO_InitStructure.GPIO_ModeGPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_OD;GPIO_Mode_Out_OD;/开 漏 输开 漏 输出模式出模式6.6.根据根据 GPIO_InitStructureGPIO_InitStructure 中指定的参数初始化外设中指定的参数初始化外设 GPIOXGPIOX例如:例如:/*/*根据根据 GPIO_InitStructureGPIO_InitStructure 中

5、指定的参数初始化外设中指定的参数初始化外设 GPIOCGPIOC*/*/GPIO_Init(GPIOC,GPIO_Init(GPIOC,&GPIO_InitStructure);&GPIO_InitStructure);7.7.其他应用其他应用例:例:将端口将端口 GPIOAGPIOA 的第的第 1010、1515 脚置脚置 1 1(高电平)(高电平)GPIO_SetBits(GPIOA,GPIO_SetBits(GPIOA,GPIO_Pin_10GPIO_Pin_10|GPIO_Pin_15);GPIO_Pin_15);例:例:将端口将端口 GPIOAGPIOA 的第的第 1010、1515

6、 脚置脚置 0 0(低电平)(低电平)GPIO_ResetBits(GPIOA,GPIO_ResetBits(GPIOA,GPIO_Pin_10GPIO_Pin_10|GPIO_Pin_15);GPIO_Pin_15);GPIOGPIO寄存器寄存器:寄存器寄存器描述描述CRL端口配置低寄存器CRH端口配置高寄存器IDR端口输入数据寄存器ODR端口输出数据寄存器BSRR端口位设置/复位寄存器BRR端口位复位寄存器LCKR端口配置锁定寄存器EVCR事件控制寄存器MAPR复用重映射和调试I/O配置寄存器EXTICR外部中断线路0-15配置寄存器GPIOGPIO库函数:库函数:函数名函数名描述描述GP

7、IO_DeInit将外设GPIOx寄存器重设为缺省值GPIO_AFIODeInit将复用功能(重映射事件控制和EXTI设置)重设为缺省值 GPIO_Init根据GPIO_InitStruct中指定的参数初始化外设GPIOx寄存器 GPIO_StructInit把GPIO_InitStruct中的每一个参数按缺省值填入 GPIO_ReadInputDataBit读取指定端口管脚的输入GPIO_ReadInputData读取指定的GPIO端口输入GPIO_ReadOutputDataBit读取指定端口管脚的输出GPIO_ReadOutputData读取指定的GPIO端口输出GPIO_SetBits

8、设置指定的数据端口位GPIO_ResetBits清除指定的数据端口位GPIO_WriteBit设置或者清除指定的数据端口位GPIO_Write向指定GPIO数据端口写入数据GPIO_PinLockConfig锁定GPIO管脚设置寄存器GPIO_EventOutputConfig选择GPIO管脚用作事件输出GPIO_EventOutputCmd使能或者失能事件输出GPIO_PinRemapConfig改变指定管脚的映射GPIO_EXTILineConfig选择GPIO管脚用作外部中断线路库函数:库函数:函数函数 GPIO_DeInitGPIO_DeInit功能描述:将外设功能描述:将外设 GPI

9、OxGPIOx 寄存器重设为缺省值寄存器重设为缺省值例:例:GPIO_DeInit(GPIOA);GPIO_DeInit(GPIOA);函数函数 GPIO_AFIODeInitGPIO_AFIODeInit功能描述:将复用功能(重映射事件控制和功能描述:将复用功能(重映射事件控制和 EXTIEXTI 设置)重设为缺省值设置)重设为缺省值例:例:GPIO_AFIODeInit();GPIO_AFIODeInit();函数函数 GPIO_InitGPIO_Init功能描述:根据功能描述:根据 GPIO_InitStructGPIO_InitStruct 中指定的参数初始化外设中指定的参数初始化外设

10、 GPIOxGPIOx 寄存器寄存器例:例:GPIO_InitTypeDefGPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure;GPIO_InitStructure.GPIO_PinGPIO_InitStructure.GPIO_Pin=GPIO_Pin_All;GPIO_Pin_All;GPIO_InitStructure.GPIO_SpeedGPIO_InitStructure.GPIO_Speed=GPIO_Speed_10MHz;GPIO_Speed_10MHz;GPIO_InitStructure.GPIO_ModeGPIO_

11、InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING;GPIO_Mode_IN_FLOATING;GPIO_Init(GPIOA,GPIO_Init(GPIOA,&GPIO_InitStructure);&GPIO_InitStructure);GPIO_InitTypeDefGPIO_InitTypeDef structurestructureGPIO_InitTypeDefGPIO_InitTypeDef 定义于文件定义于文件“stm32f10 x_gpio.hstm32f10 x_gpio.h”:typedeftypedef structstruct

12、 u16u16 GPIO_Pin;GPIO_Pin;GPIOSpeed_TypeDefGPIOSpeed_TypeDef GPIO_Speed;GPIO_Speed;GPIOMode_TypeDefGPIOMode_TypeDef GPIO_Mode;GPIO_Mode;GPIO_InitTypeDef;GPIO_InitTypeDef;GPIO_PinGPIO_Pin该参数选择待设置的该参数选择待设置的 GPIOGPIO 管脚管脚,使用操作符使用操作符“|”可以一次选中多个管脚可以一次选中多个管脚。可可以使用下表中的任意组合。以使用下表中的任意组合。GPIO_Pin_NoneGPIO_Pin

13、_None:无管脚被选中无管脚被选中GPIO_Pin_xGPIO_Pin_x:选中管脚选中管脚 x x(0-150-15)GPIO_Pin_AllGPIO_Pin_All:选中全部管脚选中全部管脚GPIO_SpeedGPIO_SpeedGPIO_SpeedGPIO_Speed:用以设置选中管脚的速率。用以设置选中管脚的速率。GPIO_Speed_10MHzGPIO_Speed_10MHz:最高输出速率最高输出速率 10MHz10MHzGPIO_Speed_2MHzGPIO_Speed_2MHz:最高输出速率最高输出速率 2MHz2MHzGPIO_Speed_50MHzGPIO_Speed_50

14、MHz:最高输出速率最高输出速率 50MHz50MHzGPIO_ModeGPIO_ModeGPIO_ModeGPIO_Mode:用以设置选中管脚的工作状态。用以设置选中管脚的工作状态。GPIO_Mode_AINGPIO_Mode_AIN:模拟输入模拟输入GPIO_Mode_IN_FLOATINGGPIO_Mode_IN_FLOATING:浮空输入浮空输入GPIO_Mode_IPDGPIO_Mode_IPD:下拉输入下拉输入GPIO_Mode_IPUGPIO_Mode_IPU:上拉输入上拉输入GPIO_Mode_Out_ODGPIO_Mode_Out_OD:开漏输出开漏输出GPIO_Mode_O

15、ut_PPGPIO_Mode_Out_PP:推挽输出推挽输出GPIO_Mode_AF_ODGPIO_Mode_AF_OD:复用开漏输出复用开漏输出GPIO_Mode_AF_PPGPIO_Mode_AF_PP:复用推挽输出复用推挽输出函数函数 GPIO_StructInitGPIO_StructInit功能描述:把功能描述:把 GPIO_InitStructGPIO_InitStruct 中的每一个参数按缺省值填入中的每一个参数按缺省值填入例:例:GPIO_InitTypeDefGPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure;GPIO

16、_StructInit(&GPIO_InitStructure);GPIO_StructInit(&GPIO_InitStructure);GPIO_InitStructGPIO_InitStruct:GPIO_PinGPIO_Pin:GPIO_Pin_AllGPIO_Pin_AllGPIO_SpeedGPIO_Speed:GPIO_Speed_2MHzGPIO_Speed_2MHzGPIO_ModeGPIO_Mode:GPIO_Mode_IN_FLOATINGGPIO_Mode_IN_FLOATING函数函数 GPIO_ReadInputDataBitGPIO_ReadInputDataBi

17、t功能描述:读取指定端口管脚的输入功能描述:读取指定端口管脚的输入例:例:u8u8 ReadValue;ReadValue;ReadValueReadValue=GPIO_ReadInputDataBit(GPIOB,GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_7);GPIO_Pin_7);函数函数 GPIO_ReadInputDataGPIO_ReadInputData功能描述:读取指定的功能描述:读取指定的 GPIOGPIO 端口输入端口输入例:例:u16u16 ReadValue;ReadValue;ReadValueReadValue=GPIO_ReadI

18、nputData(GPIOC);GPIO_ReadInputData(GPIOC);函数函数 GPIO_ReadOutputDataBitGPIO_ReadOutputDataBit功能描述:读取指定端口管脚的输出功能描述:读取指定端口管脚的输出例:例:u8u8 ReadValue;ReadValue;ReadValueReadValue=GPIO_ReadOutputDataBit(GPIOB,GPIO_ReadOutputDataBit(GPIOB,GPIO_Pin_7);GPIO_Pin_7);函数函数 GPIO_ReadOutputDataGPIO_ReadOutputData功能描述

19、:读取指定的功能描述:读取指定的 GPIOGPIO 端口输出端口输出例:例:u16u16 ReadValue;ReadValue;ReadValueReadValue=GPIO_ReadOutputData(GPIOC);GPIO_ReadOutputData(GPIOC);函数函数 GPIO_SetBitsGPIO_SetBits功能描述:置位指定的数据端口位功能描述:置位指定的数据端口位例:例:将端口将端口 GPIOAGPIOA 的第的第 1010、1515 脚置脚置 1 1(高电平)(高电平)GPIO_SetBits(GPIOA,GPIO_SetBits(GPIOA,GPIO_Pin_1

20、0GPIO_Pin_10|GPIO_Pin_15);GPIO_Pin_15);函数函数 GPIO_ResetBitsGPIO_ResetBits功能描述:清除指定的数据端口位功能描述:清除指定的数据端口位例:例:将端口将端口 GPIOAGPIOA 的第的第 1010、1515 脚置脚置 0 0(低电平)(低电平)GPIO_ResetBits(GPIOA,GPIO_ResetBits(GPIOA,GPIO_Pin_10GPIO_Pin_10|GPIO_Pin_15);GPIO_Pin_15);函数函数 GPIO_WriteBitGPIO_WriteBit功能描述:设置或者清除指定的数据端口位功能

21、描述:设置或者清除指定的数据端口位例:例:GPIO_WriteBit(GPIOA,GPIO_WriteBit(GPIOA,GPIO_Pin_15,GPIO_Pin_15,Bit_SET);Bit_SET);函数函数 GPIO_WriteGPIO_Write功能描述:向指定功能描述:向指定 GPIOGPIO 数据端口写入数据数据端口写入数据例:例:GPIO_Write(GPIOA,GPIO_Write(GPIOA,0 x1101);0 x1101);函数函数 GPIO_PinLockConfigGPIO_PinLockConfig功能描述:锁定功能描述:锁定 GPIOGPIO 管脚设置寄存器管脚

22、设置寄存器例:例:GPIO_PinLockConfig(GPIOA,GPIO_PinLockConfig(GPIOA,GPIO_Pin_0GPIO_Pin_0|GPIO_Pin_1);GPIO_Pin_1);函数 GPIO_EventOutputConfigGPIO_EventOutputConfig功能描述:选择功能描述:选择 GPIOGPIO 管脚用作事件输出管脚用作事件输出例:例:GPIO_EventOutputConfig(GPIO_PortSourceGPIOE,GPIO_EventOutputConfig(GPIO_PortSourceGPIOE,GPIO_PinSource5);

23、GPIO_PinSource5);GPIO_PortSourceGPIO_PortSourceGPIO_PortSourceGPIO_PortSource 用以选择用作事件输出的用以选择用作事件输出的 GPIOGPIO 端口。端口。函数函数 GPIO_EventOutputCmdGPIO_EventOutputCmd功能描述:使能或者失能事件输出功能描述:使能或者失能事件输出例:例:GPIO_EventOutputConfig(GPIO_PortSourceGPIOC,GPIO_EventOutputConfig(GPIO_PortSourceGPIOC,GPIO_PinSource6);GP

24、IO_PinSource6);GPIO_EventOutputCmd(ENABLE);GPIO_EventOutputCmd(ENABLE);函数函数 GPIO_PinRemapConfigGPIO_PinRemapConfig功能描述:改变指定管脚的映射功能描述:改变指定管脚的映射例:例:GPIO_PinRemapConfig(GPIO_Remap_I2C1,GPIO_PinRemapConfig(GPIO_Remap_I2C1,ENABLE);ENABLE);一一GGPIOPIO 概述概述1 1、共有 8 种模式,可以通过编程选择:1.浮空输入2.带上拉输入3.带下拉输入4.模拟输入5.开

25、漏输出(此模式可实现 hotpower 说的真双向 IO)6.推挽输出7.复用功能的推挽输出8.复用功能的开漏输出模式 7 和模式 8 需根据具体的复用功能决定。2 2、专门的寄存器(GPIOx_BSRR 和 GPIOx_BRR)实现对 GPIO 口的原子操作,即回避了设置或清除 I/O 端口时的“读-修改-写”操作,使得设置或清除 I/O 端口的操作不会被中断处理打断而造成误动作。3 3、每个 GPIO 口都可以作为外部中断的输入,便于系统灵活设计。4 4、I/O 口的输出模式下,有 3 种输出速度可选(2MHz、10MHz 和 50MHz),这有利于噪声控制。这个速度是指 I/O 口驱动电

26、路的响应速度而不是输出信号的速度,输出信号的速度与程序有关(芯片部在 I/O 口的输出部分安排了多个响应速度不同的输出驱动电路,用户可以根据自己的需要选择合适的驱动电路)。通过选择速度来选择不同的输出驱动模块,达到最佳的噪声控制和降低功耗的目的。高频的驱动电路,噪声也高,当不需要高的输出频率时,请选用低频驱动电路,这样非常有利于提高系统的 EMI 性能。当然如果要输出较高频率的信号,但却选用了较低频率的驱动模块,很可能会得到失真的输出信号。4 4.1.1 各种借口的措施:4 4.1.1.1.1 对于串口,假如最大波特率只需 115.2k,那么用 2M 的 GPIO 的引脚速度就够了,既省电也噪

27、声小。4 4.1.2.1.2 对于 I2C 接口,假如使用 400k 波特率,若想把余量留大些,那么用 2M 的GPIO 的引脚速度或许不够,这时可以选用 10M 的 GPIO 引脚速度。4 4.1.3.1.3 对于 SPI 接口,假如使用 18M 或 9M 波特率,用 10M 的 GPIO 的引脚速度显然不够了,需要选用 50M 的 GPIO 的引脚速度。4 4.2.2GPIO 口设为输入时,输出驱动电路与端口是断开,所以输出速度配置无意义。4 4.3.3 在复位期间和刚复位后,复用功能未开启,I/O 端口被配置成浮空输入模式。4 4.4.4 所有端口都有外部中断能力。为了使用外部中断线,端

28、口必须配置成输入模式。4 4.5.5 GPIO 口的配置具有上锁功能,当配置好 GPIO 口后,可以通过程序锁住配置组合,直到下次芯片复位才能解锁。5 5、所有 I/O 口兼容 CMOS 和 TTL,多数 I/O 口兼容 5V 电平。6 6、大电流驱动能力:GPIO 口在高低电平分别为 0.4V 和 VDD-0.4V 时,可以提供或吸收 8mA 电流;如果把输入输出电平分别放宽到 1.3V 和 VDD-1.3V 时,可以提供或吸收20mA 电流。7 7、具有独立的唤醒 I/O 口。8.8.很多 I/O 口的复用功能可以重新映射。9.9.GPIO 口的配置具有上锁功能,当配置好 GPIO 口后,

29、可以通过程序锁住配置组合,直到下次芯片复位才能解锁。此功能非常有利于在程序跑飞的情况下保护系统中其他的设备,不会因为某些 I/O 口的配置被改变而损坏如一个输入口变成输出口并输出电流。二二推挽结构推挽结构一般是指两个三极管分别受两互补信号的控制,总是在一个三极管导通的时候另一个截止.要实现线与需要用 OC(open collector)门电路.如果输出级的有两个三极管,始终处于一个导通、一个截止的状态,也就是两个三级管推挽相连,这样的电路结构称为推拉式电路或图腾柱(Totem-pole)输出电路(可惜,图无法贴上)。当输出低电平时,也就是下级负载门输入低电平时,输出端的电流将是下级门灌入 T4

30、;当输出高电平时,也就是下级负载门输入高电平时,输出端的电流将是下级门从本级电源经 T3、D1 拉出。这样一来,输出高低电平时,T3 一路和 T4 一路将交替工作,从而减低了功耗,提高了每个管的承受能力。又由于不论走哪一路,管子导通电阻都很小,使 RC 常数很小,转变速度很快。因此,推拉式输出级既提高电路的负载能力,又提高开关速度。供你参考。推挽电路是两个参数相同的三极管或 MOSFET,以推挽方式存在于电路中,各负责正负半周的波形放大任务,电路工作时,两只对称的功率开关管每次只有一个导通,所以导通损耗小效率高。输出既可以向负载灌电流,也可以从负载抽取电流三三开漏电路开漏电路在电路设计时我们常

31、常遇到开漏(open drain)和开集(open collector)的概念。所谓开漏电路概念中提到的“漏”就是指 MOSFET 的漏极。同理,开集电路中的“集”就是指三极管的集电极。开漏电路就是指以 MOSFET 的漏极为输出的电路。一般的用法是会在漏极外部的电路添加上拉电阻。完整的开漏电路应该由开漏器件和开漏上拉电阻组成。组成开漏形式的电路有以下几个特点:组成开漏形式的电路有以下几个特点:1.利用 外部电路的驱动能力,减少 IC 部的驱动。当 IC 部 MOSFET 导通时,驱动电流是从外部的 VCC 流经 R pull-up,MOSFET 到 GND。IC 部仅需很下的栅极驱动电流。如

32、图 1。2.可以将多个开漏输出的 Pin,连接到一条线上。形成“与逻辑”关系。如图 1,当PIN_A、PIN_B、PIN_C 任意一个变低后,开漏线上的逻辑就为 0 了。这也是 I2C,SMBus等总线判断总线占用状态的原理。3.可以利用改变上拉电源的电压,改变传输电平。如图 2,IC 的逻辑电平由电源 Vcc1决定,而输出高电平则由 Vcc2 决定。这样我们就可以用低电平逻辑控制输出高电平逻辑了。4.开漏 Pin 不连接外部的上拉电阻,则只能输出低电平(因此对于经典的 51 单片机的P0 口而言,要想做输入输出功能必须加外部上拉电阻,否则无法输出高电平逻辑)。5.标准的开漏脚一般只有输出的能

33、力。添加其它的判断电路,才能具备双向输入、输出的能力。应用中需注意:应用中需注意:1.开漏和开集的原理类似,在许多应用中我们利用开集电路代替开漏电路。例如,某输入 Pin 要求由开漏电路驱动。则我们常见的驱动方式是利用一个三极管组成开集电路来驱动它,即方便又节省成本。如图 3。2.上拉电阻 R pull-up 的 阻值 决定了 逻辑电平转换的沿的速度。阻值越大,速度越低功耗越小。反之亦然。Push-Pull 输出就是一般所说的推挽输出,在 CMOS 电路里面应该较 CMOS 输出更合适,应为在 CMOS 里面的 pushpull 输出能力不可能做得双极那么大。输出能力看 IC部输出极 N 管

34、P 管的面积。和开漏输出相比,pushpull 的高低电平由 IC 的电源低定,不能简单的做逻辑操作等。pushpull 是现在 CMOS 电路里面用得最多的输出级设计方式。at91rm9200 GPIO 模拟 I2C 接口时注意!四四.OCOC、ODOD集电极开路门(集电极开路 OC 或源极开路 OD)open-drain 是漏极开路输出的意思,相当于集电极开路(open-collector)输出,即 ttl 中的集电极开路(oc)输出。一般用于线或、线与,也有的用于电流驱动。open-drain 是对 mos 管而言,open-collector 是对双极型管而言,在用法上没啥区别。开漏形

35、式的电路有以下几个特点:开漏形式的电路有以下几个特点:1.利用外部电路的驱动能力,减少 IC 部的驱动。或驱动比芯片电源电压高的负载.2.可以将多个开漏输出的 Pin,连接到一条线上。通过一只上拉电阻,在不增加任何器件的情况下,形成“与逻辑”关系。这也是 I2C,SMBus 等总线判断总线占用状态的原理。如果作为图腾输出必须接上拉电阻。接容性负载时,下降延是芯片的晶体管,是有源驱动,速度较快;上升延是无源的外接电阻,速度慢。如果要求速度高电阻选择要小,功耗会大。所以负载电阻的选择要兼顾功耗和速度。3.可以利用改变上拉电源的电压,改变传输电平。例如加上上拉电阻就可以提供TTL/CMOS 电平输出

36、等。4.开漏 Pin 不连接外部的上拉电阻,则只能输出低电平。一般来说,开漏是用来连接不同电平的器件,匹配电平用的。5.正常的 CMOS 输出级是上、下两个管子,把上面的管子去掉就是 OPEN-DRAIN了。这种输出的主要目的有两个:电平转换和线与。6.由于漏级开路,所以后级电路必须接一上拉电阻,上拉电阻的电源电压就可以决定输出电平。这样你就可以进行任意电平的转换了。7.线与功能主要用于有多个电路对同一信号进行拉低操作的场合,如果本电路不想拉低,就输出高电平,因为 OPEN-DRAIN 上面的管子被拿掉,高电平是靠外接的上拉电阻实现的。(而正常的 CMOS 输出级,如果出现一个输出为高另外一个

37、为低时,等于电源短路。)8.OPEN-DRAIN 提供了灵活的输出方式,但是也有其弱点,就是带来上升沿的延时。因为上升沿是通过外接上拉无源电阻对负载充电,所以当电阻选择小时延时就小,但功耗大;反之延时大功耗小。所以如果对延时有要求,则建议用下降沿输出。五五.线或逻辑与线与逻辑线或逻辑与线与逻辑在一个结点(线)上,连接一个上拉电阻到电源 VCC 或 VDD 和 n 个 NPN 或 NMOS 晶体管的集电极 C 或漏极 D,这些晶体管的发射极 E 或源极 S 都接到地线上,只要有一个晶体管饱和,这个结点(线)就被拉到地线电平上.因为这些晶体管的基极注入电流(NPN)或栅极加上高电平(NMOS),晶

38、体管就会饱和,所以这些基极或栅极对这个结点(线)的关系是或非 NOR 逻辑.如果这个结点后面加一个反相器,就是或 OR 逻辑.注:个人理解:线与,接上拉电阻至电源。(A)&(B)=(A+B),由公式较容易理解线与此概念的由来;如果用下拉电阻和 PNP 或 PMOS 管就可以构成与非 NAND 逻辑,或用负逻辑关系转换与/或逻辑.注:线或,接下拉电阻至地。(A)+(B)=(AB);这些晶体管常常是一些逻辑电路的集电极开路 OC 或源极开路 OD 输出端.这种逻辑通常称为线与/线或逻辑,当你看到一些芯片的 OC 或 OD 输出端连在一起,而有一个上拉电阻时,这就是线或/线与了,但有时上拉电阻做在芯片的输入端.顺便提示如果不是 OC 或 OD 芯片的输出端是不可以连在一起的,总线 BUS 上的双向输出端连在一起是有管理的,同时只能有一个作输出,而其他是高阻态只能输入.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作计划

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁