【经验】使用Simplicity Studio开发工具时,如何设置常量存放的起始地址?

2017-11-16 世强 Carol

Simplicity StudioSilicon Labs公司免费提供给客户用于MCUWireless SOC等平台的开发工具,其支持C8051F系列、EFM8系列、EFM32系列、EZR32系列以及EFR32系列器件。其中8位单片机C8051F系列和EFM8系列使用Keil编译器,Silicon Labs提供客户正版免费的Keil编译器,32位单片机EFM32系列、EZR32系列以及EFR32系列使用GCC编译器,当然32位单片机也可以支持第三方的IAR编译器


工程师在开发单片机产品时,经常会遇到需要将工程中定义的常量存储到Flash的指定地址,这样方便工程读取该常量的内容。本文给大家介绍使用Simplicity IDE时,如何在工程中设置常量的起始地址?我们以EFM8BB的工程为例进行操作,EFM8工程使用Keil编译器。


在EFM8BB的工程中任意.C文件中增加常量的定义,此案例中假设常量定义如下,定义在uart.c文件中。

code const uint16_t Table[256] =

{

    0x0000,0x1021, 0x2042, 0x3063, 0x4084, 0x50A5, 0x60C6, 0x70E7,

   0x8108, 0x9129, 0xA14A, 0xB16B, 0xC18C, 0xD1AD, 0xE1CE, 0xF1EF,

    0x1231, 0x0210, 0x3273, 0x2252, 0x52B5, 0x4294, 0x72F7, 0x62D6,

    0x9339, 0x8318, 0xB37B, 0xA35A, 0xD3BD, 0xC39C, 0xF3FF, 0xE3DE,

    0x2462, 0x3443, 0x0420, 0x1401, 0x64E6, 0x74C7, 0x44A4, 0x5485,

    0xA56A, 0xB54B, 0x8528, 0x9509, 0xE5EE, 0xF5CF, 0xC5AC, 0xD58D,

    0x3653, 0x2672, 0x1611, 0x0630, 0x76D7, 0x66F6, 0x5695, 0x46B4,

    0xB75B, 0xA77A, 0x9719, 0x8738, 0xF7DF, 0xE7FE, 0xD79D, 0xC7BC,

    0x48C4, 0x58E5, 0x6886, 0x78A7, 0x0840, 0x1861, 0x2802, 0x3823,

    0xC9CC, 0xD9ED, 0xE98E, 0xF9AF, 0x8948, 0x9969, 0xA90A, 0xB92B,

    0x5AF5, 0x4AD4, 0x7AB7, 0x6A96, 0x1A71, 0x0A50, 0x3A33, 0x2A12,

    0xDBFD, 0xCBDC, 0xFBBF, 0xEB9E, 0x9B79, 0x8B58, 0xBB3B, 0xAB1A,

    0x6CA6, 0x7C87, 0x4CE4, 0x5CC5, 0x2C22, 0x3C03, 0x0C60, 0x1C41,

    0xEDAE, 0xFD8F, 0xCDEC, 0xDDCD, 0xAD2A, 0xBD0B, 0x8D68, 0x9D49,

    0x7E97, 0x6EB6, 0x5ED5, 0x4EF4, 0x3E13, 0x2E32, 0x1E51, 0x0E70,

    0xFF9F, 0xEFBE, 0xDFDD, 0xCFFC, 0xBF1B, 0xAF3A, 0x9F59, 0x8F78,

    0x9188, 0x81A9, 0xB1CA, 0xA1EB, 0xD10C, 0xC12D, 0xF14E, 0xE16F,

    0x1080, 0x00A1, 0x30C2, 0x20E3, 0x5004, 0x4025, 0x7046, 0x6067,

    0x83B9, 0x9398, 0xA3FB, 0xB3DA, 0xC33D, 0xD31C, 0xE37F, 0xF35E,

    0x02B1, 0x1290, 0x22F3, 0x32D2, 0x4235, 0x5214, 0x6277, 0x7256,

    0xB5EA, 0xA5CB, 0x95A8, 0x8589, 0xF56E, 0xE54F, 0xD52C, 0xC50D,

    0x34E2, 0x24C3, 0x14A0, 0x0481, 0x7466, 0x6447, 0x5424, 0x4405,

    0xA7DB, 0xB7FA, 0x8799, 0x97B8, 0xE75F, 0xF77E, 0xC71D, 0xD73C,

    0x26D3, 0x36F2, 0x0691, 0x16B0, 0x6657, 0x7676, 0x4615, 0x5634,

    0xD94C, 0xC96D, 0xF90E, 0xE92F, 0x99C8, 0x89E9, 0xB98A, 0xA9AB,

    0x5844, 0x4865, 0x7806, 0x6827, 0x18C0, 0x08E1, 0x3882, 0x28A3,

    0xCB7D, 0xDB5C, 0xEB3F, 0xFB1E, 0x8BF9, 0x9BD8, 0xABBB, 0xBB9A,

    0x4A75, 0x5A54, 0x6A37, 0x7A16, 0x0AF1, 0x1AD0, 0x2AB3, 0x3A92,

    0xFD2E, 0xED0F, 0xDD6C, 0xCD4D, 0xBDAA, 0xAD8B, 0x9DE8, 0x8DC9,

    0x7C26, 0x6C07, 0x5C64, 0x4C45, 0x3CA2, 0x2C83, 0x1CE0, 0x0CC1,

    0xEF1F, 0xFF3E, 0xCF5D, 0xDF7C, 0xAF9B, 0xBFBA, 0x8FD9, 0x9FF8,

    0x6E17, 0x7E36, 0x4E55, 0x5E74, 0x2E93, 0x3EB2, 0x0ED1, 0x1EF0

};


