芯科科技光模块利器预置I2C Bootloader功能

silicon labs(亦称芯科科技)在全系列efm8 8位mcu出厂时预置带i2c、uart或usb等多种方式下载功能的bootloader进行程序更新,并提供源代码方便用户进行定制bootloader,这对于广大的光模块研发工程师来说,无疑是注入了一支兴奋剂。
什么是bootloader?
bootloader顾名思义,即具有boot引导系统和loader更新系统功能,其功能类似计算机的bios,是mcu上电后执行的第一段代码,它完成cpu和相关硬件的初始化后,判断系统此时应进入boot模式还是loader模块。在boot模式下,mcu会跳转到用户代码处执行用户程序;在loader模式下,mcu接收i2c、uart或usb等方式传输的数据,覆盖用户程序代码区,更新程序代码。
通过预置bootloader,用户可以不使用调试接口和工具,直接在通讯接口上进行程序的更新和升级,极大地方便用户更新产品程序。
光模块为何需要内置i2c bootloader?
一直以来,bootloader由于硬件限制,只限于在性能和存储容量大的32位嵌入式系统上使用,作为引导操作系统的功能。随着现代电子产品对体积、功能、应用和调试等多方面的需求,8位mcu上也开始出现bootloader需求,光模块在这方面体现得尤其强烈。
光模块的作用就是光电转换,发送端把电信号转换成光信号,通过光纤传送后,接收端再把光信号转换成电信号。光模块的体积非常小,对硬件工程师布线是一个很大的考验,很多工程师为预留程序下载接口绞尽脑汁。由于光模块普遍采用i2c slave接收数据,因此内置i2c bootloader进行程序更新,可以极大地方便硬件工程师进行设计,同时方便客户批量生产。
efm8的i2cbootloader实现
silicon labs的8位mcu由于体积小、功耗低、外围器件少、性能稳定,受到广大光模块厂家的青睐,其c8051f33x、c8051f39x和c8051f85x等系列的8位mcu在光模块领域普遍使用。今年,silicon labs继续发力,针对光模块市场推出efm8bb系列的低成本和efm8lb系列的高性能mcu,并在efm8全系产品中加入bootloader。
计算机通过usb或串口通过efm8进行程序更新的原理如图1所示:
图1: efm8的usb和串口下载
计算机上的下载软件首先将下位机上执行的固件hex文件转换为二进制的记录文件,然后将文件内容拆分成多个数据包,分次传给efm8 bootloader,efm8收到数据后解包,更新用户程序区代码。
由于计算机没有i2c接口,因此efm8的i2c下载需要增加mcu进行uart到i2c协议转换,如图2所示:
图2 :efm8的i2c下载
目前uart到i2c协议转换,silicon labs提供基于c8051f37x和c8051f39x的全套源代码,客户也可以轻松地移植到其它平台上。
efm8内置的bootloader位于其代码安全页上,确保bootloader在flash页被锁定的情况下仍然正确更新程序,同时,如果客户不需要bootloader,也可以用下载器擦除释放flash空间。
综上所述,silicon labs充分考虑光模块的需求,适时在efm8上增加i2c下载功能,同时继续保持其业界体积小、功耗低的优势,无疑会增加产品竞争力,使其继续保持光模块市场份额领先地位。

EMC产生的条件_为何要做EMC设计
Banias处理器
使用workvisual软件对KR C4进行外部轴配置
芯教程|平头哥助力昊芯HX2000系列芯片专题SCI串口通讯奇偶校验(二)SCI增强FIFO
RT9907应用电路及参数资料
芯科科技光模块利器预置I2C Bootloader功能
大疆车载融资计划已启动,接连获得比亚迪和一汽集团投资意向
贸泽电子即日起备货Laird Connectivity的BL653系列模块
二线接近开关接线图解
光栅电子细分电路设计
ZETAOTA提供远程升级服务 提高实用性
便携式SSD KE31不仅传输速度快 容量更是高达960GB
苹果折叠屏加速但MacBook和iPad折叠屏在2024年推出的可能性极小
区块链技术如何改变美容行业
用12V的DC电源,如何设计照明“壁灯”
中国量子计算机迎来里程碑式的突破
华为携手LG U+在韩国首尔完成5G预商用网络测试
麻省理工工程师利用碳纳米管制成一种小型传感器 可嵌入到植物叶子中以修复损伤或击退昆虫等天敌
物联网转型 云边融合助推AI+IoT落地
一种新型CCM PFC控制器