打印

中断点亮LED,程序运行有误,求大神指点?

[复制链接]
910|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hengshu|  楼主 | 2015-5-27 14:01 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 hengshu 于 2015-5-27 15:29 编辑

实现中断按键按下LED点亮,放开LED熄灭。现在出现中断按键放开后LED不熄灭






沙发
给力芯片| | 2015-5-27 15:51 | 只看该作者
第一点:你的主程序里死循环中没有点亮部分代码,所以你的程序是一上电灯就亮,进中断后灯灭,再进中断也是关灯的动作,在主程序里没有点亮部分,所以不会有

使用特权

评论回复
板凳
给力芯片| | 2015-5-27 15:52 | 只看该作者
第二点:个人感觉你没有配置成功中断模式

使用特权

评论回复
地板
hengshu|  楼主 | 2015-5-27 15:55 | 只看该作者
给力芯片 发表于 2015-5-27 15:51
第一点:你的主程序里死循环中没有点亮部分代码,所以你的程序是一上电灯就亮,进中断后灯灭,再进中断也是 ...


此上程序正常了

使用特权

评论回复
5
给力芯片| | 2015-5-27 15:55 | 只看该作者
修改意见:针对第一点,你可以将主程序改为
void main(void)
{
     .
     .
     .
     for(;;)
    {
        if(led_1_0 == 0)
        点亮灯
     }
}

使用特权

评论回复
6
给力芯片| | 2015-5-27 15:55 | 只看该作者
第二点,你可以看下官网的例程后,再来试试

使用特权

评论回复
7
给力芯片| | 2015-5-27 15:56 | 只看该作者
加油,我也是新手,说的不对的地方,多指教

使用特权

评论回复
评分
参与人数 1威望 +3 收起 理由
hengshu + 3 很给力!
8
hengshu|  楼主 | 2015-5-27 16:02 | 只看该作者
给力芯片 发表于 2015-5-27 15:52
第二点:个人感觉你没有配置成功中断模式

中断根据电平变化,没有问题了,但我想知道led_1_Write(1);到底是读写那个寄存器?

使用特权

评论回复
9
hengshu|  楼主 | 2015-5-27 16:35 | 只看该作者
给力芯片 发表于 2015-5-27 15:55
修改意见:针对第一点,你可以将主程序改为
void main(void)
{

用IF语句判断就要用pin_read()这个读取函数,但扩号中不能有参数,不知道怎么用这个函数

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

77

帖子

1

粉丝