高电平

I2C接口开漏输出输入双向

十年热恋 提交于 2019-12-13 22:03:17
I2C接口 原创 朝辞暮见 发布于2018-06-13 19:45:25 阅读数 8265 收藏 展开 一、I2C总线协议内容 1. I2C总线引脚定义 SDA (I2C数据引脚) CLK (I2C数据引脚) 2. I2C 总线物理连接 I2C总线物理连接如下图所示,SDA和CLK连接线上连有两个上拉电阻,当总线空闲时,两根线均为高电平。连到总线上的任一器件输出的低电平,都将使总线的信号变低。 二、I2C总线的数据传送 1. 数据位的有效性规定 I2C总线进行数据传送时,时钟信号为高电平期间,数据线上的数据必须保持稳定,只有在时钟线上的信号为低电平期间,数据线上的高电平或低电平状态才允许变化 1 scl处于高电平的时候,如果sda处于低电平:传输数据0,sda处于高电平:传输数据1 2.在scl处于高电平的时候,sda用来传输数据,必须保持电平稳定 3.如果要产生数据即sda需要变化时,只能在scl处于低电平的时候 2. 起始和终止信号 SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号;SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信号。 1. 信号的发起和终止,由主机发起,在起始信号产生后,总线就处于被占用的状态;在终止信号产生后,总线就处于空闲状态。 2. scl处于高电平的时候,sda由高->低的跳变, 表示发起传输,产生起始信号s, 如果低-

STM32 GPIO口的配置和应用

我的梦境 提交于 2019-12-10 16:38:31
STM32F103ZET6 一共有7组IO口(有FT的标识是可以识别5v的) 每组IO口有16个IO 一共16*7=112个IO 4种输入模式: (1) GPIO_Mode_AIN 模拟输入 (2) GPIO_Mode_IN_FLOATING 浮空输入 (3) GPIO_Mode_IPD 下拉输入 (4) GPIO_Mode_IPU 上拉输入 4种输出模式: (5) GPIO_Mode_Out_OD 开漏输出 (6) GPIO_Mode_Out_PP 推挽输出 (7) GPIO_Mode_AF_OD 复用开漏输出 (8) GPIO_Mode_AF_PP 复用推挽输出 四种输入模式: 1、一图记住上拉、下拉、浮空输入模式: 原理分析:图中箭头表示信号流动方向。从I/O引脚向左沿着箭头方向,首先遇到两个开关和电阻,与VDD相连的称为上拉电阻,与Vss相连的称为下拉电阻,再连接到施密特触发器(信号转换)把电压信号转化为0、1的数字信号,存储在输入数据寄存器(IDR)。然后通过设置配置寄存器(CRL、CRH)控制这两个开关,于是就可以得到GPIO的上拉输入、下拉输入模式和浮空输入模式,浮空就是既不接上拉也不接下拉。在上拉/下拉/浮空输入模式中,输出缓冲器被禁止(P-MOS和N-MOS),施密特触发器输入被激活,根据输入配置(上拉,下拉或浮动)的不同,弱上拉和下拉电阻被连接

STM32 GPIO口的配置和应用

自作多情 提交于 2019-12-10 13:27:37
STM32F103ZET6 一共有7组IO口(有FT的标识是可以识别5v的) 每组IO口有16个IO 一共16*7=112个IO 4种输入模式: (1) GPIO_Mode_AIN 模拟输入 (2) GPIO_Mode_IN_FLOATING 浮空输入 (3) GPIO_Mode_IPD 下拉输入 (4) GPIO_Mode_IPU 上拉输入 4种输出模式: (5) GPIO_Mode_Out_OD 开漏输出 (6) GPIO_Mode_Out_PP 推挽输出 (7) GPIO_Mode_AF_OD 复用开漏输出 (8) GPIO_Mode_AF_PP 复用推挽输出 四种输入模式: 1、一图记住上拉、下拉、浮空输入模式: 原理分析:图中箭头表示信号流动方向。从I/O引脚向左沿着箭头方向,首先遇到两个开关和电阻,与VDD相连的称为上拉电阻,与Vss相连的称为下拉电阻,再连接到施密特触发器(信号转换)把电压信号转化为0、1的数字信号,存储在输入数据寄存器(IDR)。然后通过设置配置寄存器(CRL、CRH)控制这两个开关,于是就可以得到GPIO的上拉输入、下拉输入模式和浮空输入模式,浮空就是既不接上拉也不接下拉。在上拉/下拉/浮空输入模式中,输出缓冲器被禁止(P-MOS和N-MOS),施密特触发器输入被激活,根据输入配置(上拉,下拉或浮动)的不同,弱上拉和下拉电阻被连接

03_使用寄存器点亮第一盏灯

