打印

INT0引脚做外部按键中断

[复制链接]
344|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
pangb|  楼主 | 2019-8-18 15:25 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
用cy7c63813芯片的INT0引脚做外部按键中断时,无法触发中断,但是GIE使能、INT0中断使能、引脚配置(开漏、下降沿触发)等都没问题

使用特权

评论回复
沙发
chenjunt| | 2019-8-18 15:29 | 只看该作者
在boot.asm替换了中断向量表中的中断服务程序为_button_svr了吗?

使用特权

评论回复
板凳
pangb|  楼主 | 2019-8-18 15:32 | 只看该作者
替换了

使用特权

评论回复
地板
ousj| | 2019-8-18 15:35 | 只看该作者


代码发一下看看

使用特权

评论回复
5
pangb|  楼主 | 2019-8-18 15:41 | 只看该作者

#include <m8c.h>        // part specific constants and macros
#include "PSoCAPI.h"    // PSoC API definitions for all User Modules

#pragma interrupt_handler button_svr

void main()
{
     // Insert your main routine code here.
DWORD count = 0;
M8C_EnableGInt;
M8C_EnableIntMask( INT_MSK0, INT_MSK0_GPIO_PORT0 );

while(1)
{}
}

void button_svr(void)
{
if(P1DATA == 0x00)
   P1DATA = 0x04;
else
   P1DATA = 0x00;
}

使用特权

评论回复
6
pangb|  楼主 | 2019-8-18 15:44 | 只看该作者

使用特权

评论回复
7
ousj| | 2019-8-18 15:47 | 只看该作者


要在boot.tpl中修改中断返回服务程序, 而不能在boot.asm中改

使用特权

评论回复
8
pangb|  楼主 | 2019-8-18 15:52 | 只看该作者
试了下楼上的方法,还是没有解决

使用特权

评论回复
9
morrisk| | 2019-8-18 15:56 | 只看该作者

生成hex的时候要选择reloadboot.asm

使用特权

评论回复
10
zyf部长| | 2019-8-18 16:00 | 只看该作者
reloadboot.asm文件在什么地方啊?

使用特权

评论回复
11
kangzj| | 2019-8-18 16:03 | 只看该作者
生成hex文件时候如何在那一个菜单里面选择reloadboot.asm呢?

使用特权

评论回复
12
xxmmi| | 2019-8-18 16:06 | 只看该作者

在boot.tpl中修改中断返回服务程序后,打开一下boot.asm, 看相应的修改产生了没?
http://www.cypress.com/?rID=48990
这个是一个例程

使用特权

评论回复
13
pangb|  楼主 | 2019-8-18 16:09 | 只看该作者
嗯,那我按大家的说法挨个排查一下,先结贴啦,谢谢哈

使用特权

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

本版积分规则

701

主题

7643

帖子

6

粉丝