久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2537|回復(fù): 2
收起左側(cè)

基于51系列單片機(jī)設(shè)計(jì)的簡(jiǎn)易電子琴 程序電路原理圖

[復(fù)制鏈接]
ID:979426 發(fā)表于 2024-1-4 19:15 | 顯示全部樓層 |閱讀模式
系統(tǒng)使用STC12C5A60S2單片機(jī)作為主控芯片,PCB采用貼片設(shè)計(jì),板子做到纖小精致。
系統(tǒng)擁有兩種模式:
一種為彈奏模式,可以彈奏Do~Si 7個(gè)音,還有低中高三種音的切換。
一種為播放模式,可以播放保存在單片機(jī)內(nèi)的歌曲段碼,且有播放停止、上一首、下一首切換功能。
系統(tǒng)通過OLED顯示,使用I2C協(xié)議,顯示當(dāng)前模式以及彈奏音符名和播放歌曲名稱。
壓縮包內(nèi)附含嘉立創(chuàng)工程文件,Proteus仿真文件,Keil5工程文件

電路原理圖如下:
SCH_Schematic1_1-P1_2023-12-13.png

3D圖.png

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
仿真圖.png

單片機(jī)源程序如下:
  1. #include <STC12C5A60S2.H>
  2. #include "MusicPlayer.h"

  3. sbit beep=P2^2;

  4. void INIT(void)
  5. {
  6.     beep    = 1    ;
  7. //        AUXR        = 0x00 ;
  8.         TMOD    = 0x11 ;
  9.         TH1=table1[7*T1_flag    +   PressTime];
  10.     TL1=table2[7*T1_flag    +   PressTime];
  11.         IT0                = 0           ;
  12.         ET0                = 1           ;        
  13.         ET1                = 1    ;
  14.     EX0                = 1    ;
  15.         EA                = 1    ;
  16.         
  17. }

  18. void main(void)
  19. {
  20.         uint8_t i;
  21.     INIT();
  22.         Led_Init();
  23.         OLED_Init();
  24.         Piano_Display_ON();                              //顯示彈奏模式
  25.         Piano_Note();                                          //顯示低中高音
  26.     while(1)
  27.     {
  28.         if(!play_flag){
  29.                         Piano_Display_ON();                //彈奏模式
  30.                         Piano_Note();                        
  31.             Piano_Player();                        
  32.                 }
  33.         else{
  34.                         Music_Display_ON();                //音樂模式
  35.             Music_Player();                        
  36.                 }
  37.     }

  38. }


  39. void INT_0(void) interrupt 0
  40. {   
  41.         Piano_Scale();                                        //四個(gè)中斷按鍵函數(shù)
  42. }


  43. void Timer0(void) interrupt 1
  44. {
  45.     TR0=0;
  46.         if(music_number==0)
  47.     {
  48.                 TH0=table1[music_table1[i]-1];  //取頻率常數(shù) 和 節(jié)拍常數(shù)  
  49.                 TL0=table2[music_table1[i]-1];
  50.         }
  51.         else if(music_number==1)
  52.     {
  53.                 TH0=table1[music_table2[i]-1];  //取頻率常數(shù) 和 節(jié)拍常數(shù)  
  54.                 TL0=table2[music_table2[i]-1];
  55.         }
  56.         else if(music_number==2)
  57.     {
  58.                 TH0=table1[music_table3[i]-1];  //取頻率常數(shù) 和 節(jié)拍常數(shù)  
  59.                 TL0=table2[music_table3[i]-1];
  60.         }
  61.         else if(music_number==3)
  62.     {
  63.                 TH0=table1[music_table4[i]-1];  //取頻率常數(shù) 和 節(jié)拍常數(shù)  
  64.                 TL0=table2[music_table4[i]-1];
  65.         }
  66.         else if(music_number==4)
  67.     {
  68.                 TH0=table1[music_table5[i]-1];  //取頻率常數(shù) 和 節(jié)拍常數(shù)  
  69.                 TL0=table2[music_table5[i]-1];
  70.         }
  71.         else if(music_number==5)
  72.     {
  73.                 TH0=table1[music_table6[i]-1];  //取頻率常數(shù) 和 節(jié)拍常數(shù)  
  74.                 TL0=table2[music_table6[i]-1];
  75.         }
  76.         else if(music_number==6)
  77.     {
  78.                 TH0=table1[music_table7[i]-1];  //取頻率常數(shù) 和 節(jié)拍常數(shù)  
  79.                 TL0=table2[music_table7[i]-1];
  80.         }
  81.         beep=!beep;
  82.         TR0=1;
  83. }


  84. void Timer1(void) interrupt 3
  85. {
  86.     TR1=0;
  87.     TH1=table1[7*T1_flag    +   PressTime];
  88.     TL1=table2[7*T1_flag    +   PressTime];
  89.     beep=!beep;
  90.     TR1=1;
  91. }
復(fù)制代碼

仿真程序與立創(chuàng)工程: 電子琴-STC12C5A60S2.7z (2.83 MB, 下載次數(shù): 23)

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:1119420 發(fā)表于 2024-5-11 09:34 | 顯示全部樓層
這個(gè)怎么解壓呀
回復(fù)

使用道具 舉報(bào)

ID:979426 發(fā)表于 2025-2-25 15:49 | 顯示全部樓層

7Zip軟件,不好意思
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲一区 中文字幕 | 6080亚洲精品一区二区 | 久久草在线视频 | 精品无码久久久久久国产 | 国产精品福利一区二区三区 | 别c我啊嗯国产av一毛片 | 欧美一区二区在线观看 | 日韩欧美久久精品 | 尤物在线精品视频 | 国产成人免费视频 | 黑人精品欧美一区二区蜜桃 | 精品国产免费人成在线观看 | 91电影在线播放 | 在线日韩视频 | 亚洲综合色丁香婷婷六月图片 | 午夜av一区二区 | 欧美aⅴ片 | 久久中文字幕在线 | 99在线国产 | 中文字幕视频一区二区 | 一级无毛片 | 亚洲精品一区二区冲田杏梨 | 国产精品久久一区二区三区 | 久久一区二区三区免费 | 国产91久久久久蜜臀青青天草二 | 九九久久精品 | 人人叉 | 无码一区二区三区视频 | 国产一区二区在线播放 | 欧美久久一区二区三区 | 免费国产黄网站在线观看视频 | 99久热在线精品视频观看 | 日本中出视频 | 欧美 日韩 在线播放 | 欧美xxxx色视频在线观看免费 | 久草免费视 | 黄色日批视频 | 欧美一区二区精品 | 久久精品国产一区二区三区不卡 | 午夜三级网站 | 久久综合色综合 |