TM4C123GH6PM一运行程序就进入FaultISR()

[复制链接]
1952|5
 楼主| wangll1037 发表于 2016-6-12 15:24 | 显示全部楼层 |阅读模式
用TM4C123GH6PM编写的交流异步电机矢量控制程序,一运行程序就进入FaultISR()。经检查发现可能是QEI中断设置问题,将QEIIntEnable(QEI0_BASE,QEI_INTTIMER);注释掉就不会进入FaultISR(),怎么设置QEI中断才不会进入FaultISR(),QEI模块程序如下:
/*
* qei_ctrl.c
*
*  Created on: 2016-4-21
*      Author: wll
*/

#include <stdint.h>
#include <stdbool.h>
#include "IQmath/IQmathLib.h"
#include "TM4C123G_DEVICE.h"
#include "Parameters_Setting.h"
#include "main.h"
#include "qei_ctrl.h"

void
QEI0IntHandler(void)
{
//QEI中断清零
QEIIntClear(QEI0_BASE, QEI_INTTIMER);
//计算转速
SpeedFbk = (SysCtlClockGet()*QEIVelocityGet(QEI1_BASE)*60)/(10000*4096);
//计算电机的旋转方向
speedDirectionGet=QEIDirectionGet(QEI1_BASE);

}


void Init_QEI(void)
{
QEIDisable(QEI0_BASE);
SysCtlDelay(200);

GPIOPinTypeQEI(GPIO_PORTD_BASE, GPIO_PIN_6);
GPIOPinTypeQEI(GPIO_PORTD_BASE, GPIO_PIN_7);
GPIOPinTypeQEI(GPIO_PORTF_BASE, GPIO_PIN_4);
//指定对应的GPIO引脚为对应的QEP信号输入引脚
GPIOPinConfigure(GPIO_PD6_PHA0);
GPIOPinConfigure(GPIO_PD7_PHB0);
GPIOPinConfigure(GPIO_PF4_IDX0);

//指定引脚输入输出方式
GPIODirModeSet(GPIO_PORTD_BASE, GPIO_PIN_6|GPIO_PIN_7, GPIO_DIR_MODE_HW);


//配置QEI对应引脚输入电平及方式
GPIOPadConfigSet(GPIO_PORTD_BASE, GPIO_PIN_6,
                                  GPIO_STRENGTH_4MA,GPIO_PIN_TYPE_STD);
GPIOPadConfigSet(GPIO_PORTF_BASE, GPIO_PIN_7,
                                  GPIO_STRENGTH_4MA,GPIO_PIN_TYPE_STD);

GPIODirModeSet(GPIO_PORTF_BASE, GPIO_PIN_4, GPIO_DIR_MODE_HW);

//配置QEI模块为AB两路正交编码信号双边沿捕获,索引脉冲不对位置进行复位,无相位交换,编码器为1024线
QEIConfigure(QEI0_BASE,(QEI_CONFIG_CAPTURE_A_B | QEI_CONFIG_NO_RESET |
                               QEI_CONFIG_CLOCK_DIR | QEI_CONFIG_NO_SWAP), 0);

//设置速度计算定时器时中频率为10KHz
QEIVelocityConfigure(QEI0_BASE, QEI_VELDIV_1, SysCtlClockGet()/5000);

//使能速度计算,使能QEI
QEIEnable(QEI0_BASE);
QEIVelocityEnable(QEI0_BASE);

//速度计时器计时完成时触发中断
QEIIntEnable(QEI0_BASE,QEI_INTTIMER);
IntEnable(INT_QEI0);

}
有用TM4C123GH6PM做交流异步电机矢量控制的求提供代码参考一下,谢谢!

dirtwillfly 发表于 2016-6-12 17:14 | 显示全部楼层
貌似官网还真没有这个mcu的矢量控制例程
dirtwillfly 发表于 2016-6-12 17:15 | 显示全部楼层
@xyz549040622  帮忙看一下
 楼主| wangll1037 发表于 2016-6-12 19:27 | 显示全部楼层
你给的邮箱不对啊!
xyz549040622 发表于 2016-6-13 08:18 | 显示全部楼层
PD7好像是个NMI引脚,操作的时候需要先解锁的吧。你把这个IO单独驱动个LED试试
Thor9 发表于 2016-6-13 21:38 | 显示全部楼层
关于QEI中断设置,芯片手册上怎么描述的呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部