1.首先,MCU的IO包括RST端的内电路中都有钳位设计,分别对电源和地,门限是MOS管的导通压降,约0.2V左右,低于普通硅整流二极管的导通结压降0.7V。正是钳位设计的引入,MCU准许输入电位略高于电源、略低于地,一般在0.5V左右(看器件手册)但不能过分,因为造成损害的是电流,压差过大(由电流等效)会超过钳位元件的载流能力,IO也就玩完了。

2.IO保护的关键——钳位元件的选择问题,比如在工业现场运行的485网络中,因长线感应等接口芯片的IO常常可能遭受高于VCC、低于GND的电压冲击,该钳位二极管必须使用肖特基管,只有注明那个二极管是肖特基管的时候,才能确定楼主拥有且能实现“保护”的意图。

3.三极管基极下拉电阻作用:
防止三极管受噪声信号的影响而产生误动作,使晶体管截止更可靠!三极管的基极不能出现悬空,当输入信号不确定时(如输入信号为高阻态时),加下拉电阻,就能使有效接地。特别是GPIO连接此基极的时候,一般在GPIO所在IC刚刚上电初始化的时候,此GPIO的内部也处于一种上电状态,很不稳定,容易产生噪声,引起误动作!加此电阻,可消除此影响(如果出现一尖脉冲电平,由于时间比较短,所以这个电压很容易被电阻拉低;如果高电平的时间比较长,那就不能拉低了,也就是正常高电平时没有影响)!但是电阻不能过小,影响泄漏电流!(过小则会有较大的电流由电阻流入地)
当三极管开关作用时,ON和OFF时间越短越好,为了防止在OFF时,因晶体管中的残留电荷引起的时间滞后,在B,E之间加一个R起到放电作用。高频,深饱和时特别要注意。(次要)
三极管基级加电阻主要是为了设置一个偏置电压,这样就不会出现信号的失真(这在输入信号有交流时极其重要:如当温度上升时,Ic将增大,导致Ie也会增大,那么在Re上的压降也增大,而Vbe=Vb-IeRe,而Vb此时基本上被下拉电阻保持住,所以使Vbe减小。当然这个减小对0.7v来说是很小的,是从微观上去分析的。Vbe的减小,使Ib减小,结果牵制了Ic的增加,从而使Ic基本恒定。这也是反馈控制的原理)。而且同时还是为了防止输入电流过大,加个电阻可以分一部分电流,这样就不会让大电流直接流入三极管而损坏其.至于为了放电,一般是在MOS管中才用,三极管这个问题不大.
如果三极管不接下拉电阻,就不能设定偏置电压,这样会产生输入信号的交越失真,并且输 入电流过大的时候会导致大电流直接流入三极管而损坏其.三极管我们分析的时候有时候总是认为它的内部是有二极管的效应的,但这样是错误的认识,应该更正.而MOS管同样需要一个偏制电压,而下拉电阻可以起到这样的作用,我们一般称之为GATE偏制.由于MOS管内部的三个级是彼此绝缘的,所以自然会有电容效应在,当信号消失的时候内部的等效电容可以通过下拉电阻进行放电.而且也是必须的,否则会逻辑出错.

3.接下拉电阻时还要注意:下拉电阻阻值不能太大,不然会导致流入基级的电流太小.如果是高速开关信号,尽量在下拉电阻上并连一个电容以提高高速性能。

4.复位按钮一般都是安装在操作面板上,有较长的传输线,容易引起电磁感应干扰。按钮传输线应采用双绞线(具有抑制电磁感应干扰的性能),并远离交流用电设备。在印刷电路板上,单片机复位端口处并联0.01-0.1uF的高频电容,或配置使密特电路,将提高对串入噪声的抑制能力。

5.在单片机系统中,某些I/O接口芯片的复位端口与单片机的复位端口往往连在一起,即统一复位。接口芯片由于生产厂家不同,复位时间也稍有不同;复位线较长而又较大的分布电容,导致这些接口的复位过程滞后于单片机。工程实践表明,当单片机复位结束立即对这些I/O芯片进行初始化操作时,往往导致失败。因此,当单片机进入0000H地址后,首先执行1-10ms的软件延时,然后再对这些I/O芯片进行初始化。

1.SMBus 是 System Management Bus 的缩写,译为系统管理总线,SMBus是一种二线制串行总线,它大部分基于I2C总线规范。和 I2C一样,SMBus不需增加额外引脚,创建该总线主要是为了增加新的功能特性,但只工作在100kHz且专门面向智能电池管理应用。它工作在主/从模式:主器件提供时钟,在其发起一次传输时提供一个起始位,在其终止一次传输时提供一个停止位;从器件拥有一个唯一的7或10位从器件地址。

2.SMBus与I2C总线之间在时序特性上存在一些差别。首先,SMBus需要一定数据保持时间,而 I2C总线则是从内部延长数据保持时间。SMBus具有超时功能,因此当SCL太低而超过35 ms时,从器件将复位正在进行的通信。相反,I2C采用硬件复位。SMBus具有一种警报响应地址(ARA),因此当从器件产生一个中断时,它不会马上清除中断,而是一直保持到其收到一个由主器件发送的含有其地址的ARA为止。SMBus只工作在从10kHz到最高100kHz。最低工作频率10kHz是由SMBus超时功能决定的。

3.SMBus的数据传输率为100kbps,虽然速度较慢,却以其结构简洁造价低廉的特点,成为业界普遍欢迎的接口标准。Windows中显示的各种设备的制造商名称和型号等信息,都是通过SMBus总线收集的。主板监控系统中传送各种传感器的测量结果,以及BIOS向监控芯片发送命令,也是利用SMBus实现的。

