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

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

QQ登錄

只需一步,快速開始

搜索
查看: 16599|回復(fù): 11
打印 上一主題 下一主題
收起左側(cè)

基于51單片機(jī)的無線音樂門鈴設(shè)計(jì)

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
  采用STC89C51單片機(jī)作為主控制器,外部加上三極管驅(qū)動(dòng)放音設(shè)備,超再生無線模塊實(shí)現(xiàn)無線的鏈接。

制作出來的實(shí)物圖如下:



遙控器采用PT2262編碼芯片對(duì)信號(hào)編碼,由超再生無線模塊發(fā)射信號(hào)。

遙控器結(jié)構(gòu)圖:


電路原理圖如下:


◆發(fā)射器采用電池供電,靜態(tài)電流小;
◆采用無線電進(jìn)行遙控,具有一定的遙控距離;
◆在同一區(qū)域范圍內(nèi)能有多套系統(tǒng)同時(shí)工作而相互間不影響;
◆門鈴按鍵按下有音樂響起;
◆主機(jī)有復(fù)位按鍵,可以隨時(shí)關(guān)閉音樂;
◆門鈴的音樂為3首以上,可以通過程序更改。


pt2262與pt2272無線模塊的焊接:
  • 將模塊引腳的黑色塑料用偏口鉗子剪掉
  • 將引腳折彎。這樣就可以焊接在板子上了。
3、模塊焊接好后,每個(gè)模塊的ANT都要接一個(gè)23cm長的天線(導(dǎo)線就可以)。這樣遙控距離更遠(yuǎn)!


無線音樂門鈴元件清單:

接收:
1.7*9萬用板
2.8歐喇叭
3.自鎖開關(guān)
4.12m晶振
5.10k電阻
6.1k電阻*2
7.820k(振蕩電阻)
8.30pf電容*2
9.22uf電容
10.40腳IC座
11.18腳IC座
12.PT2272-M4
13.3MM紅色LED燈
14.stc89c51
15.315接收模塊
16.4P母座
17.8550三極管
18.usb電源線+DC插頭
發(fā)射:
1.    7*9萬用板
2.18腳ic插座
3.PT2262
4.4.7m電阻(振蕩電阻)
5.10k*2
6.3mm紅色led燈
7.輕觸按鍵
8.SIP3母座
9.315發(fā)射
10.電池
11.電池盒

