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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5992|回復: 3
收起左側

單片機數字音樂盒課程設計說明書

[復制鏈接]
ID:330903 發表于 2018-5-16 14:24 | 顯示全部樓層 |閱讀模式
《單片機原理與應用課程設計》說明書
  • 摘要
本設計是以AT89C51芯片的電路為基礎,利用keil和proteus仿真軟件,設計出一個多功能音樂盒。音樂盒主要由五大模塊構成,包括AT89C51芯片、4*4矩陣鍵盤、蜂鳴器、晶振復位電路和12864液晶顯示器。有開機鍵(開機時顯示welcom),暫停鍵、播放鍵、上一曲、下一曲以及10個用來選擇歌曲的鍵。此外用戶可以按照自己的喜好選擇音樂并將其轉化成機器碼存入單片機的存儲器中。對于不同型號的單片機只需要相應的改變一下地址即可。該軟、硬件系統具有很好的通用性,很高的實際使用價值。

  • 原理描述
  2.1芯片AT89C51的介紹
AT89C51是一種帶4K字節閃存可編程可擦除只讀存儲器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS 8位微處理器,俗稱單片機。AT89C2051是一種帶2K字節閃存可編程可擦除只讀存儲器的單片機。單片機的可擦除只讀存儲器可以反復擦除100次。該器件采用ATMEL高密度非易失存儲器制造技術制造,與工業標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡版本。AT89C51單片機為很多嵌入式控制系統提供了一種靈活性高且價廉的方案。外形及引腳排列如圖2.1所示
圖3.2 AT89C51引腳排列圖
    2.2 LCD12864的顯示
12864是一種圖形點陣液晶顯示器,它主要由行驅動器/列驅動器及128×64全點陣液晶顯示器組成。它有8頁(8行一頁)、128列,可完成圖形顯示,也可以顯示8×4個漢字。
12864硬件模塊說明:
圖2.2中,IC1為行驅動器,IC2、IC3為行驅動器,外部的CPU通過13根線對模塊進行控制。其中DB7—DB0為并行數據總線,E、R/W、D均為控制信號線,CSA、CSB則為選屏信號,分別控制左、右半屏。
圖2.2  12864的硬件模塊圖
2.3 音調的產生
頻率的高低決定了音調的高低。音樂的十二平均率規定:每兩個八度音(如簡譜中的中音1和高音1)之間的頻率相差一倍。在兩個八度音之間又分為十二個半音。另外,音名A(簡譜中的低音6)的頻率為440Hz,音名B到C之間、E到F之間為半音,其余為全音。由此可以計算出簡譜中從低音1到高音1之間每個音名對應的頻率,所有不同頻率的信號都是從同一個基準頻率分頻得到的。
1、要產生音頻脈沖,只要算出某一音頻的周期(1/頻率),然后將此周期除以2,即為半周期的時間。利用定時器計時這半個周期時間,每當計時到后就將輸出脈沖的I/O反相,然后重復計時此半周期時間再對I/O反相,就可在I/O腳上得到此頻率的脈沖。
              2、利用AT89C51的內部定時器使其工作在計數器模式MODE1下,改變計數值TH0及TL0以產生不同頻率的方法。
              此外結束符和休止符可以分別用代碼00H和FFH來表示,若查表結果為00H,則表示曲子終了;若查表結果為FFH,則產生相應的停頓效果。
              3、例如頻率為523Hz,其周期T=1/523=1912us,因此只要令計數器計時956us/1us=956,在每次技術956次時將I/O反相,就可得到中音DO(523Hz)。
              計數脈沖值與頻率的關系公式如下:
              N=Fi2Fr                                                      
N:計算值;                            Fi:內部計時一次為1us,故其頻率為1MHz;      
4、其計數值的求法如下:
初值T=65536-N=65536-Fi2Fr
例如:設K=65536,F=1000000=Fi=1MHz,球低音DO(261Hz)。中音DO(523Hz)。高音的DO(1046Hz)的計算值
T=65536-N=65536-Fi2Fr=65536-10000002Fr=65536-500000/Fr
低音DO的T=65536-500000/262=63627
低音DO的T=65536-500000/523=64580
低音DO的T=65536-500000/1047=65059
  • C調各音符頻率與計數值T的對照表如表4.1所示。
表2.3  C調各音符頻率與計數值T的對照表
低音
頻率
N
參數
中音
頻率
N
參數
高音
頻率
N
參數
Do
262
1908
229
Do
523
956
115
Do
1046
57
57
Do#
277
1805
217
Do﹟
554
903
108
Do﹟
1109
54
54
Re3
294
1701
204
Re
587
852
102
Re
1175
51
51
Re﹟
311
1608
193
Re﹟
622
804
97
Re﹟
1245
48
48
Mi
330
1515
182
Mi
659
759
91
Mi
1318
45
45
Fa
349
1433
172
Fa
698
716
86
Fa
1397
43
43
Fa﹟
370
1351
162
Fa﹟
740
676
81
Fa﹟
1480
41
41
So
392
1276
153
So
784
638
77
So
1568
38
38
So﹟
415
1205
145
So﹟
831
602
72
So﹟
1661
36
36
La
440
1136
136
La
880
568
68
La
1760
34
34
La﹟
464
1078
129
La﹟
932
536
64
La﹟
1865
32
32
Si
494
1012
121
Si
988
506
61
Si
1976
30
30

2.4 節拍的確定
若要構成音樂,光有音調是不夠的,還需要節拍,讓音樂具有旋律(固定的律動),而且可以調節各個音的快滿度。“節拍”,即Beat,簡單說就是打拍子,就像我們聽音樂不自主的隨之拍手或跺腳。若1拍實0.5s,則1/4 拍為0.125s。至于1拍多少s,并沒有嚴格規定,就像人的心跳一樣,大部分人的心跳是每分鐘72下,有些人快一點,有些人慢一點,只要聽的悅耳就好。音持續時間的長短即時值,一般用拍數表示。休止符表示暫停發音。
一首音樂是由許多不同的音符組成的,而每個音符對應著不同頻率,這樣就可以利用不同的頻率的組合,加以與拍數對應的延時,構成音樂。了解音樂的一些基礎知識,我們可知產生不同頻率的音頻脈沖即能產生音樂。對于單片機來說,產生不同頻率的脈沖是非常方便的,利用單片機的定時/計數器來產生這樣的方波頻率信號。因此,需要弄清楚音樂中的音符和對應的頻率,以及單片機定時計數的關系。
表2.41節拍與節拍碼對照
節拍碼
節拍數
節拍碼
節拍數
1
1/4拍
1
1/8拍
2
2/4拍
2
1/4拍
3
3/4拍
3
3/8拍
4
1拍
4
2/1拍
5
1又1/4拍
5
5/8拍
6
1又1/2拍
6
3/4拍
8
2拍
8
1拍
A
2又1/2拍
A
1又1/4拍
C
3拍
C
1又1/2拍
F
3又3/4拍

每個音符使用1個字節,字節的高4位代表音符的高低,低4位代表音符的節拍,表2.41為節拍碼的對照。如果1拍為0.4秒,1/4拍實0.1秒,只要設定延遲時間就可求得節拍的時間。假設1/4拍為1DELAY,則1拍應為4DELAY,以此類推。所以只要求得1/4拍的DELAY時間,其余的節拍就是它的倍數,如圖5.3為1/4和1/8節拍的時間設定。
表2.42 1/4和1/8節拍的時間設定
曲調值
DELAY
曲調值
DELAY
調4/4
125毫秒
調4/4
62毫秒
調3/4
187毫秒
調3/4
94毫秒
調2/4
250毫秒
調2/4
125毫秒

2.5 音符的編碼
do re mi fa so la si分別編碼為1~7,重音do編為8,重音re編為9,停頓編為0。播放長度以十六分音符為單位(在本程序中為165ms),一拍即四分音符等于4個十六分音符,編為4,其它的播放時間以此類推。音調作為編碼的高4位,而播放時間作為低4位,如此音調和節拍就構成了一個編碼。以0xff作為曲譜的結束標志。
舉例1:音調do,發音長度為兩拍,即二分音符,將其編碼為0x18
舉例2:音調re,發音長度為半拍,即八分音符,將其編碼為0x22
歌曲播放的設計。先將歌曲的簡譜進行編碼,儲存在一個數據類型為unsigned char 的數組中。程序從數組中取出一個數,然后分離出高4位得到音調,接著找出相應的值賦給定時器0,使之定時操作蜂鳴器,得出相應的音調;接著分離出該數的低4位,得到延時時間,接著調用軟件延時。
  • 程序設計與硬件電路
