查看: 223|回复: 9

[未解决] "萌新提问"arduino uno无法发送midi信号

[复制链接]
  • TA的每日心情
    开心
    2019-12-2 13:32
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2019-11-30 04:07 | 显示全部楼层 |阅读模式
    大佬们好,急需求助,萌新一枚,苦不堪言。我想用arduino uno板子发送midi信号来制作midi控制器,用的是mac笔记本 参照各种各样的教程接好了midi5针母座,用一下的代码,并且用了hairless-midi转换但是没有效果。

    代码:

    void setup() {
      Serial.begin(9600);
    }

    void loop() {
      for (int note = 0x1E; note < 0x5A; note ++) {
        noteOn(0x90, note, 0x45);
        delay(100);
        noteOn(0x90, note, 0x00);
        delay(100);
      }
    }
    void noteOn(int cmd, int pitch, int velocity) {
      Serial.write(cmd);
      Serial.write(pitch);
      Serial.write(velocity);
    }



    然后在hairless-midi里 波特率调为9600,都设置好里,可以看到midi信息,但是我用garageband或者logic测试了下都没有midi信号进来。

    midi的协议不是波特率为31250吗,hairless-midi里面没有31250的波特率设置,所以我统一设置成了9600,会不会是这个引起的?但是我只用arduino设置波特率31250的话,也是没有midi信号的。

    急需高人一点通。

    1575057824470.jpg
    1575057646514.jpg
  • TA的每日心情
    开心
    2019-12-2 13:32
  • 签到天数: 2 天

    [LV.1]初来乍到

     楼主| 发表于 2019-11-30 04:09 | 显示全部楼层
    我用的是双头5针midi转usb接入电脑的,midi我插的是out的那一头,hairless-midi设置好后,可以看到uno版上的tx在运行,但是电脑上没信号

    该用户从未签到

    发表于 2019-11-30 16:40 | 显示全部楼层
    推进直接去作者网站询问

    另外,mac 如果支持 usb midi 可以考虑一下直接上 leonardo 模拟Usb midi
  • TA的每日心情
    开心
    2019-12-2 13:32
  • 签到天数: 2 天

    [LV.1]初来乍到

     楼主| 发表于 2019-11-30 16:52 | 显示全部楼层
    Zoologist 发表于 2019-11-30 16:40
    推进直接去作者网站询问

    另外,mac 如果支持 usb midi 可以考虑一下直接上 leonardo 模拟Usb midi ...

    非常感谢你的回复!
    我觉得我可以用我的PC电脑来进行一下重复的操作试试。
    因为教程里作者也是用的UNO板子实现了,目前想法上的话暂时还是想试试uno板子来承载MIDI信号,实在没办法的话我还是按你说的买个leonardo的板子。

    该用户从未签到

    发表于 2019-11-30 21:12 | 显示全部楼层
    38786562@qq.com 发表于 2019-11-30 16:52
    非常感谢你的回复!
    我觉得我可以用我的PC电脑来进行一下重复的操作试试。
    因为教程里作者也是用的UNO板 ...

    主要是你做的这两个都很偏,
    搞不好国内没有人这样搭配过,所以几乎没有中文资料
  • TA的每日心情
    开心
    2019-12-2 13:32
  • 签到天数: 2 天

    [LV.1]初来乍到

     楼主| 发表于 2019-12-2 00:56 | 显示全部楼层
    Zoologist 发表于 2019-11-30 21:12
    主要是你做的这两个都很偏,
    搞不好国内没有人这样搭配过,所以几乎没有中文资料 ...

    谢谢你!我觉得我也可以试试用不同的方式来实验同样的结果,萌新没必要折磨自己 哈哈哈
  • TA的每日心情
    开心
    2019-12-6 00:31
  • 签到天数: 977 天

    [LV.10]以坛为家III

    发表于 2019-12-2 08:45 | 显示全部楼层
    你确定MIDI不用库吗?
    http://projectgus.github.io/hairless-midiserial/#downloads
    https://github.com/FortySevenEff ... /releases/tag/4.3.1

    在文件midi_Settings.h里,有这样的语句:
        static const long BaudRate = 31250;
    所以,应该是:你自己设置9600是没用的。
  • TA的每日心情
    慵懒
    2019-12-6 09:30
  • 签到天数: 624 天

    [LV.9]以坛为家II

    发表于 2019-12-2 10:52 | 显示全部楼层
    我也记得好像是要下载Arduino MIDI的库的,你这样自己直接定义是没用的
  • TA的每日心情
    开心
    2019-12-2 13:32
  • 签到天数: 2 天

    [LV.1]初来乍到

     楼主| 发表于 2019-12-2 13:12 | 显示全部楼层
    O_oYYQ 发表于 2019-12-2 10:52
    我也记得好像是要下载Arduino MIDI的库的,你这样自己直接定义是没用的

    我有下载MIDI库也引用了,还是没有作用。
  • TA的每日心情
    开心
    2019-12-2 13:32
  • 签到天数: 2 天

    [LV.1]初来乍到

     楼主| 发表于 2019-12-2 13:18 | 显示全部楼层
    上海老王 发表于 2019-12-2 08:45
    你确定MIDI不用库吗?
    http://projectgus.github.io/hairless-midiserial/#downloads
    https://github.com/F ...

    感谢你给的参考链接,我想我一定是缺了某个环节, 看了很多相关资料,设置9600是为了用在hairless-midi里,自己引用MIDI库设置31250,这些都无法发送出信号,所以一直为此头疼。
    您需要登录后才可以回帖 登录 | 立即注册  

    本版积分规则

    热门推荐

    Blynk与m5stack basic以及uiflow的交互玩法
    Blynk与m5stack basic以及
    Blynk与m5stack basic以及uiflow的交互玩法 [准备工作我们假设玩家已经熟悉下面的准备
    【原创】 drawbot平面关节scara机械臂写字机 画画机器人直播...
    【原创】 drawbot平面关节
    这个项目上个月就在做了,结构和代码反反复复改了多次,加上自己又太忙,一直没来得及
    error:'UTFT' does not mame a type这个错在那里?
    error:'UTFT' doe
    ********************************************************************************
    【原创】全球最小口袋3D打印机mini one直播教程贴
    【原创】全球最小口袋3D打
    最近闲得蛋疼,没事搞个掌上3D打印机,先放效果图吧。 搞了半天,终于能正常打印,
    哪种按钮传感器可以适用我的arduino装置
    哪种按钮传感器可以适用我
    我想做大概12个按钮并联的这么一个装置,具体交互行为如下:按一次按钮通过mp3模块发
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
    快速回复 返回顶部 返回列表