怎样得到蜂鸣器的歌曲代码?

2025-04-09 09:05:59
推荐回答(1个)
回答1:

蜂鸣器播放乐曲主要取决于两个参数, 音调和音长. 音调为do, re, mi等, 音长是同样的音调持续的时间.
蜂鸣器的歌曲播放的驱动方式就变成碰到do就输出多少频率(音调即频率), 然后保证这个音调持续多少时间. 每个人写的驱动都有可能不一样(例如有些人do, re, mi只用1,2,3表示, 然后再查频率表, 有些人则直接用相应输出频率的设置值)
所以针对你的歌曲驱动方法(你必须先要了解), 就可以将歌曲转换为代码.
举个例子: 8-8-5-5-3-3-1-1-5-4-3-2-1-- (1: do, 8代表高do, -代表一个节拍), 假设我的驱动方法是1的对应的频率设置0x55, 2对应0x65, 以此类推 8为0xC5, 另假设一个节拍"-"对应的时间长度设置为0x30, 则上面的简谱可以转换为 {{0xC5, 0x30}, {0xC5, 0x30}, {0x95, 0x30}, {0x95, 0x30}, {0x75, 0x30}, {0x75, 0x30}, {0x55, 0x30}, {0x55, 0x30}, {0x95, 0x30}, {0x85, 0x30},{0x75, 0x30}, {0x65, 0x30}, {0x55, 0x60}}
知道规律后就可以在电脑上面写一个程序专门将简谱转换成代码.