3.1設計思路
程序設計部分主要有:字模部分、LCD12864顯示、簡譜音調及節拍、計時、鍵盤掃描部分。硬件設計部分見下圖3.11:
設計思路見如下實驗控制流程圖3.12:
3.2 設計程序見附件
  • 仿真調試及操作說明
1、按下開機鍵ON/C
2、按下歌曲鍵0播放第一首歌
3、操作說明
4×4鍵盤共16個鍵,操作說明如下:
“0”:歌曲0,《母親》
“1”:歌曲1,《世上只有媽媽好》
“2”:歌曲2,《兒行千里》
“3”:歌曲3,《感恩的心》
“4”:歌曲4,《七子之歌》
“5”:歌曲5,《小青蛙》
“6”:歌曲6,《找朋友》
“7”:歌曲7,《千年之戀》
“8”:歌曲8,《兩只老虎》
“9”:歌曲9,《寂寞沙洲冷》
“ON/C”:開機鍵
“=”:暫停鍵,此時音樂和播放時間都暫停
“×”(乘號):播放鍵
“+”:下一曲,播放下一首歌曲
“-”:上一曲,播放上一首歌曲
  • 心得體會
參考資料
[1] 譚浩強.C語言程序設計(第二版)[M],北京:清華大學出版社,1991.
[2] 曾屹.單片機原理與應用(第一版)[M],中南大學出版社,2009.

