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

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

QQ登錄

只需一步,快速開(kāi)始

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

單片機(jī)數(shù)字音樂(lè)盒課程設(shè)計(jì)說(shuō)明書(shū)

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

  • 原理描述
  2.1芯片AT89C51的介紹
AT89C51是一種帶4K字節(jié)閃存可編程可擦除只讀存儲(chǔ)器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS 8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡(jiǎn)版本。AT89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。外形及引腳排列如圖2.1所示
圖3.2 AT89C51引腳排列圖
    2.2 LCD12864的顯示
12864是一種圖形點(diǎn)陣液晶顯示器,它主要由行驅(qū)動(dòng)器/列驅(qū)動(dòng)器及128×64全點(diǎn)陣液晶顯示器組成。它有8頁(yè)(8行一頁(yè))、128列,可完成圖形顯示,也可以顯示8×4個(gè)漢字。
12864硬件模塊說(shuō)明:
圖2.2中,IC1為行驅(qū)動(dòng)器,IC2、IC3為行驅(qū)動(dòng)器,外部的CPU通過(guò)13根線對(duì)模塊進(jìn)行控制。其中DB7—DB0為并行數(shù)據(jù)總線,E、R/W、D均為控制信號(hào)線,CSA、CSB則為選屏信號(hào),分別控制左、右半屏。
圖2.2  12864的硬件模塊圖
2.3 音調(diào)的產(chǎn)生
頻率的高低決定了音調(diào)的高低。音樂(lè)的十二平均率規(guī)定:每?jī)蓚(gè)八度音(如簡(jiǎn)譜中的中音1和高音1)之間的頻率相差一倍。在兩個(gè)八度音之間又分為十二個(gè)半音。另外,音名A(簡(jiǎn)譜中的低音6)的頻率為440Hz,音名B到C之間、E到F之間為半音,其余為全音。由此可以計(jì)算出簡(jiǎn)譜中從低音1到高音1之間每個(gè)音名對(duì)應(yīng)的頻率,所有不同頻率的信號(hào)都是從同一個(gè)基準(zhǔn)頻率分頻得到的。
1、要產(chǎn)生音頻脈沖,只要算出某一音頻的周期(1/頻率),然后將此周期除以2,即為半周期的時(shí)間。利用定時(shí)器計(jì)時(shí)這半個(gè)周期時(shí)間,每當(dāng)計(jì)時(shí)到后就將輸出脈沖的I/O反相,然后重復(fù)計(jì)時(shí)此半周期時(shí)間再對(duì)I/O反相,就可在I/O腳上得到此頻率的脈沖。
              2、利用AT89C51的內(nèi)部定時(shí)器使其工作在計(jì)數(shù)器模式MODE1下,改變計(jì)數(shù)值TH0及TL0以產(chǎn)生不同頻率的方法。
              此外結(jié)束符和休止符可以分別用代碼00H和FFH來(lái)表示,若查表結(jié)果為00H,則表示曲子終了;若查表結(jié)果為FFH,則產(chǎn)生相應(yīng)的停頓效果。
              3、例如頻率為523Hz,其周期T=1/523=1912us,因此只要令計(jì)數(shù)器計(jì)時(shí)956us/1us=956,在每次技術(shù)956次時(shí)將I/O反相,就可得到中音DO(523Hz)。
              計(jì)數(shù)脈沖值與頻率的關(guān)系公式如下:
              N=Fi2Fr                                                      