4.下面为CRC16的计算过程,其中生成多项式为:X16+X15+X2+1:
1.设置CRC寄存器,并给其赋值FFFF(hex)。
2.将数据的第一个8-bit字符与16位CRC寄存器的低8位进行异或,并把结果存入CRC寄存器。
3.CRC寄存器向右移一位,MSB补零,移出并检查LSB。
4.如果LSB为0,重复第三步;若LSB为1,CRC寄存器与生成多项式码相异或。
5.重复第3与第4步直到8次移位全部完成。此时一个8-bit数据处理完毕。
6.重复第2至第5步直到所有数据全部处理完成。
7.最终CRC寄存器的内容即为CRC值。

上拉下拉复位SMBus相关推荐

  1. gpio上拉下拉区别

    gpio上拉下拉区别 GPIO是一颗芯片(MCU)必须具备的最基本外设功能. GPIO通常有三种状态:高电平.低电平和高阻态.高阻态换句话说就是断开状态或浮空态.因此上拉和下拉其中一个强大的理由就是为 ...

  2. 解决iscroll.js上拉下拉刷新手指划出屏幕页面无法回弹问题

    解决iscroll.js上拉下拉刷新手指划出屏幕页面无法回弹问题 参考文章: (1)解决iscroll.js上拉下拉刷新手指划出屏幕页面无法回弹问题 (2)https://www.cnblogs.co ...

  3. LtRecyclerView:自带上拉下拉,能增加头条目和尾条目的RecyclerView

    LtRecyclerView:自带上拉下拉,能增加头条目和尾条目的RecyclerView 点击查看2.x版本,功能更强大 主要功能: 自带上拉加载和下拉刷新 可以添加100条头条目和尾条目(其实是可 ...

  4. android 仿ios动画效果代码,Android仿IOS上拉下拉弹性效果的实例代码

    用过iphone的朋友相信都体验过页面上拉下拉有一个弹性的效果,使用起来用户体验很好:Android并没有给我们封装这样一个效果,我们来看下在Android里如何实现这个效果.先看效果,感觉有些时候还 ...

  5. 三极管的上拉下拉电阻的选取

    输出端的接电源或接地的电阻叫上拉.下拉电阻,而基极电阻不叫这个名称,应该叫基极偏置电路分压电阻. 根据基极所需的偏置电压以及电源电压大小,用电阻分压公式计算Ub=Vcc*R2/(R1+R2),电阻值的 ...

  6. 关于GPIO上拉下拉和高低电平的问题

    https://blog.csdn.net/yinghaijushi/article/details/78991999 这篇文章讲的不错,主要是对于引脚的电平,一开始设置的是默认的状态,平时即一开始, ...

  7. STM32芯片IO口的配置以及上拉下拉电阻介绍(一)

    STM32芯片IO口的配置以及上拉下拉电阻介绍(一) IO口常见的配置方式 推挽输出 开漏输出 STM32芯片做硬件研发的朋友们都知道.但是还是有很多做硬件的新朋友"只知其然而不知其所然&q ...

  8. rs485接口上下拉_关于RS485上拉下拉电阻的说明

    关于 RS485 上拉下拉电阻的说明 一.上拉下拉电阻作用: 接电阻就是为了防止输入端悬空 减弱外部电流对芯片产生的干扰 保护 cmos 内的保护二极管 , 一般电流不大于 10mA 上拉和下拉.限流 ...

  9. 单片机IO输出,上拉下拉电阻,图腾柱,线与

    在讲上拉下拉之前先,先讲讲什么是强1强0,高阻态,弱1弱0: 图一 如图可见:所谓强1,就是output直接接到vcc上,这样可以保证output后的器件的高电平识别门限,输出电平逻辑可以保证为1:同 ...

最新文章

  1. jquery技巧总结
  2. 自己动手,做一款抬头显示的「Todo Hud」
  3. 怀化学院计算机科学张显老师,怀化学院:计算机“华山论剑”获佳绩
  4. python可以写接口吗_用python写api接口吗
  5. 【计算机网络(微课版)】第3章 数据链路层 课后习题及答案
  6. boost::unknown_exception用法的测试程序
  7. 【2018.3.10】模拟赛之三-ssl2576 平台
  8. 不就是要个30K的薪资,他还问我Nginx调优
  9. LeetCode 2166. 设计位集(Bitset)
  10. MessagePack Jackson 数据大小
  11. kafka入门(一)简介
  12. Drop user 报ORA-00600 [KTSSDRP1]
  13. java 密钥库 口令_java密钥库和密码设置
  14. github 更纱黑体_【Freeplane相关】一招解决更纱黑体导出思维导图PDF的问题
  15. 【光环PMP远程】管理分享——如何与各职能部门沟通
  16. 《手机游戏引擎架构》信息总汇
  17. 笨办法学python习题39-40
  18. 怎样打开t6系统服务器,t6客户端如何连接服务器
  19. html计算平方米,尺和平方米换算(尺与平方米换算计算器)
  20. 新法将赋予FBI无需法院命令也能阅读公民邮件的权力

热门文章

  1. matlab中的nextpow2函数
  2. latex 公式太长 自动换行
  3. autojs教程:多多果林app脚本代码
  4. cmd命令大全 授人予鱼不如授人与渔
  5. java ssm开发酒店管理,Ssm+Mysql实现的Java Web酒店管理系统毕设指导思路模板
  6. TCP Window Full 和 TCP ZeroWindow
  7. font-size字体大小
  8. Library Cache优化与SQL游标
  9. windows系统-串口设备导致鼠标乱跳的问题
  10. 几款小型蓝牙天线的设计与应用