Arduino vs. Maple - 早期印象
对于那些没有听说过的人,LeafLabs的Maple板是一个基于STM32 ARM Cortex-M3芯片的Arduino兼容微控制器平台。完整功能列表包括 -
- 微控制器:STM32 F103RB
- 时钟速度:72 MHz
- 工作电压:3.3V
- 输入电压(推荐):3.0V-18V
- 数字I / O引脚:39
- 模拟输入引脚:16
- 闪存:128 KB
- SRAM:20KB
- 64通道嵌套向量中断处理程序(包括GPIO上的外部中断)
- 集成SPI / I2C和7通道直接存储器访问(DMA)
- 在3.3v时提供高达800mA的电流
- 支持低功耗和睡眠模式(<500uA)
- 尺寸:2.05“x2.1”
我最近得到了这些新板之一,虽然Maple IDE的功能尚未发布,但我从项目库中编译了可用的源文件,允许我从Windows XP上传草图(通过OS X上的Parallels)。
我的示例草图使用shiftOut函数通过MCP4921 DAC芯片创建正弦波形。我还在Arduino Duemilanove(ATMega328p)上运行了相同的测试设置,并为了比较而叠加了两个结果信号 -
蓝色的Arduino Duemilanove(ATMega328p),绿色注释的LeafLabs Maple(STM32F103RB) - 由于DAC VREF(5V,3.3V)的不同而产生不同的电压范围正如预期的那样,Maple的STM32(运行@ 72MHz)比Arduino的ATMega328p(@ 16MHz)更快地更新DAC - 事实上大约快9倍!这对我来说有点意外,因为考虑到时钟速度的不同,我只期望提高4.5倍的速度。对于需要额外时钟周期的Arduino用户来说绝对是个好消息,但对于大多数人而言,Duemilanove仍然具有很大的优势 - 特别是:
- Maple IDE软件仍处于预发布阶段
- ATMega328p采用易于更换的DIP封装
- 与Arduino一起使用的低级代码(即 - 端口操作,定时器中断)需要为STM32重写
- Arduino以多种形式广泛提供,是一个伟大的用户社区
无论如何,看到更多选项(和速度!)可供Arduino社区使用是非常酷的。看看Maple和它的亲戚们的情况如何进展肯定会很有趣。