用Arduino控制LED闪烁

LED小灯实验是比较基础的实验之一,之前的实验里已经利用到了Arduino自带的LED,这次我们利用其他I/O口和外接直插LED灯来完成这个实验,我们需要的实验器材除了每个实验都必须的Arduino控制器和USB下载线以外的其它器件如下:
红色M5直插LED*12、20Ω直插电阻*1、面包板*1、面包板跳线*1扎。
下一步我们按照下面的小灯实验原理图链接实物图,这里我们使用数字10接口。使用发光二极管LED时,要连接限流电阻,这里为220Ω电阻,否则电流过大会烧毁发光二极管。

小灯实验接线图

阅读全文

Arduino 外部中断的使用

1.什么是中断?

试想一下,你正在家里吃饭,这时传来了敲门声,虽然你巨饿,虽然面前全是山珍海味,但此时你不得不去开门,同时不得不放停下生命中最重要的事情——吃饭。打开门后,你发现只是一个查水表的,你检查了水表读数并告诉了查水表的人。关上门,你马不停蹄的又投入了于食物的作战中。
我们来分析一下这个颇具传奇性的故事,在这里人生的主旋律——吃饭,就是你的主程序,而敲门声,就是一个中断信号,它让你不得不去执行你的人生插曲——开门接客这个中断函数。完成这个小插曲后,你又要投入到主线剧情 吃饭这个主程序上。

现在我想告诉你一个惊天秘密,其实你妈欺骗了你,你根本不是他们亲生的,你是人造人,而你的大脑里装备了一个arduino控制器!你的型号是 Arduino 吃货,之所以叫这么2的名字,是因为你的loop的写法问题。我们来看看你的loop函数。

void loop() {
吃();
}

吃,是的,你没有看错,你的人生是如此的幸福,就是不断的 吃();循环。
阅读全文

使用Arduino IO口内部上拉功能

ATmega328P 芯片内部其实有上拉的功能,我们可以使用 ATmega328P 内部的上拉功能替代外部上拉。ATmega328P Datasheet中有内部上拉的结构介绍,如下图:

介绍一下上拉电阻
在数字电路中,上拉电阻(英语:Pull-up resistors)是当某输入端口未连接设备或处于高阻抗的情况下,一种用于保证输入信号为预期逻辑电平的电阻元件。他们通常在不同的逻辑器件之间工作,提供一定的电压信号。

阅读全文