arduino编程,能使用中断么?
用别的系统,也有这个问题,那个是c,的。一直在想,有些功能如果能用中断的话,程序会简单得多。现在只能把一些要检测的做成子程序,每次都要主动调用。
arduino能用中断功能么
比如,a按钮提高音量,b按钮降低音量,接4个led显示音量大小,c按钮按下去时静音,但在c按钮按下去的时候,ab按钮都是有效的。用中断怎么写,不用中断又怎么写。 按键触发的话,可以使用外部中断 有定时器中断和外部中断,看 avr芯片的 datasheet就知道了 突然想起以前学的计算机原理的内容了……中断分硬中断和软中断,硬中断是要硬件支持的,软的好像是int13吧,是可以自己弄弄的
想到这个也是因为之前弄的一个能跟人走的机器人,当时思路是前180度装若干个距离传感,一直保持正前方的距离内是有物体的,如果正前方没有了,那么左右如果有物体就分别左右转,正前方的物体远了就前进,近了就后退,保持在一定距离。这是最低级别的。中级别的是360度能感觉有没有物体,如果有就作相应的动作,这种情况下是不进行第一种操作的。 最高级别的是一圈光感,如果有红外光特别强的,就向这个方向走,好像足球机器人的追球的动作。 如果没有中断的话,就是要一层一层地判断,写出来很难懂,也难改。
不知道能不能用软中断来实现。 pumpitup 发表于 2013-6-3 17:08 static/image/common/back.gif
突然想起以前学的计算机原理的内容了……中断分硬中断和软中断,硬中断是要硬件支持的,软的好像是int13吧, ...
软中断是应用软件调用操作系统功能的一种方式,你需要的是硬件中断,Arduino是支持的,看手册里的attachInterrupt 不要用delay()延时,
不用中断也可以用得很好。
页:
[1]