[STM8] STM8 PD7的外部中断问题

[复制链接]
6849|7
 楼主| jgphu 发表于 2010-10-27 18:16 | 显示全部楼层 |阅读模式
看了SPEC,发现STM8 的PD7的端口定义为TLI ,这个引脚不能设为边沿触发中断,
但是我看了中断那个章节,发现只有低电平中断触发,没有高电平中断触发。

这样看来如果用PD7口作外部中断引脚,如需要高,低电平中断实现了了???
 楼主| jgphu 发表于 2010-10-28 09:44 | 显示全部楼层
哪位大虾解释一下!
8bit_MCU 发表于 2010-10-28 11:52 | 显示全部楼层
8bit_MCU 发表于 2010-10-28 11:56 | 显示全部楼层
不是不能配置,是要单独配置

可以在EXTI_CR2寄存器的TLIS位配置,可以选择上升沿或者下降沿
 楼主| jgphu 发表于 2010-10-28 20:33 | 显示全部楼层
此位要在PD7外部中断禁止才能写入,那还能外部中断吗?
1.jpg
香水城 发表于 2010-10-28 22:16 | 显示全部楼层
外部中断禁止时写入,写入后再使能外部中断。也就是说,不能再使能了外部中断的情况下,修改这一位。
 楼主| jgphu 发表于 2010-10-29 10:30 | 显示全部楼层
我的程序是这样的: 1、定义PD7下降沿触发中断 PD7_CR2 = 0x80;  EXTI_CR2 = 0x00;
                            2、进入TLI中断服务程序后,我要下一个触发中断为上升沿,所以我先PD7_CR2 = 0x00,  EXTI_CR2 = 0x04;  
                            写了这两步后,程序只进入一次中断服务程序,就再也不能进中断服务程序,如果没有第二步,就每次都能进入TLI中断服务程序。
这是怎么回事,我是按照SPEC,先禁止PD7外部中断,再进行修改的啊。
 楼主| jgphu 发表于 2010-10-29 14:25 | 显示全部楼层
问题解决了: 问题的原因是我修改了EXTI_CR2后没有把PD7_CR2 = 0X80.所以进不了中断
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

642

帖子

2

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