找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2991|回复: 9
打印 上一主题 下一主题
收起左侧

请教大神STC单片机的8A8K64D4的IO中断怎么使用?

[复制链接]
跳转到指定楼层
楼主





按照手册的例程编译,但后面这个不能理解或是说如何把这个ISP.ASM文件加入到项目中呢?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:94031 发表于 2022-5-4 14:20 | 只看该作者
可以找到相关例程。
回复

使用道具 举报

板凳
ID:624769 发表于 2022-5-4 17:07 | 只看该作者
给你一个,我写的例子做参考吧.


EX_INT_TEST.rar (17.45 KB, 下载次数: 42)


你也可以看下图:









回复

使用道具 举报

地板
ID:220661 发表于 2022-5-4 19:21 | 只看该作者
这是汇编例程带中断入口地址的,可以加到汇编程序里,如果你是用C语言,就用C语言的中断函数那种。
回复

使用道具 举报

5#
ID:514254 发表于 2022-5-4 19:24 | 只看该作者
比如使能P16中断
回复

使用道具 举报

6#
ID:514254 发表于 2022-5-4 19:26 | 只看该作者
  1.         //使能P1.6口上升沿中断
  2.         P_SW2 |= 0x80;
  3.         P1IM0 = 0xff; //上升沿中断
  4.         P1IM1 = 0x00;
  5.         P1INTE |= 0x40; //使能 P1.6 口中断
  6.         P_SW2 &= ~0x80;
复制代码

中断定义以及函数:
  1. //使能P1.6口上升沿中断
  2. #define P1INTE (*(unsigned char volatile xdata *)0xfd01)
  3. #define P1INTF (*(unsigned char volatile xdata *)0xfd11)
  4. #define P1IM0 (*(unsigned char volatile xdata *)0xfd21)
  5. #define P1IM1 (*(unsigned char volatile xdata *)0xfd31)
  6. void common_isr() interrupt 38
  7. {
  8.         unsigned char psw2_st;
  9.         psw2_st = P_SW2;
  10.         P_SW2 |= 0x80;
  11.         P1INTE &= 0xbf;                                //关闭P1.6口中断
  12.        
  13.        

  14.         P1INTE |= 0x40;                                //使能P1.6口中断
  15.         P1INTF = 0x00;
  16.         P_SW2 = psw2_st;
  17. }
复制代码
回复

使用道具 举报

7#
ID:514254 发表于 2022-5-4 19:27 | 只看该作者
对了中断号超大,需要安装这个补丁或者用中断13作为跳转,具体STC官方说明文档很详细,以上程序也参考官方

拓展Keil的C代码中断号.rar

6.01 KB, 下载次数: 52

回复

使用道具 举报

8#
ID:465279 发表于 2022-5-4 20:36 | 只看该作者
xuyaqi 发表于 2022-5-4 14:20
可以找到相关例程。

我的第张图片就是例程写的,可怎么加进项目呢?
回复

使用道具 举报

9#
ID:961114 发表于 2022-5-5 09:04 | 只看该作者
回复

使用道具 举报

10#
ID:388477 发表于 2023-12-30 10:24 | 只看该作者
在keil中建一个asm文件,命名isr,在里面复制
                        CSEG AT 0133H  ;P1 口中断入口地址
                        JMP P0INT_ISR
P0INT_ISR:
                        JMP 006BH ;借用 13 号中断的入口地址
                        EN



根据选用的io口,修改中断入口地址


isr.png (11.44 KB, 下载次数: 78)

isr.png

捕获1.PNG (46.28 KB, 下载次数: 73)

捕获1.PNG
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表