N:計(jì)算值;                            Fi:內(nèi)部計(jì)時(shí)一次為1us,故其頻率為1MHz;      
4、其計(jì)數(shù)值的求法如下:
初值T=65536-N=65536-Fi2Fr
例如:設(shè)K=65536,F(xiàn)=1000000=Fi=1MHz,球低音DO(261Hz)。中音DO(523Hz)。高音的DO(1046Hz)的計(jì)算值
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調(diào)各音符頻率與計(jì)數(shù)值T的對(duì)照表如表4.1所示。
表2.3  C調(diào)各音符頻率與計(jì)數(shù)值T的對(duì)照表
低音
頻率
N
參數(shù)
中音
頻率
N
參數(shù)
高音
頻率
N
參數(shù)
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 節(jié)拍的確定
若要構(gòu)成音樂(lè),光有音調(diào)是不夠的,還需要節(jié)拍,讓音樂(lè)具有旋律(固定的律動(dòng)),而且可以調(diào)節(jié)各個(gè)音的快滿度。“節(jié)拍”,即Beat,簡(jiǎn)單說(shuō)就是打拍子,就像我們聽(tīng)音樂(lè)不自主的隨之拍手或跺腳。若1拍實(shí)0.5s,則1/4 拍為0.125s。至于1拍多少s,并沒(méi)有嚴(yán)格規(guī)定,就像人的心跳一樣,大部分人的心跳是每分鐘72下,有些人快一點(diǎn),有些人慢一點(diǎn),只要聽(tīng)的悅耳就好。音持續(xù)時(shí)間的長(zhǎng)短即時(shí)值,一般用拍數(shù)表示。休止符表示暫停發(fā)音。
一首音樂(lè)是由許多不同的音符組成的,而每個(gè)音符對(duì)應(yīng)著不同頻率,這樣就可以利用不同的頻率的組合,加以與拍數(shù)對(duì)應(yīng)的延時(shí),構(gòu)成音樂(lè)。了解音樂(lè)的一些基礎(chǔ)知識(shí),我們可知產(chǎn)生不同頻率的音頻脈沖即能產(chǎn)生音樂(lè)。對(duì)于單片機(jī)來(lái)說(shuō),產(chǎn)生不同頻率的脈沖是非常方便的,利用單片機(jī)的定時(shí)/計(jì)數(shù)器來(lái)產(chǎn)生這樣的方波頻率信號(hào)。因此,需要弄清楚音樂(lè)中的音符和對(duì)應(yīng)的頻率,以及單片機(jī)定時(shí)計(jì)數(shù)的關(guān)系。
表2.41節(jié)拍與節(jié)拍碼對(duì)照
節(jié)拍碼
節(jié)拍數(shù)
節(jié)拍碼
節(jié)拍數(shù)
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拍

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

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

