与每个新一代对于微控制器,我们倾向于将其量化内存而且速度-更大,更快的程序!与此同时,新设备经常带来额外的功能那些乍一看会被忽略的。这些功能打开了全新的大门,除了程序大小或速度能做什么。
SAMD ARM M0微控制器用于Circuit Playground Express, Feather M0和其他具有“Express”或“M0”名称的Adafruit板-以及Arduino Zero -包括一些有趣的新功能,其中包括:
- 一个数模转换器(DAC)。引脚A0可以提供真实模拟电压在0到3.3伏之间。在此之前,Arduino所谓的analogWrite()函数并非如此真的模拟-它产生了一个脉冲宽度调制数字信号。
- 直接内存访问(DMA)允许内存和外设(包括DAC)之间的数据传输非常快,没有CPU的干预-它在后台进行它的任务,而其他代码继续以100%的速度运行。
我们将通过生成进行演示综合电视而且调频广播直接从板上发出信号。没有护盾或面包板或焊接额外的组件,只是一些简单的测试引线!
虽然这里展示的项目有一个老式的破旧的丁克风格,事实上,一个微控制器可以做到这一点完全靠自己-没有多余的部件,只有一些电线-是相当了不起的。除了想得更大更快之外,你还能从新的硬件中孵化出哪些非传统的想法和应用呢?这些都不是DAC的真正目的,但它在演示场景方面很酷。
开始
这些演示项目需要:
要确认SAMD板支持正在工作,请尝试将基本的“闪烁”草图上传到板上。要确认Adafruit_ZeroDMA库已正确安装,请检查文件→示例→Adafruit_ZeroDMA翻转菜单是否存在。
接下来的每个项目都需要自己的附加库,同样是手动安装的。