历史上的今天
返回首页

历史上的今天

今天是:2024年09月16日(星期一)

2019年09月16日 | STM8S学习01——SPI&IIC

2019-09-16 来源:eefocus

1、温习IIC总线协议

1)I2C 总线的一些特征

1> 只要求两条总线线路 一条串行数据线 SDA 一条串行时钟线 SCL

2> 每个连接到总线的器件都可以通过唯一的地址和一直存在的简单的主机 从机关系软件设定地址 主机可以作为主机发送器或主机接收器

3> 它是一个真正的多主机总线 如果两个或更多主机同时初始化数据传输可以通过冲突检测和仲裁,防止数据被破坏

4> 串行的 8 位双向数据传输位速率在标准模式下可达 100kbit/s 快速模式下可达 400kbit/s 高速模式下可达 3.4Mbit/s

5> 片上的滤波器可以滤去总线数据线上的毛刺波 保证数据完整

6> 连接到相同总线的 IC 数量只受到总线的最大电容 400pF 限制



2)起始和停止条件

1> 在 I2C 总线中 唯一出现的是被定义为起始 S 和停止 P 条件,其中一种情况是在 SCL 线是高电平时 SDA 线从高电平向低电平切换; 

2> 这个情况表示起始条件,当 SCL 是高电平时 SDA 线由低电平向高电平切换表示停止条件;

3> 起始和停止条件一般由主机产生 总线在起始条件后被认为处于忙的状态 在停止条件的某段时间后总线被认为再次处于空闲状态;

4> 如果产生重复起始 Sr 条件而不产生停止条件,总线会一直处于忙的状态,此时的起始条件 S 和重复起始 Sr 条件在功能上是一样的;

5> 如果连接到总线的器件合并了必要的接口硬件,那么用它们检测起始和停止条件十分简便,但是没有这种接口的微控制器在每个时钟周期至少要采样 SDA 线两次来判别有没有发生电平切换

  

2、SPI协议学习

1)SPI总线介绍

1> SPI接口是Motorola首先提出的全双工三线同步串行外围接口,采用主从模式架构,支持多设备应用,一般只支持单主设备;

2> 时钟由主设备控制,数据在时钟脉冲下按位传输,高位在前;

3> 目前应用中的数据速率可达几Mbps

2)SPI总线

1> SPI在一般应用中有4根信号线:MOSI、MISO、SCK、SS;

MOSI:主器件数据输出,从器件数据输入

MISO:主器件数据输入,从器件数据输出

SCK:时钟信号,由主设备控制发出

/SS:从设备选择信号,由主设备控制<根据此信号可以决定连接到总线上从设备的数量>


2> 传输模式:

A、根据时钟极性(CPOL)以及相位(CPHA)不同可以组合成 4 种工作模式:SPI0、SPI1、SPI2、SPI3;

(1)SPI0:CPOL=0,CPHA=0

(2)SPI1:CPOL=0,CPHA=1

(3)SPI2:CPOL=1,CPHA=0

(4)SPI3:CPOL=1,CPHA=1

B、时钟极性(CPOL)定义了时钟空闲状态电平,对传输协议没有重大影响;

(1)CPOL=0:时钟空闲状态为低电平;

(2)CPOL=1:时钟空闲状态为高电平。

C、时钟相位(CPHA)定义数据的采样时间;

(1)CPHA=0:在时钟的第一个跳变沿(上升沿或下降沿)进行数据采样;

(2)CPHA=1:在时钟的第二个跳变沿(上升沿或下降沿)进行数据采样;

3> 优缺点

A、优点:

(1)接口简单,利于硬件设计与实现;

(2)时钟速度快,且没有系统开销;

(3)相对抗干扰能力强,传输稳定

B、缺点:

(1)缺乏流控制机制,无论主器件还是从器件均不对消息进行确认,主器件无法知道从器件是否繁忙,因此,需要软件弥补,增加了软件开发工作量;

(2)没有多主器件协议,必须采用很复杂的软件和外部逻辑来实现多主器件架构



推荐阅读

史海拾趣

Handok Co Ltd公司的发展小趣事

