【元能芯24V全集成电机专用开发板】+元能定时器PWM输出编程调试

安装完keil配套pack包之后,使用stlink进行连接,显示如下截图:

213832lavhdhdfcj4amvzt

因为电机库被封装,所以转变思路,希望自己能在实例程序上编写定时器输出PWM的程序;

这里参考了一下工程文件:

213832dqazbboz6d11ohb1

但是这个文件本身没有编写中断函数于是又打开另一个工程,学习元能芯的中断函数是怎么实现的:

213832jn3s7vx900q3rnpz

在main中添加了这样一段代码

void NVIC_Config(void)

{NVIC_InitTypeDef NVIC_InitStructure;

  NVIC_InitStructure.NVIC_IRQChannel = TIM1_UP_TRG_COM_IRQn;

    NVIC_InitStructure.NVIC_IRQChannelPriority = 0;

    NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;

    NVIC_Init(&NVIC_InitStructure);

}其中标红的标识符是从一下文件中找的中断函数编号,和stm32的固件库非常相似,只是文件名不同;

213839o27nweqqlem7u4ew

/*!< TIM1  Update, Trigger and Commutation Interrupt   */从这段注释可以看出是定时器T1的更新中断;那么还要找到对应的中断函数名;和stm32固件库类似,从启动代码中去查找:

213839lgy5z6p006sjp2cm

中断函数一般放在myg0002_it.c文件中,要注意变量的定义和函数声明引用,不然很容易报错;这些函数定义的位置也和标准库类似,很容易找到;

213839ftokrsors5z5tajg

模板工程没有打开定时器中断,所以还要在定时器设置位置添加语句,打开更新中断:

213840iomp003zuv0bfeyf

因为工程本身已经设置了定时器等,所以添加这些代码再进行调试就完成了PD4引脚输出PWM的功能,可以在视频中看到调试界面的CCR4寄存器不断变化,输出的PWM在中断函数中不断修改,这个测评说明了元能芯的软件开发基本类似与标准库,有基础的话,使用该芯片很容易。