确认工程可以编译成功后,选中工程,鼠标右键选择Properties,在跳出的对话框中选择C/C++ Build -> Settings -> Tool Settings -> General Settings,设置如下:



然后,选择C/C++ Build -> Settings -> Tool Settings -> Keil 8051 Linker -> Miscellaneous,在Additional Flags一栏输入关键字CODE(?CO?UART(0x1E00))。如下图所以:

 


这样编译后,Table常量存放Flash的起始地址是0x1E00,通过编译后生成的.m51文件可以看到结果如下:

 



世强元件电商版权所有,转载请注明来源和链接。

相关服务

  • +1 赞 0
  • 评论 1

相关推荐

型号 描述 价格(含增值税)

Mixed-Signal MCU

C8051F39x、C8051F392系列

8051 50 MHz 16 kB LFO 8-bit MCU

QFN-20

选型推荐

供货保障

原厂认证

世强代理

现货1,435,174

最小包装量1,500

价格¥  9.5347

EEPROM Mixed-Signal MCU

C8051F336系列

16KB,10ADC,10DAC, 768Ram,20Pin MCU (lead free)

QFN-20

选型推荐

供货保障

原厂认证

世强代理

现货724,176

最小包装量1,500

价格¥  28.5124

Mixed-Signal MCU

C8051F39x、C8051F396系列

8051 50 MHz 8 kB LFO 8-bit MCU.

QFN-20

选型推荐

供货保障

原厂认证

世强代理

现货367,173

最小包装量1,500

价格¥  8.4346

Mighty Gecko SoC

EFR32MG13P732F512GM48、EFR32MG13系列

Mighty Gecko SoC QFN48 2.4 G 19 dB mesh multi-protocol 512 kB 64 kB (RAM) 31GPIO

QFN48

选型推荐

供货保障

原厂认证

世强代理

现货146,886

最小包装量2,500

价格¥  54.1828

Wireless SoC

EFR32MG21系列

Mighty Gecko, QFN32, 2.4G, 20dB, mesh multiprotocol, 1024kB, 96kB(RAM), 20 GPIO

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货19,916

最小包装量2,500

价格¥  42.6311

8位MCU

EFM8 Laser Bee Family、 EFM8LB1、 EFM8LB11F、 EFM8LB11F16ES0系列

16kB flash, 1.25 kB RAM, 12b ADC, 2x DACs, ±3°C temp sensor, SMBus bootloader

QFN32

选型推荐

供货保障

原厂认证

世强代理

即将到货495,000

最小包装量1,500

价格¥  6.1426

8位MCU

EFM8 Laser Bee Family、 EFM8LB1、 EFM8LB12F、 EFM8LB12F32ES0系列

32kB flash, 2.25 kB RAM, 14b ADC, 4x DACs, ±3°C temp sensor, SMBus bootloader

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货37,391

最小包装量2,500

价格¥  8.2512

Mighty Gecko Multiprotocol Wireless SoC

EFR32MG21A系列

10 dBm @ 2.4 GHz

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货36,850

最小包装量2,500

价格¥  35.2051

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8LB1x-QFN24、EFM8系列

16kB flash, 1.25 kB RAM, 12b ADC, ±3°C temp sensor, SMBus bootloader

QFN24

选型推荐

供货保障

原厂认证

世强代理

即将到货411,000

最小包装量1,500

价格¥  5.7759

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN32系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货67,500

最小包装量2,500

价格¥  8.2512

Mighty Gecko Multiprotocol Wireless SoC

EFR32MG21系列

20 dBm @ 2.4 GHz

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货59,850

最小包装量2,500

价格¥  36.0302

32位MCU

EFM32、 EFM32ZG、 EFM32ZG210、 EFM32ZG210F32、 EFM32 Zero Gecko Family系列

32k Flash, 4k RAM, ADC, AES

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货30,085

最小包装量1,000

价格¥  10.7266

Mixed-Signal MCU

C8051F39x、C8051F390系列

8051 50 MHz 16 kB 8-bit MCU

QFN-24

选型推荐

供货保障

原厂认证

世强代理

现货16,363

最小包装量1,500

价格¥  9.6264

32位MCU

EFM32、 EFM32ZG、 EFM32ZG110、 EFM32ZG110F32、 EFM32 Zero Gecko Family系列

32k Flash, 4k RAM, ADC, AES

QFN24

选型推荐

供货保障

原厂认证

世强代理

现货15,545

最小包装量1,000

价格¥  8.4346