在电子行业中,Hamlin(现为Littelfuse的一部分)的发展充满了创新与挑战的故事。以下是五个关于Hamlin如何在Littelfuse旗下发展壮大的实际案例:

1. 从独立到并购:Hamlin的加入

Hamlin,一家在传感器领域享有盛誉的公司,于2012年被Littelfuse收购。这一战略举措标志着Littelfuse在电路保护基础上,进一步向传感器与功率器件领域扩展。Hamlin的加入为Littelfuse带来了丰富的传感器技术,特别是其在磁性传感器方面的专长,使得Littelfuse能够为客户提供更全面的解决方案。这次并购不仅增强了Littelfuse在汽车电子和工业市场的竞争力,也为其后续的技术创新和市场拓展奠定了坚实基础。

2. 创新引领:55300系列传感器的诞生

Hamlin在加入Littelfuse后,继续发挥其创新优势,推出了55300系列非接触式磁性传感器。这一系列传感器克服了传统干簧开关在机械磨损和污染方面的限制,具有长寿命、高速度、不受恶劣环境影响的特点。其广泛的工作温度范围和集成的汽车级EMI/EMC测试,使得这些传感器在汽车和工业市场得到了广泛应用,如液压缸位置、变速箱换挡位置等关键控制领域。

3. 技术突破:Hamlin在车用传感器领域的贡献

随着汽车行业的快速发展,对安全、节能和舒适性的要求日益提高。Hamlin利用其在磁感应技术上的专长,为Littelfuse的车用传感器产品线增添了新的活力。Hamlin的车用传感器涵盖了安全类、动力总成、排放和舒适性四大类别,通过检测转速、位移、位置和角度等参数,为汽车提供了精准的监控和控制。这些传感器不仅提升了汽车的性能和安全性,也满足了消费者对驾驶体验的高要求。

4. 市场拓展:Littelfuse与Hamlin的全球化战略

在Hamlin的助力下,Littelfuse加快了全球化步伐。通过在欧洲、亚洲和美国的持续扩张,Littelfuse的产品和服务覆盖了更广泛的市场。Hamlin的传感器技术成为了Littelfuse在全球市场上的一张重要名片,吸引了众多国际客户的关注。同时,Littelfuse也加大了对新兴市场的投入,特别是在中国市场,通过与本土合作伙伴的紧密合作,进一步提升了品牌影响力和市场份额。

5. 持续增长与未来展望

自Hamlin加入以来,Littelfuse的业绩实现了持续增长。通过不断的研发投入和市场拓展,Littelfuse在电路保护、传感器与功率器件领域均取得了显著成就。展望未来,Littelfuse将继续依托Hamlin等子公司的技术优势和市场资源,推动产品创新和市场升级。同时,随着新能源汽车、物联网等新兴领域的快速发展,Littelfuse将迎来更多的发展机遇和挑战,为电子行业的进步贡献更多力量。

Ememory Technology Inc公司的发展小趣事

为了满足市场对高性能、低功耗芯片的需求,eMemory在2016年宣布向150nm高电压制程工艺扩展其可编程Neobit技术。这一技术的成功开发,使得eMemory能够在LCD驱动IC、逻辑IC和功率控制IC等高速增长的市场中占据一席之地。Neobit技术的可擦编程只读存储器特性,为芯片设计提供了更大的灵活性和可定制性。

Forge Europa Ltd公司的发展小趣事

Forge Europa Ltd公司深知可持续发展对于企业和行业的重要性。因此,公司在生产过程中始终坚持绿色、环保的理念,致力于减少能源消耗和环境污染。公司采用了先进的生产技术和设备,提高了生产效率和资源利用率,同时加强了废弃物的处理和回收工作。此外,Forge Europa还积极参与各类环保活动,倡导绿色消费和低碳生活,为行业树立了可持续发展的典范。

Franel Corp公司的发展小趣事

面对中国市场的多样化和个性化需求,法勒公司积极提供定制化解决方案。无论是复杂的物流系统改造,还是特殊环境下的设备供电需求,法勒都能凭借其专业的技术团队和丰富的项目经验,为客户提供量身定制的解决方案。这种以客户为中心的服务模式,不仅增强了客户粘性,也进一步巩固了法勒在中国市场的领先地位。