單片機源程序如下:
  1. /* C語言音樂盒源程序設計 */
  2. #include <reg51.h>
  3. #include <intrins.h>
  4. #define uchar unsigned char
  5. #define uint  unsigned int
  6. uchar count=0,count1=0;              //count1 歌曲標志
  7. uchar key,count2,h=1,i;     
  8. uchar  temp;     //temp歌調
  9. uchar s1,s2,m1,m2;
  10. uchar second,minute,j=0;
  11. void delay1(uint z);              //延時1ms
  12. sbit key2=P3^2;              // 按key2可切換歌曲
  13. sbit key1=P3^3;
  14. sbit fm=P3^7;//蜂鳴器連續的IO口
  15. sbit rs=P2^2;
  16. sbit rw=P2^1;  
  17. sbit e=P2^0;   
  18. sbit busy=P0^0;            
  19. sbit CS1=P2^4;  
  20. sbit CS2=P2^3;  
  21. //==================字模====================//
  22. char code shu[22][8]={
  23. {0xFF,0x1F,0xEF,0xF7,0xF7,0xEF,0x1F,0xFF},
  24. {0xFF,0xF0,0xEF,0xDF,0xDF,0xEF,0xF0,0xFF},/*"0",0*/
  25. {0xFF,0xEF,0xEF,0x07,0xFF,0xFF,0xFF,0xFF},
  26. {0xFF,0xDF,0xDF,0xC0,0xDF,0xDF,0xFF,0xFF},/*"1",1*/
  27. {0xFF,0x8F,0xF7,0xF7,0xF7,0x77,0x8F,0xFF},
  28. {0xFF,0xCF,0xD7,0xDB,0xDD,0xDE,0xCF,0xFF},/*"2",2*/
  29. {0xFF,0xCF,0xF7,0x77,0x77,0xB7,0xCF,0xFF},
  30. {0xFF,0xE7,0xDF,0xDF,0xDF,0xEE,0xF1,0xFF},/*"3",3*/
  31. {0xFF,0xFF,0x3F,0xDF,0xEF,0x07,0xFF,0xFF},
  32. {0xFF,0xF8,0xFB,0xDB,0xDB,0xC0,0xDB,0xFF},/*"4",4*/
  33. {0xFF,0x07,0xF7,0x77,0x77,0xF7,0xF7,0xFF},
  34. {0xFF,0xE6,0xDE,0xDF,0xDF,0xEE,0xF1,0xFF},/*"5",5*/
  35. {0xFF,0x1F,0xEF,0x77,0x77,0xE7,0xFF,0xFF},
  36. {0xFF,0xF0,0xEE,0xDF,0xDF,0xEE,0xF1,0xFF},/*"6",6*/
  37. {0xFF,0xC7,0xF7,0xF7,0x37,0xC7,0xF7,0xFF},
  38. {0xFF,0xFF,0xFF,0xC0,0xFF,0xFF,0xFF,0xFF},/*"7",7*/
  39. {0xFF,0x8F,0x77,0xF7,0xF7,0x77,0x8F,0xFF},
  40. {0xFF,0xE3,0xDD,0xDE,0xDE,0xDD,0xE3,0xFF},/*"8",8*/
  41. {0xFF,0x1F,0xEF,0xF7,0xF7,0xEF,0x1F,0xFF},
  42. {0xFF,0xFF,0xCE,0xDD,0xDD,0xEE,0xF0,0xFF},/*"9",9*/
  43. {0xFF,0xFF,0xFF,0x3F,0x3F,0xFF,0xFF,0xFF},
  44. {0xFF,0xFF,0xFF,0xCF,0xCF,0xFF,0xFF,0xFF},/*":",0*/
  45. };
  46. char code wel[7][16]={
  47. {0x7F,0x7F,0xFF,0x7F,0xFF,0x7F,0x7F,0x7F,0xF0,0xCF,0xF3,0xFC,0xF3,0xCF,0xF0,0xFF},/*"w",0*/
  48. {0xFF,0xFF,0x7F,0x7F,0x7F,0x7F,0xFF,0xFF,0xFF,0xE0,0xDD,0xDD,0xDD,0xDD,0xEC,0xFF},/*"e",1*/
  49. {0xFF,0xF7,0xF7,0x07,0xFF,0xFF,0xFF,0xFF,0xFF,0xDF,0xDF,0xC0,0xDF,0xDF,0xFF,0xFF},/*"l",2*/
  50. {0xFF,0xFF,0xFF,0x7F,0x7F,0x7F,0xFF,0xFF,0xFF,0xF1,0xEE,0xDF,0xDF,0xDF,0xEE,0xFF},/*"c",3*/
  51. {0xFF,0xFF,0x7F,0x7F,0x7F,0x7F,0xFF,0xFF,0xFF,0xE0,0xDF,0xDF,0xDF,0xDF,0xE0,0xFF},/*"o",4*/
  52. {0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0xFF,0xDF,0xC0,0xDF,0xFF,0xC0,0xDF,0xFF,0xC0},/*"m",5*/
  53. {0xFF,0xFF,0x7F,0x7F,0x7F,0x7F,0xFF,0xFF,0xFF,0xE0,0xDD,0xDD,0xDD,0xDD,0xEC,0xFF},/*"e",6*/
  54. };
  55. unsigned char code xing[14][16]={
  56. {0xFF,0xFD,0xFD,0xFD,0xFD,0xFD,0xFD,0x01,0xFD,0xFD,0xFD,0xFD,0xFD,0xFD,0xFD,0xFF},
  57. {0xFF,0xFF,0xFF,0xFF,0xFF,0xDF,0xBF,0xC0,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*"丁",0*/
  58. {0xFF,0x03,0xBB,0xBB,0xBB,0x03,0xEF,0x6F,0xEF,0xEF,0xEF,0x00,0xEF,0xEF,0xEF,0xFF},
  59. {0xFF,0xF8,0xFB,0xFB,0xFB,0xF8,0xFF,0xFF,0xFC,0xBF,0x7F,0x80,0xFF,0xFF,0xFF,0xFF},/*"時",1*/
  60. {0xBF,0xBF,0xBB,0xBB,0xBB,0xBB,0x3B,0x3B,0xBB,0xBB,0xB9,0xB9,0x9B,0x9F,0xBF,0xFF},
  61. {0xFF,0xDF,0x8F,0xC7,0xD3,0xD8,0xDC,0xCE,0xEF,0xED,0xEB,0xE7,0x8F,0xDF,0xFF,0xFF},/*"云",2*/
  62. {0xFF,0xFF,0x07,0xB7,0xB7,0xB7,0xB7,0x00,0xB7,0xB7,0xB7,0xB7,0x07,0xFF,0xFF,0xFF},
  63. {0xFF,0xFF,0xF0,0xFB,0xFB,0xFB,0xFB,0xC0,0xBB,0xBB,0xBB,0xBB,0xB0,0xBF,0x8F,0xFF},/*"電",0*/
  64. {0xFF,0xDF,0xEF,0x73,0x58,0x5B,0x5B,0x5B,0x5B,0x5B,0x5B,0x5B,0xDB,0xFB,0xFB,0xFF},
  65. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0,0xCF,0xBF,0x0F,0xFF},/*"氣",1*/
  66. {0xFF,0xFF,0xFB,0xFB,0xFB,0xFB,0xFB,0xFB,0xFB,0xFB,0xFB,0xF9,0xFB,0xFF,0xFF,0xFF},
  67. {0xFF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF,0xE7,0xEF,0xFF},/*"二",2*/
  68. {0xBD,0xBD,0x01,0xBD,0xBD,0x1F,0xFF,0x00,0xFF,0xBD,0xBD,0x01,0xBD,0xBD,0xBD,0xFF},
  69. {0xEF,0xEF,0xF0,0x77,0xB6,0xDF,0xE7,0xF8,0xDF,0xDF,0xDF,0xC0,0xDF,0xDF,0xDF,0xFF},/*"班",3*/
  70. };
  71. unsigned char code xuehao[20][16]={
  72. {0xFF,0x8F,0xF7,0xF7,0xF7,0x77,0x8F,0xFF,0xFF,0xCF,0xD7,0xDB,0xDD,0xDE,0xCF,0xFF},/*"2",0*/
  73. {0xFF,0x1F,0xEF,0xF7,0xF7,0xEF,0x1F,0xFF,0xFF,0xF0,0xEF,0xDF,0xDF,0xEF,0xF0,0xFF},/*"0",1*/
  74. {0xFF,0x1F,0xEF,0xF7,0xF7,0xEF,0x1F,0xFF,0xFF,0xF0,0xEF,0xDF,0xDF,0xEF,0xF0,0xFF},/*"0",2*/
  75. {0xFF,0x8F,0x77,0xF7,0xF7,0x77,0x8F,0xFF,0xFF,0xE3,0xDD,0xDE,0xDE,0xDD,0xE3,0xFF},/*"8",3*/
  76. {0xFF,0x1F,0xEF,0xF7,0xF7,0xEF,0x1F,0xFF,0xFF,0xF0,0xEF,0xDF,0xDF,0xEF,0xF0,0xFF},/*"0",4*/
  77. {0xFF,0xFF,0x3F,0xDF,0xEF,0x07,0xFF,0xFF,0xFF,0xF8,0xFB,0xDB,0xDB,0xC0,0xDB,0xFF},/*"4",5*/
  78. {0xFF,0x8F,0xF7,0xF7,0xF7,0x77,0x8F,0xFF,0xFF,0xCF,0xD7,0xDB,0xDD,0xDE,0xCF,0xFF},/*"2",6*/
  79. {0xFF,0x8F,0xF7,0xF7,0xF7,0x77,0x8F,0xFF,0xFF,0xCF,0xD7,0xDB,0xDD,0xDE,0xCF,0xFF},/*"2",7*/
  80. {0xFF,0xEF,0xEF,0x07,0xFF,0xFF,0xFF,0xFF,0xFF,0xDF,0xDF,0xC0,0xDF,0xDF,0xFF,0xFF},/*"1",8*/
  81. {0xFF,0xFF,0x3F,0xDF,0xEF,0x07,0xFF,0xFF,0xFF,0xF8,0xFB,0xDB,0xDB,0xC0,0xDB,0xFF},/*"4",9*/
  82. };
  83. char code _muqin[15][16]={
  84. {0xBF,0xBF,0xBF,0x01,0xBD,0xBD,0xB5,0x8D,0xBD,0xBD,0xBD,0x01,0xBF,0xBF,0xBF,0xFF},
  85. {0xFF,0xFF,0xFF,0xF0,0xF7,0xF7,0xF6,0xF1,0xF7,0xB7,0x77,0x80,0xF7,0xF7,0xFF,0xFF},/*"母",0*/
  86. {0xFF,0xBF,0xBB,0xBB,0xB3,0x8B,0xBA,0x39,0xBB,0x9B,0xA3,0xAB,0xBB,0xBB,0xBF,0xFF},
  87. {0xFF,0xBF,0xDD,0xE5,0xED,0xBD,0x7D,0x80,0xFD,0xFD,0xF5,0xED,0x8D,0xDD,0xFF,0xFF},/*"親",1*/
  88. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",0*/
  89. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",1*/
  90. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",0*/                              
  91. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",1*/
  92. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",2*/
  93. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",3*/
  94. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",4*/
  95. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",5*/
  96. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",6*/
  97. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",7*/
  98. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",7*/
  99. };
  100. char code _mamahao[14][16]={
  101. {0xDF,0xDF,0xDF,0x01,0xDF,0xDF,0x01,0xDF,0xDF,0xDF,0xDF,0x01,0xDF,0xDF,0xDF,0xFF},
  102. {0xFF,0xFF,0xFF,0xC0,0xDF,0xDF,0xD8,0xDD,0xDD,0xDD,0xDD,0xD8,0xCF,0xDF,0xFF,0xFF},/*"世",0*/
  103. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x01,0xBF,0xBF,0xBF,0xBF,0xBF,0xFF,0xFF,0xFF},
  104. {0xFF,0xBF,0xBF,0xBF,0xBF,0xBF,0xBF,0x80,0xBF,0xBF,0xBF,0xBF,0xBF,0x9F,0xBF,0xFF},/*"上",1*/
  105. {0xFF,0xFF,0xFF,0x01,0x7D,0x7D,0x7D,0x7D,0x7D,0x7D,0x7D,0x7D,0x01,0xFF,0xFF,0xFF},
  106. {0xFF,0xBF,0xDF,0xCE,0xE7,0xF1,0xFB,0xFF,0xFF,0xFF,0xFD,0xFB,0xE6,0x8F,0xDF,0xFF},/*"只",2*/
  107. {0xFF,0xFB,0x7B,0xBB,0x1B,0xCB,0xD3,0xD8,0xDB,0xDB,0xDB,0x1B,0xFB,0xFB,0xFB,0xFF},
  108. {0xFD,0xFE,0xFF,0xFF,0x00,0xF6,0xF6,0xF6,0xD6,0xB6,0x36,0x80,0xFF,0xFF,0xFF,0xFF},/*"有",3*/
  109. {0xEF,0xEF,0x0F,0xE0,0xEF,0x0F,0xFF,0xFD,0x05,0x7D,0x7D,0x7D,0x01,0x7F,0x7F,0xFF},
  110. {0xBF,0xDD,0xEA,0xF3,0xF4,0x8F,0xDB,0xFB,0xFB,0xFB,0xFB,0xBB,0x7B,0xBF,0xC0,0xFF},/*"媽",4*/
  111. {0xEF,0xEF,0x0F,0xE0,0xEF,0x0F,0xFF,0xFD,0x05,0x7D,0x7D,0x7D,0x01,0x7F,0x7F,0xFF},
  112. {0xBF,0xDD,0xEA,0xF3,0xF4,0x8F,0xDB,0xFB,0xFB,0xFB,0xFB,0xBB,0x7B,0xBF,0xC0,0xFF},/*"媽",5*/
  113. {0xEF,0xEF,0x0F,0xE0,0xEF,0x0F,0x7F,0x7D,0x7D,0x7D,0x0D,0x75,0x79,0x7D,0x7F,0xFF},
  114. {0x7F,0xBC,0xDD,0xEB,0xF3,0x8C,0xDF,0xFF,0xBF,0x7F,0x80,0xFF,0xFF,0xFF,0xFF,0xFF},/*"好",6*/
  115. };
  116. char code _exql[14][16]={{0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0xFF,0xFF,0xFF,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},
  117. {0xFF,0x7F,0xBF,0xCF,0xF3,0xFC,0xFF,0xFF,0xFF,0xC0,0xBF,0xBF,0xBF,0xBF,0x87,0xFF},/*"兒",0*/
  118. {0xEF,0xF7,0x7B,0x39,0x8C,0xDD,0xBF,0xBB,0xBB,0xBB,0x3B,0xBB,0xBB,0xBB,0xBF,0xFF},
  119. {0xFD,0xFE,0xFF,0x00,0xFF,0xFF,0xFF,0xFF,0xBF,0x7F,0x80,0xFF,0xFF,0xFF,0xFF,0xFF},/*"行",1*/
  120. {0xBF,0xBF,0xBB,0xBB,0xBB,0xBB,0xBB,0x03,0xBD,0xBD,0xBD,0xBC,0xBD,0x9F,0xBF,0xFF},
  121. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x80,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*"千",2*/
  122. {0xFF,0xFF,0x00,0x6E,0x6E,0x6E,0x6E,0x00,0x6E,0x6E,0x6E,0x6E,0x00,0xFF,0xFF,0xFF},
  123. {0xBF,0xBF,0xBB,0xBB,0xBB,0xBB,0xBB,0x80,0xBB,0xBB,0xBB,0xBB,0xBB,0xBF,0xBF,0xFF},/*"里",3*/
  124. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",0*/
  125. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",1*/
  126. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",2*/
  127. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",3*/
  128. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",4*/
  129. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",5*/
  130. };
  131. char code _ganen[14][16]={
  132. {0xFF,0xFF,0x03,0xEB,0x2B,0xAB,0xAB,0x2B,0xFB,0xC0,0x3B,0xBA,0xC9,0xFB,0xFF,0xFF},
  133. {0xFB,0xBC,0x8F,0xFF,0xC6,0xBE,0xBE,0xB6,0xAF,0xBD,0xBE,0x9E,0xF5,0xCB,0xD8,0xFF},/*"感",0*/
  134. {0xFF,0xFF,0xFF,0x00,0x7E,0x76,0x36,0x56,0x60,0x56,0x36,0x76,0x00,0xFF,0xFF,0xFF},
  135. {0xFF,0xCF,0xF3,0xFF,0xC3,0xBF,0xBF,0xBD,0xB3,0xBF,0xBF,0x8F,0xFB,0xC7,0xEF,0xFF},/*"恩",1*/
  136. {0xFF,0x07,0x73,0x74,0x77,0x07,0xBF,0xCF,0x70,0xF7,0xF7,0xF7,0xF7,0x07,0xFF,0xFF},
  137. {0xFF,0x80,0xEF,0xEF,0xEF,0xC0,0xFF,0xFF,0xFF,0xFC,0xD9,0xBF,0xDF,0xE0,0xFF,0xFF},/*"的",2*/
  138. {0xFF,0x7F,0xFF,0xFF,0x0F,0xFF,0xFE,0xFD,0xE3,0xF7,0xFF,0xBF,0x7F,0xFF,0xFF,0xFF},
  139. {0xFB,0xFC,0xFF,0xFF,0xC0,0xBF,0xBF,0xBF,0xBF,0xBF,0xBF,0x87,0xFF,0xF8,0xFD,0xFF},/*"心",3*/
  140. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",0*/
  141. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",1*/
  142. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",2*/
  143. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",3*/
  144. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",4*/
  145. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",5*/
  146. };
  147. char code _jmszl[14][16]={
  148. {0xFF,0xE7,0xFB,0xFB,0x03,0xDB,0xDB,0xDA,0x39,0xDB,0xDB,0xDB,0x1B,0xF3,0xFB,0xFF},
  149. {0xDF,0xEE,0xB2,0x7E,0x80,0xFA,0x46,0xAE,0xDF,0xEC,0xF3,0xED,0xDE,0x3F,0xBF,0xFF},/*"寂",0*/
  150. {0xEF,0xF3,0xEB,0x2B,0xAB,0x83,0xAA,0xA9,0xAB,0x83,0xAB,0x2B,0xEB,0xF3,0xFB,0xFF},
  151. {0xFF,0x6F,0x6F,0xA8,0xAA,0xCA,0xCA,0xE2,0xCA,0xAA,0xAA,0x68,0x6F,0x7F,0xFF,0xFF},/*"寞",1*/
  152. {0xFF,0xEF,0xDE,0x79,0x9F,0x7F,0x9F,0xE7,0xFF,0x00,0xFF,0xF7,0xEF,0xDF,0xBF,0xFF},
  153. {0xFB,0xFB,0x01,0xFE,0x7F,0x7F,0xBF,0xBF,0xDF,0xDC,0xEF,0xF7,0xFB,0xFC,0xFF,0xFF},/*"沙",2*/
  154. {0xEF,0x9E,0x79,0x8F,0xDF,0xBF,0x00,0xDF,0xBF,0xFF,0x01,0xDF,0xBF,0x00,0xFF,0xFF},
  155. {0xFB,0x03,0xFC,0xBF,0xDF,0xE7,0xF8,0xFF,0xFF,0xFF,0x80,0xFF,0xFF,0x00,0xFF,0xFF},/*"洲",3*/
  156. {0xFD,0xE3,0x37,0xCF,0xBF,0xDF,0xEF,0xF3,0xDC,0x3B,0xF7,0xEF,0xCF,0x9F,0xDF,0xFF},
  157. {0xFD,0x81,0xFE,0xFF,0xFE,0xFE,0xFE,0xF6,0xEE,0x8E,0xD6,0xF8,0xFE,0xFF,0xFF,0xFF},/*"冷",4*/
  158. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",0*/
  159. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",1*/
  160. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",2*/
  161. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",3*/
  162. };
  163. char code _tiger[14][16]={
  164. {0xFD,0x0D,0xED,0xED,0xED,0x01,0x6D,0xED,0xED,0x01,0xED,0xED,0xED,0x04,0xED,0xFF},
  165. {0xFF,0x80,0xF7,0xFB,0xFC,0xFF,0xEF,0xF6,0xF9,0xFE,0xFE,0xD9,0xBF,0xC0,0xFF,0xFF},/*"兩",0*/
  166. {0xFF,0xFF,0xFF,0x01,0x7D,0x7D,0x7D,0x7D,0x7D,0x7D,0x7D,0x7D,0x01,0xFF,0xFF,0xFF},
  167. {0xFF,0xBF,0xDF,0xCE,0xE7,0xF1,0xFB,0xFF,0xFF,0xFF,0xFD,0xFB,0xE6,0x8F,0xDF,0xFF},/*"只",1*/
  168. {0xBF,0xBB,0xBB,0xBB,0xBB,0xBB,0x80,0x3B,0x3B,0xBB,0x9B,0xAB,0xB1,0xBB,0xBF,0xFF},
  169. {0xF7,0xF7,0xFB,0xFB,0xFD,0xC1,0xB6,0xB7,0xBB,0xBB,0xBD,0xBD,0xBF,0x8F,0xFF,0xFF},/*"老",2*/
  170. {0xFF,0xFF,0x07,0xF7,0xB7,0xB7,0xB7,0x00,0x55,0x55,0x55,0x75,0x27,0xF7,0xFF,0xFF},
  171. {0x7F,0x9F,0xE0,0x7F,0xBF,0xC1,0xFD,0xFD,0xFD,0xC1,0xBF,0xBF,0xBF,0x87,0xDF,0xFF},/*"虎",3*/
  172. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",0*/
  173. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",1*/
  174. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",2*/
  175. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",3*/
  176. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",4*/
  177. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",5*/
  178. };
  179. char code _qnzl[14][16]={
  180. {0xBF,0xBF,0xBB,0xBB,0xBB,0xBB,0xBB,0x03,0xBD,0xBD,0xBD,0xBC,0xBD,0x9F,0xBF,0xFF},
  181. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x80,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*"千",0*/
  182. {0xBF,0xDF,0xEF,0xF3,0x1C,0xDD,0xDD,0xDD,0x01,0xDD,0xDD,0xDD,0xDD,0xFD,0xFF,0xFF},
  183. {0xFB,0xFB,0xFB,0xFB,0xF8,0xFB,0xFB,0xFB,0x00,0xFB,0xFB,0xFB,0xFB,0xFB,0xFB,0xFF},/*"年",1*/
  184. {0xFF,0xF7,0xF7,0xF7,0xF7,0xF7,0xF6,0xF5,0xF3,0x77,0xB7,0xD7,0xE3,0xF7,0xFF,0xFF},
  185. {0xDF,0x9F,0xCF,0xF7,0xE7,0xDB,0xDB,0xDD,0xBE,0xBF,0xBF,0xBF,0xBF,0xBF,0xBF,0xFF},/*"之",2*/
  186. {0x7F,0x7B,0xBB,0xCB,0xFB,0x03,0xFA,0xF9,0xFB,0x03,0xFB,0xEB,0xDB,0x3B,0xBB,0xFF},
  187. {0xFF,0xDF,0xC7,0xFF,0xC3,0xBE,0xBF,0xBB,0xA7,0xBE,0xBF,0x8F,0xFB,0xF7,0xCF,0xFF},/*"戀",3*/
  188. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",0*/
  189. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",1*/
  190. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",2*/
  191. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",3*/
  192. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",4*/
  193. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",5*/
  194. };
  195. char code _qizige[14][16]={
  196. {0xFF,0xBF,0xBF,0xBF,0xBF,0xBF,0xBF,0x01,0xDF,0xDF,0xDF,0xDF,0xDF,0xDF,0xDF,0xFF},
  197. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC0,0xBF,0xBF,0xBF,0xBF,0xBF,0xC7,0xFF,0xFF},/*"七",0*/
  198. {0xFF,0xFF,0xFD,0xFD,0xFD,0xFD,0xFD,0x1D,0xED,0xF5,0xF9,0xFD,0xFF,0x7F,0xFF,0xFF},
  199. {0xFE,0xFE,0xFE,0xFE,0xFE,0xBE,0x7E,0x80,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFF},/*"子",1*/
  200. {0xFF,0xF7,0xF7,0xF7,0xF7,0xF7,0xF6,0xF5,0xF3,0x77,0xB7,0xD7,0xE3,0xF7,0xFF,0xFF},
  201. {0xDF,0x9F,0xCF,0xF7,0xE7,0xDB,0xDB,0xDD,0xBE,0xBF,0xBF,0xBF,0xBF,0xBF,0xBF,0xFF},/*"之",2*/
  202. {0x7F,0x45,0x55,0x55,0x45,0x7D,0x01,0x5D,0x6F,0xF3,0x14,0xF7,0xD7,0xE7,0xF7,0xFF},
  203. {0xFF,0xE1,0xED,0xED,0xA1,0x7F,0x80,0xBF,0xDF,0xE7,0xF8,0xF7,0xCF,0x1F,0xBF,0xFF},/*"歌",3*/
  204. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",0*/
  205. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",1*/
  206. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",2*/
  207. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",3*/
  208. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",4*/
  209. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",5*/
  210. };
  211. char code _xqw[14][16]={
  212. {0xFF,0xFF,0xFF,0x3F,0x8F,0xDF,0xFF,0x00,0xFF,0xEF,0xDF,0x3F,0x7F,0xFF,0xFF,0xFF},
  213. {0xFB,0xFD,0xFE,0xFF,0xFF,0xBF,0x7F,0x80,0xFF,0xFF,0xFF,0xFF,0xFE,0xF8,0xFD,0xFF},/*"小",0*/
  214. {0xBF,0xBF,0xBB,0xAB,0xAB,0xAB,0xAB,0x80,0xAB,0xAB,0xAB,0xAB,0xBB,0xBF,0xBF,0xFF},
  215. {0xFF,0xFF,0xFF,0x00,0xEA,0xEA,0xEA,0xEA,0xEA,0xAA,0x6A,0x80,0xFF,0xFF,0xFF,0xFF},/*"青",1*/
  216. {0xFF,0x07,0xF7,0x00,0xF7,0x07,0xBF,0xB7,0xB7,0xB7,0x81,0xB7,0xB7,0xB7,0xBF,0xFF},
  217. {0xEF,0xCC,0xEE,0xE0,0xF6,0xE2,0xB7,0xBB,0xBB,0xBB,0x80,0xBB,0xBB,0xBB,0xBF,0xFF},/*"蛙",2*/
  218. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",0*/
  219. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",1*/
  220. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",2*/
  221. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",3*/
  222. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",4*/
  223. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",5*/
  224. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",6*/
  225. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",7*/
  226. };
  227. char code _zpy[14][16]={
  228. {0xF7,0xF7,0xF7,0x00,0x77,0xB7,0xF7,0xEF,0xEF,0x00,0xEF,0xED,0x6B,0xEF,0xEF,0xFF},
  229. {0xFD,0xBD,0x7E,0x80,0xFF,0xDF,0xDF,0xEF,0xEF,0xF7,0xF0,0xE5,0xDE,0xBF,0x0F,0xFF},/*"找",0*/
  230. {0xFF,0xFF,0x01,0x6D,0x6D,0x6D,0x01,0xFF,0xFF,0x01,0x6D,0x6D,0x6D,0x01,0xFF,0xFF},
  231. {0xBF,0xCF,0xF0,0xFF,0xDF,0xBF,0xC0,0xBF,0xCF,0xF0,0xFF,0xDF,0xBF,0xC0,0xFF,0xFF},/*"朋",1*/
  232. {0xF7,0xF7,0xF7,0xF7,0xF7,0x37,0x80,0xB7,0xB7,0xB7,0xB7,0x37,0xF7,0xF7,0xF7,0xFF},
  233. {0xBF,0xDF,0x6F,0x77,0xB9,0xBE,0xDE,0xED,0xF3,0xF3,0xEC,0xDF,0x9F,0x3F,0xBF,0xFF},/*"友",2*/
  234. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",0*/
  235. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",1*/
  236. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",2*/
  237. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",3*/
  238. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",4*/
  239. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",5*/
  240. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",6*/
  241. {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF},/*" ",7*/
  242. };

  243. /* 于鍵消抖的延時函數 */
  244. void delay5()
  245. { uint t;
  246. for (t=400;t>0;t--);                              
  247. }

  248. /*======音樂按鍵掃描函數======= */
  249. uchar keyscan(void)      //鍵盤掃描
  250. { {unsigned char key_l,key,s;
  251.      key_l=P1&0x0f;
  252.      if(key_l!=0x0f)    // 判斷是否有按鍵按下
  253.     {  delay5() ;      //消抖
  254.      if(key_l!=0x0f)       //再次判斷是否有按鍵按下
  255.     {
  256.      key_l=P1&0x0f;       //掃描列  得到列值
  257.      P1=0X7f;                                          //0111 1111
  258.               if(P1!=0x7f)  key=P1;
  259.               P1=0Xbf;                               //1011 1111
  260.               if(P1!=0xbf)  key=P1;
  261.               P1=0Xdf;
  262.               if(P1!=0xdf)  key=P1;
  263.               P1=0Xef;
  264.               if(P1!=0xef)  key=P1;
  265.               P1=0x0f;
  266.      } delay1(1000);
  267.       }               
  268.                                 switch(key)
  269.                   {
  270.                    case 0xeb:              count1=1;i=0; TR1=1;second=0;s1=0;s2=0;              break;            
  271.                    case 0xd7:              count1=2;i=0; TR1=1;second=0;s1=0;s2=0;              break;            
  272.                             case 0xdb:              count1=3;i=0; TR1=1;second=0;s1=0;s2=0;              break;            
  273.                                case 0xdd:              count1=4;i=0; TR1=1;second=0;s1=0;s2=0;              break;            
  274.                    case 0xb7:              count1=5;i=0; TR1=1;second=0;s1=0;s2=0;   break;                  
  275.                             case 0xbb:              count1=6;i=0; TR1=1;second=0;s1=0;s2=0;              break;            
  276.                               case 0xbd:              count1=7;i=0; TR1=1;second=0;s1=0;s2=0;   break;            
  277.                             case 0x77:              count1=8;i=0; TR1=1;second=0;s1=0;s2=0;              break;            
  278.                             case 0x7b:              count1=9;i=0;              second=0;s1=0;s2=0; TR1=1;              break;                  
  279.                             case 0x7d:              count1=10;i=0;              second=0;s1=0;s2=0; TR1=1;              break;                             
  280.                             case 0xe7:              count2=1;              break;                              //開機鍵ON/C
  281.                             case 0xed:              count2=2;h=0; s=second;break;                              //暫停鍵 =                 
  282.                             case 0xee:  count1=count1+1;i=0; delay1(100);  TR1=1;second=0;s1=0;s2=0; break;        //下一曲 +  
  283.                             case 0xde:    count1=count1-1;i=0;  delay1(100); TR1=1; second=0;s1=0;s2=0; break;  //上一曲 -
  284.                             case 0xbe:  count2=5;h=1; TR0=1; s=second;  break;   TR1=1;   //播放鍵
  285.                             default:break;
  286.                   }                                                                                         
  287.        P1 = 0x0f;  
  288.                 }   
  289. }
  290. //=======外部中斷INT0==========//   
  291. void ZD() interrupt 0
  292. {
  293.               keyscan();
  294. }
  295. //===========顯示延遲=======================//
  296. delay2(int a)
  297. {int b;
  298. for(;a>0;a--)
  299.   for(b=0;b<255;b++);
  300. }
  301. check()                            //查忙            
  302. {e=1;
  303. rw=1;
  304. rs=0;
  305. P0=0xff;                 
  306. if(busy);                              
  307. }
  308. /*寫指令程序*/
  309. wc(unsigned char dat)
  310. {check();
  311. e=0;
  312. rw=0;
  313. rs=0;           
  314. P0=dat;
  315. e=1;                             
  316. e=0;
  317. }
  318. /* 寫數據程序*/
  319. wd(unsigned char dat)            
  320. {check();
  321. e=0;
  322. rw=0;  
  323. rs=1;
  324. P0=dat;
  325. e=1;
  326. e=0;
  327. }

  328. void zifu(unsigned char page,unsigned char lineadd,int n,int a, unsigned char table[][8])
  329. {              int j,k,i;                                                                                    
  330. unsigned char  temp[16];
  331.    if(lineadd<0X80)       //128列
  332.   {CS1=0;        
  333.   CS2=1;}                //左半屏left
  334. for(j=2*a;j<n+2*a;j++)            
  335.     {
  336.      if(lineadd>=0X80)               
  337.      {
  338.      CS1=1;               //right
  339.      CS2=0;
  340.       lineadd=lineadd-0X40;
  341.      }
  342.    for(k=0;k<8;k++)                                                         
  343.        {temp[k]=table[j][k];}
  344.         j+=1;
  345.    for(k=0;k<8;k++)
  346.    {temp[8+k]=table[j][k];}
  347.     wc(page);
  348.         wc(lineadd);
  349.        for(i=0;i<8;i++)
  350.          { wd(temp[i]);}
  351.        wc(page+1);
  352.        wc(lineadd);
  353.        for(i=8;i<16;i++)
  354.         { wd(temp[i]);}
  355. lineadd+=8;
  356.   }  }
  357. void hanzi(unsigned char page,unsigned char lineadd,int n,unsigned char table[][16])
  358. {unsigned char  temp[32];
  359. int j,k,i;
  360.    if(lineadd<0X80)
  361.   {CS1=0;
  362.    CS2=1;}          //left
  363. for(j=0;j<n;j++)
  364.     {
  365.      if(lineadd>=0X80)
  366.      {
  367.       CS1=1;       //right
  368.       CS2=0;
  369.       lineadd=lineadd-0X40;
  370.      }
  371.    for(k=0;k<16;k++)                 
  372.        {temp[k]=table[j][k];}
  373.    j+=1;
  374.    for(k=0;k<16;k++)
  375.    {temp[16+k]=table[j][k];}
  376.         wc(page);
  377.         wc(lineadd);
  378.        for(i=0;i<16;i++)
  379.          { wd(temp[i]);}
  380.        wc(page+1);
  381.        wc(lineadd);
  382.        for(i=16;i<32;i++)
  383.         { wd(temp[i]);}
  384.   lineadd+=16;
  385.               }
  386. }

  387. //------------------簡譜音調對應的定時器初值--------//
  388. //適合11.0592M的晶振
  389. uchar code cuzhi[]={
  390.               0xff,0xff,//占位 停頓
  391.               0xFC,0x8E,//中音1-7            
  392.               0xFC,0xED,            
  393.               0xFD,0x43,            
  394.               0xFD,0x6A,            
  395.               0xFD,0xB3,            
  396.               0xFD,0xF3,            
  397.               0xFE,0x2D,
  398.               0xFE,0x47,              //高音1-7               
  399.               0xFE,0x76,
  400.               0xFE,0xA1,
  401.               0xFE,0xC7,            
  402.               0xFE,0xD9,
  403.               0xFE,0xF9,
  404.               0xFF,0x16
  405.               };
  406. /* 函數聲明*/
  407. void delay1(uint z);//延時1mS
  408. void delay(uint z);              //延時165ms,即十六分音符
  409. void song();
  410. void beep(); //蜂鳴器叫一聲
  411. /* 初始化程序 */
  412. void inti()
  413. {   wc(0X3f);//顯示開關關 0011 1111
  414.     wc(0XC0);//修改顯示起始行  1100 0000
  415.     wc(0XB8);//修改頁地址,x地址  1011 1000
  416.     wc(0X40);//修改列地址,y地址  0100 0000
  417. }

  418. uchar timeh,timel,i;
  419. //---------------------------簡譜---------------------------------------
  420. //編程規則:字節高位是簡譜,低位是節拍持續時間,
  421. //代表多少個十六分音符
  422. //1-7代表中音,8-E代表高音,0代表停頓
  423. //最后的0是結束標志
  424. //=====================   歌曲     ============//
  425. uchar code muqin[]={ //母親
  426. 0x52,0x51,0x61,0x82,0x71,0x62,0x31,0x21,0x14,0x32,0x92,0x91,0x71,0x61,0x31,0x58,
  427. //你入學的新書包有人給你拿
  428. 0x52,0x51,0x61,0x82,0x71,0x62,0x51,0x61,0x34,0x62,0x61,0x51,0x51,0x31,0x28,
  429. //你雨中的花折傘有人給你打
  430. 0x32,0x31,0x21,0x52,0x51,0x31,0x22,0x31,0x21,0x12,0x21,0x32,0x51,0x71,0x61,0x52,0x68,
  431. //你愛吃的(那)三鮮餡有人(他)給你包
  432. 0x82,0x81,0x61,0x82,0x81,0x62,0x51,0x31,0x24,0x62,0x51,0x31,0x31,0x21,0x14,
  433. //你委屈的淚花有人給你擦
  434. 0x81,0x91,0xa1,0xa2,0xa1,0x92,0xa1,0x91,0x84,
  435. //啊,這個人就是娘
  436. 0x61,0x81,0x91,0x92,0xa1,0x91,0x71,0x61,0x71,0x61,0x58,
  437. //啊,這個人就是媽
  438. 0x61,0x82,0x61,0x82,0x81,0x61,0x52,0x61,0x51,0x64,
  439. //這個人給了我生命
  440. 0x62,0x81,0xa1,0x91,0x82,0x94,
  441. //給我一個家
  442. 0x81,0x91,0xa1,0xa2,0xa1,0x92,0xa1,0x91,0x84,
  443. //啊,不管你走多遠
  444. 0x61,0x81,0x92,0x71,0x61,0x71,0x61,0x58,
  445. //無論你在干啥
  446. 0x61,0x81,0x81,0x61,0x82,0x81,0x61,0x52,0x61,0x51,0x34,
  447. //到什么時候也離不開
  448. 0x62,0xa2,0x91,0x81,0x62,0x88,
  449. //咱的媽
  450. 0x62,0xa2,0x91,0x81,0x62,0x84,
  451. //咱的媽
  452. 0x81,0x91,0x62,0xf2,0x91,0x81,0x62,0x88,
  453. 0XFF,
  454. } ;
  455. uchar code mamahao[]={              //世上只有媽媽好
  456. //世上只有媽媽好
  457. 0x68,0x52,0x34,0x54,0x84,0x62,0x52,0x68,
  458. //世上只有媽媽好
  459. 0x34,0x52,0x62,0x54,0x34,0x12,0xc2,0x52,0x32,0x28,
  460. //有媽的孩子像個寶
  461. 0x24,0x32,0x54,0x52,0x62,0x34,0x24,0x18,
  462. //投進了媽媽的懷抱
  463. 0x54,0x32,0x22,0x12,0xc2,0x12,0xb8,0x04,0xff,
  464. //幸福享不了
  465. };
  466. uchar code exql[]={ //兒行千里
  467. // 兒行千里
  468. 0x62,0x61,0x61,0x61,0x72,0x51,0x68,
  469. //衣裳在添幾件,
  470. 0x62,0x61,0x61,0x61,0x71,0x51,0x38,
  471. //飯菜多吃幾口,
  472. 0x32,0x31,0x62,0x31,0x21,0x31,0x14,0x22,0x21,0x21,0x12,0x61,0x38,
  473. //出門在外沒有媽熬的小米粥,
  474. 0x62,0x62,0x61,0x72,0x51,0x68,
  475. //一會兒看看臉,
  476. 0x62,0x62,0x61,0x72,0x51,0x38,
  477. //一會兒摸摸手,
  478. 0x34,0x62,0x61,0x31,0x22,0x21,0x31,0x14,
  479. //一會兒又把囑咐的話,
  480. 0x22,0x21,0x31,0x12,0x61,0x68,
  481. //裝進兒的兜;
  482. 0x62,0x84,0x62,0x92,0x84,0x72,0x61,0x71,0x51,0x32,0x31,0x52,0x64,
  483. //如今要到了,離開家的時候,
  484. 0x62,0x84,0x62,0x91,0xa1,0x84,0x72,0x61,0x71,0x62,0x52,0x51,0x61,0x34,
  485. //才理解兒行千里母擔憂,
  486. 0x32,0x62,0x62,0x31,0x21,0x32,0x34,0x02,0x32,0x62,0x62,0x31,0x21,0x12,0x14,0x02,
  487. //千里的路啊,我還一步沒走,
  488. 0x71,0x72,0x61,0x22,0x31,0x31,0x52,0x31,0x52,0x62,
  489. //就看見淚水在媽媽眼里,
  490. 0x82,0x81,0x71,0x61,0x62,0x28,0x62,0x61,0x71,0x52,0x31,0x68,0x68,0xff,
  491. //媽媽眼里流,媽媽眼里流;
  492. };

  493. uchar code ganen[]={//感恩的心
  494. 0x12,0x14,0x22,0x32,0x54,
  495. //我來自偶然,
  496. 0x32,0x84,0x72,0x62,0x54,
  497. //像一顆塵土,
  498. 0x02,0x62,0x62,0x52,0x54,0x12,0x22,0x32,0x28,
  499. //有誰看出我的脆弱,
  500. 0x12,0x14,0x22,0x32,0x54,
  501. //我來自何方,
  502. 0x32,0x84,0x92,0x82,0x54,
  503. //我情歸何處,
  504. 0x32,0x24,0x21,0x61,0x54,0x22,0x32,0x12,0x18,
  505. //誰在下一刻呼喚我,
  506. 0x22,0x24,0x12,0x24,0x11,0x21,0x34,0x32,0x21,0x31,0x34,
  507. //天地雖寬 這條路卻難走
  508. 0x12,0x22,0x22,0x22,0x11,0x21,0x22,0x64,0x52,0x52,0x32,0x38,
  509. //我看遍這人間坎坷辛苦
  510. 0x31,0x52,0x51,0x52,0x31,0x51,0x58,
  511. //我還有多少愛
  512. 0x31,0x82,0x81,0x82,0x31,0x61,0x68,
  513. //我還有多少淚
  514. 0x62,0x62,0x62,0x51,0x61,0x64,0x61,0x82,0x61,0x9c,
  515. //要蒼天知道 我不認輸
  516. 0x52,0xa4,0x92,0xa4,0x32,0x84,0x72,0x64,
  517. //感恩的心 感謝有你
  518. 0x62,0x94,0x82,0x94,
  519. //伴我一生
  520. 0x61,0x81,0x92,0x91,0x91,0x92,0x81,0xa1,0xa2,0x92,0x94,
  521. //讓我有勇氣做我自己
  522. 0x52,0xa4,0x92,0xa4,0x32,0x84,0x72,0x64,
  523. //感恩的心 感謝命運
  524. 0x52,0x62,0x81,0x81,0x82,0x92,0xa2,0x94,0x82,0x72,0x82,0x88,
  525. //花開花落我一樣會珍惜
  526. };
  527. uchar code tiger[]={//兩只老虎
  528. 0x14,0x24,0x34,0x14,0x14,0x24,0x34,0x14,
  529. //兩只老虎兩只老虎
  530. 0x34,0x44,0x58,0x34,0x44,0x58,
  531. //跑得快跑得快
  532. 0x52,0x61,0x52,0x41,0x34,0x14,0x52,0x61,0x52,0x41,0x34,0x14,
  533. //一只沒有眼睛一只沒有尾巴
  534. 0x14,0xb4,0x18,0x14,0xb4,0x18,0xff,
  535. //真奇怪真奇怪
  536. };

  537. uchar code qnzl[]={              //千年之戀
  538. 0x12,0x22,0x34,0x84,0x74,0x54,0x38,0x42,0x32,0x22,0x42,0x34,0x84,0x72,0x82,0x94,0xA8,0x08,
  539. //前奏
  540. 0x32,0x31,0x21,0x32,0x52,0x32,0x31,0x21,0x32,0x62,
  541. //竹林的燈火 到過的沙漠
  542. 0x32,0x31,0x21,0x32,0x82,0x71,0x81,0x71,0x51,0x32,0x22,
  543. //七色的國度 不斷飄逸風中
  544. 0x32,0x31,0x21,0x32,0x52,0x32,0x31,0x21,0x32,0x62,
  545. //有一種神秘 灰色的旋渦
  546. 0x32,0x31,0x21,0x32,0x83,0x82,0x71,0x72,0x02,
  547. //將我卷入了迷霧中
  548. 0x63,0xA1,0xA2,0x62,0x92,0x82,0x52,
  549. //看不清的雙手
  550. 0x31,0x51,0x63,0x51,0x63,0x51,0x63,0x51,0x62,0x82,0x7C,0x02,
  551. //一朵花傳來誰經過的溫柔
  552. 0x61,0x71,0x82,0x71,0x62,0xA2,0x71,0x76,
  553. //穿越千年的傷痛
  554. 0x61,0x71,0x82,0x71,0x62,0x52,0x31,0x36,
  555. //只為求一個結果
  556. 0x61,0x71,0x82,0x71,0x62,0xA3,0x73,0x62,0x53,
  557. //你留下的輪廓 指引我
  558. 0x42,0x63,0x83,0x83,0x91,0x91,
  559. //黑夜中不寂寞
  560. 0x61,0x71,0x82,0x71,0x62,0x0A2,0x71,0x76,
  561. //穿越千年的哀愁
  562. 0x61,0x71,0x82,0x71,0x62,0x52,0x31,0x36,
  563. //是你在盡頭等我
  564. 0x61,0x71,0x82,0x71,0x62,0xA3,0x73,0x62,0x53,
  565. //最美麗的感動 會值得
  566. 0x42,0x82,0x88,0x02,0x74,0x93,0x89,0xff//結束標志
  567. //用一生守候
  568. };
  569. uchar code jmszl[]={ //寂寞沙洲冷
  570. 0x12,0x12,0x22,0x32,0x31,0x22,0x21,0x22,
  571. //自你走后心憔悴
  572. 0x21,0x31,0x51,0x52,0x31,0x52,0x61,0x15,0x14,
  573. //白色油桐風中紛飛
  574. 0x51,0x52,0x31,0x52,0x62,0x13,0x11,0x13,0x32,0x28,0x08,0x28,
  575. //落花似人有情 這個季節
  576. 0x31,0x32,0x31,0x32,0x11,0x21,0x51,0x52,0x51,0x52,
  577. //河畔的風放肆拼命地吹
  578. 0x51,0x51,0x31,0x32,0x31,0x32,0x81,0x72,0x63,
  579. //不斷撥弄離人的眼淚
  580. 0x62,0x71,0x81,0x72,0x61,0x61,0x52,0x31,0x21,0x32,0x51,0x54,
  581. //那樣濃烈的愛再也無法給
  582. 0x22,0x12,0x11,0x12,0x11,0x12,0x12,0x14,0x26,0x32,0x26,
  583. //傷感一夜一夜
  584. 0x32,0x61,0x51,0x51,0x31,0x31,0x21,0x31,0x51,0x61,0x51,0x31,0x51,
  585. //當記憶的線纏繞過往支離破碎
  586. 0x02,0x32,0x81,0x81,0x81,0x81,0x62,0x52,0x34,
  587. //是慌亂占據了心扉                                                                                                                                                                                                                 
  588. 0x31,0x81,0x81,0x81,0x61,0x91,0x82,
  589. //有花兒伴著蝴蝶
  590. 0x51,0x51,0x51,0x51,0x31,0x61,0x53,
  591. //孤雁可以雙飛            
  592. 0x21,0x11,0x21,0x11,0x22,0x11,0x21,0x26,
  593. //夜深人靜獨徘徊
  594. 0x32,0x61,0x51,0x51,0x31,0x31,0x21,0x31,0x51,0x61,0x51,0x31,0x51,0x52,
  595. //當幸福戀人寄來紅色分享喜悅
  596. 0x31,0x31,0x81,0x81,0x81,0x61,0x91,0x81,0x61,0x31,0x56,
  597. //閉上雙眼難過頭也不敢回
  598. 0x32,0x32,0x81,0x81,0x81,0x81,0x91,0x81,0x61,0x81,0x61,0x51,0x31,0x51,0x34,
  599. //仍然撿盡寒枝不肯安歇微帶著后悔
  600. 0x21,0x31,0x51,0x31,0x21,0x11,0x61,0x21,0x16,
  601. //寂寞沙洲我該思念誰
  602. 0xff};
  603. uchar code qizige[]={ //七子之歌
  604. 0x54,0x32,0x52,0x32,0x54,
  605. //你可知MACAU
  606. 0x62,0x52,0x32,0x62,0x54,
  607. //不是我真姓
  608. 0x14,0x12,0x22,0x34,0x52,0x32,
  609. //我離開你太久了
  610. 0x02,0x32,0x58,
  611. //母親
  612. 0x52,0x52,0x62,0x52,0x32,0x54,0x52,0x62,0x52,0x82,0x62,0x58,
  613. //但是他們擄去的是我的肉體
  614. 0x14,0x52,0x32,0x22,0x12,0x24,0x32,0x54,0x2,0x22,0x34,0x1f,0x18,
  615. //你依然保管我內心的靈魂
  616. 0x04,0x54,0xa4,0x92,0x81,0x62,0x52,0x54,0x62,0x64,0x52,0x62,0x81,0xa2,0x82,0x9c,
  617. //那三百年來夢寐不忘的生母啊
  618. 0x02,0x52,0xa4,0x92,0x81,0x62,0x52,0x54,
  619. //請叫兒的乳名:
  620. 0x62,0x64,0x52,0x64,0xa2,0x92,0x9f,
  621. //叫我一聲--澳門
  622. 0xa4,0x92,0x81,0x62,0x52,0x54,
  623. //母親!母親!
  624. 0x84,0x62,0x52,0x32,0x22,0x14,
  625. //我要回來
  626. 0x04,0x22,0x32,0x58,0x58,0x04,0x52,0x62,0x8f,0xff,
  627. //母親!母親!
  628.   };
  629. uchar code xqw[]={//小青蛙
  630. 0x52,0x32,0x32,0x32,0x52,0x32,0x32,0x32,0x54,0x61,0x52,0x32,0x42,0x24,
  631. //小青蛙呀 小青蛙呀 在池塘里玩耍
  632. 0x42,0x22,0x22,0x22,0x42,0x22,0x22,0x22,0x44,0x51,0x42,0x22,0x32,0x18,
  633. //東邊跳跳 西邊跳跳 多么快樂 逍遙
  634. };
  635. char code zpy[]={//找朋友
  636. 0x14,0x14,0x14,0x24,0x34,0x54,0x58,0x54,0x64,0x54,0x34,0x24,0x34,0x24,
  637. //找找找 找朋友   找到一個好朋友
  638. 0x34,0x14,0x18,0x54,0x34,0x28,0x14,0x24,0x34,0x54,0x24,0x34,0x14,
  639. //敬個禮 握握手 我是你的好朋友
  640. };

  641. //===========計時程序=========//
  642. void jishi()
  643. { s1=s2=m1=m2=0;
  644.   s1=second/10;              //秒十位
  645.   s2=second%10;              //秒個位
  646.   m1=minute/10;
  647.   m2=minute%10;
  648. }
  649. void timer() interrupt 3 //T1分秒計時
  650. { TH1=15536/256;
  651.   TL1=15536%256;
  652.   j++;
  653.   if(j==20)
  654.   {j=0;
  655.   if(second++>=60)
  656.   {second=0;
  657.   minute++;
  658.   }
  659.     }
  660. }
  661. void show()
  662. {jishi();
  663. zifu(0xba,0x40,2,m1,&shu);
  664. zifu(0xba,0x48,2,m2,&shu);
  665. zifu(0xba,0x50,2,0x0a,&shu);
  666. zifu(0xba,0x58,2,s1,&shu);
  667. zifu(0xba,0x60,2,s2,&shu);

  668. }

  669. //=========唱歌顯示歌名============//
  670. void song()            
  671. {
  672.               uint temp;              //temp歌調         
  673.               uchar jp;  //jp是簡譜
  674.     while(1)
  675.               {              if(h==0)
  676.                   { do{TR0=0;              //停止T0工作
  677.                             fm=1;}while(h==0);}
  678. ……………………

  679. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

所有資料51hei提供下載:
單片機課程設計-數字音樂盒設計.doc (338 KB, 下載次數: 105)



評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:552200 發表于 2019-5-31 23:33 | 顯示全部樓層
請問介紹的是AT89C51單片機,電路圖卻用的AT89C52,若使用AT89C51單片機連電路圖,會對仿真有影響嗎?
回復

使用道具 舉報

ID:330903 發表于 2020-3-1 17:45 | 顯示全部樓層
梨嶼咲 發表于 2019-5-31 23:33
請問介紹的是AT89C51單片機,電路圖卻用的AT89C52,若使用AT89C51單片機連電路圖,會對仿真有影響嗎?

這個設計不精細,沒有影響的
回復

使用道具 舉報

ID:941608 發表于 2021-6-23 10:45 | 顯示全部樓層
我想問下一下出現這些問題
0101.c(292): warning C173: missing return-expression
0101.c(292): warning C290: missing return value
0101.c(303): warning C290: missing return value
0101.c(310): warning C290: missing return value
0101.c(320): warning C290: missing return value
0101.c(330): warning C290: missing return value

該怎么改啊
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 中文字幕高清在线 | 精品蜜桃一区二区三区 | 亚洲精品一区二区在线观看 | 天天操夜夜爽 | 欧美一级全黄 | 亚洲在线 | 91精品国产色综合久久不卡98 | 伊人伊人伊人 | 日本xx视频免费观看 | 国产成人精品一区二区三区视频 | 日本午夜网站 | 黄色激情毛片 | 爽爽免费视频 | 欧美一区在线视频 | 亚洲精品99 | www.日韩 | 精品久久香蕉国产线看观看亚洲 | 中文在线一区二区 | 日韩成人免费 | 天天综合永久入口 | 日韩欧美精品在线 | 欧美一级特黄aaa大片在线观看 | 一区二区三区不卡视频 | 久久99国产精品久久99果冻传媒 | 国产精品高潮呻吟久久 | 91高清在线视频 | 91免费看片 | 亚洲一区综合 | 久久人体| 日本精品一区二区 | 成人亚洲一区 | 成人在线观看免费观看 | 精品国产一区二区三区久久狼黑人 | 国内精品一区二区三区 | 91在线精品一区二区 | 中文字幕99 | 日韩一级电影免费观看 | 日韩一级黄色毛片 | av黄色在线播放 | 毛片免费看 | 91久久精品日日躁夜夜躁国产 |