【应用】如何使用EFM8 8位MCU的I2C Slave外设

2018-08-08 Silicon Labs
8位MCU,EFM8,M8BB3,M8LB1 8位MCU,EFM8,M8BB3,M8LB1 8位MCU,EFM8,M8BB3,M8LB1 8位MCU,EFM8,M8BB3,M8LB1

SILICON LABS(亦称“芯科科技”)EFM8 8位MCU系列产品的用户在开发产品时,需要进一步了解如何使用EFM8LB1 / EFM8BB3 I2C slave器件,使它看起来与SMBus的外设完全不同?对此,我们制作了一篇知识库文章,引导工程师们加快设计流程。



M8LB1/M8BB3包含一个I2CSLAVE外设,它包含许多有助于高速传输的功能,但可能会使熟悉传统SMBus操作的用户感到困惑。在这里,我们简要介绍I2CSLAVE器件,并附加I2C SLAVE器件引导加载器示例代码以供参考。此代码示例是为EFM8BB3编写的,但如果需要,可以轻松移植到EFM8LB1。

 

I2C外设包含2字节FIFO和1字节移位寄存器,分别用于TX/ RX。I2C SLAVE器件支持自动ACK / NACK I2C master器件,由I2C0CN0寄存器的BUSY bit控制。默认情况下,BUSY为“1”,器件不响应I2Cmaster器件。发送到器件的所有I2C数据都将被NACKed。我们应将此BUSYbit设置为“0”,器件将确认I2Cmaster器件。 master设备持续向设备发送数据,设备自动向master设备确认最多3个ACK,因为FIFO中有两个字节,移位寄存器中有1个字节。然后SCL保持低电平以表示设备无法接收更多数据。我们应检查I2C0FCN1寄存器的RXE位,以了解FIFO中是否有数据,从I2C0DIN寄存器读取接收数据。

 

自动ACK功能使流量控制变得困难,如上所述,当RX FIFO已满时,SCL保持低电平,因此器件可以处理数据。 masster如何改变读/写方向呢?还有另一个功能可以帮助解决这种情况。 I2C0ADM寄存器的FACS位字段。默认值为“1”,表示FORCE_STRETCH。该位置为1时,时钟拉伸始终发生在地址字节的ACK之后,直到固件清零I2C0INT位。通过这种时钟拉伸功能,我们可以在读/写方向变化期间进行流量控制。


