×

基于Arduino UNO的触摸屏特雷门

消耗积分:0 | 格式:rar | 大小:0.76 MB | 2022-12-22

香香技术员

分享资料个

特雷门由在两个传感器(天线、距离传感器等)前挥手操作的声音(音乐)乐器组成,其中一个确定频率,而另一个确定产生的声音的音量。这通常需要笨重的设备,并且需要进行大量训练才能获得正确的手位置以获得所需的声音。

在本方案中,将展示如何构建一个简单、便携的特雷门,它通过触摸屏幕来工作,屏幕的一个轴决定音高,而另一个轴决定音符的持续时间。屏幕还显示音符播放时的频率和持续时间。频率间隔可以由用户定义(这里我们从 C3 到 C7),以及音符持续时间(我们在这里从 100 到 1000 毫秒)。

我们使用来自 Banggood 的 240x320 2.4" TFT-LCD 触摸屏,ID=0x9340,并使用 MCUFRIEND_kbv 库来驱动它。它安装在 Arduino UNO R3 上。扬声器连接在 Arduino 的数字引脚 10 和地之间;它需要是启用 PWM 的引脚,并且由于tone() 函数与引脚 3 和 9 上的 PWM 信号发生冲突(因为它们使用相同的定时器),我们选择了触摸屏本身不使用的引脚 10,除非是 SD卡存在并正在使用。

屏幕尺寸映射到最小和最大音符持续时间,以及最小和最大频率,这样当屏幕在点 p 处被触摸时,它的坐标 (x, y) 被注册并被tone() 函数使用以发送到扬声器,并显示在屏幕上作为用户的反馈。

为了避免虚假信号进入扬声器,我们在 p 的 z 坐标(用于屏幕压力)上设置了一个下限,以使触摸成为有效的触摸。

音质不是很好,但可以使用 MIDI 来改进它并切换到不同乐器的音色。

如果需要更持久的电路,屏蔽和 Arduino 板之间有空间可以在屏蔽下粘上一个小扬声器。整个特雷门都可以放在衬衫口袋里。

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

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !