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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

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

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

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

每個音符使用1個字節(jié),字節(jié)的高4位代表音符的高低,低4位代表音符的節(jié)拍,表2.41為節(jié)拍碼的對照。如果1拍為0.4秒,1/4拍實(shí)0.1秒,只要設(shè)定延遲時間就可求得節(jié)拍的時間。假設(shè)1/4拍為1DELAY,則1拍應(yīng)為4DELAY,以此類推。所以只要求得1/4拍的DELAY時間,其余的節(jié)拍就是它的倍數(shù),如圖5.3為1/4和1/8節(jié)拍的時間設(shè)定。
表2.42 1/4和1/8節(jié)拍的時間設(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。播放長度以十六分音符為單位(在本程序中為165ms),一拍即四分音符等于4個十六分音符,編為4,其它的播放時間以此類推。音調(diào)作為編碼的高4位,而播放時間作為低4位,如此音調(diào)和節(jié)拍就構(gòu)成了一個編碼。以0xff作為曲譜的結(jié)束標(biāo)志。
舉例1:音調(diào)do,發(fā)音長度為兩拍,即二分音符,將其編碼為0x18
舉例2:音調(diào)re,發(fā)音長度為半拍,即八分音符,將其編碼為0x22
歌曲播放的設(shè)計(jì)。先將歌曲的簡譜進(jìn)行編碼,儲存在一個數(shù)據(jù)類型為unsigned char 的數(shù)組中。程序從數(shù)組中取出一個數(shù),然后分離出高4位得到音調(diào),接著找出相應(yīng)的值賦給定時器0,使之定時操作蜂鳴器,得出相應(yīng)的音調(diào);接著分離出該數(shù)的低4位,得到延時時間,接著調(diào)用軟件延時。
  • 程序設(shè)計(jì)與硬件電路
3.1設(shè)計(jì)思路
程序設(shè)計(jì)部分主要有:字模部分、LCD12864顯示、簡譜音調(diào)及節(jié)拍、計(jì)時、鍵盤掃描部分。硬件設(shè)計(jì)部分見下圖3.11:
設(shè)計(jì)思路見如下實(shí)驗(yàn)控制流程圖3.12:
3.2 設(shè)計(jì)程序見附件
  • 仿真調(diào)試及操作說明
1、按下開機(jī)鍵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”:開機(jī)鍵
“=”:暫停鍵,此時音樂和播放時間都暫停
“×”(乘號):播放鍵
“+”:下一曲,播放下一首歌曲
“-”:上一曲,播放上一首歌曲
  • 心得體會
參考資料
[1] 譚浩強(qiáng).C語言程序設(shè)計(jì)(第二版)[M],北京:清華大學(xué)出版社,1991.
[2] 曾屹.單片機(jī)原理與應(yīng)用(第一版)[M],中南大學(xué)出版社,2009.

單片機(jī)源程序如下:
  1. /* C語言音樂盒源程序設(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);              //延時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},/*"時",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ù) */
  244. void delay5()
  245. { uint t;
  246. for (t=400;t>0;t--);                              
  247. }

  248. /*======音樂按鍵掃描函數(shù)======= */
  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;                              //開機(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. /*寫指令程序*/
  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. /* 寫數(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. //------------------簡譜音調(diào)對應(yīng)的定時器初值--------//
  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);//延時1mS
  408. void delay(uint z);              //延時165ms,即十六分音符
  409. void song();
  410. void beep(); //蜂鳴器叫一聲
  411. /* 初始化程序 */
  412. void inti()
  413. {   wc(0X3f);//顯示開關(guān)關(guān) 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. //編程規(guī)則:字節(jié)高位是簡譜,低位是節(jié)拍持續(xù)時間,
  421. //代表多少個十六分音符
  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é)的新書包有人給你拿
  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. //啊,不管你走多遠(yuǎn)
  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. //投進(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. //出門在外沒有媽熬的小米粥,
  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. //裝進(jìn)兒的兜;
  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. //才理解兒行千里母擔(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. //就看見淚水在媽媽眼里,
  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. //要蒼天知道 我不認(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. //花開花落我一樣會珍惜
  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. //七色的國度 不斷飄逸風(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. //一朵花傳來誰經(jīng)過的溫柔
  552. 0x61,0x71,0x82,0x71,0x62,0xA2,0x71,0x76,
  553. //穿越千年的傷痛
  554. 0x61,0x71,0x82,0x71,0x62,0x52,0x31,0x36,
  555. //只為求一個結(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. //最美麗的感動 會值得
  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. //落花似人有情 這個季節(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. //那樣濃烈的愛再也無法給
  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)記憶的線纏繞過往支離破碎
  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)幸福戀人寄來紅色分享喜悅
  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. //你依然保管我內(nèi)心的靈魂
  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. //===========計(jì)時程序=========//
  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分秒計(jì)時
  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是簡譜
  674.     while(1)
  675.               {              if(h==0)
  676.                   { do{TR0=0;              //停止T0工作
  677.                             fm=1;}while(h==0);}
  678. ……………………

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

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



評分

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

查看全部評分

回復(fù)

使用道具 舉報

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

使用道具 舉報

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

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

使用道具 舉報

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

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久精品一区二区三区不卡牛牛 | 黄色片网站在线观看 | 国 产 黄 色 大 片 | 天天干天天操天天爽 | 久久精品黄色 | 国产成人亚洲精品自产在线 | 一级片av | 性大毛片视频 | 国产午夜免费 | 四虎在线免费视频 | 成人毛片网站 | 亚洲+小说+欧美+激情+另类 | 久久小视频 | 日韩中文字幕在线视频 | 在线观看的av | 国产黄av | 99国产在线观看 | 在线观看黄色小视频 | 久久伊人精品 | 国产免费一级 | 红桃av在线| 亚洲欧美在线视频 | 亚洲一区高清 | www.日日日 | 欧美视频一区二区三区 | 黄色国产 | 午夜免费剧场 | 成人动漫免费观看 | 国产成人午夜精品 | 国产精品久久久久久久免费看 | 欧美日韩视频在线 | 日韩一区二区三区精品 | 日韩欧美在线播放 | 久久99久久99 | 亚洲免费视频观看 | 欧美成人免费视频 | 日韩视频精品 | 黄色av免费看| 欧美网站在线观看 | 黄色在线免费网站 | 欧美综合色 |