大多数工程师在工具箱中看到Arduino时都不会选择它,因为它看起来过于的简单以至于不太好用或者不能胜任某些功能。大多数情况下他们都是正确的,但是这并不是我们要在这里所讨论的,有些人并没有意识到这个低成本的开发板是一款非常强大的转换工具,下面向大家介绍Arduino三个强大但是常被忽视的用途:
数字逻辑分析仪
开源逻辑嗅探器(OLS)是一个简单的软件工具,它实现了数字逻辑分析仪的功能特性(图1)。OLS客户端是基于Java语言的,可以在大多数操作系统上运行。由于其简单的串行协议,很多开源工具比如Bus Pirate、Logic Pirate当然也包括Arduino都对OLS提供基础的支持,零外部组件(不包括电线)以及Andrew Gillham的开源代码,你可以对Arduinl UNO进行编程设置,将它变成一款数字逻辑分析仪。
图1:开源逻辑嗅探器(OLS)是一款简单的软件工具,它实现了数字逻辑分析仪的功能特性
下面列举了基于ATmega328的Arduino可供大家使用的功能特性:
l 最大4Mhz采样速率
l1024采样
l 6通道
l 屏蔽触发
l 比例可调的前向/后向记录
l 充当一系列参数测量工具:频率、周期、工作周期等
它可能没有什么特别亮点的特征,但是有时它能够给你提供足够的支持,我经常使用Arduino或FPGA来验证通信协议以及一些功能代码。
AVR编程器
对于很多在校大学生来说,价格往往会在很大程度上影响我们的决定。在这个例子中我指的是对于微控制器系统都需要购买一个编程器,也许你想在PCB上永久集成这个功能,或者只想看看如何“手动”对AVR器件进行编程,无论如何在我看来Arduino的这个惊人实现让我非常的喜欢。
这个过程非常的简单,实际上这个工程(sketch)现在已经集成到所有新版本的Arduino IDE中了,具体操作如下:
1. 打开IDE,选择File->Example->ArduinoISP
2. 编译然后将工程上传到开发板
上面的操作完成后,你就可以使用Arduino的Pin10、11、12和13管脚(分别对应RESET/MOSI/MISO/SCK)对你的AVR器件进行编程,剩下唯一要做的就是将这些标志添加到makefile文件中或使用avrdude命令行:
-p –c avrisp –b 19200
UART(串口)转USB
我知道这似乎有点儿显而易见了,Arduino板上集成了FTDI USART-to-USB芯片,对于引出大部分MCU管脚的Arduino产品比如Arduino UNO R3,你可以仔细的从插座上讲ATmega DIP芯片取出,你可以将串行管脚(RX和TX)用于其他的功能,我发现我经常这样做,我喜欢将选项菜单编程到我的微控制器程序中,有时候一个简单的接口就可以让实时运行的系统改变模式或者请求的数据,从而节省你数小时的调试时间。图2是这种编程菜单的一个非常好的例子,这是我设计的校园公交跟踪系统的编程菜单。
图2:对总线跟踪系统自定义菜单
如果你拥有这样一块板卡,谁会知道它会像瑞士军刀一样有如此多的功能呢?我希望我们已经鼓励大家重新拿起自己的Arduino开始探索电子世界的新领域。