STM32L5trustzone使用(四)
访问权限说明
stm32l5trustzone开启时,访问权限如下:
1、安全空间的代码可以访问安全和非安全的外设。
2、非安全空间的代码不可访问安全的外设。
3、安全空间的代码可以随意调用非安全空间的代码。
4、非安全空间的代码只能调用安全空间允许的代码。
安全空间的代码调用非安全空间的代码。
安全区的代码可以访问非安全区的代码,这里通过函数指针(funcptr_NS)以绝对地址访问的方式调用非安全区的函数。
本次操作如下:
1、将PA9(LED灯)初始化在non-trustzone里。
2、在non-trustzone工程的main.c里添加翻转PA9(LED灯)的函数 change_led_red。
3、在non-trustzone工程的main.h里以绝对地址方式申明该函数,这里将函数指定到0x8050004地址上。
4、把外部中断EXTI_LINE_13初始化到trustzone里,利用按钮触发。