單片機(jī)源程序如下:
  1. /* C語(yǔ)言音樂(lè)盒源程序設(shè)計(jì) */
  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 歌曲標(biāo)志
  7. uchar key,count2,h=1,i;     
  8. uchar  temp;     //temp歌調(diào)
  9. uchar s1,s2,m1,m2;
  10. uchar second,minute,j=0;
  11. void delay1(uint z);              //延時(shí)1ms
  12. sbit key2=P3^2;              // 按key2可切換歌曲
  13. sbit key1=P3^3;
  14. sbit fm=P3^7;//蜂鳴器連續(xù)的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},/*"時(shí)",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. /* 于鍵消抖的延時(shí)函數(shù) */
  244. void delay5()
  245. { uint t;
  246. for (t=400;t>0;t--);                              
  247. }

  248. /*======音樂(lè)按鍵掃描函數(shù)======= */
  249. uchar keyscan(void)      //鍵盤(pán)掃描
  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;                              //開(kāi)機(jī)鍵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. /*寫(xiě)指令程序*/
  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. /* 寫(xiě)數(shù)據(jù)程序*/
  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. //------------------簡(jiǎn)譜音調(diào)對(duì)應(yīng)的定時(shí)器初值--------//
  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. /* 函數(shù)聲明*/
  407. void delay1(uint z);//延時(shí)1mS
  408. void delay(uint z);              //延時(shí)165ms,即十六分音符
  409. void song();
  410. void beep(); //蜂鳴器叫一聲
  411. /* 初始化程序 */
  412. void inti()
  413. {   wc(0X3f);//顯示開(kāi)關(guān)關(guān) 0011 1111
  414.     wc(0XC0);//修改顯示起始行  1100 0000
  415.     wc(0XB8);//修改頁(yè)地址,x地址  1011 1000
  416.     wc(0X40);//修改列地址,y地址  0100 0000
  417. }

  418. uchar timeh,timel,i;
  419. //---------------------------簡(jiǎn)譜---------------------------------------
  420. //編程規(guī)則:字節(jié)高位是簡(jiǎn)譜,低位是節(jié)拍持續(xù)時(shí)間,
  421. //代表多少個(gè)十六分音符
  422. //1-7代表中音,8-E代表高音,0代表停頓
  423. //最后的0是結(jié)束標(biāo)志
  424. //=====================   歌曲     ============//
  425. uchar code muqin[]={ //母親
  426. 0x52,0x51,0x61,0x82,0x71,0x62,0x31,0x21,0x14,0x32,0x92,0x91,0x71,0x61,0x31,0x58,
  427. //你入學(xué)的新書(shū)包有人給你拿
  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. //你愛(ài)吃的(那)三鮮餡有人(他)給你包
  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. //啊,這個(gè)人就是娘
  436. 0x61,0x81,0x91,0x92,0xa1,0x91,0x71,0x61,0x71,0x61,0x58,
  437. //啊,這個(gè)人就是媽
  438. 0x61,0x82,0x61,0x82,0x81,0x61,0x52,0x61,0x51,0x64,
  439. //這個(gè)人給了我生命
  440. 0x62,0x81,0xa1,0x91,0x82,0x94,
  441. //給我一個(gè)家
  442. 0x81,0x91,0xa1,0xa2,0xa1,0x92,0xa1,0x91,0x84,
  443. //啊,不管你走多遠(yuǎn)
  444. 0x61,0x81,0x92,0x71,0x61,0x71,0x61,0x58,
  445. //無(wú)論你在干啥
  446. 0x61,0x81,0x81,0x61,0x82,0x81,0x61,0x52,0x61,0x51,0x34,
  447. //到什么時(shí)候也離不開(kāi)
  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. //有媽的孩子像個(gè)寶
  461. 0x24,0x32,0x54,0x52,0x62,0x34,0x24,0x18,
  462. //投進(jìn)了媽媽的懷抱
  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. //出門(mén)在外沒(méi)有媽熬的小米粥,
  474. 0x62,0x62,0x61,0x72,0x51,0x68,
  475. //一會(huì)兒看看臉,
  476. 0x62,0x62,0x61,0x72,0x51,0x38,
  477. //一會(huì)兒摸摸手,
  478. 0x34,0x62,0x61,0x31,0x22,0x21,0x31,0x14,
  479. //一會(huì)兒又把囑咐的話,
  480. 0x22,0x21,0x31,0x12,0x61,0x68,
  481. //裝進(jìn)兒的兜;
  482. 0x62,0x84,0x62,0x92,0x84,0x72,0x61,0x71,0x51,0x32,0x31,0x52,0x64,
  483. //如今要到了,離開(kāi)家的時(shí)候,
  484. 0x62,0x84,0x62,0x91,0xa1,0x84,0x72,0x61,0x71,0x62,0x52,0x51,0x61,0x34,
  485. //才理解兒行千里母擔(dān)憂,
  486. 0x32,0x62,0x62,0x31,0x21,0x32,0x34,0x02,0x32,0x62,0x62,0x31,0x21,0x12,0x14,0x02,
  487. //千里的路啊,我還一步?jīng)]走,
  488. 0x71,0x72,0x61,0x22,0x31,0x31,0x52,0x31,0x52,0x62,
  489. //就看見(jiàn)淚水在媽媽眼里,
  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. //我來(lái)自偶然,
  496. 0x32,0x84,0x72,0x62,0x54,
  497. //像一顆塵土,
  498. 0x02,0x62,0x62,0x52,0x54,0x12,0x22,0x32,0x28,
  499. //有誰(shuí)看出我的脆弱,
  500. 0x12,0x14,0x22,0x32,0x54,
  501. //我來(lái)自何方,
  502. 0x32,0x84,0x92,0x82,0x54,
  503. //我情歸何處,
  504. 0x32,0x24,0x21,0x61,0x54,0x22,0x32,0x12,0x18,
  505. //誰(shuí)在下一刻呼喚我,
  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. //我還有多少愛(ài)
  512. 0x31,0x82,0x81,0x82,0x31,0x61,0x68,
  513. //我還有多少淚
  514. 0x62,0x62,0x62,0x51,0x61,0x64,0x61,0x82,0x61,0x9c,
  515. //要蒼天知道 我不認(rèn)輸
  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. //感恩的心 感謝命運(yùn)
  524. 0x52,0x62,0x81,0x81,0x82,0x92,0xa2,0x94,0x82,0x72,0x82,0x88,
  525. //花開(kāi)花落我一樣會(huì)珍惜
  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. //一只沒(méi)有眼睛一只沒(méi)有尾巴
  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. //竹林的燈火 到過(guò)的沙漠
  542. 0x32,0x31,0x21,0x32,0x82,0x71,0x81,0x71,0x51,0x32,0x22,
  543. //七色的國(guó)度 不斷飄逸風(fēng)中
  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. //一朵花傳來(lái)誰(shuí)經(jīng)過(guò)的溫柔
  552. 0x61,0x71,0x82,0x71,0x62,0xA2,0x71,0x76,
  553. //穿越千年的傷痛
  554. 0x61,0x71,0x82,0x71,0x62,0x52,0x31,0x36,
  555. //只為求一個(gè)結(jié)果
  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. //最美麗的感動(dòng) 會(huì)值得
  566. 0x42,0x82,0x88,0x02,0x74,0x93,0x89,0xff//結(jié)束標(biāo)志
  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. //白色油桐風(fēng)中紛飛
  574. 0x51,0x52,0x31,0x52,0x62,0x13,0x11,0x13,0x32,0x28,0x08,0x28,
  575. //落花似人有情 這個(gè)季節(jié)
  576. 0x31,0x32,0x31,0x32,0x11,0x21,0x51,0x52,0x51,0x52,
  577. //河畔的風(fēng)放肆拼命地吹
  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. //那樣濃烈的愛(ài)再也無(wú)法給
  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. //當(dāng)記憶的線纏繞過(guò)往支離破碎
  586. 0x02,0x32,0x81,0x81,0x81,0x81,0x62,0x52,0x34,
  587. //是慌亂占據(jù)了心扉                                                                                                                                                                                                                 
  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. //夜深人靜獨(dú)徘徊
  594. 0x32,0x61,0x51,0x51,0x31,0x31,0x21,0x31,0x51,0x61,0x51,0x31,0x51,0x52,
  595. //當(dāng)幸福戀人寄來(lái)紅色分享喜悅
  596. 0x31,0x31,0x81,0x81,0x81,0x61,0x91,0x81,0x61,0x31,0x56,
  597. //閉上雙眼難過(guò)頭也不敢回
  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. //寂寞沙洲我該思念誰(shuí)
  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. //我離開(kāi)你太久了
  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. //你依然保管我內(nèi)心的靈魂
  616. 0x04,0x54,0xa4,0x92,0x81,0x62,0x52,0x54,0x62,0x64,0x52,0x62,0x81,0xa2,0x82,0x9c,
  617. //那三百年來(lái)夢(mèng)寐不忘的生母啊
  618. 0x02,0x52,0xa4,0x92,0x81,0x62,0x52,0x54,
  619. //請(qǐng)叫兒的乳名:
  620. 0x62,0x64,0x52,0x64,0xa2,0x92,0x9f,
  621. //叫我一聲--澳門(mén)
  622. 0xa4,0x92,0x81,0x62,0x52,0x54,
  623. //母親!母親!
  624. 0x84,0x62,0x52,0x32,0x22,0x14,
  625. //我要回來(lái)
  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. //東邊跳跳 西邊跳跳 多么快樂(lè) 逍遙
  634. };
  635. char code zpy[]={//找朋友
  636. 0x14,0x14,0x14,0x24,0x34,0x54,0x58,0x54,0x64,0x54,0x34,0x24,0x34,0x24,
  637. //找找找 找朋友   找到一個(gè)好朋友
  638. 0x34,0x14,0x18,0x54,0x34,0x28,0x14,0x24,0x34,0x54,0x24,0x34,0x14,
  639. //敬個(gè)禮 握握手 我是你的好朋友
  640. };

  641. //===========計(jì)時(shí)程序=========//
  642. void jishi()
  643. { s1=s2=m1=m2=0;
  644.   s1=second/10;              //秒十位
  645.   s2=second%10;              //秒個(gè)位
  646.   m1=minute/10;
  647.   m2=minute%10;
  648. }
  649. void timer() interrupt 3 //T1分秒計(jì)時(shí)
  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歌調(diào)         
  673.               uchar jp;  //jp是簡(jiǎn)譜
  674.     while(1)
  675.               {              if(h==0)
  676.                   { do{TR0=0;              //停止T0工作
  677.                             fm=1;}while(h==0);}
  678. ……………………

  679. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

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

評(píng)分

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

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:552200 發(fā)表于 2019-5-31 23:33 | 顯示全部樓層
請(qǐng)問(wèn)介紹的是AT89C51單片機(jī),電路圖卻用的AT89C52,若使用AT89C51單片機(jī)連電路圖,會(huì)對(duì)仿真有影響嗎?
回復(fù)

使用道具 舉報(bào)

ID:330903 發(fā)表于 2020-3-1 17:45 | 顯示全部樓層
梨嶼咲 發(fā)表于 2019-5-31 23:33
請(qǐng)問(wèn)介紹的是AT89C51單片機(jī),電路圖卻用的AT89C52,若使用AT89C51單片機(jī)連電路圖,會(huì)對(duì)仿真有影響嗎?

這個(gè)設(shè)計(jì)不精細(xì),沒(méi)有影響的
回復(fù)

使用道具 舉報(bào)

ID:941608 發(fā)表于 2021-6-23 10:45 | 顯示全部樓層
我想問(wèn)下一下出現(xiàn)這些問(wèn)題
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

該怎么改啊
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 免费在线观看一区二区三区 | 国产一区二区三区四 | av免费入口 | 一区二区三区欧美 | 成人三级视频 | 精品久久不卡 | 国产成人精品a视频一区www | 91国产精品| 自拍偷拍亚洲视频 | 日韩二三区| 51ⅴ精品国产91久久久久久 | 国产精品一码二码三码在线 | 天堂成人国产精品一区 | 亚洲一区三区在线观看 | 一级免费毛片 | 久久免费国产视频 | 超碰在线免费公开 | 欧美成人精品一区二区男人看 | 三极网站 | 日日摸日日碰夜夜爽2015电影 | 久久一区 | 中文字幕国产在线 | 日韩色综合 | 欧美一区二区视频 | av一区二区三区四区 | 福利网站在线观看 | 亚洲 中文 欧美 日韩 在线观看 | 天天射网站 | 久热m3u8 | 日本精品久久 | 情侣酒店偷拍一区二区在线播放 | 久久精品国产精品青草 | 欧美国产日韩一区二区三区 | 精品欧美乱码久久久久久 | 黄色男女网站 | 国产黄色大片 | 欧美日韩在线视频一区 | 欧美在线不卡 | 国产福利视频 | 午夜寂寞影院列表 | 99国产精品视频免费观看一公开 |