佐手、 提交于 2019-12-06 12:23:00
一:stm32 GPIO介绍 1. GPIO概念   GPIO(general purpose intput output) 是通用输入输出端口的简称, 可以通过软件来控制其输入和输出。 STM32 芯片的 GPIO 引脚与外部设备连接起来,从而实现与外部通讯、 控制以及数据采集的功能。 不过 GPIO 最简单的应用还属点亮 LED 灯了, 只需通过软件控制 GPIO 输出高低电平即可。 当然 GPIO 还可以作为输入控制, 比如在引脚上接入一个按键, 通过电平的高低判断按键是否按下。   那么是不是所有引脚都是 GPIO 呢? 当然不是, STM32 引脚可以分为这么几大类:   (1) 电源引脚: 引脚图中的 VDD、 VSS、 VREF+、 VREF-、 VSSA、 VDDA 等都属于电源引脚。   (2) 晶振引脚: 引脚图中的 PC14、 PC15 和 OSC_IN、 OSC_OUT 都属于晶振引脚, 不过它们还可以作为普通引脚使用。   (3) 复位引脚: 引脚图中的 NRST 属于复位引脚, 不做其他功能使用。   (4) 下载引脚: 引脚图中的 PA13、 PA14、 PA15、 PB3 和 PB4 属于 JTAG 或SW 下载引脚。 不过它们还可以作为普通引脚或者特殊功能使用, 具体的功能可以查看芯片数据手册, 里面都会有附加功能说明。 当然, STM32

IIC总线规范

自作多情 提交于 2019-12-04 07:13:31
在消费者电子 电讯和工业电子中 看上去不相关的设计里经常有很多相似的地方 例如几乎每个系 统都包括 • 一些智能控制 通常是一个单片的微控制器 • 通用电路 例如 LCD 驱动器 远程 I/O 口 RAM EEPROM 或数据转换器 • 面向应用的电路 譬如收音机和视频系统的数字调谐和信号处理电路 或者是音频拨号电话的 DTMF 发生器 下面是 I2C 总线的一些特征: • 只要求两条总线线路 一条串行数据线 SDA 一条串行时钟线 SCL • 每个连接到总线的器件都可以通过唯一的地址和一直存在的简单的主机 从机关系软件设定地 址 主机可以作为主机发送器或主机接收器 • 它是一个真正的多主机总线 如果两个或更多主机同时初始化数据传输可以通过冲突检测和 仲裁 防止数据被破坏 • 串行的 8 位双向数据传输位速率在标准模式下可达 100kbit/s 快速模式下可达 400kbit/s 高速 模式下可达 3.4Mbit/s • 片上的滤波器可以滤去总线数据线上的毛刺波 保证数据完整 • 连接到相同总线的 IC 数量只受到总线的最大电容 400pF 限制 Q I2C 总线支持任何 IC 生产过程 NMOS CMOS 双极性 两线――串行数据 SDA 和串行时钟 SCL 线在连接到总线的器件间传递信息 每个器件都有一个唯一的地址识别 无论是微控制器 LCD 驱动器 存储器或键盘接口

STM32输入模式

僤鯓⒐⒋嵵緔 提交于 2019-12-03 20:20:50
一、推挽输出: 可以输出高,低电平,连接数字器件; 推挽结构一般是指两个三极管分别受两互补信号的控制,总是在一个三极管导通的时候另一个截止。高低电平由IC的电源决定。推挽电路是两个参数相同的三极管或MOSFET,以推挽方式存在于电路中,各负责正负半周的波形放大任务,电路工作时,两只对称的功率开关管每次只有一个导通,所以导通损耗小、效率高。输出既可以向负载灌电流,也可以从负载抽取电流。推拉式输出级既提高电路的负载能力,又提高开关速度。    当一个三级管开通的时候另一个关断,根据B端来确定, 这是一个比较器 当a>b时B 输出为0;当a<b时B输出为1 当B为1时上边三极管导通,下边关闭; 当B为0时下边三极管导通,上边关闭。 此为推挽   二、开漏输出: 当B为1时,这个管子导通,OUT接地,输出为0;当B为0时管子不导通,OUT接VCC输出为1.开漏输出:一般只能输出低电平,输出端相当于三极管的集电极. 要得到高电平状态需要上拉电阻才行. 适合于做电流型的驱动,其吸收电流的能力相对强(一般20ma以内).开漏形式的电路有以下几个特点: 利用外部电路的驱动能力,减少IC(集成电路,也称芯片)内部的驱动。当IC内部MOSFET导通时,驱动电流是从外部的VCC流经R pull-up ,MOSFET到GND。IC内部仅需很小的栅极驱动电流。 一般来说,开漏是用来连接不同电平的器件

20191105

