电子DIY小家 发表于 2023-3-15 14:35:55

触摸电子琴从无到有心得分享——基于STC8H4K64TL的电子琴

序言
最近看到STC多了一款LED+触摸的一款,想起了之前看到的STC89C52RC单片机电子琴,心血来潮,当然以前我也做过几个,什么按键的啊,激光的等等,决定给以前做的来个升级板,结合这个芯片现有的资源,做一款有趣的电子琴,一方面也是为了学习新知识,方便日后用它做项目,另一方面也是为了回馈广大网友。


一、需求分析:STC8H4K32TL-45I-LQFP48比较合适,RMB1.6也超级诱人
可以看到STC这个芯片的内部资源如上图所示:主要看中了他触摸驱动和数码管直驱功能,看了眼官网具体的功能介绍,居然还看到了他有现成的触摸演示(链接:https://stcai.com/spys,看起来效果还不错):

其次还在官网看到了现成的原理图,天助我也(链接:https://stcai.com/hxgnsyb),都有现成的最小系统和测试原理图了,这都不用就是暴遣天物哈哈。

他提供的原理图如下:

可以看到他的主控就是我们的芯片,刚刚好一模一样,那么我就不客气了,这个TYPEC,断电电路,最小系统图我都不客气了,直接白嫖了。然后他还有16路触摸,6个8段*4位的数码管,16个8段数码管(内心:我的天,这这这为什么一会儿共阴一会儿共阳的,这个画板子的人怕不是有毒,乱画。仔细一想,不对,姚总天天在宣传的图,这要是有问题那还得了)然后去看了一眼手册,然后见到了这么一句:

好吧,确实是我格局小了,真的没有我做不到,只有我想不到。第一次看到又能共阴共阳驱动的LED驱动,那种岂不是更美了哈哈,悠闲地引脚创造无限的可能,结合他现有的资源,我暂定给他做如下的功能:(我真是一个合格的产品经理哈哈!)

1.板子尺寸10*10以内(白嫖免费打样~)
2.5v供电,使用typec口并能使用typec直接下载程序(写着可以模拟USB下载,我得试试~物尽其用!)
3.使用7个触摸按键作为1-7的音符,3个触摸键作为档位切换(低音,中音,高音),4个触摸键作为模式/设置/切换/选择按键,还有两个作为备用(他们还是RTC时钟的晶振引脚,先预留,到时候不焊了)
4.一个PWM输出口驱动蜂鸣器,(最廉价的用蜂鸣器驱动它)。
5.三个4位数码管(一个显示时间,一个显示音符和档位,一个显示模式啥的,三个四位数码管绰绰有余,虽然有点不甘心还有那么多数码管位没放上去,但是想着放上去板子也放不下,就释怀了哈哈)
6.7*4个LED显示当前音阶,16个LED指示当前触摸按键(既然这个LED驱动能带数码管,那带LED不也分分钟的~毕竟数码管就是LED做出来的)
7.RTC时钟电路(显示个时间不也很好)
8.有空间的话加一个pwm转DAC电路+功放和W25Q128的芯片(追求更好的音质和更大的存储空间)

二、原理图设计
好了需求也有了,这不就可以开始折腾原理图了~
综合上述需求,原理图暂时就先这样子!!
https://www.stcaimcu.com/data/attachment/forum/202305/30/144133n1nzunnuzvu1onun.png

电源下载/蜂鸣/断电电路/MCU都是抄的官方的(内心OS:抄官方的坑定不会有问题了吧,这要是有问题我得去他们那里让出这图的人请我吃饭赔罪!!!)然后数码管什么的也是官方的图上改编过来的,加个pwm转dac和功放,当然这个PWM转DAC也是直接抄的手册的嘿嘿,既然有现成的,不用白不用,省的自己动脑子了哈哈。看起来很简单清爽,这要换别的MCU还得一大堆的触摸芯片或者一大堆的ADC模拟触摸按键,太麻烦了我才不干。
好了,废话不多说,发别人画板子去咯~(毕竟高端的工程师能简单点就简单点,有现成的不用白不用~)顺便问我的销售要了两个样品嘿嘿,销售一如既往的支持,二话不说就给我安排上了样品,再次特别感谢我的销售经理吴某某和聂某哈哈,也感谢STC和姚总的支持。
STC8H4K64TL-45I-LQFP48:
32个8段大电流LED数码管自动刷新驱动;
16个16段米字形大电流LED数码管自动刷新驱动;
还有16路触摸按键的支持;真12位ADC;
内置RTC实时时钟,年月日时分秒,闰年自动转换;
自带软件模拟USB直接下载;
价格向 RMB2看齐中
https://www.stcaimcu.com/data/attachment/forum/202305/30/141321uv3hsgyysvrvhgyy.png
触摸按键电子琴完整解决方案 !冲哥奉献 !!!
STC8H4K64TL-45MHz-LQFP48/LQFP32/TSSOP20 实现
===1,触摸按键;2,RTC/日历时钟;3,PWM发声 !
===2,80mA大电流LED数码管自动刷新,可支持32个8段数码管;
https://www.stcaimcu.com/data/attachment/forum/202304/11/165744xhqefxm82eqhmzhm.png

在冲哥悠扬的琴声中,漫步东西,中华文化弘扬全球
附件是2023年5月29日:
冲哥原创-STC8H4K64TL-45MHz-LQFP48 触摸电子琴
附件是最新开源 原理图、PCB 和 最新代码
注意:
触摸弹簧如果要做触摸面板的,板子上弹簧的间距一定要足够大,
弹簧顶面越大触摸效果越好
https://v.stcai.com/sv/3653644a-18865e901a3/3653644a-18865e901a3.mp4                  

电子DIY小家 发表于 2023-3-15 14:48:32

触摸电子琴从无到有心得分享——基于STC8H4K64TL的电子琴   
原理图,PCB, 原代码全部开源,下面是PCB
三、PCB绘制
经过了漫长的等待,PCB总算画完了发回来了,PCB整个板子外形如下:

乍一看是不是还不错~我也觉得不错。下面一排触摸作为音符选择,左边作为下载口和音阶选择,右边是模式按键,上面两个备用。最顶上是一排数码管,每个触摸边上都有LED,这样可以直接指示触摸的状态,每个触摸都可以焊一个触摸弹簧,最上面再盖上一块亚克力板子,简直不要太好。

走线也还算清爽,当然了也有一些美中不足,像触摸的走线,铺铜(这个就不放出来了,有点不雅观)等等还能优化,电源那一块还能优化。算了,能用就行,我先打一版出来先调程序。(这里很多人会想着一步到位,一次画完。但是以我多年项目经验下来这个基本不可能,尤其是新开的项目坑定会改的,所以第一版可以先做下去,程序先调起来,然后硬件在慢慢的优化整改),这里板子也画完了,那么下面就可以发出去打样咯(期待),可惜我的免费打样用完了,还是出了20块钱的打样费。


电子DIY小家 发表于 2023-3-15 15:11:34

四、焊接测试

经过漫长的等待,板子终于回来了。

看着也还挺好看,不过就是稍稍小了点,不过影响哈哈。当然板子回了,就可以开始焊接测试了。这时候很多人一拿到板子就会直接开始焊接,然后一口气全部焊完,当然我一般都是遵循,电源->最小系统->从左到右的方式开始焊接。
先焊接电源部分,焊接好了测试通电电源没有问题了,在焊接单片机的最小系统,当然不出意外这里果然还是出问题了,如下两部分焊接完成,测试VCC居然没电压,且LED灯也不亮,好家伙,最后通过万用表测量SB1204的mos边上的电压,发现电不能通过这个mos,和屠龙刀一比对,封装的引脚错了~


然后经过引脚一对比,线路板就改成了这个样子~


这里直接给MOS翻了个身,这样输入引脚就怼上了,然后输出和控制脚直接灵魂飞线,考虑到这个电流也不大,那就直接裸露,散热片也先不加了嘿嘿,这样改完一通电,果然LED亮起来了,测量单片机的电源脚,电源也正确了,那么就可以先下载下程序开始测试了:lol

电子DIY小家 发表于 2023-3-15 15:45:04


软件模拟USB下载,大部分电脑没这么复杂
五、程序下载
刚刚已经焊接好了最小系统,那就可以直接下载程序了,这里我一般会先下载完程序在焊接别的。为什么呢,这时候要是焊完了,最后下载不进去都不知道是不是后级干扰了还是怎么滴了,建议刚开始就用最小系统去下载程序,然后边焊接边编写测试的程序,这样可以把出现问题的可能性降到最低,会更方便查找问题。
记得这个型号可以直接USB模拟下载程序,我们去手册看下资料(stc所有你能想到的资料,手册都有,那就第一时间去看手册)
首先是手册这里有电路图,简单看了下和我的一模一样:


接着往下看,有操作方法:

他这里写的很详细,总结下来就是先下载这个模拟USB的驱动,然后在在对地短接P32重新上电就可以下载了,哈哈,看起来很简单,按照他的方法一部一部的测试下来,但是到了最后一步我就是出不来“STC USB Writer (HID1)”,出现问题那么我们一步步来解决问题:
1.仔细查看了我的硬件,电路用万用表测试通断,芯片检查有没有焊反,测量引脚电平,测试按键按下的电平等全部正常
2.查看论坛有无相关问题和解答,直接在论坛搜索关键词,果然收到了类似的,然后按照帖子一步步操作,最后还是不行

3.最后想着要不去问问销售小姐姐什么情况,最后他讲了讲她上次使用的心得“就是刚开始必须保证板子是断电的状态,按P3.2,然后上电,接着松开电源(电源开关是按下去的状态),然后松开P3.2就可以了”,看的出来应该也是很认真的测试过了,不过按照他的这个还是不行,看起来我这个属于疑难杂症了,想着她还喊我冲哥,本着不能被被她看不起的角度,我得仔细分析分析什么情况
4.尝试用驱动卸载,重启的方法测试,均不能解决问题,老提示驱动安装成功,但是ISP软件就是找不到HID1的下载接口
5.尝试比对文件,帖子中提到的这三个文件在我的电脑上均搜索到了,说明不是缺少文件

最后查看设备管理器的详情,发现了问题:(哟呵小样缺少数字签名!!!!!!!)


那问题找到了那就很简单了,直接进入驱动选项修改强制禁用数字签名就好了。具体方法如下:

按住shilf,单击重启,进入高级选项

选择启动设置

进入之后点击重启

进入下面这个界面,最后选择7按钮,直接进入桌面

最后重装驱动,呕吼成功了,黄天不负有心人,小小的驱动难不倒我


这里随便找了个程序,单击下载!

看到下载成功了,哈哈哈,这不得去显摆一下子哈哈,区区一个小小的驱动怎么可能难得到我。
程序也能正常下载了,下面一节开始慢慢的焊接别的部分开始调试每一个电路模块~

zhp 发表于 2023-3-15 17:37:39

太棒了!给32个赞!!!
初学者跟着一步步下来,一定会受益匪浅
最难能可贵的是中途可能会遇到的问题楼主都列出并进行了解答,太贴心了

yyds 发表于 2023-3-16 10:20:31

搬着小板凳来学习啦:lol

32位8051-AI 发表于 2023-3-16 10:37:13

感谢冲哥分享,期待成品

马永锋 发表于 2023-3-16 10:47:04

跟着冲哥学,:victory:。

8H8K64U 发表于 2023-3-16 11:02:03

崇拜之情油然而生

神农鼎 发表于 2023-3-16 13:13:22

STC8H8K64TL-45I-LQFP48/32/TSSOP20,软件模拟USB下载,无法任意调频,
但可以像STC8H8K64U/STC32G12K128的硬件USB直接下载一样,
如下选择有限的频率:


STC出厂时,内部用专业工具校准了多种常用时钟频率参数,
比用户下载程序时利用通信手段自动校准精度强多了 !
强烈建议用户在自己的程序区用STC出厂时专业校准的参数来设置自己需要的内部HIRC工作频率
常用频率,STC出厂时都帮大家用专业设备校准好了,放心使用,常见的频率如下

页: [1] 2 3 4 5 6 7 8 9
查看完整版本: 触摸电子琴从无到有心得分享——基于STC8H4K64TL的电子琴