整个Wiring最后两部分电路是外部电源和EEPROM。外部电源电路与Arduino上的基本没有什么区别,采用的也是78M05这样的电源芯片,相应的元件清单如下:
| 类型 | 标记 | 数量 | 规格 |
|---|---|---|---|
| 电源芯片 | IC4 | 1 | LM78M05 |
| 电容 | C10, C11 | 2 | 100nF |
| 电容 | C12, C13 | 2 | 100uF |
| 整流二极管 | D1 | 1 | 1N4004 |
| 类型 | 标记 | 数量 | 规格 |
|---|---|---|---|
| EEPROM芯片 | IC3 | 1 | 93C46 |
| 电阻 | R5 | 1 | 10K, 1/4W |
| 电阻 | R6 | 1 | 2.2K, 1/4W |
为了对其中的EEPROM功能进行验证,我试验了另外一个Wiring工程:
#include
char val;
void setup() {
if(EEPROM.read(16) != 'F') {
EEPROM.write(16, 'F');
}
val = EEPROM.read(16);
pinMode(48, OUTPUT);
}
void loop() {
if( 'F' == val) {
digitalWrite(48, HIGH);
}
delay(100);
}
上述Wiring工程在初始化过程中先读取EEPROM中地址为16的字节单元中的值,并在其不是字符F的情况下,往该地址单元中写入字符F,然后再从中读取这来。这样如果EEPROM正常工作的话,就能够保证变量val在setup()函数执行完后,其值一定是字符F。在loop()函数中,如果检查出val的值确实是字符F,就点亮Wiring板子上自带的LED(接在数字I/O的48管脚上)。
习惯了Arduino程序下载时不需要按复位键,并且在下载完成后也不需要按复位键,刚接触到Wiring时对其在这两个位置上还需要按复位键的做法的确有些不适应:-) 真希望Wiring在接下去的版本中能对这一地方进行改进。昨天发邮件问Wiring的作者为什么不把bootloader的源码公布出来,得到的答案居然是他把源码弄丢了,现在只有二进建的版本,我晕…
最后贴一张我制作的Wiring在运行上述EEPROM工程时的效果图,用的是外接电源,右侧的红灯是电源灯,左侧的绿灯是Wiring自带的LED。

No tags
5 comments
Leave a Reply
<< 温度传感器


pemiamos · 2008/01/28 at 10:58 PM
赞。
就是不知道用的人多么?
Author comment by flamingoeda · 2008/01/28 at 11:05 PM
还真不好说,现在很火的Arduino基于的就是Wiring,是其一个简化版本。Arduino的IDE和Wiring的IDE基本上是一样的,语言也是一样的,使用方式也基本一样,但是资源更加丰富,应该能够适应更加复杂的互动应用:)
whale · 2008/01/28 at 11:36 PM
等我那块原装的回来跟它比对比对 ^_^
从Arduino到Wiring再到将来的TNIY和Make controller kit,到时可以兼顾各种应用环境了!
Author comment by flamingoeda · 2008/01/29 at 11:45 AM
元件布局上肯定是有些出入的:)
有一个问题要解决的就是,每种平台的应用方式都不一样,像MAKE Controller用的就是C这样的语言,而Wiring和Arduino用的语言其实是Processing的变种
至于Tiny,呵呵,还不能确定。
但有一点是肯定的,越简化越好,越方便越好,对吗?
Simon Blanchard · 2008/05/19 at 6:02 PM
Hi
I’m in Shanghai. I’ve been trying to contact you about supply of the wiring boards. Please could you contact me.
Thanks
Simon