这里有一个基于AN945的I2C SLAVE引导加载程序示例代码,请查看它并参考I2C SLAVE机状态机的工作原理。(https://www.sekorm.com/doc/627258.html)



有几个原因导致某些状态未包含在Bootloader代码中:

  1. Bootloader代码的编写方式使得上述某些情况永远不会发生,即使它们发生,它们也可以在默认情况下捆绑在一起。我们主要关注RD,WR和RD+ NACK状态。

  2. Bootloader的代码受大小限制。我们尝试将其放入一个Flash页面,这反过来意味着我们包含的代码只是Bootloader运行所必需的,而不是考虑永远不会发生的情况。

授权代理商:世强先进(深圳)科技股份有限公司
技术资料,数据手册,3D模型库,原理图,PCB封装文件,选型指南来源平台:世强硬创平台www.sekorm.com
现货商城,价格查询,交期查询,订货,现货采购,在线购买,样品申请渠道:世强硬创平台电子商城www.sekorm.com/supply/
概念,方案,设计,选型,BOM优化,FAE技术支持,样品,加工定制,测试,量产供应服务提供:世强硬创平台www.sekorm.com
集成电路,电子元件,电子材料,电气自动化,电机,仪器全品类供应:世强硬创平台www.sekorm.com
  • +1 赞 0
  • 收藏
  • 评论 5

本文由下线老捷达转载自Silicon Labs,原文标题为:【MCU知识库】如何使用EFM8 8位MCU的I2C Slave外设,本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

平台合作

评论

   |   

提交评论

全部评论(5

  • 用户68909777 Lv5. 技术专家 2018-11-15
    了解下
  • qditz Lv9. 科学家 2018-10-25
    不错的资料
  • 地瓜糖 Lv6. 高级专家 2018-10-13
    学习了
  • 守猪待兔 Lv7. 资深专家 2018-08-08
    学习了
  • 闲云 Lv7. 资深专家 2018-08-08
    好文章
没有更多评论了

相关推荐

关于Silicon Labs EFM8系列8位MCU,bootloader烧录/升级最新固件的问题。

需要注意的是I2C接口的硬件连接,连接的线不要过长,可以考虑在线的两端都加上拉电阻。另外,C2接口是芯片的调试接口,可以直接对芯片的FLASH进行烧录,者的烧录原理不一样,但同样的,C2接口的连接线也不能过长。

2018-08-29 -  技术问答 代理服务 技术支持 采购服务

Silicon Labs EFM8LB12系列8位MCU有ES0,ES1两个版本,两者之间的区别是什么?

ES0版本的mcu bootloader引脚是P0.2,P0.3;ES1版本的mcu bootloader引脚是P0.2,P0.3;此外两个芯片的 Derivative ID也是不同的,具体要看芯片封装和Flash尺寸;

2018-11-14 -  技术问答 代理服务 技术支持 采购服务

Silicon Labs的8位MCU EFM8SB10F8G下载程序方式有哪些?

Silicon Labs的8位MCU EFM8SB10F8G可以通过C2接口和串口(在确定片上已含bootloader的情况下)下载程序。

2018-10-31 -  技术问答 代理服务 技术支持 采购服务

Silicon Labs的EFM8LB11系列8位MCU如何区分芯片自带的bootloader通信接口是UART还是SMBus?

Silicon Labs的EFM8LB11系列8位MCU识别芯片自带的bootloader通信接口方法如下: 查看芯片完整型号,如果型号中带有“S0”,则说明bootloader通信接口为SMBus,例如:EFM8LB11F32ES0-B-QFN24; 反之,如果芯片中没有“S0”,则说明bootloader通信接口为UART,例如:EFM8LB11F32E-B-QFN24;

2018-08-29 -  技术问答 代理服务 技术支持 采购服务

【经验】8位MCU EFM8BB3如何工作在49MHz模式?

Silicon Labs的EFM8BB3是一款小封装、多用途8位MCU,最高运行频率可达49MHz, RAM容量最大为4352B,FLASH容量最大可达64KB。EFM8BB3默认是采用内部24.5MHz的时钟,那么如何切换到内部49MHz的时钟呢?

2020-11-10 -  设计经验 代理服务 技术支持 采购服务

芯科的EFM8 8位MCU,提供demo板吗?

EFM8各系列都有对应的开发板,例如EFM8BB1的开发板,可以在电商平台上搜索“EFM8BB1开发板”,就会显示相关的开发板的型号,价格及库存情况。

2020-11-30 -  技术问答 代理服务 技术支持 采购服务

Silicon Labs EFM8BB1系列8位MCU的量产软件有哪些?

Silicon Labs EFM8BB1系列8位MCU的量产软件可以采用Silicon Labs 原厂提供的MCU Production Programmer 和 Flash Programming Utility软件,建议采用前者,下载效率更高;

2018-11-14 -  技术问答 代理服务 技术支持 采购服务

Silicon Labs EFM8LB1系列8位MCU的HEX文件如何转换为bootloader引导程序可识别的.efm8文件?

需要借助Hex2boot工具,该工具是一个DOS程序,需要在DOS下通过命令实现格式转换。创建一个EFM8文件可以使用如下命令: hex2boot.exe input_file.hex -o Filename.efm8 // input_file.hex为需要转换的hex文件,Filename.efm8为bootloader烧写文件

2018-11-14 -  技术问答 代理服务 技术支持 采购服务

【经验】8位MCU EFM8LB1如何将系统时钟配置为72M?

Silicon Labs公司推出的EFM8LB1系列8位MCU,集成14位ADC、3*3mm小封装,并且内部集成校准的温度传感器,精度为+/-3度,同时,内集成有24.5M,72M的振荡器,那么如何通过软件将MCU的系统时钟配置到72M呢?本文将详细介绍。

2020-11-07 -  设计经验 代理服务 技术支持 采购服务

Silicon Labs 8位MCU EFM8LB12自带的bootloader,下载接口是哪种?

Silicon Labs 8位MCU EFM8LB12 bootloader下载接口类型,要看选定的MCU的型号, 如果芯片型号中带有“S0或S1”bootloader就是SMBUS接口,否则就是UART。

2018-10-29 -  技术问答 代理服务 技术支持 采购服务

Silicon Labs 8位MCU C8051F330采用外部16M晶体作为系统时钟,但是晶体无法起振,软件初始化应该如何设置?

Silicon Labs 8位MCU C8051F330采用外部16M晶体作为系统时钟,晶体无法起振,首先确定硬件没有问题的情况下,软件系统时钟初始化应做如下设置: OSCXCN = 0x66; for (i = 0; i < 3000; i++); while ((OSCXCN & 0x80) == 0); CLKSEL = 0x01

2018-10-29 -  技术问答 代理服务 技术支持 采购服务

Silicon Labs 8位MCU系统是否需要外部VDD监视器?

在大多数情况下,内部VDD监视器就足够了,并且不需要外部VDD监视器,除非应用程序有特殊要求要求使用外部VDD监视器。每当使用内部VDD监视器时,都应注意使用8位MCU,以确保始终将监视器用作复位源,并且不会因写入RSTSRC而被意外禁用。在高于50 MHz的频率下运行的C8051F12x或C8051F36x器件的最低电源电压规格为3.0V。但是,内部VDD监视器的校准值通常为2.7V。在这种情况下,可能需要一个外部VDD监视器。

2020-03-17 -  技术问答 代理服务 技术支持 采购服务
展开更多

电子商城

查看更多

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.5305

现货: 80,365

品牌:SILICON LABS

品类:8位MCU

价格:¥5.8534

现货: 71,919

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥11.9853

现货: 5,245

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.9026

现货: 61,955

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥5.0172

现货: 43,900

品牌:SILICON LABS

品类:8位MCU

价格:¥9.7560

现货: 39,900

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥12.9143

现货: 35,758

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥4.3667

现货: 27,741

品牌:SILICON LABS

品类:8位MCU

价格:¥14.1226

现货: 26,695

品牌:SILICON LABS

品类:8位MCU

价格:¥22.0197

现货: 24,750

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌:SILICON LABS

品类:8位MCU

价格:¥4.9000

现货:12,000

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥10.1700

现货:10,000

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.7900

现货:3,451

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥11.1200

现货:1,201

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥16.8500

现货:550

品牌:SILICON LABS

品类:8位MCU

价格:¥56.0000

现货:550

品牌:SILICON LABS

品类:8位MCU

价格:¥5.1900

现货:396

品牌:SILICON LABS

品类:8位MCU

价格:¥39.8000

现货:266

品牌:SILICON LABS

品类:Switch Hall Effect Magnetic Position Sensor

价格:¥2.2924

现货:126,000

品牌:SILICON LABS

品类:Light Sensor

价格:¥20.3400

现货:28,003

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

TFT LCD液晶显示屏/模组定制

可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。

最小起订量: 1000 提交需求>

IC烧录代工及IC自动化烧录

拥有IC烧录机20余款,100余台设备,可以烧录各种封装的IC;可烧录MCU、FLASH、EMMC、NAND FLASH、EPROM等各类型芯片,支持WIFI/BT模组PCBA烧录、测试。

最小起订量: 1 提交需求>

查看更多

授权代理品牌:接插件及结构件

查看更多

授权代理品牌:部件、组件及配件

查看更多

授权代理品牌:电源及模块

查看更多

授权代理品牌:电子材料

查看更多

授权代理品牌:仪器仪表及测试配组件

查看更多

授权代理品牌:电工工具及材料

查看更多

授权代理品牌:机械电子元件

查看更多

授权代理品牌:加工与定制

世强和原厂的技术专家将在一个工作日内解答,帮助您快速完成研发及采购。
我要提问

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

研发客服
商务客服
服务热线

联系我们

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

投诉与建议

E-mail:claim@sekorm.com

商务合作

E-mail:contact@sekorm.com

收藏
收藏当前页面