鸿蒙HarmonyOS开发板提前祝大家新年好!

开发 OpenHarmony
文章由鸿蒙社区产出,想要了解更多内容请前往:51CTO和华为官方战略合作共建的鸿蒙技术社区https://harmonyos.51cto.com/#zz

想了解更多内容,请访问:

51CTO和华为官方合作共建的鸿蒙技术社区

https://harmonyos.51cto.com/#zz

直接上学习链接:https://mp.weixin.qq.com/s/32KI7H_ASYNOwH-P7FjbRA

https://harmonyos.51cto.com/posts/1511


综合以上2个链接和这个图来改的新年好,(这个图对我帮助很大,我不懂音乐,按照这图改的频率)大家想改其他音乐,建议首先看看开头的2个链接的文章!

感觉还是不太完美。下面吧源码共享出来。大家可以完善完善。。

[[374367]]

钢琴上88按键的频率如下表所示:


然后对应到代码中:

  1. float pitch_names_frequency[] = { 
  2.     //0--A0 
  3.     27.50/*A0*/,29.14/*A#0*/,30.87/*B0*/, 
  4.     //3--C1 
  5.     32.70/*C1*/,34.65/*C#1*/,36.71/*D1*/,38.89/*D#1*/,41.20/*E1*/,43.65/*F1*/,46.25/*F#1*/,49.00/*G1*/,51.91/*G#1*/,55.00/*A1*/,58.27/*A#1*/,61.74/*B1*/, 
  6.     //15--C2 
  7.     65.41/*C2*/,69.30/*C#2*/,73.42/*D2*/,77.78/*D#2*/,82.41/*E2*/,87.31/*F2*/,92.5/*F#2*/,98.00/*G2*/,103.8/*G#2*/,110.0/*A2*/,116.5/*A#2*/,123.5/*B2*/, 
  8.     //27--C3 
  9.     130.8/*C3*/,138.6/*C#3*/,146.8/*D3*/,155.6/*D#3*/,164.8/*E3*/,174.6/*F3*/,185.0/*F#3*/,196.0/*G3*/,207.6/*G#3*/,220.0/*A3*/,233.1/*A#3*/,246.9/*B3*/, 
  10.     //39--C4 
  11.     261.6/*C4*/,277.2/*C#4*/,293.7/*D4*/,311.1/*D#4*/,329.6/*E4*/,349.2/*F4*/,370.0/*F#4*/,392.0/*G4*/,415.3/*G#4*/,440.0/*A4*/,466.2/*A#4*/,493.9/*B4*/, 
  12.     //51--C5 
  13.     523.2/*C5*/,554.4/*C#5*/,587.3/*D5*/,    622.2/*D#5*/,659.3/*E5*/,698.5/*F5*/,740.0/*F#5*/,784.0/*G5*/,830.6/*G#5*/,880.0/*A5*/,932.3/*A#5*/,987.8/*B5*/, 
  14.     //63--C6 
  15.     1046/*C6*/,1109/*C#6*/,1175/*D6*/,1245/*D#6*/,1319/*E6*/,1397/*F6*/,1480/*F#6*/,1568/*G6*/,1661/*G#6*/,1760/*A6*/,1865/*A#6*/,1976/*B6*/, 
  16.     //75--C7 
  17.     2093/*C7*/,2217/*C#7*/,2349/*D7*/,2489/*D#7*/,2637/*E7*/,2794/*F7*/,2960/*F#7*/,3136/*G7*/,3322/*G#7*/,3520/*A7*/,3729/*A#7*/,3951/*B7*/, 
  18.     //87 
  19.     4186/*C8*/ 
  20. }; 

 接着找出每个音的频率

  1. #define L_B 51   
  2. #define N_B 63   
  3. #define H_B 75   
  4.  
  5.  
  6. unsigned char ai_ruo_liu_li[] = { 
  7.     N_B+0,N_B+0,N_B+0,N_B+7,  N_B+4,N_B+4,N_B+4,N_B+0, 
  8.     N_B+0,N_B+4,N_B+9,N_B+9,  N_B+5,N_B+4,N_B+2, 
  9.     N_B+2,N_B+4,N_B+5,N_B+5,  N_B+4,N_B+2,N_B+4,N_B+0, 
  10.     N_B+0, N_B+4,N_B+2,N_B+0, L_B+11,N_B+2,N_B+0, 
  11. }; 

 然后根据简谱确定时长:

  1. unsigned char music[]={ 
  2.  
  3. 2,2,4,4, 2,2,4,4, 
  4.  
  5. 2,2,4,4, 2,2,8, 
  6.  
  7. 2,2,4,4, 2,2,4,4, 
  8.  
  9. 2,2,4,4, 2,2,8, 
  10.  
  11. }; 

 第一句最后一个5.的音,换了好几个频率。总感觉不太对劲

我写的还是不太对,多有不足。请大家指正!

视频稍后传到极客Show

祝鸿蒙越来越好!祝正在学习的我们,学习进步!

视频链接:https://harmonyos.51cto.com/show/2355

想了解更多内容,请访问:

51CTO和华为官方合作共建的鸿蒙技术社区

https://harmonyos.51cto.com/#zz

 

责任编辑:jianghua 来源: 鸿蒙社区
相关推荐

2020-12-29 09:59:01

鸿蒙HarmonyOS智能家居

2020-12-16 10:05:48

鸿蒙开发板Onenet平台

2020-11-17 12:15:36

MQTT开发

2013-01-16 08:57:40

飞鱼星无线路由器WLAN

2021-12-30 16:12:07

鸿蒙HarmonyOS应用

2021-01-08 10:00:53

鸿蒙讯飞平台语音控制

2020-12-15 11:57:49

Hi3861 HarmonyOS开发板

2021-02-07 11:08:30

AI

2022-06-28 14:30:29

camera组件照片回传

2020-11-03 09:53:04

体验官方固件程序

2021-08-17 14:40:43

鸿蒙HarmonyOS应用

2020-11-27 11:52:40

OneNet

2020-11-26 12:02:07

OneNet平台

2021-12-15 15:28:18

鸿蒙HarmonyOS应用

2020-10-14 09:37:03

HiBurn鸿蒙.bin文件

2020-12-02 11:55:40

OLED

2020-11-09 10:04:40

鸿蒙

2021-09-28 10:02:26

鸿蒙HarmonyOS应用

2020-11-23 09:32:43

WIFI连接

2020-11-24 11:41:30

websocket
点赞
收藏

51CTO技术栈公众号