天涯浪子 提交于 2019-12-03 16:36:10
虽然之前的寄存器啥的指向哪里哪里看明白了,但是它里面的数字代表的意思还是模糊,所以找了一下以供参考。 一、推挽输出: 可以输出高,低电平,连接数字器件; 推挽结构一般是指两个三极管分别受两互补信号的控制,总是在一个三极管导通的时候另一个截止。高低电平由IC的电源决定。推挽电路是两个参数相同的三极管或MOSFET,以推挽方式存在于电路中,各负责正负半周的波形放大任务,电路工作时,两只对称的功率开关管每次只有一个导通,所以导通损耗小、效率高。输出既可以向负载灌电流,也可以从负载抽取电流。推拉式输出级既提高电路的负载能力,又提高开关速度。    当一个三级管开通的时候另一个关断,根据B端来确定, 这是一个比较器 当a>b时B 输出为0;当a<b时B输出为1 当B为1时上边三极管导通,下边关闭; 当B为0时下边三极管导通,上边关闭。 此为推挽   二、开漏输出: 当B为1时,这个管子导通,OUT接地,输出为0;当B为0时管子不导通,OUT接VCC输出为1.开漏输出:一般只能输出低电平,输出端相当于三极管的集电极. 要得到高电平状态需要上拉电阻才行. 适合于做电流型的驱动,其吸收电流的能力相对强(一般20ma以内).开漏形式的电路有以下几个特点: 利用外部电路的驱动能力,减少IC(集成电路,也称芯片)内部的驱动。当IC内部MOSFET导通时,驱动电流是从外部的VCC流经R pull-up

2019年11月4日

不打扰是莪最后的温柔 提交于 2019-12-03 11:30:27
  一、推挽输出: 可以输出高,低电平 ,连接数字器件; 推挽结构一般是指两个三极管分别受两互补信号的控制,总是在一个三极管导通的时候另一个截止。高低电平由IC的电源决定。 推挽电路是两个参数相同的三极管或MOSFET,以推挽方式存在于电路中,各负责正负半周的波形放大任务,电路工作时,两只对称的功率开关管每次只有一个导通,所以导通损耗小、效率高。输出既可以向负载灌电流,也可以从负载抽取电流。推拉式输出级既提高电路的负载能力,又提高开关速度。    当一个三级管开通的时候另一个关断,根据B端来确定, 这是一个比较器 当a>b时B 输出为0;当a<b时B输出为1 当B为1时上边三极管导通,下边关闭; 当B为0时下边三极管导通,上边关闭。 此为推挽    二、开漏输出: 当B为1时,这个管子导通,OUT接地,输出为0;当B为0时管子不导通,OUT接VCC输出为1. 开漏输出: 一般只能输出低电平 ,输出端相当于三极管的集电极. 要得到高电平状态需要上拉电阻才行. 适合于做电流型的驱动,其吸收电流的能力相对强(一般20ma以内). 开漏形式的电路有以下几个 特点 : 利用外部电路的驱动能力,减少IC(集成电路,也称芯片)内部的驱动。当IC内部MOSFET导通时,驱动电流是从外部的VCC流经R pull-up ,MOSFET到GND。IC内部仅需很小的栅极驱动电流。 一般来说

HC_RS04驱动程序STM32F4

这一生的挚爱 提交于 2019-12-02 09:11:27
HC-RS04 超声波测距模块引脚 VCC GND Trig (类似于启动开关) Echo(产生高电平引脚) 工作原理 Trig 产生从低到高10US左右的高电平 内部模块发出一系列方波 Echo 产生一个高电平 高电平长度与距离有关 距离(CM)= 高电平时间(us)/58 程序 链接:https://pan.baidu.com/s/1Te141GM42nvREAfHd8uTyQ 提取码:be03 我用的是正点原子STM32F407 程序主要用到 输入捕获知识 主要捕获Echo高电平的时间 部分程序 void TIM5_CH1_Cap_Init(u32 arr,u16 psc) { GPIO_InitTypeDef GPIO_InitStructure; TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; NVIC_InitTypeDef NVIC_InitStructure; RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM5,ENABLE); //TIM5时钟使能 RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE); //使能PORTA时钟 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; //GPIOA0

上下拉电阻

怎甘沉沦 提交于 2019-11-29 18:39:28
上下拉电阻定义 1、上拉就是将不确定的信号通过一个电阻嵌位在高电平!电阻同时起限流作用!下拉同理 2、上拉是对器件注入电流,下拉是输出电流 3、弱强只是上拉电阻的阻值不同,没有什么严格区分 4、对于非集电极(或漏极)开路输出型电路(如普通门电路)提升电流和电压的能力是有限的,上拉电阻的功能主要是为集电极开路输出型电路输出电流通道 二、拉电阻作用: 1、一般作单键触发使用时,如果IC本身没有内接电阻,为了使单键维持在不被触发的状态或是触发后回到原状态,必须在IC外部另接一电阻。 2、数字电路有三种状态:高电平、低电平、和高阻状态,有些应用场合不希望出现高阻状态,可以通过上拉电阻或下拉电阻的方式使处于稳定状态,具体视设计要求而定! 3、一般说的是I/O端口,有的可以设置,有的不可以设置,有的是内置,有的是需要外接,I/O端口的输出类似与一个三极管的C,当C接通过一个电阻和电源连接在一起的时候,该电阻成为上C拉电阻,也就是说,如果该端口正常时为高电平,C通过一个电阻和地连接在一起的时候,该电阻称为下拉电阻,使该端口平时为低电平,其作用主要是确保某端口常态时有确定电平:用法示例:当一个接有上拉电阻的端口设为输入状态时,他的常态就为高电平,用于检测低电平的输入。 4、上拉电阻是用来解决总线驱动能力不足时提供电流的。一般说法是拉电流,下拉电阻是用来吸收电流的,也就是我们通常所说的灌电流。 5