如何使用PKC驱动
PKC驱动的使用方法如下:
- 声明一个pkc_handle_t句柄结构体变量,例如pkc_handle_t pkc_handle。
- 重写hal_pkc_msp_init()以初始化PKC底层资源:
- 可调用__HAL_PKC_RESET()复位PKC模块。
- 如果开发者要使用中断方式的API,则需通过调用相关的NVIC接口来配置:
- 调用hal_nvic_set_priority()配置PKC中断优先级。
- 调用hal_nvic_enable_irq()使能PKC的NVIC中断。
- 配置pkc_handle中init初始化结构体中的数据位宽、安全模式、注册随机数产生函数和ECC椭圆参数等。
- 调用hal_pkc_init()配置PKC寄存器,配置过程中hal_pkc_init()会自动调用开发者重写的hal_pkc_msp_init()函数初始化PKC所使用的NVIC中断等底层资源。
- 开发者可根据实际应用调用相应的API完成相应的数学运算,PKC的HAL驱动提供轮询及中断两种运算方式。