极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11838|回复: 5

arduino编程,能使用中断么?

[复制链接]
发表于 2013-6-2 21:38:58 | 显示全部楼层 |阅读模式
       用别的系统,也有这个问题,那个是c,的。

    一直在想,有些功能如果能用中断的话,程序会简单得多。现在只能把一些要检测的做成子程序,每次都要主动调用。

    arduino能用中断功能么

    比如,a按钮提高音量,b按钮降低音量,接4个led显示音量大小,c按钮按下去时静音,但在c按钮按下去的时候,ab按钮都是有效的。用中断怎么写,不用中断又怎么写。
回复

使用道具 举报

发表于 2013-6-3 01:30:28 | 显示全部楼层
按键触发的话,可以使用外部中断
回复 支持 反对

使用道具 举报

发表于 2013-6-3 15:55:13 | 显示全部楼层
有定时器中断和外部中断,看 avr芯片的 datasheet就知道了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-6-3 17:08:32 | 显示全部楼层
突然想起以前学的计算机原理的内容了……中断分硬中断和软中断,硬中断是要硬件支持的,软的好像是int13吧,是可以自己弄弄的

想到这个也是因为之前弄的一个能跟人走的机器人,当时思路是前180度装若干个距离传感,一直保持正前方的距离内是有物体的,如果正前方没有了,那么左右如果有物体就分别左右转,正前方的物体远了就前进,近了就后退,保持在一定距离。这是最低级别的。  中级别的是360度能感觉有没有物体,如果有就作相应的动作,这种情况下是不进行第一种操作的。   最高级别的是一圈光感,如果有红外光特别强的,就向这个方向走,好像足球机器人的追球的动作。    如果没有中断的话,就是要一层一层地判断,写出来很难懂,也难改。

不知道能不能用软中断来实现。
回复 支持 反对

使用道具 举报

发表于 2013-6-3 19:47:49 | 显示全部楼层
pumpitup 发表于 2013-6-3 17:08
突然想起以前学的计算机原理的内容了……中断分硬中断和软中断,硬中断是要硬件支持的,软的好像是int13吧, ...

软中断是应用软件调用操作系统功能的一种方式,你需要的是硬件中断,Arduino是支持的,看手册里的attachInterrupt
回复 支持 反对

使用道具 举报

发表于 2013-12-20 18:58:02 | 显示全部楼层
不要用delay()延时,
不用中断也可以用得很好。
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-13 22:29 , Processed in 0.067632 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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