eryueniao 发表于 2014-9-25 11:18:34

求助 kl05 GPIO管脚问题(已解决)

本帖最后由 FSL_TICS_ZP 于 2014-10-8 16:00 编辑

IO_PE_CONFIG(GPIO_WAKE_UP_PIN,GPIO_WAKE_UP_NUM,1);        //PTB2                                                                                                                                               
                        IO_PS_CONFIG(GPIO_WAKE_UP_PIN,GPIO_WAKE_UP_NUM,1);
                        GPIO_DDR_INPUT(GPIO_WAKE_UP_PIN,GPIO_WAKE_UP_NUM);
                        //PORTA_PCR7 = PORT_PCR_MUX(1) | PORT_PCR_IRQC(10);//
                        IO_PE_CONFIG(GPIO_VOICE_SIGN_PIN,GPIO_VOICE_SIGN_NUM,1);        //PTA7               
                                                执行到此处就跳到B   .                                                                                                                               
                        IO_PS_CONFIG(GPIO_VOICE_SIGN_PIN,GPIO_VOICE_SIGN_NUM,1);
                        GPIO_DDR_INPUT(GPIO_VOICE_SIGN_PIN,GPIO_VOICE_SIGN_NUM);

void PORTA_IRQHandler(void)                //yp   zd
{
    PORTA_ISFR |= PORT_ISFR_ISF(0);/* 清除中断标志位 */
               
}

HardFault_Handler\
                PROC
                EXPORTHardFault_Handler         
                B       .
                ENDP
设置PTB2就可以,一到PTA7就跳到B.    怎么回事

eryueniao 发表于 2014-9-25 15:07:34

本帖最后由 eryueniao 于 2014-9-25 15:08 编辑

SIM_SCGC5 = SIM_SCGC5_PORTB_MASK;
是这条语句的事,不知道这条语句是什么意思

捷恩斯威科技 发表于 2014-9-25 17:01:33

这个是ARM处理器结构特点,对于ARM处理器外设如果需要使用,必须先开启对应设备的时钟。对于大部分外设都是这种结构。“SIM_SCGC5 = SIM_SCGC5_PORTB_MASK”就是打开PORTB时钟,这样才能操作PORTB。如果要使用PORTA,则首先应该打开PORTA的时钟。SIM_SCGC5 |= SIM_SCGC5_PORTA_MASK; 如果PORTA和PORTB都要使用,则执行下面语句:SIM_SCGC5 |= SIM_SCGC5_PORTB_MASK|SIM_SCGC5_PORTA_MASK

eryueniao 发表于 2014-9-25 20:08:42

捷恩斯威科技 发表于 2014-9-25 17:01
这个是ARM处理器结构特点,对于ARM处理器外设如果需要使用,必须先开启对应设备的时钟。对于大部分外设都 ...

嗯嗯学习了,要是关断PTA时钟呢
SIM_SCGC5 &= ~SIM_SCGC5_PORTA_MASK;   是这样吗

FSL_TICS_ZP 发表于 2014-9-26 09:00:05

eryueniao 发表于 2014-9-25 20:08
嗯嗯学习了,要是关断PTA时钟呢
SIM_SCGC5 &= ~SIM_SCGC5_PORTA_MASK;   是这样吗

对的,是正解!

eryueniao 发表于 2014-9-26 21:18:01

FSL_TICS_ZP 发表于 2014-9-26 09:00
对的,是正解!

哈哈    谢了                                 

地主阿山 发表于 2014-10-5 20:26:13

操作模块寄存器之前都要先打开模块对应时钟门clcok gate,否则就会引起hardfault中断。

eryueniao 发表于 2014-10-7 10:55:46

地主阿山 发表于 2014-10-5 20:26
操作模块寄存器之前都要先打开模块对应时钟门clcok gate,否则就会引起hardfault中断。 ...

嗯嗯,学习了                                                               

abszy 发表于 2014-10-7 14:12:54

学习了 对arm的架构还是不太熟悉

dsp56789 发表于 2014-10-7 14:54:07

路过,顶一下
页: [1]
查看完整版本: 求助 kl05 GPIO管脚问题(已解决)