0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎样用Arduino发送和接收来自Max/MSP的数据

454398 来源:工程师吴畏 2019-07-30 11:04 次阅读

Max/MSP是一种可视化编程语言,可帮助您构建复杂的交互式程序,而无需任何先前的代码编写经验。它对于构建需要用户交互的音频,MIDI,视频和图形应用程序尤其有用。

我们需要将数据传输设置为双向。为此,我们首先设置从Arduino发送数据到Max/MSP,然后将数据从Max/MSP发送到Arduino。

从Arduino发送数据到Max/MSP

我们首先将数据从Arduino的模拟引脚发送到Max/MSP,然后打印出来。接下来,我们将数据从Max/MSP发送回Arduino,它将控制连接在引脚13的Arduino的内置LED

Arduino和Max/MSP之间的通信将是连续的。

Arduino代码

将代码上传到编译器。

**注意:不要打开串行监视器,因为Max/MSP将使用COM端口

int analogPin = 1;

void setup()

{

Serial.begin(115200);

}

void loop()

{

Serial.println(analogRead(analogPin));

delay(100);

}

Max/MSP草图

要发送的完整草图您可以在本文末尾找到从Arduino到Max/MSP的数据作为可下载文件。下载并运行草图。它将如下所示:

怎样用Arduino发送和接收来自Max/MSP的数据

上传Max/MSP草图后,您的屏幕将如下所示。

最大值/MSP将不断从Arduino接收数据并显示它。要接收数据,我们将设置COM端口和波特率,类似于它们在Arduino端设置的方式。

要检查哪个COM端口可用,请单击打印。它将显示Max控制台中可用的COM端口。

单击打印将告诉您哪个COM端口可用。

在串行对象中输入可用的COM端口,并写入我们在Arduino端设置的COM端口。

设置COM端口后,单击ON/OFF按钮将允许Max/MSP开始接收数据。

Arduino现在已准备好向Max/MSP发送和接收数据。

从Max/MSP发送数据到Arduino

现在我们要将数据从Max/MSP发送到Arduino。数据将串行发送到Arduino,Arduino将接收它并控制引脚13处的内置LED。

我们已连接Max/MSP侧的切换按钮以发送数据位‘1 ’或‘0’到Arduino。收到数据后,Arduino将检查它是“1”还是“0”。如果为“1”,LED将亮起。否则,LED将关闭。

Arduino代码

int LED_pin = 13;

void setup()

{

Serial.begin(115200);

pinMode(LED_pin, OUTPUT);

}

void loop()

{

if (Serial.available()) {

int value1 = Serial.read();

if(value1 == 1){

digitalWrite(LED_pin, HIGH);

}

else if (value1 == 0){

digitalWrite(LED_pin, LOW);

}

}

}

Max/MSP Sketch

将数据从Max/MSP发送到您的完整草图在本文末尾可以找到Arduino作为可下载文件。下载并运行草图。它将如下所示:

运行第二个Max/MSP草图后程序的外观如何。

单击打印按钮查看Max控制台中可用的COM端口。

点击打印查找可用的COM端口。

在串行对象中输入COM端口并设置类似于的波特率Arduino。

设置之间的COM端口Max/MSP和你的Arduino。

现在,点击ON/OFF按钮控制LED在你的Arduino的第13针。

其他资源

对如何将Arduino连接到其他程序和模块感兴趣?查看这些文章:

如何使用PySerial接口Python IDE和Arduino

如何使用Visual Studio进行Arduino项目开发

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Arduino
    +关注

    关注

    187

    文章

    6461

    浏览量

    186570
