彭光澤 胡正江 盧涵宇
摘要:隨著計(jì)算機(jī)和通信技術(shù)的發(fā)展,電子琴等娛樂樂器走入千家萬戶。本系統(tǒng)采用STC89C51單片機(jī),設(shè)計(jì)矩陣式鍵盤模塊、LED顯示管模塊、揚(yáng)聲器模塊、主程序部分、顯示程序部分、按鍵檢測(cè)部分等模塊。 經(jīng)系統(tǒng)仿真,實(shí)現(xiàn)了16個(gè)獨(dú)立按鍵分別代表16個(gè)不同的音符,有高有低等功能。本設(shè)計(jì)電路耦合性好,易操作,成本低,實(shí)用性強(qiáng),便于攜帶。
關(guān)鍵詞: 單片機(jī);矩陣式鍵盤;LED顯示;電子琴
中圖分類號(hào): TP208? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2019)17-0235-02
開放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID):
Abstract: With the development of computer and communication technology, electronic piano and other entertainment instruments have entered thousands of households. This system uses STC89C51 single chip computer to design matrix keyboard module, LED display tube module, loudspeaker module, main program module, display program module, key detection module and so on. Through system simulation, 16 independent keys representing 16 different notes are realized, which have the functions of high, low and so on. The designed circuit has good coupling, easy operation, low cost, strong practicability and portability.
Key words: MCU; Matrix Keyboard; LED Display; Electronic Piano
隨著我國經(jīng)濟(jì)快速發(fā)展,人民的生活質(zhì)量逐步提高,娛樂產(chǎn)品走入千家萬戶。電子琴等電子產(chǎn)品的誕生,豐富了業(yè)余生活,讓人民的生活多姿多彩。目前熱銷的有兩種電:一種是帶有腳鍵盤的立式電子琴;另一種是教育用的便攜式電子琴。這兩種電子琴都固有音色,還能模仿其他樂器及自然界的一些聲音,還都帶有自動(dòng)節(jié)奏和伴奏功能。
本設(shè)計(jì)以AT89C51微控制器作為主控核心,帶有矩陣式鍵盤模塊、LED顯示管模塊、揚(yáng)聲器模塊等硬件電路。硬件設(shè)計(jì)的獨(dú)立鍵盤電路有4*4=16個(gè)獨(dú)立按鍵,當(dāng)用戶按下按鍵,在數(shù)碼管上會(huì)相應(yīng)對(duì)應(yīng)一個(gè)字符,16個(gè)獨(dú)立按鍵分別代表16個(gè)不同的音符,有高有低。軟件部分主要設(shè)計(jì)了主程序部分、顯示程序部分、按鍵檢測(cè)部分。本設(shè)計(jì)電路耦合性好,易操作,成本低,實(shí)用性強(qiáng),便于攜帶。
1 系統(tǒng)整體方案設(shè)計(jì)
系統(tǒng)的整體設(shè)計(jì)由矩陣式鍵盤模塊、LED顯示管模塊、揚(yáng)聲器模塊、主程序部分、顯示程序部分、按鍵檢測(cè)部分等部分組成。
2 硬件設(shè)計(jì)
2.1 主控電路
主控電路采用89C51單片機(jī)最小系統(tǒng)外接按鍵電路、數(shù)碼管顯示電路進(jìn)行控制電子琴。51單片機(jī)性能優(yōu)越,完全能滿足本設(shè)計(jì)的要求,七段數(shù)碼管顯示當(dāng)前按鍵,揚(yáng)聲器發(fā)出對(duì)應(yīng)音符,主控電路如圖1所示。
2.2 LED顯示電路
本次設(shè)計(jì)LED顯示模塊利用P0端口,把P0.0-P0.6連接a-h筆段上,數(shù)碼管的公共端連通電源。當(dāng)數(shù)碼管所有位數(shù)都同時(shí)處于同一種狀態(tài),即顯示狀態(tài)時(shí)稱為靜態(tài)顯示。因而,這種顯示的方式具有顯示無閃爍、亮度較高等特點(diǎn),而且軟件比較容易實(shí)現(xiàn)控制。
當(dāng)需要顯示的位數(shù)不是很少時(shí),為了節(jié)省I/O口數(shù)目,經(jīng)常采用該方式顯示。這種方法是將所有的數(shù)碼管的段碼線的對(duì)應(yīng)段進(jìn)行并聯(lián),再通過一個(gè)8位的I/O口控制,而由另一個(gè)單獨(dú)的I/O口線分別控制各顯示位的公共端。
2.3 按鍵電路
利用I/O口接4*4=16的矩陣鍵盤。只需要我們提供8個(gè)I/O口,就可以輕松得到16個(gè)獨(dú)立按鍵,其優(yōu)點(diǎn)是操作容易、十分方便。
2.4 AT89C51
AT89C51是美國ATMEL公司生產(chǎn)的一款產(chǎn)品,帶有4K字節(jié)的可反復(fù)擦寫的只讀程序存儲(chǔ)器,內(nèi)置CMOS8位微處理器——低電壓、高性能,俗名就是我們常說的單片機(jī)。它具有高密度、非易失性、兼容性好、功能強(qiáng)大等特點(diǎn)。片內(nèi)帶通用8位中央處理器(CPU),還帶128bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM)和Flash存儲(chǔ)單元,各種控制領(lǐng)域皆可用到它,并且可以很靈活。
2.5 發(fā)音和節(jié)拍電路
一般規(guī)定每個(gè)音符使用1個(gè)字節(jié),音符的高低由字節(jié)的高四位表示,音符的節(jié)拍由低四位表示,下表詳細(xì)寫出了節(jié)拍與節(jié)拍碼的關(guān)系。假設(shè)1拍為0.8s,1/2拍為0.4s,節(jié)拍的時(shí)間由延遲時(shí)間決定。假設(shè)1/8拍為1 DELAY,那么1拍應(yīng)為8 DELAY,以此類推。即只要我們求得1/8拍的DELAY 時(shí)間,就可以輕松得出其余的節(jié)拍的DELAY時(shí)間。
3系統(tǒng)測(cè)試和實(shí)現(xiàn)
3.1 軟件開發(fā)環(huán)境
本設(shè)計(jì)選用Keil編譯器來進(jìn)行簡(jiǎn)單仿真,該軟件是由Keil公司設(shè)計(jì)開發(fā)的一款針對(duì)51單片機(jī)基于C語言程序的開發(fā)系統(tǒng),運(yùn)行該編譯器能夠?qū)崿F(xiàn)編譯C源程序、匯編源程序、連接和重定位目標(biāo)文件和庫文件、創(chuàng)建HEX文件,以及調(diào)試目標(biāo)程序。
Keil編譯器包括以下幾個(gè)組成部分。
(1)uVision2:這是一個(gè)集成開發(fā)環(huán)境,它把項(xiàng)目管理、源代碼編譯和程序調(diào)試燈集成到一個(gè)功能強(qiáng)大的環(huán)境中。
(2)C51交叉編譯器:編譯C源代碼再生成能再定位的指定目標(biāo)文件。
(3)A51宏匯編器:匯編MCS-51匯編源代碼并產(chǎn)生可重定位的目標(biāo)文件。
(5)LIB51庫管理器:合并目標(biāo)文件,自動(dòng)生成庫文件供連接器使用。
(6)OH51目標(biāo)文件至HEX格式轉(zhuǎn)換器:從絕對(duì)目標(biāo)文件創(chuàng)建Intel HEX格式的文件。
(7)RXT-51實(shí)時(shí)操作系統(tǒng)(Real-Time Operating System,RTOS):簡(jiǎn)化對(duì)時(shí)間需求敏感和相對(duì)復(fù)雜的軟件項(xiàng)目。
3.2軟件總體設(shè)計(jì)
本次設(shè)計(jì)的基本流程是先對(duì)單片機(jī)進(jìn)行模塊初始化,然后再發(fā)送掃描碼,首先,判斷是否有鍵按下,如果一旦有按鍵按下,就開始掃描鍵盤矩陣,顯示按鍵,然后啟動(dòng)定時(shí)器,根據(jù)KeyNo發(fā)音,按鍵不同,發(fā)音也不同,如果沒有鍵按下,則停止播放音樂。
3.3系統(tǒng)仿真與實(shí)現(xiàn)
仿真步驟如下:
1)打開keil 4,建立工程,輸入源程序代碼。
2)程序?qū)懞弥簏c(diǎn)擊編譯,有錯(cuò)則改錯(cuò),無錯(cuò)就生成hex文件。生成hex文件如圖2所示。
4 結(jié)論
本文采用STC89C51單片機(jī),設(shè)計(jì)矩陣式鍵盤模塊、LED顯示管模塊、揚(yáng)聲器模塊。 主程序部分、顯示程序部分、按鍵檢測(cè)部分等模塊。仿真表明:系統(tǒng)設(shè)計(jì)電路耦合性好,易操作,成本低,實(shí)用性強(qiáng),便于攜帶。
參考文獻(xiàn):
[1] 張均,盧涵宇.可編程控制器原理及應(yīng)用[M].中國鐵道出版社,2009.
[2] 熊小萍,盧涵宇.模擬電子技術(shù) [M].哈爾濱工程大學(xué)出版社,2009.
[3] 徐愛釣,彭秀華.KeilCxs1V7.0單片機(jī)高級(jí)語言編程與林VisionZ應(yīng)用實(shí)踐[M].電子工業(yè)出版社,2004.
[4] 白延敏.51單片機(jī)典型系統(tǒng)開發(fā)實(shí)例精講[M].電子工業(yè)出版社,2009.
【通聯(lián)編輯:光文玲】