STMCU小助手
发布时间:2022-1-3 10:00
|
STM32L552使用前提配置- I- ~$ b" o5 Q* g 本次学习的开发板为NUCLEO_L552ZE_Q,使用trustzone功能,点亮LED灯,代码保存至trustzone里。 前提配置如下:: e& \: P7 s; g; D 1、下载STM32CubeProgrammer,打开该软件,点击右侧connect,连接开发板。
0 B5 _1 \9 j2 B, l 2、点击左侧OB按钮,点击User Configuration选项,将 TZEN 选项打钩,再点击apply按钮。 ' ^6 f- b5 x! ^4 _6 ?
$ z) P2 T9 r7 v3 @: F 3、在Secure Area 1进行如下配置:4 ~5 X& o0 F% T; o, ~4 a
: _3 U' t+ h4 x/ J3 X 4、在Secure Area 2进行如下配置:' }! ?1 I! V5 { d% e
5、最后点击apply,将配置保存进开发板里。 cubemx初始化 1、点击yes,使能trustzone功能。
2、配置系统时钟,这里使用HSI+PLL模式。) g9 Y S* p9 I2 f3 i- [ 2 G; b: Q4 M0 B
3、开发板led灯引脚为PC7,这里选择把PC7配置成GPIO输出模式,这里切记要把PC7的Pin context assignement配置成cortexm33 secure或者non secure模式,若配置成free,则不能成功初始化。7 C1 A. @1 D n; R$ V
4、cubemx配置好后,生成工程。
& H% x8 l1 |4 ?+ f8 J keil程序配置& o. E$ l: G) Q 1、keil工程介绍:1 r: D5 s% p1 W/ ?$ @: k, E6 F- N cubemx生成的文件里包括两个工程:一个为secure工程,另一个为non-secure工程。两个工程必须先后编译,先编译secure工程,再编译non-secure。下载程序时,先下载non-secure的工程,后下载secure工程。# v7 n( A8 f3 b- F- |+ o- F4 A. N
6 A8 |/ }% S2 B* |" ` 2、secure工程配置 (一)、程序下载地址配置,本次使用采用官方推荐的空间配置,即256krom和96kram给trustzone。在rom地址配置为0xC000000,256k的大小为0x40000;ram地址配置为0x30000000,96k的大小为0x18000。4 r* K7 V Z' r! I
(二)、下载算法配置,这里选择secure_flash。
(三)、GPIO初始化程序。这里可以发现,cubemx在secure工程的main文件里生成了PC7的初始化代码,验证了之前cubemx里的Pin context assignement配置。 ; f! c- {$ L1 G( Y+ n7 g3 q
7 x# g4 p, P/ Z, [2 ^3 g- B 3、non-secure工程配置 (一)、程序下载地址配置,本次使用采用官方推荐的空间配置,即256krom和160kram给non-trustzone。在rom地址配置为0x8040000,256k的大小为0x40000;ram地址配置为0x20018000,160k的大小为0x28000。 , x* L3 ~ {- ?' |4 R
(二)、下载算法配置,这里选择Nsecure_flash。
- w8 U& M: Y* a$ @( Z 程序编译和下载; e% N9 ]" ~! Q2 ]( j4 x 1、程序编译:! s; U2 p+ I: z! I# i7 t 包含trustzone的工程里需要先编译trustzone工程,之后再编译non-trustzone工程。因为在trustzone机制里,non-trust可以使用trust允许的api函数,为保证trust开放的函数能在non-trustzone工程里被准确编译,所以必须先编译trustzone工程。 2、程序下载$ O! o6 p) F3 h% p2 }- t2 t 这里建议先下载non-trustzone工程,再下载trustzone工程。2 @1 G6 q3 @* U, B1 D6 T0 l$ n R |
STM32L562DK探索板——串口通讯测试成功
STM32L562DK探索板——再试串口通讯仍不成
STM32L562DK探索板——串口通讯的再测试
STM32L562DK探索板——串口通讯的测试
STM32L562DK探索板——运动传感器测试
STM32L562DK探索板——继续深入了解Audio Play的工作流程
STM32L562DK探索板——触摸菜单实验之触摸测试
STM32L562DK探索板——触摸菜单实验之LED闪烁
STM32L562DK探索板——Audio Play的再了解
STM32L562DK探索板——测试小结
微信公众号
手机版