收藏 人收藏

    评论

    相关推荐

    使用main_output接口发送DIR接收的SPDIF数据给DSP遇到的疑问求解

    我想使用main_output接口发送DIR接收的SPDIF数据给DSP 同时使用mpio_b接口接收来自DSP的PCM数据 两者使用同一
    发表于 10-25 07:08

    怎样用THS3201实现输出功率可调?

    怎样用THS3201实现输出功率可调?
    发表于 08-26 08:28

    怎样用Arduino测试锂电池容量

    本文详细介绍了如何用Arduino测量锂电池的容量。并附有电路图和Arduino的程序代码。
    的头像 发表于 07-30 09:14 691次阅读
    <b class='flag-5'>怎样用</b><b class='flag-5'>Arduino</b>测试锂电池容量

    如何配置ESP8266的I2S模块以接收来自外部微控制器的数据

    如何配置 ESP8266 的 I2S 模块以接收来自外部微控制器的数据(例如,具有 I2S 接口的 STM32F303)? 我想通过 I2S 接口将数据从 STM32 连续传输到 ESP8266,但非 OS SDK 不支持循环模
    发表于 07-12 14:08

    FPGA能否正确接收来自FX3同步从站FIFO的数据

    低电平,则不对数据总线进行采样。 6. t6 时,FPGA 新地址更新地址总线,依此类推; 在此过程之后,FPGA 能否正确接收来自 FX3 同步从站 FIFO 的数据? 非常感谢!
    发表于 05-31 08:09

    STM32F407怎么去接收发送数据

    USB设备是这样的,请问我STM32F407怎么去接收发送数据,这个设备是一个3G模块,谢谢。
    发表于 05-09 06:41

    stm8S103Kspi做为从机通讯,怎样提高接收数据速度?

    stm8S103Kspi做为从机通讯,怎样提高接收数据速度,我现在是一个stm8S103K作为从机,与其它spi主机设备通讯,现在查询
    发表于 05-08 06:11

    怎样用STM8L的PB3/TIM2_TRIG的引脚测量脉宽?

    怎样用STM8L的PB3/TIM2_TRIG的引脚测量脉宽?
    发表于 05-07 06:55

    stm32f100怎样用重映射功能?

    的是stm32f100c8t6b芯片,现在想用将PB1映射为TIM1_CH3N,在调用GPIO_PinAFConfig(GPIOB,GPIO_PinSource1,GPIO_AF_TIM1)时, GPIO_PinAFConfig和GPIO_AF_TIM1都没定义,stm32f100
    发表于 05-07 06:06

    freertos串口接收数据后如何发送给任务?

    正在学freertos。串口中断接收一帧数据后,放到数组里,如何将数据发送给任务呢? 如果消息队列,是否建立的消息队列需要是数组类型的?
    发表于 04-18 06:36

    CAN转以太网中继器应用原理

    CAN接口:用于接收发送CAN总线上的数据。CAN接口通常与CAN总线设备连接,能够接收来自CAN总线的数据帧,并将其转换为模块内部可处理
    的头像 发表于 03-22 15:03 2351次阅读
    CAN转以太网中继器应用原理

    怎样用表来判断加热管的好坏?

    怎样用表来判断加热管的好坏? 万表是电工常用的测量仪器,它可以用来判断加热管的好坏。加热管是一种常见的加热元件,广泛应用于家电、机械设备和工业生产中。在选择和使用加热管时,我们需要了解其电阻值
    的头像 发表于 12-20 17:21 4897次阅读

    单片机串口通信的接收发送

    的原理。串口通信是通过发送接收两根线来实现的,分别为发送线(Tx)和接收线(Rx)。当单片机发送数据
    的头像 发表于 12-20 14:03 3446次阅读

    LTC2668接收来自FPGA的数据后,经过转换需要将数据经所有通道口同时输出,输出时有没有相位差?

    LTC2668接收来自FPGA的数据后,经过转换需要将数据经所有通道口同时输出,输出时有没有相位差?如果有要怎样解决
    发表于 12-01 07:04

    怎样用ADAU1761设计DRC的压缩/扩展?

    请问怎样用ADAU1761设计DRC的压缩/扩展。我在SigmaStudio 4.5的模块中只找到RMS。如果ADAU1761设计DRC要怎样
    发表于 11-28 06:41