p13692166934 发表于 2018-9-21 09:06:19

ADS的TSM16c触摸按键为什么中断引脚检测不到低电平,只输出1

模块为TSM16c的电容式触摸模组,开发板使用的是stm32最小系统开发板,我在开发板,模块的TSM16C的中断输出引脚检测一直检测的是高电平,这是怎回事,我是用中断检测的,代码void exti0_init(void){
        //打开PA0时钟
        RCC->AHBENR |=0x01<<17;
        //配置浮空输入模式
        GPIOA->MODER &=~(0x03<<0);
        //
        GPIOA->PUPDR |=0x01<<0;
       
        //打开系统时钟
        RCC->APB2ENR |=0x01<<0;
        //配置输入引脚 映射
        SYSCFG->EXTICR &=~(0x0f<<0);
        //开放中断
        EXTI->IMR |=0x01<<0;
        //屏蔽事件
        EXTI->EMR &=~(0x01<<0);
        //配置触发方式
        EXTI->FTSR |=0x01<<0;//允许上升沿触发方式
        EXTI->RTSR &=~(0x01<<0);//禁止下降沿触发方式


        //NVIC中断使能
        NVIC_EnableIRQ(EXTI0_1_IRQn);

}

wenyangzeng 发表于 2018-9-21 10:13:06

楼主的外部中断使能是那个版本的:NVIC_EnableIRQ(EXTI0_1_IRQn);?
0#中断与1#中断不是同一个中断向量
貌似0#中断是这样设置的:
NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQn;

p13692166934 发表于 2018-9-21 11:01:21

wenyangzeng 发表于 2018-9-21 10:13
楼主的外部中断使能是那个版本的:NVIC_EnableIRQ(EXTI0_1_IRQn);?
0#中断与1#中断不是同一个中断向量
貌 ...

我用的是stm32f030的,例程操作F407,中断能进去,不管也不知道是怎么进去的,我那示波器去测电容按键的IO口发现按下也有波形,但是中断输出就是一直高电平,是不是这个芯片要唤醒什么的,还是说软件要做其他操作

p13692166934 发表于 2018-9-21 11:13:06

好了需要是外部复位,“重置实现“:

TSM16C具有内部数据锁存器,所以这些锁存器的初始状态必须由外部复位。

在正常操作开始之前复位脉冲。复位脉冲可由主机MCU控制

直接或其他复位装置。如果不是,电路应如下图所示。重置

脉冲必须具有大约几毫秒的高脉冲持续时间来覆盖功率VDD上升时间。这个

推荐的RST和C RST值为330KΩ和100NF。”这玩意会影响中断输出吗,这么坑,全是英文,一句一句放在百度翻译:@

p13692166934 发表于 2018-9-21 11:54:57

这个初始化是说要操作Ctrl1,Ctrl2那我保持0x00对中断输出没影响吧
页: [1]
查看完整版本: ADS的TSM16c触摸按键为什么中断引脚检测不到低电平,只输出1