8位MCU

EFM8 Laser Bee Family、 EFM8LB1、 EFM8LB12F、 EFM8LB12F32ES0系列

32kB flash, 2.25 kB RAM, 14b ADC, 4x DACs, ±3°C temp sensor, SMBus bootloader

QFN24

选型推荐

供货保障

原厂认证

世强代理

即将到货171,000

最小包装量1,500

价格¥  7.8845

Mighty Gecko Multi-Protocol Wireless SoC

EFR32MG13系列

Mighty Gecko SoC QFN48 2.4 G 19 dB mesh multi-protocol 512 kB 64 kB (RAM) 31GPIO, +125C

QFN48

供货保障

原厂认证

世强代理

现货30,000

最小包装量2,500

价格¥  56.3831

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8LB1x-QFN24、EFM8系列

32kB flash, 2.25 kB RAM, 14b ADC, 2x DACs, ±3°C temp sensor, SMBus bootloader

QFN24

选型推荐

供货保障

原厂认证

世强代理

即将到货2,643,000

最小包装量1,500

价格¥  7.3344

32位MCU

EFM32、 EFM32ZG、 EFM32ZG222、 EFM32ZG222F32、 EFM32 Zero Gecko Family系列

32k Flash, 4k RAM, ADC, No AES (Avail Sep)

TQFP48

选型推荐

供货保障

原厂认证

世强代理

现货13,890

最小包装量1,000

价格¥  11.5517

Mixed-Signal MCU

C8051F39x、C8051F39系列

8051 50 MHz 16 kB LFO 8-bit MCU

QFN-24

选型推荐

供货保障

原厂认证

世强代理

现货22,365

最小包装量1,500

价格¥  8.6179

Blue Gecko Bluetooth 低能耗 SoC

EFR32BG13系列

P: 2.4,512kB,BLE,SRI,48P,10

QFN48

选型推荐

供货保障

原厂认证

世强代理

现货19,002

最小包装量2,500

价格¥  45.0148

Blue Gecko Bluetooth 低能耗 SoC 产品

EFR32BG13、Blue Gecko Bluetooth®系列

Blue Gecko BLE Soc QFN48 2.4 G 10 dB BLE/Proprietary 512 kB 64 kB(RAM) 31GPIO

选型推荐

供货保障

原厂认证

世强代理

现货17,500

最小包装量2,500

价格¥  42.8145

8位MCU

EFM8、EFM8UB2、EFM8UB20F64G-B、EFM8UB20F64G-B-QFP48系列

8051 48 MHz 64 kB flash 4 kB RAM 8-bit Universal Bee MCU

QFP48

选型推荐

供货保障

原厂认证

世强代理

现货16,900

最小包装量500

价格¥  11.9184

32位MCU

EFM32 Tiny Gecko Family、 EFM32、 EFM32TG、 EFM32TG210、 EFM32TG210F32系列

32k Flash, 4k RAM, AES, 3 Op-Amps

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货5,166

最小包装量1,000

价格¥  14.0270

32b Wireless MCU

供货保障

原厂认证

世强代理

现货12,000

最小包装量2,000

价格¥  24.7536

8位MCU

EFM8 Busy Bee、EFM8BB20系列

8-bit C8051 core with 50 MHz;Up to 16 multifunction

BGA120

EFM8 Busy Bee、EFM8BB20

选型推荐

供货保障

原厂认证

世强代理

现货7,500

最小包装量1,500

价格¥  4.3090

32位MCU

EFM32、 EFM32ZG、 EFM32ZG110、 EFM32ZG110F16、 EFM32 Zero Gecko Family系列

16k Flash, 4k RAM, ADC, AES

QFN24

供货保障

原厂认证

世强代理

现货6,000

最小包装量1,000

价格¥  7.9762

Blue Gecko Wireless SoC

EFR32BG21系列

Blue Gecko, QFN32, 2.4G, 10dB, Bluetooth 5.1, 768kB, 64kB(RAM), 20 GPIO

QFN32

选型推荐

供货保障

原厂认证

世强代理

现货5,000

最小包装量2,500

价格¥  26.1288

EFR32MG13系列

选型推荐

供货保障

原厂认证

世强代理

现货5,000

最小包装量2,500

价格¥  48.3153

8位MCU

EFM8 Laser Bee、EFM8LB1、EFM8、EFM8LB1x-QFN24系列

8051,72 MHz, Up to 64 kB flash,Up to 4352 bytes RAM(including 256 bytes standard 8051 RAM and 4096 bytes on-chip XRAM),8-bit Laser Bee MCU

QFN24

选型推荐

供货保障

原厂认证

世强代理

现货4,900

最小包装量1,500

价格¥  7.8845

EFR32BG21系列

芯片

选型推荐

供货保障

原厂认证

世强代理

现货4,865

最小包装量2,500

价格¥  23.5617

本网站所有内容禁止转载,否则追究法律责任!

评论(1

   |   

提交评论

全部评论

  • Lin Lv3. 高级工程师 2018-10-18
    学习了
没有更多评论了

搞研发 找元件
下载世强元件电商APP