Digitron公司的发展小趣事

Digitron公司始终将创新作为企业发展的核心驱动力。公司投入大量资金用于研发新技术和新产品,不断提升产品的性能和功能。XXXX年,Digitron公司成功研发出一款具有无线传输功能的数据记录器,用户可以通过手机或电脑实时查看和监控数据。这一创新产品受到了市场的热烈欢迎,为Digitron公司带来了显著的增长。

Akahane Electronics Ind Corp公司的发展小趣事

面对日益严重的环境问题,Akahane敏锐地捕捉到绿色电子产品的市场潜力。公司投入大量研发资源,开发出低能耗、环保的电子产品,并积极推广绿色生产和循环经济理念。这一举措不仅赢得了消费者的青睐,还为公司赢得了良好的社会声誉。同时,Akahane还积极参与国际环保组织的活动,推动电子行业的绿色化发展。

问答坊 | AI 解惑

关于被动红外探测器的技术阐述

被动红外探测器是一种在安防工程中使用极为普遍的一类探测器。但要其正常使用,既要防止漏报,又要减少误报,特别是如何将误报现象降到最低的限度是一个摆在广大工程设计人员面前的一个课题。要做到这一点,必须首先要了解被动红外探测器的一些基本 ...…

查看全部问答>

为何realview ice的仿真器这么贵

本想用一用realview IDE里的一些高级功能,但到realveiw debugger,所支持的仿真器中没有什么ULINK之类的便宜东东,而支持的ULINK不知为何realview ice的仿真器这么贵,…

查看全部问答>

实际问题--六自由度液压动感平台用加速度传感器反馈倾角信号实现PID控制

实际问题--六自由度液压动感平台用加速度传感器反馈倾角信号实现PID控制。 在可行性方面希望大家给点看法…

查看全部问答>

Tornado2.2到Tornado2.0的问题。

因为使用到一款PCI5110的CAN卡,因为他们公司原来是在2.2下面编译的,现在我需要在2.0下面进行,出现驱动的.o文件格式识别不了,请教各位大哥有什么办法,还有,他们有帮忙修改了,格式是可以识别,但是打开CAN卡的时候,函数返回值都是正确的,但 ...…

查看全部问答>

关中断、开中断及其作用一问

在嵌入式开发中,经常看到如下的代码(现在使用的是threadx): TX_INTERRUPT_SAVE_AREA …… TX_DISABLE …… TX_ENABLE 尤其是在对硬件寄存器操作时基本上都要关中断。 我的理解是,关中断用来防止系统调度,保证对寄存器操作的原子性。但 ...…

查看全部问答>

串口接收到的数据不正确

我用串口调试助手发00 01 02 03,但接收到的是A0 B0 A4 C0等一些乱码,请教各位大侠!! 我的程序是C写的,用keil编译 #include #define uint unsigned int #define uchar unsigned char uint i=0; uchar data astring[10]; void main() { ...…

查看全部问答>

1788 以太网 实现

我用的是LPC1788 想实现以太网功能,PHY 模块用的是DP83848 使用easyWeb 历程修改为发送数据,定义一个数组大小为600字节向电脑发送以太网帧,用以太网调试助手接受数据 发现每次接收到4200个字节, 每次接收将定义的数据重复发送了7次 不知道怎么 ...…

查看全部问答>

MSP430F169的ADC12采样率问题

求高手点拨。 想要使用单通道连续采样,工作在最高采样率。但是用TI的例程实测,采样率都低太多。 时钟用ADC内部振荡器,约5MHz,2个采样周期+13个转换周期,计算下来应该4us左右采一个点。 但是,输入5kHz的正方波——100us高电平, 采下来高 ...…

查看全部问答>

电子设计大赛培训

超声波测距电路图 …

查看全部问答>

提问+定时器A中断向量寄存器(TAIV)的用法

谁能给讲一下定时器A中断向量寄存器(TAIV)的用法啊?或者提供一些示例。 还有为什么TAIV的值是偶数才会执行?是TI的规定吗? 多谢了。…

查看全部问答>