【经验】32位MCU EFM32PG系列芯片加密方法
SILICON LABS 32位MCU EFM32PG具有功能强大的32位ARM®Cortex®-M4内核,并带有FPU单元,可提供较强的运算处理能力。这一系列的MCU具有超低功耗模式及休眠模式下唤醒功能,非常适合电池供电的应用或其它需要高性能和低功耗的系统中。
产品在设计完成后,在生产的过程中都需要考虑芯片的加密,以避免软件被竞争对手直接读出。加密的实现可以通过下载软件加密,也可以通过用户的程序直接加密。通过软件加密有时会出现操作人员的失误导致芯片没有加密,而相对来说通过用户的程序加密就安全可靠得多,只要程序下载到芯片中,芯片再次上电后就被加密了。下面就讲一下,如何在用户程序中对芯片加密。
首先,我们看一下芯片是如何实现加密的,下图是FLASH存储的映射表,其中0X0FE04000开始的2KB的区域是锁定位区。锁定区偏移地址127为DLW,也就是调试接口锁定字。只要将这个偏移地址的内容写为00就可以实现加密了。
我们了解了芯片的加密机制,要实现加密就简单了,最简单的方法就是修改HEX文件,只要在HEX文件的结束记录前加入如下的记录就可以了:
:020000040FE00B
:0441FC0000000000BF
:0400000500001711CF
但这种方法在每次修改了源文件后都要手动的修改,为了让编译出的程序自动带这个记录,我们可以在源文件中定义常量来实现,以IAR环境为例,在源文件中定义如下:
#pragma location=(LOCKBITS_BASE + (127 << 2))
__root const uint32_t debug_lock_word = 0x0;
这也可以实现加密功能。另外,我们也可以在程序中对芯片加密,
MSC_Init();
ret = MSC_WriteWord((uint32_t *) (LOCKBITS_BASE + (127 << 2)), (void *) &userData,
sizeof(UserData_TypeDef));
MSC_Deinit();
最后一种方法也可以,但每次上电后都要判断一下再加密,没有前两个方法好,建议用前两个方法实现加密。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由John提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
【经验】如何基于J-FLASH对32位MCU EFM32 进行批量烧写?
Silicon Labs 32位MCU EFM32,以低功耗、高性能等著称,被广泛应用在电池供电等需要低功耗的领域。因应用广泛,在批量烧写上,也得到多家软件支持。本文将详细描述名基于SEGGER的J-Flash软件对EFM32烧写FLASH的方法及步骤。
【经验】32位MCU EFM32系列中断分组及优先级设置方式
Silicon Labs的32位MCU EFM32系列广泛应用于物联网、智能家居、无线抄表、智能照明、可穿戴设备等领域。中断是一个MCU中比较核心的部分,在实时性要求比较高、功耗低的场合经常需要中断的配合,中断优先级是根据中断事件的重要性和紧迫程度做出的一个设置,系统先响应优先级高的中断请求,再响应优先级低的中断请求。
【经验】Silicon Labs 32位MCU EFM32在静电测试时的故障排查
本文介绍Silicon Labs 32位MCU EFM32在做静电测试时,出现复位、死机情况时如何去查找原因
SILICON LABS 32-bit Microcontroller选型表
SILICON LABS 32位MCU选型,频率24MHz~80MHz,Flash存储4kB~2048kB,RAM存储2kB~512kB。
产品型号
|
品类
|
系列
|
Frequency(MHz)
|
Flash (kB)
|
RAM (kB)
|
Vdd min(V)
|
Vdd max(V)
|
Package Type
|
Package Size (mm)
|
Internal Osc.
|
Debug Interface
|
Cryptography
|
Dig I/O Pins
|
ADC 1
|
DAC
|
USB
|
Cap Sense
|
LCD
|
Temp Sensor
|
Timers (16-bit)
|
UART
|
USART
|
SPI
|
I2C
|
I2S
|
EMIF
|
RTC
|
Comparators
|
EFM32GG290F512-BGA112
|
32位MCU
|
EFM32 Giant Gecko
|
48
|
512
|
128
|
1.98
|
3.8
|
BGA112
|
10x10
|
±2%
|
ETM; SW
|
AES-128 AES-256
|
90
|
12-bit, 8-ch., 1 Msps
|
12-bit, 2 ch.
|
-
|
Cap Sense
|
-
|
Temp Sensor
|
4
|
7
|
3
|
3
|
2
|
1
|
0
|
RTC
|
2
|
选型表 - SILICON LABS 立即选型
【经验】Silicon Labs 32位MCU EFM32PG12复位引脚在SWD接口中的重要性
在使用Silicon Labs 32位MCU EFM32PG12时,通常要在PCBA上保留SWD接口以方便程序的下载、调试功能,但为了节省空间,有些用用户不接RESET引脚,这会有潜在的风险。借测试说明复位引脚在SWD接口中的重要性。
【应用】芯科单路电源1.98~3.8V的32位MCU助力消毒柜温湿度探头设计,主频24MHz
最近有一个客户是做温湿度探头的,最近他在找一款MCU是用来作为温湿度探头上面的主控,要求低功耗,性能好,在停止模式(EM3)下电流为0.5μA,32位的MCU,内置12位ADC和比较器,32kb的Flash和4kb的RAM,根据需求推荐芯科32位MCU EFM32ZG110F32-B-QFN24R,该MCU主频在24MHz。
【经验】EFM32系列低功耗32位MCU芯片加密详解
本文主要介绍以Silicon Labs EFM32系列低功耗32位MCU为核心的方案打造加密系统。
【经验】如何解决32位MCU程序移植到EFR32BG22中EM2模式下PWM 信号不能输出的问题?
为了缩短软件代码编写的时间,有工程师遇到将芯科32位MCU一些子程序移植到EFR32BG22程序中,在EM2模式下PWM信号不能输出的问题,询问软件工程软件具体移植过程,本文中间说明如何解决这个问题。
【应用】芯科科技提供内置16位ADC的低功耗32位MCU助力蓝牙耳机,主频高达80MHz
蓝牙耳机的系统设计需要选型一款MCU,要求尺寸小,效率高,待机功耗低。本文推荐SILICON LABS推出的低功耗32位MCU EFM32PG23B210F256IM48-C,主频高达80MHz,具有DSP指令和浮点单元,具有性能灵活的16位的数转换器。
【经验】32位MCU EFM32系列在Keil中接收SWO信息的配置步骤
Silicon Labs的32位MCU EFM32系列广泛应用于物联网、智能家居、无线抄表、智能照明、可穿戴设备等领域。在研发过程中会有很多繁杂的调试过程,本文主要介绍如何将Jlink的SWO接口上输出的调试信息在Keil中显示出来。
【技术】8位MCU与32位MCU的区别
对某类应用做产品定义和规划时,首要任务之一就是选择理想的处理器/控制器,但开发人员往往难以选择合适的MCU。本文是关于微控制器的技术文章,该文从基本差异、基准性能、应用适用性等角度详细地对8位和32位MCU进行了分析。
【经验】芯科科技32位MCU EFM32PG12 DAC输出引脚的分配设置
我们在使用Silicon Labs(芯科科技)32位MCU EFM32PG12的VDAC时会遇到不了解DAC的输出引脚要如何分配的问题,从EFM32PG12参考手册的VDAC章节很难找到VDAC输出引脚的分配。本文将介绍芯片的内部结构及输出功能的分配。
【经验】用STK3700评估板采集EFM32GG低功耗32位MCU外部频率信号完整周期的经验
在调试EFM32GG低功耗32位MCU,想测试外部频率信号的周期,范例程序测试的是按键按下的时间,也就是对应的是半个周期,不是完整的周期信号。针对范例程序做了如下修改(修改部分用红色字体标识),实现了用STK3700评估板对外部频率信号周期时间的计算
【经验】EFM32系列32位MCU常量定位问题的解决方法
Silicon Labs的32位MCU EFM32系列具有低功耗、集成度高的优势,在电池供电类的应用中具有非常明显的优势。开发EFM32的软件一般都是在Simplicty Studio软件下完成。介绍EFM32程序中的常量定位到FLASH的固定地址的方法。
【经验】如何使用芯科科技EFM32PG12系列32位MCU出厂默认引导程序
芯科科技EFM32PG12系列32位MCU在出厂时已经烧录了基于UART的引导程序,这个引导程序位于芯片的BOOTLOADER区,不占用用户FLASH空间。本文将介绍EFM32PG12系列32位MCU出厂默认引导程序的使用方法。
电子商城
现货市场
服务
可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。
最小起订量: 1000 提交需求>
拥有IC烧录机20余款,100余台设备,可以烧录各种封装的IC;可烧录MCU、FLASH、EMMC、NAND FLASH、EPROM等各类型芯片,支持WIFI/BT模组PCBA烧录、测试。
最小起订量: 1 提交需求>
登录 | 立即注册
提交评论