shenhaiyu 发表于 2014-3-30 12:21:09

关于Nano,你可能不知道的事儿(有关pin A6、A7的那些事)

转自:http://aguegu.net/?p=718,感谢原博客作者。



大部分玩 Arduino 的朋友,都还是从 UNO、Duemilanove、Diecimila 这样的板子上开始玩,而这些板子的共性,就是都是用了 DIP(直插)28 脚封转的主芯片。而转为 Nano 的话,其实芯片核心并没有变化,但是封装从 DIP28 改为 TQFP32,软件方面都不需要变动,程序都是通用的。硬件方面又有什么不同呢?32 – 28 = 4,多了4个引脚。



多了 VCC 和 GND,没什么好说,而多的 ADC6 和 ADC7,就是是之前 DIP 封转的芯片所没有的东西了。而在 nano 中,也同样把这2个ADC引脚引出来了。



很明显,就是A6和A7。大家注意看datasheet中的管脚定义,就会发现这 ADC6 和 ADC7 实际上和 ADC0-ADC5 是不太一样的。ADC0-ADC5 其实是作为 PC0-PC5 的第二功能存在的,分别对应 Arduino 定义 A0-A5。也正因为此,在 Arduino 的官方指南中提到,“The analog input pins can be used as digital pins, referred to as A0, A1, etc. ”。说的是,模拟输入口可以当数字口一样用。对于A0-A5来说,确实不错。但对于第一功能就是ADC(模数转换)而不兼有普通 IO 口功能的 ADC6 和 ADC7 来说。这句话就要打折扣了。A6 和 A7 只能作为模拟输入使用,不要把它当成 类似于 PC PB 这样的 IO口去使用。

而且,这本并不是 Arduino 内核的问题,而是硬件本身的设计就是这个样子。A6 和 A7 确少作为 标准IO口 所需的必要硬件配置。

实测中确实是这样,在 A6、A7 引脚上,想运行 Blink 例程,使用 pinMode(A6, OUTPUT),digitalWrite(A6, HIGH) 都不会得到你所需要的效果。更崩溃的是,你可能改变了芯片内部你原本不想改变的寄存器配置,没准会有诡异意外发生。玩 Nano,或者是贴片AVR的 Arduino 朋友们,可要注意。

特别感谢:@风叫兽,@Togke协助测试。

邵林寺 发表于 2014-3-30 13:06:59

:D同意同意同意

leicheng 发表于 2014-3-30 13:13:07

顶,arduino硬件部分确实有许多要注意的地方。Nano引脚的输入电压如果不是7~9V就更完美了,偶一般选择pro mini 代替它。

幻生幻灭 发表于 2014-3-30 15:00:10

Pro Mini也有A6,A7

savagego 发表于 2014-3-31 13:32:49

学习了。。。。。

Damn_intuition 发表于 2014-3-31 15:09:51

以前也遇到过这个问题,不过通过百度知道了。

shenhaiyu 发表于 2014-4-2 23:25:32

Damn_intuition 发表于 2014-3-31 15:09 static/image/common/back.gif
以前也遇到过这个问题,不过通过百度知道了。

在这分享一下,让更多的人呢知道吧

Damn_intuition 发表于 2014-4-8 17:07:57

shenhaiyu 发表于 2014-4-2 23:25 static/image/common/back.gif
在这分享一下,让更多的人呢知道吧

支持,为了这个问题纠结半天,最后才想到是不是这两个AD口不能做数字IO,一百度才发现果真如此。

早看到这个就好了哈哈。

shenhaiyu 发表于 2014-4-8 18:23:28

Damn_intuition 发表于 2014-4-8 17:07 static/image/common/back.gif
支持,为了这个问题纠结半天,最后才想到是不是这两个AD口不能做数字IO,一百度才发现果真如此。

早看到 ...

哈哈,我早点分享就好了

纳凉夜话 发表于 2014-6-17 18:34:39

看望这个帖子,终于知道我的电机为何用nano没驱动起来了:L:L:L

shenhaiyu 发表于 2014-6-18 10:29:16

纳凉夜话 发表于 2014-6-17 18:34 static/image/common/back.gif
看望这个帖子,终于知道我的电机为何用nano没驱动起来了

呵呵,知道了就不算晚~~

shanqln 发表于 2018-7-19 19:41:38

怪不得当数字口输入,怎么都没有反应,还在程序里找了半天原因。。。。

谢谢楼主分享。。。
页: [1]
查看完整版本: 关于Nano,你可能不知道的事儿(有关pin A6、A7的那些事)