目录
1. 实验目标
本实验主要通过对软件中断的配置及编程,使用中断的方式软件触发中断控制LED3灯的功能。
2.实验准备
硬件搭建:ZW-HC32F460-BZ标准版开发板1套
软件搭建:MDK5.22
3. 硬件原理
LED原理图详见第三章。
4. 驱动代码
软件中断核心函数主要就三个:
- SWI_Init():软件中断功能初始化
- SWI00_Callback():软件中断回调函数
- SWI_Enable():软件中断触发函数
【SWI初始化】
函数原型: void SWI_Init(const stc_swi_config_t *pstcSwiConfig)
功能说明: SWI灯初始化
输入参数: pstcSwiConfig:初始化结构体,详见stc_swi_config_t。
输出参数: 无
void SWI_Init(const stc_swi_config_t *pstcSwiConfig)
{
uint8_t u8SWI_IRQ = 0u, i;
stc_irq_regi_conf_t stcIrqRegiConf;
/* configure structure initialization */
MEM_ZERO_STRUCT(stcIrqRegiConf);
for (i = 0u; i< 32u; i++)