單片機(jī)源碼:
  1. include<REG51.H>
  2. #define sound_amount 5 // 歌曲的數(shù)量
  3. sbit pause=P2^5; // 播放 暫停
  4. sbit speaker=P2^7; // 無源蜂鳴器
  5. //////////////////////////////////////////////
  6. unsigned char timer0h,timer0l,time;//timer0h,timer0l 為定時(shí)器 T0的高低位初
  7. 值,time 為對(duì)應(yīng)的節(jié)拍時(shí)間
  8. unsigned char music_num,num; //music_num 為歌曲編號(hào) ,music_num=0表示剛
  9. 開機(jī)時(shí)的狀態(tài) ,num 是查找歌曲數(shù)據(jù)表的地址
  10. signed char fre; // 對(duì)應(yīng)頻率數(shù)據(jù)表的地址
  11. bit play_enable; // 歌曲播放的使能標(biāo)志位 , 用于播放 暫停
  12. void delay(unsigned char t);  // 延時(shí)子函數(shù) , 控制發(fā)音的時(shí)間長度
  13. void delayms(unsigned int t);  // 普通延時(shí)子程序 , 可用于按鍵消抖
  14. void song(void);  // 演奏一個(gè)音符
  15. void music_play(void); // 播放歌曲
  16. //////////////////////////////////////////////
  17. // 每三個(gè)數(shù)字 , 代表一個(gè)音符
  18. // 第一個(gè)數(shù)字是音符的數(shù)值 1234567之一( 第幾個(gè)音 ), 代表哆來咪發(fā) ...
  19. // 第二個(gè)數(shù)字是 0123之一, 代表低音 中音 高音 超高音 ( 第幾個(gè)八度 )
  20. // 第三個(gè)數(shù)字是時(shí)間長度 , 以半拍為單位 , 樂曲數(shù)據(jù)表的結(jié)尾是三個(gè) 0
  21. //////////////////////////////////////////////
  22. // 《祝你生日快樂》
  23. unsigned char code song1[]={
  24. 5,1,1, 5,1,1, 6,1,2, 5,1,2, 1,2,2, 7,1,4,
  25. 5,1,1, 5,1,1, 6,1,2, 5,1,2, 2,2,2, 1,2,4,
  26. 5,1,1, 5,1,1, 5,2,2, 3,2,2, 1,2,2, 7,1,2, 6,1,2,
  27. 4,2,1, 4,2,1, 3,2,2, 1,2,2, 2,2,2, 1,2,4, 0,0,0};
  28. - 29 -
  29. // 《世上只有媽媽好》
  30. unsigned char code song2[]={
  31. 6,2,3, 5,2,1, 3,2,2, 5,2,2, 1,3,2, 6,2,1,
  32. //6,2,3 代表 6, 中音,3 個(gè)半拍 ;
  33. //5,2,1 代表 5, 中音,1 個(gè)半拍 ;
  34. //3,2,2 代表 3, 中音,2 個(gè)半拍 ;
  35. //5,2,2 代表 5, 中音,2 個(gè)半拍 ;
  36. //1,3,2 代表 1, 高音,2 個(gè)半拍 ;
  37. //...
  38. 5,2,1,6,2,4, 3,2,2, 5,2,1, 6,2,1, 5,2,2, 3,2,2, 1,2,1,6,1,1, 5,2,1,
  39. 3,2,1, 2,2,4, 2,2,3, 3,2,1, 5,2,2, 5,2,1, 6,2,1, 3,2,2, 2,2,2,
  40. 1,2,4, 5,2,3, 3,2,1,2,2,1, 1,2,1, 6,1,1, 1,2,1, 5,1,6, 0,0,0};
  41. // 《當(dāng)你孤單你會(huì)想起誰》
  42. unsigned char code song3[]={
  43. 3,2,2, 3,2,1, 4,2,1, 3,2,2, 2,2,1, 1,2,1, 2,2,2, 5,2,2, 2,2,2, 2,2,3,
  44. 1,2,2, 1,2,1, 2,2,1, 1,2,2, 7,1,1, 6,1,1, 7,1,2, 3,2,2, 7,1,2, 7,1,3,
  45. 6,1,2, 2,2,1, 3,2,1, 2,2,1, 1,2,1, 6,1,2, 5,1,2, 2,2,1, 3,2,1, 2,2,1,
  46. 1,2,1, 6,1,2, 6,1,2, 2,2,1, 3,2,1, 2,2,1, 1,2,1, 6,1,1, 7,1,1, 1,2,6,
  47. 0,0,0 };
  48. // 《鄉(xiāng)間小路》
  49. unsigned char code song4[]={
  50. 3,1,2, 3,1,1, 3,1,1, 6,0,1, 6,0,1, 1,1,2,
  51. 6,0,1, 5,0,1, 6,0,4, 6,0,2, 6,0,1 ,6,0,1, 6,0,2, 6,0,1, 1,1,1,
  52. 2,1,2, 2,1,1, 3,1,1, 2,1,4, 3,1,1, 3,1,1, 3,1,1, 2,1,1, 4,1,2,
  53. 4,1,2, 3,1,2, 2,1,1, 1,1,1, 2,1,4, 7,0,1, 7,0,1, 7,0,1, 6,0,1,
  54. 5,0,1, 5,0,1, 6,0,1, 7,0,1, 7,0,1, 6,0,1, 5,0,1, 6,0,4, 6,1,2,
  55. 3,1,1, 6,1,1, 7,1,1, 6,1,1, 5,1,1, 5,1,2, 5,1,1, 2,1,1, 5,1,1,
  56. 6,1,1, 5,1,1, 4,1,1, 4,1,2, 4,1,1, 3,1,1, 2,1,2, 1,1,1, 2,1,1,
  57. - 30 -
  58. 3,1,1, 2,1,1, 1,1,1, 2,1,1, 3,1,4, 6,1,2, 3,1,1, 6,1,1, 7,1,1,
  59. 6,1,1, 5,1,1, 5,1,2, 2,1,1, 5,1,1, 6,1,1, 5,1,1, 4,1,1, 0,0,0};
  60. // 《送別》
  61. unsigned char code song5[]={
  62. 5,1,2, 3,1,3, 5,1,1, 1,2,3, 6,1,2, 1,2,2,
  63. 5,1,4, 5,1,2, 1,1,1, 2,1,1, 3,1,2, 2,1,1, 1,1,1, 2,1,4, 5,1,2,
  64. 3,1,1, 5,1,1, 1,2,2, 7,1,1, 6,1,2, 1,2,2, 5,1,4, 5,1,2, 2,1,1,
  65. 3,1,1, 4,1,2, 7,0,1, 1,1,4, 6,1,2, 1,2,2, 1,2,4, 7,1,2, 6,1,1,
  66. 7,1,1, 1,2,4, 6,1,1, 7,1,1, 1,2,1, 6,1,1, 6,1,1, 5,1,1, 3,1,1,
  67. 1,1,1, 2,1,8, 5,1,2, 3,1,1, 5,1,1, 1,2,2, 7,1,1, 6,1,2, 1,2,2,
  68. 5,1,4, 5,1,2, 2,1,1, 3,1,1, 4,1,2, 7,0,2, 1,1,4, 0,0,0};
  69. // 頻率- 半周期數(shù)據(jù)表 高八位 共保存了四個(gè)八度的 28 個(gè)頻率數(shù)據(jù)
  70. unsigned char code FREQH[]={
  71. 0xF2, 0xF3, 0xF5, 0xF5, 0xF6, 0xF7, 0xF8, // 低音 1234567
  72. 0xF9, 0xF9, 0xFA, 0xFA, 0xFB, 0xFB, 0xFC, 0xFC,//1,2,3,4,5,6,7,i
  73. 0xFC, 0xFD, 0xFD, 0xFD, 0xFD, 0xFE, // 高音 234567
  74. 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFF}; // 超高音 1234567
  75. // 頻率- 半周期數(shù)據(jù)表 低八位
  76. unsigned char code FREQL[]={
  77. 0x42, 0xC1, 0x17, 0xB6, 0xD0, 0xD1, 0xB6, // 低音 1234567
  78. 0x21, 0xE1, 0x8C, 0xD8, 0x68, 0xE9, 0x5B, 0x8F, //1,2,3,4,5,6,7,i
  79. 0xEE, 0x44, 0x6B, 0xB4, 0xF4, 0x2D, // 高音 234567
  80. 0x47, 0x77, 0xA2, 0xB6, 0xDA, 0xFA, 0x16}; // 超高音 1234567
  81. void main(void)
  82. {
  83. - 31 -
  84. TMOD=0x11; //T0 T1 均在工作方式 1
  85. ET0=1; //T0 開中斷
  86. EA=1; //CPU 開中斷
  87. while(1)
  88. {
  89. music_play();  // 根據(jù)當(dāng)前狀態(tài)播放相應(yīng)歌曲的某個(gè)音符
  90. if(!pause)  // 暫停鍵處理
  91. {
  92. delayms(5);
  93. if(!pause)
  94. {
  95. if(music_num==0) //music_num=0 只有在剛開機(jī) , 且未按
  96. 下暫停鍵時(shí)存在 , 表示剛開機(jī)時(shí)的狀態(tài) , 按下后從第一首開始播放
  97. {
  98. music_num=1; // 歌曲序號(hào)置 1
  99. num=0; // 從頭播放
  100. play_enable=1;  // 允許播放
  101. }
  102. else
  103. {
  104. play_enable=~play_enable;
  105. speaker=1;
  106. }
  107. while(!pause)  // 若按著暫停鍵不放手時(shí)的處理
  108. {
  109. if(play_enable==0){}  // 如果是暫停,則顯示時(shí)
  110. 間不變 // (暫停時(shí) play_enable==0 )
  111. }
  112. - 32 -
  113. }// 暫停鍵處理結(jié)束
  114. }//while 結(jié)束
  115. }
  116. }
  117. void delayms(unsigned int t)  //MS 延時(shí)子程序
  118. {
  119. unsigned int i,j;
  120. for(i=0;i<t;i++)
  121. {
  122. for(j=0;j<123;j++)
  123. ;
  124. }
  125. }
  126. void delay(unsigned char t)  // 延時(shí)子函數(shù) , 控制發(fā)音的時(shí)間長度 , 每個(gè)節(jié)拍
  127. 0.4S
  128. {
  129. unsigned char t1;
  130. unsigned long t2;
  131. for(t1=0;t1<t;t1++)  // 嵌套循環(huán) , 共延時(shí) t 個(gè)半拍
  132. {
  133. for(t2=0;t2<8000;t2++) // 延時(shí)期間 , 可進(jìn)入 T0中斷去發(fā)音
  134. }
  135. TR0=0;  // 關(guān)閉 T0, 停止發(fā)音
  136. }
  137. void timer0(void) interrupt 1 //T0 中斷程序 , 控制發(fā)音的音調(diào)
  138. {
  139. speaker=!speaker;// 輸出方波 , 發(fā)音
  140. - 33 -
  141. TH0=timer0h;  // 下次的中斷時(shí)間 , 這個(gè)時(shí)間控制音調(diào)高低
  142. TL0=timer0l;
  143. }
  144. void song(void) // 演奏一個(gè)音符
  145. {
  146. TH0=timer0h; // 控制音調(diào)
  147. TL0=timer0l;
  148. TR0=1;  // 啟動(dòng) T0, 由 T0 輸出方波發(fā)音
  149. delay(time); // 每個(gè)音符的演奏時(shí)間
  150. }
  151. ///////////////////////////////////////////////////////////////////////////
  152. /////////
  153. void music_play(void)// 播放相應(yīng)歌曲的某個(gè)音符
  154. {
  155. if((music_num==1)&&(play_enable==1))
  156. {
  157. fre=song1[num]+7*song1[num+1]-1;// 第 i 個(gè)是音符 , 第 i+1 個(gè)是第幾
  158. 個(gè)八度
  159. timer0l=FREQL[fre];
  160. time=song1[num+2]; // 讀出時(shí)間長度數(shù)值
  161. num+=3;
  162. if(fre==-1)  // 判斷歌曲的結(jié)束位 , 結(jié)束后轉(zhuǎn)到下一首
  163. {
  164. num=0; // 下一首從頭播放
  165. music_num=2;
  166. play_enable=0;
  167. }
  168. song(); // 發(fā)出一個(gè)音符
  169. }
  170. - 34 -
  171. if((music_num==2)&&(play_enable==1))
  172. {
  173. fre=song2[num]+7*song2[num+1]-1;
  174. timer0h=FREQH[fre];
  175. timer0l=FREQL[fre];
  176. time=song2[num+2];
  177. num+=3;
  178. if(fre==-1)
  179. {
  180. play_enable=0;
  181. }
  182. song();
  183. }
  184. if((music_num==3)&&(play_enable==1))
  185. {
  186. fre=song3[num]+7*song3[num+1]-1;
  187. timer0h=FREQH[fre];
  188. timer0l=FREQL[fre];
  189. time=song3[num+2];
  190. num+=3;
  191. if(fre==-1)
  192. {
  193. num=0;
  194. music_num=4;
  195. play_enable=0;
  196. }
  197. song();
  198. if((music_num==4)&&(play_enable==1))
  199. {
  200. fre=song4[num]+7*song4[num+1]-1;
  201. - 35 -
  202. timer0h=FREQH[fre];
  203. num+=3;
  204. if(fre==-1)
  205. {
  206. num=0;
  207. music_num=5;
  208. play_enable=0;
  209. }
  210. song();
  211. }
  212. if((music_num==5)&&(play_enable==1))
  213. {
  214. fre=song5[num]+7*song5[num+1]-1;
  215. timer0h=FREQH[fre];
  216. timer0l=FREQL[fre];
  217. time=song5[num+2];
  218. num+=3;
  219. if(fre==-1)
  220. {
  221. num=0;
  222. music_num=1;
  223. play_enable=0;
  224. }
  225. song();
  226. }
  227. }
復(fù)制代碼



全部資料51hei下載地址:
無線音樂門鈴資料.rar (10.68 MB, 下載次數(shù): 179)


評(píng)分

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

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏7 分享淘帖 頂1 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:168745 發(fā)表于 2018-6-9 09:31 | 只看該作者
好資料,51黑有你更精彩!!!
回復(fù)

使用道具 舉報(bào)

板凳
ID:270403 發(fā)表于 2018-9-1 06:49 | 只看該作者
能通過改造無線鼠標(biāo)來制作無線門鈴嗎?鼠標(biāo)左擊,門鈴響。
回復(fù)

使用道具 舉報(bào)

地板
ID:328745 發(fā)表于 2018-9-11 17:57 | 只看該作者
您好,請(qǐng)問有實(shí)物圖的原理圖嗎,您上面給的PCB圖與清單對(duì)應(yīng)不上
回復(fù)

使用道具 舉報(bào)

5#
ID:355428 發(fā)表于 2019-5-5 16:43 | 只看該作者
沒有仿真圖嘛?
回復(fù)

使用道具 舉報(bào)

6#
ID:322742 發(fā)表于 2019-5-7 10:32 來自手機(jī) | 只看該作者
沒有仿真嗎
回復(fù)

使用道具 舉報(bào)

7#
ID:484435 發(fā)表于 2019-5-7 17:57 | 只看該作者
謝謝分享
回復(fù)

使用道具 舉報(bào)

8#
ID:555097 發(fā)表于 2019-6-4 22:49 | 只看該作者
謝謝分享
回復(fù)

使用道具 舉報(bào)

9#
ID:566013 發(fā)表于 2019-6-19 13:31 | 只看該作者
為什么我的門鈴沒聲音哈,程序哪里出現(xiàn)了缺少什么?

程序.png (62.66 KB, 下載次數(shù): 79)

程序.png
回復(fù)

使用道具 舉報(bào)

10#
ID:751847 發(fā)表于 2020-5-18 21:24 | 只看該作者
感謝分享
回復(fù)

使用道具 舉報(bào)

11#
ID:541089 發(fā)表于 2021-4-3 22:09 | 只看該作者
室友做這個(gè)玩,順便給你加了塊PCB,哈哈
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产精品免费在线 | 欧美激情 一区 | 大学生a级毛片免费视频 | 国产一区二区不卡 | 亚洲高清视频一区二区 | 亚洲日本一区二区三区四区 | 国产精品日韩高清伦字幕搜索 | 午夜电影一区二区 | 欧美日韩在线综合 | 欧美国产一区二区 | 天天夜夜操 | 亚洲欧美另类在线 | 一区二区在线视频 | 亚洲一区二区免费看 | 亚洲久久一区 | 国产欧美精品一区二区 | 国产成人精品久久 | 国产精品亚洲一区 | 性生活毛片 | 国产精品3区 | 国产亚洲一区二区三区 | 精品日韩 | 亚洲精品久久久久久一区二区 | 欧美综合一区 | 欧美久久久久久久久 | 盗摄精品av一区二区三区 | 天天综合日日夜夜 | 日韩综合一区 | 欧美另类视频 | 成人在线观看网址 | 精品一区二区三区不卡 | 午夜电影日韩 | 精品久久久久久久人人人人传媒 | 色婷婷九月| 国产福利视频 | 国产精品一区二区视频 | 亚洲免费视频在线观看 | 亚洲精品一区二区网址 | 狠狠草视频 | 亚洲视频一区在线观看 | 国产一二三区在线 |